Refactor Code to typescript
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import path from "path";
|
||||
import fs from "fs";
|
||||
|
||||
const rootDir = path.resolve(__dirname, "../../../");
|
||||
const ignorePattern =
|
||||
/\/\.git\/|\/\.next\/|\/\.dist\/|node_modules|\/\.local_dist\/|\/\.tmp\/|\/types\/|\.config\.js|\/public\//;
|
||||
|
||||
function transformJsToTs(dir: string) {
|
||||
const dirContent = fs.readdirSync(dir);
|
||||
|
||||
for (let i = 0; i < dirContent.length; i++) {
|
||||
const fileFolder = dirContent[i];
|
||||
const fullFileFolderPath = path.join(dir, fileFolder);
|
||||
const stat = fs.statSync(fullFileFolderPath);
|
||||
|
||||
if (stat.isDirectory()) {
|
||||
transformJsToTs(fullFileFolderPath);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (ignorePattern.test(fullFileFolderPath)) continue;
|
||||
|
||||
if (fullFileFolderPath.match(/\.jsx?$/)) {
|
||||
const extension = fullFileFolderPath.match(/\.jsx?$/)?.[0];
|
||||
if (!extension) continue;
|
||||
const newExtension = extension.replace("js", "ts");
|
||||
const newFilePath = fullFileFolderPath.replace(
|
||||
/\.jsx?$/,
|
||||
newExtension
|
||||
);
|
||||
|
||||
console.log(fullFileFolderPath);
|
||||
console.log(extension, "=>", newExtension);
|
||||
console.log(newFilePath);
|
||||
console.log("\n/////////////////////////////////////////");
|
||||
console.log("/////////////////////////////////////////\n");
|
||||
|
||||
fs.copyFileSync(fullFileFolderPath, newFilePath);
|
||||
fs.unlinkSync(fullFileFolderPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
console.log("rootDir", rootDir);
|
||||
|
||||
transformJsToTs(rootDir);
|
||||
Reference in New Issue
Block a user