summary refs log tree commit diff
path: root/scripts/gen_index.js
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-08-22 22:08:22 +1000
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-08-22 22:08:22 +1000
commit975c414434ee08622126bdeb4060532029413c18 (patch)
treea46b7f33a150963f6b8d3515225574610325713f /scripts/gen_index.js
parentMerge branch 'master' into fix/claim_accounts (diff)
parentMerge remote-tracking branch 'Puyodead1/patch/prettier-config' into staging (diff)
downloadserver-975c414434ee08622126bdeb4060532029413c18.tar.xz
Merge remote-tracking branch 'upstream/staging' into fix/claim_accounts
Diffstat (limited to 'scripts/gen_index.js')
-rw-r--r--scripts/gen_index.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/scripts/gen_index.js b/scripts/gen_index.js
new file mode 100644

index 00000000..71c64a9f --- /dev/null +++ b/scripts/gen_index.js
@@ -0,0 +1,34 @@ +const path = require("path"); +const fs = require("fs"); +const { execIn, getLines, parts } = require('./utils'); + +if (!process.argv[2] || !fs.existsSync(process.argv[2])) { + console.log("Please pass a directory that exists!"); + process.exit(1); +} +console.log(`// ${process.argv[2]}/index.ts`) +const recurse = process.argv.includes("--recursive") + +const files = fs.readdirSync(process.argv[2]).filter(x => x.endsWith('.ts') && x != 'index.ts'); + +let output = ''; + +files.forEach(x => output += `export * from "./${x.replaceAll('.ts','')}";\n`) + +const dirs = fs.readdirSync(process.argv[2]).filter(x => { + try { + fs.readdirSync(path.join(process.argv[2], x)); + return true; + } catch (e) { + return false; + } +}); +dirs.forEach(x => { + output += `export * from "./${x}/index";\n` +}) +console.log(output); +fs.writeFileSync(path.join(process.argv[2], "index.ts"), output) + +dirs.forEach(x => { + if(recurse) console.log(execIn([process.argv[0], process.argv[1], `"${path.join(process.argv[2], x)}"`, "--recursive"].join(' '), process.cwd())) +}) \ No newline at end of file