Skip to content

Commit 6c12781

Browse files
committed
make gen-types work with the new script format
1 parent 0b5a5fb commit 6c12781

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

src/generateTypings.ts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import fs from "fs"
2-
import { basename as getBaseName, extname as getFileExtension, resolve as resolvePath } from "path"
2+
import { basename as getBaseName, extname as getFileExtension, relative as getRelativePath, resolve as resolvePath } from "path"
33

44
const { readdir: readDirectory, writeFile } = fs.promises
55

@@ -43,18 +43,20 @@ export async function generateTypings(sourceDirectory: string, target: string, h
4343
}
4444
}))
4545

46+
sourceDirectory = getRelativePath(`.`, sourceDirectory)
47+
4648
let o = ``
4749

4850
for (const script of wildScripts)
49-
o += `import { script as $${script}$ } from "./src/${script}"\n`
51+
o += `import $${script}$ from "./${sourceDirectory}/${script}"\n`
5052

5153
o += `\n`
5254

5355
for (const user in allScripts) {
5456
const scripts = allScripts[user]!
5557

5658
for (const script of scripts)
57-
o += `import { script as $${user}$${script}$ } from "./src/${user}/${script}"\n`
59+
o += `import $${user}$${script}$ from "./${sourceDirectory}/${user}/${script}"\n`
5860
}
5961

6062
// TODO detect security level and generate apropriate code
@@ -78,7 +80,7 @@ type WildFullsec = Record<string, () => ScriptFailure> & {
7880
for (const script of wildAnyScripts)
7981
o += `\t${script}: (...args: any) => any\n`
8082

81-
o += `}\n\ndeclare global {\n\tinterface PlayerFullsec {`
83+
o += `}\n\ninterface PlayerFullsec {`
8284

8385
let lastWasMultiLine = true
8486

@@ -88,32 +90,32 @@ type WildFullsec = Record<string, () => ScriptFailure> & {
8890

8991
if ((scripts && scripts.length) || (anyScripts && anyScripts.length)) {
9092
lastWasMultiLine = true
91-
o += `\n\t\t${user}: WildFullsec & {\n`
93+
o += `\n\t${user}: WildFullsec & {\n`
9294

9395
if (scripts) {
9496
for (const script of scripts)
95-
o += `\t\t\t${script}: Subscript<typeof $${user}$${script}$>\n`
97+
o += `\t\t${script}: Subscript<typeof $${user}$${script}$>\n`
9698
}
9799

98100
if (anyScripts) {
99101
for (const script of anyScripts)
100-
o += `\t\t\t${script}: (...args: any) => any\n`
102+
o += `\t\t${script}: (...args: any) => any\n`
101103
}
102104

103-
o += `\t\t}`
105+
o += `\t}`
104106
} else {
105107
if (lastWasMultiLine) {
106108
o += `\n`
107109
lastWasMultiLine = false
108110
}
109111

110-
o += `\t\t${user}: WildFullsec`
112+
o += `\t${user}: WildFullsec`
111113
}
112114

113115
o += `\n`
114116
}
115117

116-
o += `\t}\n}\n`
118+
o += `}\n`
117119
await writeFile(target, o)
118120
}
119121

0 commit comments

Comments
 (0)