isaacscript 6.0.2 → 6.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/check/check.js +36 -23
- package/dist/commands/check/check.js.map +1 -1
- package/dist/commands/check/check.test.js +1 -1
- package/dist/commands/check/check.test.js.map +1 -1
- package/dist/commands/copy/copy.js +1 -0
- package/dist/commands/copy/copy.js.map +1 -1
- package/dist/commands/init/checkModSubdirectory.js +4 -3
- package/dist/commands/init/checkModSubdirectory.js.map +1 -1
- package/dist/commands/init/createProject.js +5 -5
- package/dist/commands/init/createProject.js.map +1 -1
- package/dist/commands/init/getProjectPath.js +9 -6
- package/dist/commands/init/getProjectPath.js.map +1 -1
- package/dist/commands/init/init.js +3 -2
- package/dist/commands/init/init.js.map +1 -1
- package/dist/commands/init/vsCode.js +5 -5
- package/dist/commands/init/vsCode.js.map +1 -1
- package/dist/commands/monitor/modDirectorySyncer/modDirectorySyncer.js +3 -1
- package/dist/commands/monitor/modDirectorySyncer/modDirectorySyncer.js.map +1 -1
- package/dist/commands/monitor/monitor.js +1 -0
- package/dist/commands/monitor/monitor.js.map +1 -1
- package/dist/commands/monitor/notifyGame.js +1 -1
- package/dist/commands/monitor/notifyGame.js.map +1 -1
- package/dist/commands/monitor/saveDatWriter/saveDatWriter.js +4 -2
- package/dist/commands/monitor/saveDatWriter/saveDatWriter.js.map +1 -1
- package/dist/commands/monitor/spawnSaveDatWriter.js +1 -0
- package/dist/commands/monitor/spawnSaveDatWriter.js.map +1 -1
- package/dist/commands/monitor/spawnTSTLWatcher.js +1 -0
- package/dist/commands/monitor/spawnTSTLWatcher.js.map +1 -1
- package/dist/commands/publish/isaacscriptMod.js +1 -1
- package/dist/commands/publish/isaacscriptMod.js.map +1 -1
- package/dist/commands/publish/publish.js +8 -7
- package/dist/commands/publish/publish.js.map +1 -1
- package/dist/commands/publish/validate.js +3 -3
- package/dist/commands/publish/validate.js.map +1 -1
- package/dist/common.js +5 -1
- package/dist/common.js.map +1 -1
- package/dist/customStage.js +14 -14
- package/dist/customStage.js.map +1 -1
- package/dist/enums/copied/DoorSlotFlag.js +1 -0
- package/dist/enums/copied/DoorSlotFlag.js.map +1 -1
- package/dist/enums/copied/RoomShape.js +3 -0
- package/dist/enums/copied/RoomShape.js.map +1 -1
- package/dist/exec.js +9 -3
- package/dist/exec.js.map +1 -1
- package/dist/git.js +3 -3
- package/dist/git.js.map +1 -1
- package/dist/parseArgs.js +1 -0
- package/dist/parseArgs.js.map +1 -1
- package/dist/prompt.js +2 -2
- package/dist/prompt.js.map +1 -1
- package/dist/tsconfig.js +25 -25
- package/dist/tsconfig.js.map +1 -1
- package/dist/validateMod.js +8 -6
- package/dist/validateMod.js.map +1 -1
- package/file-templates/dynamic/Node.gitignore +4 -2
- package/file-templates/static/.vscode/extensions.json +1 -1
- package/file-templates/static/.vscode/settings.json +19 -21
- package/file-templates/static/prettier.config.mjs +6 -6
- package/file-templates/static/scripts/lint.ts +32 -36
- package/file-templates/static/scripts/tsconfig.json +4 -0
- package/package.json +12 -12
- package/plugins/addCrashDebugStatements.cjs +1 -1
- package/plugins/addCrashDebugStatements.ts +1 -1
- package/plugins/package.json +7 -0
- package/plugins/tsconfig.json +5 -2
package/dist/tsconfig.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tsconfig.js","sourceRoot":"","sources":["../src/tsconfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"tsconfig.js","sourceRoot":"","sources":["../src/tsconfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAGxB,MAAM,MAAM,GAAG,oBAAoB,aAAa,sBAAsB,YAAY,WAAW,CAAC;AAE9F;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B;IAG/C,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,EAAE,CAAC;IACzD,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAClE,YAAY,CACV,iBAAiB,EACjB,6CAA6C,uBAAuB,EAAE,CACvE,CAAC;IAEF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACtB,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEtD,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CACX,kFAAkF,CACnF,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,UAAU,CACR,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,MAAM,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC;IAC5C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,uFAAuF;IACvF,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3B,UAAU,CACR,wEAAwE,MAAM,GAAG,CAClF,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,KAAK,MAAM,mBAAmB,IAAI,YAAqC,EAAE,CAAC;QACxE,MAAM,EAAE,IAAI,EAAE,GAAG,mBAAmB,CAAC;QACrC,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YAChB,UAAU,CACR,KAAK,CAAC,GAAG,CACP,kEAAkE,CACnE,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC;QACxC,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YACnB,UAAU,CACR,KAAK,CAAC,GAAG,CACP,QAAQ,IAAI,mEAAmE,CAChF,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,mBAAmB,CAAC;QAClD,IAAI,iBAAiB,GAAG,GAAG,IAAI,iBAAiB,GAAG,GAAG,EAAE,CAAC;YACvD,UAAU,CACR,KAAK,CAAC,GAAG,CACP,QAAQ,IAAI,0EAA0E,iBAAiB,EAAE,CAC1G,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,GAAG,mBAAmB,CAAC;QAC1C,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,EAAE,CAAC,EAAE,CAAC;YACjE,UAAU,CACR,QAAQ,IAAI,kEAAkE,SAAS,EAAE,CAC1F,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,aAAa,EAAE,GAAG,mBAAmB,CAAC;QAC9C,IACE,aAAa,KAAK,SAAS;eACxB,CAAC,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC,EAC3C,CAAC;YACD,UAAU,CACR,QAAQ,IAAI,sEAAsE,aAAa,EAAE,CAClG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,YAAqC,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,qBAAqB;IAGlC,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;IAEzC,yDAAyD;IACzD,KAAK,MAAM,SAAS,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,CAAC;QACtE,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,UAAU,CACR,SAAS,KAAK,CAAC,KAAK,CAClB,kBAAkB,CACnB,0CAA0C,SAAS,uCAAuC,MAAM,EAAE,CACpG,CAAC;YACJ,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACpD,YAAY,CACV,QAAQ,EACR,mCAAmC,kBAAkB,EAAE,CACxD,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/validateMod.js
CHANGED
|
@@ -74,16 +74,18 @@ export async function validatePackageJSONDependencies() {
|
|
|
74
74
|
const devDependencies = (await getPackageJSONDependencies(packageJSON, "devDependencies")) ?? {};
|
|
75
75
|
const devDependenciesArray = Object.keys(devDependencies);
|
|
76
76
|
for (const devDependency of REQUIRED_PACKAGE_JSON_DEV_DEPENDENCIES) {
|
|
77
|
-
if (dependenciesArray.includes(devDependency)) {
|
|
78
|
-
|
|
79
|
-
fatalError(`The "${devDependency}" dependency is located in the "dependencies" object instead of the "devDependencies" object in the "${packageJSONPath}" file. You can fix this with the following command:\n${chalk.green(addDevCommand)}`);
|
|
77
|
+
if (!dependenciesArray.includes(devDependency)) {
|
|
78
|
+
continue;
|
|
80
79
|
}
|
|
80
|
+
const command = getPackageManagerAddDevCommand(packageManager, devDependency);
|
|
81
|
+
fatalError(`The "${devDependency}" dependency is located in the "dependencies" object instead of the "devDependencies" object in the "${packageJSONPath}" file. You can fix this with the following command:\n${chalk.green(command)}`);
|
|
81
82
|
}
|
|
82
83
|
for (const devDependency of REQUIRED_PACKAGE_JSON_DEV_DEPENDENCIES) {
|
|
83
|
-
if (
|
|
84
|
-
|
|
85
|
-
fatalError(`IsaacScript projects require a "devDependencies" entry of "${devDependency}" in the "${packageJSONPath}" file. You can add it with the following command:\n${chalk.green(addDevCommand)}`);
|
|
84
|
+
if (devDependenciesArray.includes(devDependency)) {
|
|
85
|
+
continue;
|
|
86
86
|
}
|
|
87
|
+
const command = getPackageManagerAddDevCommand(packageManager, devDependency);
|
|
88
|
+
fatalError(`IsaacScript projects require a "devDependencies" entry of "${devDependency}" in the "${packageJSONPath}" file. You can add it with the following command:\n${chalk.green(command)}`);
|
|
87
89
|
}
|
|
88
90
|
}
|
|
89
91
|
export async function validateDepsInstalled(isaacScriptCommonDev, verbose) {
|
package/dist/validateMod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateMod.js","sourceRoot":"","sources":["../src/validateMod.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validateMod.js","sourceRoot":"","sources":["../src/validateMod.ts"],"names":[],"mappings":"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"}
|
|
@@ -92,9 +92,8 @@ dist
|
|
|
92
92
|
# vuepress build output
|
|
93
93
|
.vuepress/dist
|
|
94
94
|
|
|
95
|
-
# vuepress v2.x temp
|
|
95
|
+
# vuepress v2.x temp directory
|
|
96
96
|
.temp
|
|
97
|
-
.cache
|
|
98
97
|
|
|
99
98
|
# Sveltekit cache directory
|
|
100
99
|
.svelte-kit/
|
|
@@ -126,6 +125,9 @@ dist
|
|
|
126
125
|
# Stores VSCode versions used for testing VSCode extensions
|
|
127
126
|
.vscode-test
|
|
128
127
|
|
|
128
|
+
# pnpm
|
|
129
|
+
.pnpm-store
|
|
130
|
+
|
|
129
131
|
# yarn v3
|
|
130
132
|
.pnp.*
|
|
131
133
|
.yarn/*
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
{
|
|
4
4
|
"recommendations": [
|
|
5
5
|
"dbaeumer.vscode-eslint", // The TypeScript linter
|
|
6
|
-
"
|
|
6
|
+
"esbenp.prettier-vscode", // The TypeScript formatter
|
|
7
7
|
"streetsidesoftware.code-spell-checker", // A spell-checker extension based on CSpell
|
|
8
8
|
"typescript-to-lua.vscode-typescript-to-lua", // The TypeScriptToLua extension
|
|
9
9
|
"redhat.vscode-xml", // The XML language server
|
|
@@ -51,20 +51,18 @@
|
|
|
51
51
|
// Language settings
|
|
52
52
|
// -----------------
|
|
53
53
|
|
|
54
|
-
// By default,
|
|
55
|
-
"
|
|
56
|
-
"typescript.suggest.completeFunctionCalls": true,
|
|
54
|
+
// By default, Visual Studio Code will not automatically fill-in function arguments.
|
|
55
|
+
"js/ts.suggest.completeFunctionCalls": true,
|
|
57
56
|
|
|
58
|
-
// By default,
|
|
59
|
-
"
|
|
60
|
-
"typescript.preferences.importModuleSpecifier": "project-relative",
|
|
57
|
+
// By default, Visual Studio Code will prefer non-relative paths for deeply nested files.
|
|
58
|
+
"js/ts.preferences.importModuleSpecifier": "project-relative",
|
|
61
59
|
|
|
62
|
-
// By default,
|
|
63
|
-
"
|
|
60
|
+
// By default, Visual Studio Code will not add `import type` automatically.
|
|
61
|
+
"js/ts.preferences.preferTypeOnlyAutoImports": true,
|
|
64
62
|
|
|
65
63
|
// Show TypeScript errors for files that don't happen to be currently open, which makes TypeScript
|
|
66
64
|
// work similar to other compiled languages like Golang or Rust.
|
|
67
|
-
"
|
|
65
|
+
"js/ts.tsserver.experimental.enableProjectDiagnostics": true,
|
|
68
66
|
|
|
69
67
|
// Automatically run the formatter when certain files are saved. We intentionally do not group
|
|
70
68
|
// languages together because of this bug: https://github.com/microsoft/vscode/issues/168411
|
|
@@ -72,60 +70,60 @@
|
|
|
72
70
|
"editor.codeActionsOnSave": {
|
|
73
71
|
"source.fixAll.eslint": "explicit",
|
|
74
72
|
},
|
|
75
|
-
"editor.defaultFormatter": "
|
|
73
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
76
74
|
"editor.formatOnSave": true,
|
|
77
75
|
},
|
|
78
76
|
"[typescript]": {
|
|
79
77
|
"editor.codeActionsOnSave": {
|
|
80
78
|
"source.fixAll.eslint": "explicit",
|
|
81
79
|
},
|
|
82
|
-
"editor.defaultFormatter": "
|
|
80
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
83
81
|
"editor.formatOnSave": true,
|
|
84
82
|
},
|
|
85
83
|
"[javascriptreact]": {
|
|
86
84
|
"editor.codeActionsOnSave": {
|
|
87
85
|
"source.fixAll.eslint": "explicit",
|
|
88
86
|
},
|
|
89
|
-
"editor.defaultFormatter": "
|
|
87
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
90
88
|
"editor.formatOnSave": true,
|
|
91
89
|
},
|
|
92
90
|
"[typescriptreact]": {
|
|
93
91
|
"editor.codeActionsOnSave": {
|
|
94
92
|
"source.fixAll.eslint": "explicit",
|
|
95
93
|
},
|
|
96
|
-
"editor.defaultFormatter": "
|
|
94
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
97
95
|
"editor.formatOnSave": true,
|
|
98
96
|
},
|
|
99
97
|
"[css]": {
|
|
100
|
-
"editor.defaultFormatter": "
|
|
98
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
101
99
|
"editor.formatOnSave": true,
|
|
102
100
|
},
|
|
103
101
|
"[html]": {
|
|
104
|
-
"editor.defaultFormatter": "
|
|
102
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
105
103
|
"editor.formatOnSave": true,
|
|
106
104
|
},
|
|
107
105
|
"[json]": {
|
|
108
|
-
"editor.defaultFormatter": "
|
|
106
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
109
107
|
"editor.formatOnSave": true,
|
|
110
108
|
},
|
|
111
109
|
"[jsonc]": {
|
|
112
|
-
"editor.defaultFormatter": "
|
|
110
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
113
111
|
"editor.formatOnSave": true,
|
|
114
112
|
},
|
|
115
113
|
"[markdown]": {
|
|
116
|
-
"editor.defaultFormatter": "
|
|
114
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
117
115
|
"editor.formatOnSave": true,
|
|
118
116
|
},
|
|
119
117
|
"[postcss]": {
|
|
120
|
-
"editor.defaultFormatter": "
|
|
118
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
121
119
|
"editor.formatOnSave": true,
|
|
122
120
|
},
|
|
123
121
|
"[xml]": {
|
|
124
|
-
"editor.defaultFormatter": "
|
|
122
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
125
123
|
"editor.formatOnSave": true,
|
|
126
124
|
},
|
|
127
125
|
"[yaml]": {
|
|
128
|
-
"editor.defaultFormatter": "
|
|
126
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
129
127
|
"editor.formatOnSave": true,
|
|
130
128
|
},
|
|
131
129
|
}
|
|
@@ -5,12 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
/** @type {import("prettier").Config} */
|
|
7
7
|
const config = {
|
|
8
|
-
plugins: [
|
|
9
|
-
"prettier-plugin-organize-imports", // Prettier does not format imports by default.
|
|
10
|
-
"prettier-plugin-packagejson", // Prettier does not format "package.json" by default.
|
|
11
|
-
"@prettier/plugin-xml", // Prettier does not format XML files by default.
|
|
12
|
-
],
|
|
13
|
-
|
|
14
8
|
overrides: [
|
|
15
9
|
// Allow proper formatting of JSONC files that have JSON file extensions.
|
|
16
10
|
{
|
|
@@ -36,6 +30,12 @@ const config = {
|
|
|
36
30
|
},
|
|
37
31
|
],
|
|
38
32
|
|
|
33
|
+
plugins: [
|
|
34
|
+
"prettier-plugin-organize-imports", // Prettier does not format imports by default.
|
|
35
|
+
"prettier-plugin-packagejson", // Prettier does not format "package.json" by default.
|
|
36
|
+
"@prettier/plugin-xml", // Prettier does not format XML files by default.
|
|
37
|
+
],
|
|
38
|
+
|
|
39
39
|
// We break from the default Prettier config for only a single option: operator position. There
|
|
40
40
|
// are no known arguments for placing operators at the end of the line, as outlined in this
|
|
41
41
|
// thread: https://github.com/prettier/prettier/issues/3806
|
|
@@ -1,36 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
await Promise.all(promises);
|
|
36
|
-
});
|
|
1
|
+
import { commandExists, lintCommands } from "complete-node";
|
|
2
|
+
|
|
3
|
+
const commands = [
|
|
4
|
+
// Use TypeScript to type-check the code.
|
|
5
|
+
"tsc --noEmit",
|
|
6
|
+
"tsc --noEmit --project ./scripts/tsconfig.json",
|
|
7
|
+
|
|
8
|
+
// Use ESLint to lint the TypeScript code.
|
|
9
|
+
"eslint",
|
|
10
|
+
|
|
11
|
+
// Use Prettier to check formatting.
|
|
12
|
+
// - "--log-level=warn" makes it only output errors.
|
|
13
|
+
"prettier --log-level=warn --check .",
|
|
14
|
+
|
|
15
|
+
// Use ts-prune to check for unused exports.
|
|
16
|
+
// - "--error" makes it return an error code of 1 if unused exports are found.
|
|
17
|
+
"ts-prune --error",
|
|
18
|
+
|
|
19
|
+
// Use CSpell to spell check every file.
|
|
20
|
+
// - "--no-progress" and "--no-summary" make it only output errors.
|
|
21
|
+
"cspell --no-progress --no-summary",
|
|
22
|
+
|
|
23
|
+
// Check for unused words in the CSpell configuration file.
|
|
24
|
+
"cspell-check-unused-words",
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const pythonExists = await commandExists("uvx");
|
|
28
|
+
if (pythonExists) {
|
|
29
|
+
commands.push("uvx isaac-xml-validator --quiet");
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
await lintCommands(import.meta.dirname, commands);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.4",
|
|
4
4
|
"description": "A command line tool for managing Isaac mods written in TypeScript.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"isaac",
|
|
@@ -40,22 +40,22 @@
|
|
|
40
40
|
"test": "tsx --test \"src/**/*.test.ts\""
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@commander-js/extra-typings": "
|
|
43
|
+
"@commander-js/extra-typings": "15.0.0",
|
|
44
44
|
"@zamiell/sync-directory": "6.0.5",
|
|
45
|
-
"ajv": "8.
|
|
46
|
-
"chalk": "
|
|
47
|
-
"commander": "
|
|
48
|
-
"complete-common": "2.
|
|
49
|
-
"complete-node": "
|
|
45
|
+
"ajv": "8.20.0",
|
|
46
|
+
"chalk": "6.0.0",
|
|
47
|
+
"commander": "15.0.0",
|
|
48
|
+
"complete-common": "2.32.0",
|
|
49
|
+
"complete-node": "18.0.1",
|
|
50
50
|
"figlet": "1.9.2-beta.0",
|
|
51
51
|
"jsonc-parser": "3.3.1",
|
|
52
|
-
"klaw-sync": "
|
|
52
|
+
"klaw-sync": "8.0.0",
|
|
53
53
|
"moment": "2.30.1",
|
|
54
54
|
"prompt": "1.3.0",
|
|
55
|
-
"source-map": "0.
|
|
55
|
+
"source-map": "0.8.0",
|
|
56
56
|
"source-map-support": "0.5.21",
|
|
57
57
|
"xml2js": "0.6.2",
|
|
58
|
-
"yaml": "2.
|
|
58
|
+
"yaml": "2.9.0"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@types/figlet": "1.7.0",
|
|
@@ -63,8 +63,8 @@
|
|
|
63
63
|
"@types/prompt": "1.1.9",
|
|
64
64
|
"@types/source-map-support": "0.5.10",
|
|
65
65
|
"@types/xml2js": "0.4.14",
|
|
66
|
-
"ts-json-schema-generator": "2.
|
|
67
|
-
"typescript-eslint": "8.
|
|
66
|
+
"ts-json-schema-generator": "2.9.0",
|
|
67
|
+
"typescript-eslint": "8.69.0"
|
|
68
68
|
},
|
|
69
69
|
"peerDependencies": {
|
|
70
70
|
"typescript": ">= 5.0.0",
|
|
@@ -61,6 +61,6 @@ class CustomPrinter extends tstl.LuaPrinter {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
const plugin = {
|
|
64
|
-
printer: (program, emitHost, fileName, file) => new CustomPrinter(emitHost, program, fileName).print(file),
|
|
64
|
+
printer: (program, emitHost, fileName, file) => new CustomPrinter(emitHost, program, fileName).print(file), // eslint-disable-line unicorn/no-unreadable-new-expression
|
|
65
65
|
};
|
|
66
66
|
exports.default = plugin;
|
|
@@ -33,7 +33,7 @@ const plugin: tstl.Plugin = {
|
|
|
33
33
|
emitHost: tstl.EmitHost,
|
|
34
34
|
fileName: string,
|
|
35
35
|
file: tstl.File,
|
|
36
|
-
) => new CustomPrinter(emitHost, program, fileName).print(file),
|
|
36
|
+
) => new CustomPrinter(emitHost, program, fileName).print(file), // eslint-disable-line unicorn/no-unreadable-new-expression
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
export default plugin;
|
package/plugins/tsconfig.json
CHANGED
|
@@ -10,12 +10,15 @@
|
|
|
10
10
|
],
|
|
11
11
|
|
|
12
12
|
"compilerOptions": {
|
|
13
|
+
// The plugin source files live directly in this directory instead of the default "src".
|
|
14
|
+
"rootDir": ".",
|
|
15
|
+
|
|
13
16
|
// We need to overwrite the default compilation output directory of "dist".
|
|
14
17
|
"outDir": ".",
|
|
15
18
|
|
|
16
19
|
// Plugins need to be in CJS format so that CJS mods can use them.
|
|
17
|
-
"module": "
|
|
18
|
-
"moduleResolution": "
|
|
20
|
+
"module": "Node16",
|
|
21
|
+
"moduleResolution": "Node16",
|
|
19
22
|
},
|
|
20
23
|
|
|
21
24
|
"include": ["*.ts"],
|