isaacscript 1.2.4 → 1.2.7
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/package.json +5 -5
- package/dist/src/checkForWindowsTerminalBugs.js +2 -2
- package/dist/src/checkForWindowsTerminalBugs.js.map +1 -1
- package/dist/src/commands/copy/copy.js +4 -3
- package/dist/src/commands/copy/copy.js.map +1 -1
- package/dist/src/commands/init/checkIfProjectPathExists.js +2 -2
- package/dist/src/commands/init/checkIfProjectPathExists.js.map +1 -1
- package/dist/src/commands/init/checkModTargetDirectory.js +2 -2
- package/dist/src/commands/init/checkModTargetDirectory.js.map +1 -1
- package/dist/src/commands/init/createMod.js +22 -22
- package/dist/src/commands/init/createMod.js.map +1 -1
- package/dist/src/commands/init/getModsDir.js +6 -6
- package/dist/src/commands/init/getModsDir.js.map +1 -1
- package/dist/src/commands/init/getProjectPath.js +2 -2
- package/dist/src/commands/init/getProjectPath.js.map +1 -1
- package/dist/src/commands/init/installVSCodeExtensions.js +2 -2
- package/dist/src/commands/init/installVSCodeExtensions.js.map +1 -1
- package/dist/src/commands/init/promptSaveSlot.js +2 -2
- package/dist/src/commands/init/promptSaveSlot.js.map +1 -1
- package/dist/src/commands/monitor/getTSConfigInclude.js +4 -4
- package/dist/src/commands/monitor/getTSConfigInclude.js.map +1 -1
- package/dist/src/commands/monitor/monitor.js +13 -35
- package/dist/src/commands/monitor/monitor.js.map +1 -1
- package/dist/src/commands/monitor/notifyGame.js +2 -2
- package/dist/src/commands/monitor/notifyGame.js.map +1 -1
- package/dist/src/commands/monitor/saveDatWriter/saveDatWriter.js +3 -3
- package/dist/src/commands/monitor/saveDatWriter/saveDatWriter.js.map +1 -1
- package/dist/src/commands/monitor/spawnSaveDatWriter.js +3 -3
- package/dist/src/commands/monitor/spawnSaveDatWriter.js.map +1 -1
- package/dist/src/commands/publish/publish.js +17 -17
- package/dist/src/commands/publish/publish.js.map +1 -1
- package/dist/src/configFile.js +3 -3
- package/dist/src/configFile.js.map +1 -1
- package/dist/src/constants.js +6 -1
- package/dist/src/constants.js.map +1 -1
- package/dist/src/exec.js +6 -6
- package/dist/src/exec.js.map +1 -1
- package/dist/src/file.js +10 -10
- package/dist/src/file.js.map +1 -1
- package/dist/src/main.js +3 -3
- package/dist/src/main.js.map +1 -1
- package/dist/src/parseArgs.js +0 -5
- package/dist/src/parseArgs.js.map +1 -1
- package/dist/src/prompt.js +6 -6
- package/dist/src/prompt.js.map +1 -1
- package/dist/src/{util.js → utils.js} +15 -2
- package/dist/src/utils.js.map +1 -0
- package/dist/src/validateNodeVersion.js +2 -2
- package/dist/src/validateNodeVersion.js.map +1 -1
- package/file-templates/static/build.sh +1 -1
- package/package.json +5 -5
- package/src/checkForWindowsTerminalBugs.ts +1 -1
- package/src/commands/copy/copy.ts +3 -2
- package/src/commands/init/checkIfProjectPathExists.ts +1 -1
- package/src/commands/init/checkModTargetDirectory.ts +1 -1
- package/src/commands/init/createMod.ts +42 -42
- package/src/commands/init/getModsDir.ts +1 -1
- package/src/commands/init/getProjectPath.ts +1 -1
- package/src/commands/init/installVSCodeExtensions.ts +1 -1
- package/src/commands/init/promptSaveSlot.ts +1 -1
- package/src/commands/monitor/getTSConfigInclude.ts +1 -1
- package/src/commands/monitor/monitor.ts +8 -43
- package/src/commands/monitor/notifyGame.ts +1 -1
- package/src/commands/monitor/saveDatWriter/saveDatWriter.ts +1 -1
- package/src/commands/monitor/spawnSaveDatWriter.ts +1 -1
- package/src/commands/publish/publish.ts +1 -1
- package/src/configFile.ts +1 -1
- package/src/constants.ts +6 -0
- package/src/exec.ts +1 -1
- package/src/file.ts +1 -1
- package/src/main.ts +1 -1
- package/src/parseArgs.ts +0 -5
- package/src/prompt.ts +1 -1
- package/src/{util.ts → utils.ts} +16 -1
- package/src/validateNodeVersion.ts +1 -1
- package/dist/src/util.js.map +0 -1
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.7",
|
|
4
4
|
"description": "A command line tool for managing Isaac mods written in TypeScript",
|
|
5
5
|
"homepage": "https://isaacscript.github.io/",
|
|
6
6
|
"bugs": {
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
"command-exists": "^1.2.9",
|
|
22
22
|
"dotenv": "^16.0.0",
|
|
23
23
|
"figlet": "^1.5.2",
|
|
24
|
-
"fs-extra": "^10.0.
|
|
24
|
+
"fs-extra": "^10.0.1",
|
|
25
25
|
"isaacscript-tsconfig": "^1.1.8",
|
|
26
26
|
"jsonc-parser": "^3.0.0",
|
|
27
27
|
"moment": "^2.29.1",
|
|
28
|
-
"npm-check-updates": "^12.
|
|
28
|
+
"npm-check-updates": "^12.5.0",
|
|
29
29
|
"prompt": "^1.2.2",
|
|
30
30
|
"source-map": "^0.7.3",
|
|
31
31
|
"source-map-support": "^0.5.21",
|
|
@@ -39,11 +39,11 @@
|
|
|
39
39
|
"@types/command-exists": "^1.2.0",
|
|
40
40
|
"@types/figlet": "^1.5.4",
|
|
41
41
|
"@types/fs-extra": "^9.0.13",
|
|
42
|
-
"@types/node": "^17.0.
|
|
42
|
+
"@types/node": "^17.0.21",
|
|
43
43
|
"@types/prompt": "^1.1.2",
|
|
44
44
|
"@types/source-map-support": "^0.5.4",
|
|
45
45
|
"@types/update-notifier": "^5.1.0",
|
|
46
46
|
"@types/yargs": "^17.0.8",
|
|
47
|
-
"isaacscript-lint": "^1.0.
|
|
47
|
+
"isaacscript-lint": "^1.0.83"
|
|
48
48
|
}
|
|
49
49
|
}
|
|
@@ -29,7 +29,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
29
29
|
const constants_1 = require("./constants");
|
|
30
30
|
const file = __importStar(require("./file"));
|
|
31
31
|
const prompt_1 = require("./prompt");
|
|
32
|
-
const
|
|
32
|
+
const utils_1 = require("./utils");
|
|
33
33
|
const BASH_PROFILE_PATH = path_1.default.join(constants_1.HOME_DIR, ".bash_profile");
|
|
34
34
|
// By default, Git Bash for Windows uses MINGW64
|
|
35
35
|
// This will not work correctly with the prompt library
|
|
@@ -70,7 +70,7 @@ function applyFixesToBashProfile() {
|
|
|
70
70
|
fs_1.default.appendFileSync(BASH_PROFILE_PATH, appendText);
|
|
71
71
|
}
|
|
72
72
|
catch (err) {
|
|
73
|
-
(0,
|
|
73
|
+
(0, utils_1.error)(`Failed to append text to "${BASH_PROFILE_PATH}":`, err);
|
|
74
74
|
}
|
|
75
75
|
console.log(chalk_1.default.green("Complete!"), `The terminal fixes have been added to: ${chalk_1.default.green(BASH_PROFILE_PATH)}`);
|
|
76
76
|
console.log(chalk_1.default.red("Please close and re-open your terminal, then run this program again."));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkForWindowsTerminalBugs.js","sourceRoot":"","sources":["../../src/checkForWindowsTerminalBugs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,4CAAoB;AACpB,gDAAwB;AACxB,2CAAqD;AACrD,6CAA+B;AAC/B,qCAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"checkForWindowsTerminalBugs.js","sourceRoot":"","sources":["../../src/checkForWindowsTerminalBugs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,4CAAoB;AACpB,gDAAwB;AACxB,2CAAqD;AACrD,6CAA+B;AAC/B,qCAAyC;AACzC,mCAAgC;AAEhC,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,oBAAQ,EAAE,eAAe,CAAC,CAAC;AAE/D,gDAAgD;AAChD,uDAAuD;AACvD,2CAA2C;AACpC,KAAK,UAAU,2BAA2B;IAC/C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QAChC,OAAO;KACR;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,4CAA4C,EAAE;QACtE,OAAO;KACR;IAED,MAAM,uBAAuB,EAAE,CAAC;AAClC,CAAC;AAVD,kEAUC;AAED,KAAK,UAAU,uBAAuB;IACpC,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,EAAE;QACtC,OAAO;KACR;IAED,OAAO,CAAC,KAAK,CACX,eAAK,CAAC,GAAG,CACP,kFAAkF,eAAK,CAAC,KAAK,CAC3F,aAAa,CACd,yBAAyB,CAC3B,CACF,CAAC;IACF,OAAO,CAAC,KAAK,CACX,yEAAyE,CAC1E,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,IAAA,sBAAa,EACzC,qCAAqC,CACtC,CAAC;IACF,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO;KACR;IAED,uBAAuB,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,uBAAuB;IAC9B,4CAA4C;IAC5C,IAAI,mBAA2B,CAAC;IAChC,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE;QAClC,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;KACpD;SAAM;QACL,mBAAmB,GAAG,EAAE,CAAC;KAC1B;IAED,MAAM,UAAU,GAAG,wBAAwB,CAAC,mBAAmB,CAAC,CAAC;IAEjE,IAAI;QACF,YAAE,CAAC,cAAc,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;KAClD;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,aAAK,EAAC,6BAA6B,iBAAiB,IAAI,EAAE,GAAG,CAAC,CAAC;KAChE;IAED,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EACxB,0CAA0C,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAC3E,CAAC;IACF,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CACP,sEAAsE,CACvE,CACF,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,wBAAwB,CAAC,mBAA2B;IAC3D,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IACE,mBAAmB,KAAK,EAAE;QAC1B,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,EAC5D;QACA,sEAAsE;QACtE,+CAA+C;QAC/C,OAAO,IAAI,IAAI,CAAC;KACjB;IAED,IAAI,mBAAmB,KAAK,EAAE,EAAE;QAC9B,+FAA+F;QAC/F,4BAA4B;QAC5B,OAAO,IAAI,IAAI,CAAC;KACjB;IAED,OAAO,IAAI,6BAA6B,wBAAY,IAAI,CAAC;IACzD,OAAO,IAAI,2BAA2B,CAAC;IAEvC,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -27,10 +27,10 @@ const path_1 = __importDefault(require("path"));
|
|
|
27
27
|
const constants_1 = require("../../constants");
|
|
28
28
|
const exec_1 = require("../../exec");
|
|
29
29
|
const file = __importStar(require("../../file"));
|
|
30
|
-
const
|
|
30
|
+
const utils_1 = require("../../utils");
|
|
31
31
|
function copy(argv, config) {
|
|
32
32
|
const verbose = argv.verbose === true;
|
|
33
|
-
const modTargetDirectoryName = (0,
|
|
33
|
+
const modTargetDirectoryName = (0, utils_1.getModTargetDirectoryName)(config);
|
|
34
34
|
const modTargetPath = path_1.default.join(config.modsDirectory, modTargetDirectoryName);
|
|
35
35
|
compileAndCopy(constants_1.MOD_SOURCE_PATH, modTargetPath, verbose);
|
|
36
36
|
}
|
|
@@ -42,7 +42,8 @@ function compileAndCopy(modSourcePath, modTargetPath, verbose) {
|
|
|
42
42
|
}
|
|
43
43
|
exports.compileAndCopy = compileAndCopy;
|
|
44
44
|
function compile(verbose) {
|
|
45
|
-
(0,
|
|
45
|
+
const tstlArgs = (0, utils_1.getTSTLArgs)(false);
|
|
46
|
+
(0, exec_1.execShell)("node", tstlArgs, verbose);
|
|
46
47
|
console.log("Mod compiled successfully.");
|
|
47
48
|
}
|
|
48
49
|
function copyMod(modSourcePath, modTargetPath, verbose) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy.js","sourceRoot":"","sources":["../../../../src/commands/copy/copy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,+CAAkD;AAClD,qCAAuC;AACvC,iDAAmC;AAEnC,
|
|
1
|
+
{"version":3,"file":"copy.js","sourceRoot":"","sources":["../../../../src/commands/copy/copy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,+CAAkD;AAClD,qCAAuC;AACvC,iDAAmC;AAEnC,uCAAqE;AAErE,SAAgB,IAAI,CAAC,IAA6B,EAAE,MAAc;IAChE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IAEtC,MAAM,sBAAsB,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;IAE9E,cAAc,CAAC,2BAAe,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC;AAPD,oBAOC;AAED,SAAgB,cAAc,CAC5B,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,OAAO,CAAC,OAAO,CAAC,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AARD,wCAQC;AAED,SAAS,OAAO,CAAC,OAAgB;IAC/B,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;IACpC,IAAA,gBAAS,EAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,OAAO,CACd,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;QAC9B,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;KACpD;IACD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC1C,CAAC"}
|
|
@@ -27,14 +27,14 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
27
27
|
const constants_1 = require("../../constants");
|
|
28
28
|
const file = __importStar(require("../../file"));
|
|
29
29
|
const prompt_1 = require("../../prompt");
|
|
30
|
-
const
|
|
30
|
+
const utils_1 = require("../../utils");
|
|
31
31
|
async function checkIfProjectPathExists(projectPath, verbose) {
|
|
32
32
|
if (projectPath !== constants_1.CWD && file.exists(projectPath)) {
|
|
33
33
|
const fileType = file.isDir(projectPath) ? "directory" : "file";
|
|
34
34
|
console.log(`A ${fileType} already exists with a name of "${chalk_1.default.green(projectPath)}".`);
|
|
35
35
|
const shouldDelete = await (0, prompt_1.getInputYesNo)("Do you want me to delete it?");
|
|
36
36
|
if (!shouldDelete) {
|
|
37
|
-
(0,
|
|
37
|
+
(0, utils_1.error)("Ok then. Good-bye.");
|
|
38
38
|
}
|
|
39
39
|
file.deleteFileOrDirectory(projectPath, verbose);
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkIfProjectPathExists.js","sourceRoot":"","sources":["../../../../src/commands/init/checkIfProjectPathExists.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAsC;AACtC,iDAAmC;AACnC,yCAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"checkIfProjectPathExists.js","sourceRoot":"","sources":["../../../../src/commands/init/checkIfProjectPathExists.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAsC;AACtC,iDAAmC;AACnC,yCAA6C;AAC7C,uCAAoC;AAE7B,KAAK,UAAU,wBAAwB,CAC5C,WAAmB,EACnB,OAAgB;IAEhB,IAAI,WAAW,KAAK,eAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;QAChE,OAAO,CAAC,GAAG,CACT,KAAK,QAAQ,mCAAmC,eAAK,CAAC,KAAK,CACzD,WAAW,CACZ,IAAI,CACN,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,IAAA,sBAAa,EAAC,8BAA8B,CAAC,CAAC;QAEzE,IAAI,CAAC,YAAY,EAAE;YACjB,IAAA,aAAK,EAAC,oBAAoB,CAAC,CAAC;SAC7B;QAED,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;KAClD;AACH,CAAC;AApBD,4DAoBC"}
|
|
@@ -28,7 +28,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
28
28
|
const constants_1 = require("../../constants");
|
|
29
29
|
const file = __importStar(require("../../file"));
|
|
30
30
|
const prompt_1 = require("../../prompt");
|
|
31
|
-
const
|
|
31
|
+
const utils_1 = require("../../utils");
|
|
32
32
|
async function checkModTargetDirectory(modsDirectory, projectName, verbose) {
|
|
33
33
|
const modTargetPath = path_1.default.join(modsDirectory, projectName);
|
|
34
34
|
if (!file.exists(modTargetPath)) {
|
|
@@ -38,7 +38,7 @@ async function checkModTargetDirectory(modsDirectory, projectName, verbose) {
|
|
|
38
38
|
console.error(`When you run ${constants_1.PROJECT_NAME}, it will want to create a directory here so that it can sync it with your project folder.`);
|
|
39
39
|
const shouldDeleteDirectory = await (0, prompt_1.getInputYesNo)("Should I delete the existing directory for you? (Make sure that it does not contain anything important first.)");
|
|
40
40
|
if (!shouldDeleteDirectory) {
|
|
41
|
-
(0,
|
|
41
|
+
(0, utils_1.error)("Ok then. You delete it yourself. Good bye.");
|
|
42
42
|
}
|
|
43
43
|
file.deleteFileOrDirectory(modTargetPath, verbose);
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkModTargetDirectory.js","sourceRoot":"","sources":["../../../../src/commands/init/checkModTargetDirectory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAA+C;AAC/C,iDAAmC;AACnC,yCAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"checkModTargetDirectory.js","sourceRoot":"","sources":["../../../../src/commands/init/checkModTargetDirectory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAA+C;AAC/C,iDAAmC;AACnC,yCAA6C;AAC7C,uCAAoC;AAE7B,KAAK,UAAU,uBAAuB,CAC3C,aAAqB,EACrB,WAAmB,EACnB,OAAgB;IAEhB,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;QAC/B,OAAO;KACR;IAED,OAAO,CAAC,KAAK,CACX,kCAAkC,eAAK,CAAC,KAAK,CAC3C,aAAa,CACd,mBAAmB,CACrB,CAAC;IACF,OAAO,CAAC,KAAK,CACX,gBAAgB,wBAAY,4FAA4F,CACzH,CAAC;IAEF,MAAM,qBAAqB,GAAG,MAAM,IAAA,sBAAa,EAC/C,gHAAgH,CACjH,CAAC;IAEF,IAAI,CAAC,qBAAqB,EAAE;QAC1B,IAAA,aAAK,EAAC,4CAA4C,CAAC,CAAC;KACrD;IAED,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;AA5BD,0DA4BC"}
|
|
@@ -32,7 +32,7 @@ const constants_1 = require("../../constants");
|
|
|
32
32
|
const exec_1 = require("../../exec");
|
|
33
33
|
const file = __importStar(require("../../file"));
|
|
34
34
|
const prompt_1 = require("../../prompt");
|
|
35
|
-
const
|
|
35
|
+
const utils_1 = require("../../utils");
|
|
36
36
|
const REQUIRED_GIT_MAJOR_VERSION = 2;
|
|
37
37
|
const REQUIRED_GIT_MINOR_VERSION = 30;
|
|
38
38
|
async function createMod(projectName, projectPath, createNewDir, modsDirectory, saveSlot, skipNPMInstall, verbose) {
|
|
@@ -42,15 +42,33 @@ async function createMod(projectName, projectPath, createNewDir, modsDirectory,
|
|
|
42
42
|
const config = configFile.createObject(modsDirectory, saveSlot);
|
|
43
43
|
configFile.createFile(projectPath, config, verbose);
|
|
44
44
|
const targetModDirectory = path_1.default.join(config.modsDirectory, projectName);
|
|
45
|
+
await initGitRepository(projectPath, projectName, verbose);
|
|
45
46
|
makeSubdirectories(projectPath, verbose);
|
|
46
47
|
copyStaticFiles(projectPath, verbose);
|
|
47
48
|
copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose);
|
|
48
49
|
updateNodeModules(projectPath, verbose);
|
|
49
|
-
await initGitRepository(projectPath, projectName, verbose);
|
|
50
50
|
installNodeModules(projectPath, skipNPMInstall, verbose);
|
|
51
51
|
console.log(`Successfully created mod: ${chalk_1.default.green(projectName)}`);
|
|
52
52
|
}
|
|
53
53
|
exports.createMod = createMod;
|
|
54
|
+
async function initGitRepository(projectPath, projectName, verbose) {
|
|
55
|
+
if (!command_exists_1.default.sync("git")) {
|
|
56
|
+
console.log('Git does not seem to be installed. (The "git" command is not in the path.) Skipping Git-related things.');
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
checkOldGitVersion(verbose);
|
|
60
|
+
const remoteURL = await getGitRemoteURL(projectName);
|
|
61
|
+
if (remoteURL === "") {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
(0, exec_1.execShell)("git", ["init"], verbose, false, projectPath);
|
|
65
|
+
(0, exec_1.execShell)("git", ["branch", "-M", "main"], verbose, false, projectPath);
|
|
66
|
+
(0, exec_1.execShell)("git", ["remote", "add", "origin", remoteURL], verbose, false, projectPath);
|
|
67
|
+
if (isGitNameAndEmailConfigured(verbose)) {
|
|
68
|
+
(0, exec_1.execShell)("git", ["add", "--all"], verbose, false, projectPath);
|
|
69
|
+
(0, exec_1.execShell)("git", ["commit", "--message", `${constants_1.PROJECT_NAME} template`], verbose, false, projectPath);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
54
72
|
function makeSubdirectories(projectPath, verbose) {
|
|
55
73
|
// The "src" directory is created during copying of static files
|
|
56
74
|
for (const subdirectory of ["mod"]) {
|
|
@@ -143,24 +161,6 @@ function updateNodeModules(projectPath, verbose) {
|
|
|
143
161
|
console.log("Finding out the latest versions of the NPM packages...");
|
|
144
162
|
(0, exec_1.execShell)("npx", ["npm-check-updates", "--upgrade", "--packageFile", "package.json"], verbose, false, projectPath);
|
|
145
163
|
}
|
|
146
|
-
async function initGitRepository(projectPath, projectName, verbose) {
|
|
147
|
-
if (!command_exists_1.default.sync("git")) {
|
|
148
|
-
console.log('Git does not seem to be installed. (The "git" command is not in the path.) Skipping Git-related things.');
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
checkOldGitVersion(verbose);
|
|
152
|
-
const remoteURL = await getGitRemoteURL(projectName);
|
|
153
|
-
if (remoteURL === "") {
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
|
-
(0, exec_1.execShell)("git", ["init"], verbose, false, projectPath);
|
|
157
|
-
(0, exec_1.execShell)("git", ["branch", "-M", "main"], verbose, false, projectPath);
|
|
158
|
-
(0, exec_1.execShell)("git", ["remote", "add", "origin", remoteURL], verbose, false, projectPath);
|
|
159
|
-
if (isGitNameAndEmailConfigured(verbose)) {
|
|
160
|
-
(0, exec_1.execShell)("git", ["add", "--all"], verbose, false, projectPath);
|
|
161
|
-
(0, exec_1.execShell)("git", ["commit", "--message", `${constants_1.PROJECT_NAME} template`], verbose, false, projectPath);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
164
|
async function getGitRemoteURL(projectName) {
|
|
165
165
|
const guessedRemoteURL = guessRemoteURL(projectName);
|
|
166
166
|
if (guessedRemoteURL !== undefined) {
|
|
@@ -181,10 +181,10 @@ function checkOldGitVersion(verbose) {
|
|
|
181
181
|
const [, stdout] = (0, exec_1.execShell)("git", ["--version"], verbose);
|
|
182
182
|
const outputPrefix = "git version ";
|
|
183
183
|
if (!stdout.startsWith(outputPrefix)) {
|
|
184
|
-
(0,
|
|
184
|
+
(0, utils_1.error)(`Failed to parse the output from the "git --version" command: ${stdout}`);
|
|
185
185
|
}
|
|
186
186
|
const gitVersionString = stdout.slice(outputPrefix.length);
|
|
187
|
-
const [majorVersion, minorVersion] = (0,
|
|
187
|
+
const [majorVersion, minorVersion] = (0, utils_1.parseSemVer)(gitVersionString);
|
|
188
188
|
if (majorVersion >= REQUIRED_GIT_MAJOR_VERSION &&
|
|
189
189
|
minorVersion >= REQUIRED_GIT_MINOR_VERSION) {
|
|
190
190
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../src/commands/init/createMod.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,oEAA2C;AAC3C,gDAAwB;AACxB,gDAAwB;AACxB,6DAA+C;AAC/C,+CAeyB;AACzB,qCAAuC;AACvC,iDAAmC;AACnC,yCAA6D;AAE7D,
|
|
1
|
+
{"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../src/commands/init/createMod.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
28
28
|
const constants_1 = require("../../constants");
|
|
29
29
|
const file = __importStar(require("../../file"));
|
|
30
30
|
const prompt_1 = require("../../prompt");
|
|
31
|
-
const
|
|
31
|
+
const utils_1 = require("../../utils");
|
|
32
32
|
const MODS = "mods";
|
|
33
33
|
const DEFAULT_MODS_PATH_WINDOWS = path_1.default.join("C:", "Program Files (x86)", "Steam", "steamapps", "common", "The Binding of Isaac Rebirth", MODS);
|
|
34
34
|
// This is a subdirectory of $HOME
|
|
@@ -46,16 +46,16 @@ async function getModsDir(argv) {
|
|
|
46
46
|
console.error(`Failed to find your mods directory at: ${chalk_1.default.green(defaultModsPath)}`);
|
|
47
47
|
const modsDir = await (0, prompt_1.getInputString)(`Enter the full path to the "${MODS}" directory on your system, which should be next to your "isaac-ng.exe" program:`);
|
|
48
48
|
if (modsDir === "") {
|
|
49
|
-
(0,
|
|
49
|
+
(0, utils_1.error)("Error: You did not provide a response; exiting.");
|
|
50
50
|
}
|
|
51
51
|
if (!file.exists(modsDir)) {
|
|
52
|
-
(0,
|
|
52
|
+
(0, utils_1.error)(`Error: The directory of "${chalk_1.default.green(modsDir)}" does not exist. Exiting.`);
|
|
53
53
|
}
|
|
54
54
|
if (!file.isDir(modsDir)) {
|
|
55
|
-
(0,
|
|
55
|
+
(0, utils_1.error)(`Error: The path of "${chalk_1.default.green(modsDir)}" is not a directory. Exiting.`);
|
|
56
56
|
}
|
|
57
57
|
if (path_1.default.basename(modsDir) !== MODS) {
|
|
58
|
-
(0,
|
|
58
|
+
(0, utils_1.error)(`Error: You entered a path of "${chalk_1.default.green(modsDir)}", but you need to input a directory with a name of "${MODS}" at the end. Exiting.`);
|
|
59
59
|
}
|
|
60
60
|
return modsDir;
|
|
61
61
|
}
|
|
@@ -69,7 +69,7 @@ function getDefaultModsPath(platform) {
|
|
|
69
69
|
return DEFAULT_MODS_PATH_LINUX;
|
|
70
70
|
}
|
|
71
71
|
default: {
|
|
72
|
-
(0,
|
|
72
|
+
(0, utils_1.error)(`There does not exist a default mod path for the platform of: ${chalk_1.default.green(platform)}`);
|
|
73
73
|
return "";
|
|
74
74
|
}
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getModsDir.js","sourceRoot":"","sources":["../../../../src/commands/init/getModsDir.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAA2C;AAC3C,iDAAmC;AACnC,yCAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"getModsDir.js","sourceRoot":"","sources":["../../../../src/commands/init/getModsDir.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAA2C;AAC3C,iDAAmC;AACnC,yCAA8C;AAC9C,uCAAoC;AAEpC,MAAM,IAAI,GAAG,MAAM,CAAC;AAEpB,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CACzC,IAAI,EACJ,qBAAqB,EACrB,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEF,kCAAkC;AAClC,MAAM,uBAAuB,GAAG,cAAI,CAAC,IAAI,CACvC,oBAAQ,EACR,QAAQ,EACR,OAAO,EACP,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEK,KAAK,UAAU,UAAU,CAC9B,IAA6B;IAE7B,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;QACpC,2DAA2D;QAC3D,gDAAgD;QAChD,OAAO,IAAI,CAAC,aAAuB,CAAC;KACrC;IAED,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE7D,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE;QAC/D,OAAO,eAAe,CAAC;KACxB;IAED,OAAO,CAAC,KAAK,CACX,0CAA0C,eAAK,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CACzE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAc,EAClC,+BAA+B,IAAI,kFAAkF,CACtH,CAAC;IAEF,IAAI,OAAO,KAAK,EAAE,EAAE;QAClB,IAAA,aAAK,EAAC,iDAAiD,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACzB,IAAA,aAAK,EACH,4BAA4B,eAAK,CAAC,KAAK,CACrC,OAAO,CACR,4BAA4B,CAC9B,CAAC;KACH;IAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACxB,IAAA,aAAK,EACH,uBAAuB,eAAK,CAAC,KAAK,CAChC,OAAO,CACR,gCAAgC,CAClC,CAAC;KACH;IAED,IAAI,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;QACnC,IAAA,aAAK,EACH,iCAAiC,eAAK,CAAC,KAAK,CAC1C,OAAO,CACR,wDAAwD,IAAI,wBAAwB,CACtF,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAnDD,gCAmDC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,QAAQ,QAAQ,EAAE;QAChB,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,yBAAyB,CAAC;SAClC;QAED,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,uBAAuB,CAAC;SAChC;QAED,OAAO,CAAC,CAAC;YACP,IAAA,aAAK,EACH,gEAAgE,eAAK,CAAC,KAAK,CACzE,QAAQ,CACT,EAAE,CACJ,CAAC;YACF,OAAO,EAAE,CAAC;SACX;KACF;AACH,CAAC"}
|
|
@@ -8,7 +8,7 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const constants_1 = require("../../constants");
|
|
10
10
|
const prompt_1 = require("../../prompt");
|
|
11
|
-
const
|
|
11
|
+
const utils_1 = require("../../utils");
|
|
12
12
|
// From: https://gist.github.com/doctaphred/d01d05291546186941e1b7ddc02034d3
|
|
13
13
|
const ILLEGAL_CHARACTERS_FOR_WINDOWS_FILENAMES = [
|
|
14
14
|
"<",
|
|
@@ -74,7 +74,7 @@ function validateProjectName(projectName) {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
if ((0,
|
|
77
|
+
if ((0, utils_1.hasWhiteSpace)(projectName)) {
|
|
78
78
|
console.error('Error: The project name has whitespace in it, which is not allowed. Use kebab-case for your project name. (e.g. "green-candle")');
|
|
79
79
|
return false;
|
|
80
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getProjectPath.js","sourceRoot":"","sources":["../../../../src/commands/init/getProjectPath.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAA8D;AAC9D,yCAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"getProjectPath.js","sourceRoot":"","sources":["../../../../src/commands/init/getProjectPath.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ const JSONC = __importStar(require("jsonc-parser"));
|
|
|
28
28
|
const path_1 = __importDefault(require("path"));
|
|
29
29
|
const exec_1 = require("../../exec");
|
|
30
30
|
const file = __importStar(require("../../file"));
|
|
31
|
-
const
|
|
31
|
+
const utils_1 = require("../../utils");
|
|
32
32
|
function installVSCodeExtensions(projectPath, VSCodeCommand, verbose) {
|
|
33
33
|
const extensions = getExtensionsFromJSON(projectPath);
|
|
34
34
|
for (const extensionName of extensions) {
|
|
@@ -47,7 +47,7 @@ function getExtensionsFromJSON(projectPath) {
|
|
|
47
47
|
extensionsJSON = JSONC.parse(extensionsJSONRaw);
|
|
48
48
|
}
|
|
49
49
|
catch (err) {
|
|
50
|
-
(0,
|
|
50
|
+
(0, utils_1.error)(`Failed to parse the "${chalk_1.default.green(extensionsJSONPath)}" file:`, err);
|
|
51
51
|
}
|
|
52
52
|
return extensionsJSON.recommendations;
|
|
53
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installVSCodeExtensions.js","sourceRoot":"","sources":["../../../../src/commands/init/installVSCodeExtensions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,oDAAsC;AACtC,gDAAwB;AACxB,qCAAuC;AACvC,iDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"installVSCodeExtensions.js","sourceRoot":"","sources":["../../../../src/commands/init/installVSCodeExtensions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,oDAAsC;AACtC,gDAAwB;AACxB,qCAAuC;AACvC,iDAAmC;AACnC,uCAAoC;AAEpC,SAAgB,uBAAuB,CACrC,WAAmB,EACnB,aAAqB,EACrB,OAAgB;IAEhB,MAAM,UAAU,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACtD,KAAK,MAAM,aAAa,IAAI,UAAU,EAAE;QACtC,IAAA,gBAAS,EAAC,aAAa,EAAE,CAAC,qBAAqB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;KAC3E;AACH,CAAC;AATD,0DASC;AAMD,SAAS,qBAAqB,CAAC,WAAmB;IAChD,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAClC,WAAW,EACX,SAAS,EACT,iBAAiB,CAClB,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE;QACpC,OAAO,EAAE,CAAC;KACX;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAExD,IAAI,cAA8B,CAAC;IACnC,IAAI;QACF,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAmB,CAAC;KACnE;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,aAAK,EACH,wBAAwB,eAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAChE,GAAG,CACJ,CAAC;KACH;IAED,OAAO,cAAc,CAAC,eAAe,CAAC;AACxC,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.promptSaveSlot = void 0;
|
|
4
4
|
const prompt_1 = require("../../prompt");
|
|
5
|
-
const
|
|
5
|
+
const utils_1 = require("../../utils");
|
|
6
6
|
async function promptSaveSlot(argv) {
|
|
7
7
|
if (argv.saveSlot !== undefined) {
|
|
8
8
|
// They specified the "--save-slot" command-line flag,
|
|
@@ -11,7 +11,7 @@ async function promptSaveSlot(argv) {
|
|
|
11
11
|
}
|
|
12
12
|
const saveSlot = await (0, prompt_1.getInputInt)("In-game, will you test your mod on save slot 1, 2, or 3?");
|
|
13
13
|
if (saveSlot !== 1 && saveSlot !== 2 && saveSlot !== 3) {
|
|
14
|
-
(0,
|
|
14
|
+
(0, utils_1.error)("Error: You must choose a number between 1 and 3.");
|
|
15
15
|
}
|
|
16
16
|
return saveSlot;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptSaveSlot.js","sourceRoot":"","sources":["../../../../src/commands/init/promptSaveSlot.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,
|
|
1
|
+
{"version":3,"file":"promptSaveSlot.js","sourceRoot":"","sources":["../../../../src/commands/init/promptSaveSlot.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,uCAAoC;AAE7B,KAAK,UAAU,cAAc,CAClC,IAA6B;IAE7B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;QAC/B,sDAAsD;QACtD,gDAAgD;QAChD,OAAO,IAAI,CAAC,QAAkB,CAAC;KAChC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAW,EAChC,0DAA0D,CAC3D,CAAC;IAEF,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE;QACtD,IAAA,aAAK,EAAC,kDAAkD,CAAC,CAAC;KAC3D;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAlBD,wCAkBC"}
|
|
@@ -27,7 +27,7 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
27
27
|
const JSONC = __importStar(require("jsonc-parser"));
|
|
28
28
|
const constants_1 = require("../../constants");
|
|
29
29
|
const file = __importStar(require("../../file"));
|
|
30
|
-
const
|
|
30
|
+
const utils_1 = require("../../utils");
|
|
31
31
|
function getTSConfigInclude() {
|
|
32
32
|
const tsConfigRaw = file.read(constants_1.TSCONFIG_PATH);
|
|
33
33
|
let tsConfig;
|
|
@@ -35,13 +35,13 @@ function getTSConfigInclude() {
|
|
|
35
35
|
tsConfig = JSONC.parse(tsConfigRaw);
|
|
36
36
|
}
|
|
37
37
|
catch (err) {
|
|
38
|
-
(0,
|
|
38
|
+
(0, utils_1.error)(`Failed to parse "${chalk_1.default.green(constants_1.TSCONFIG_PATH)}":`, err);
|
|
39
39
|
}
|
|
40
40
|
if (!Object.prototype.hasOwnProperty.call(tsConfig, "include")) {
|
|
41
|
-
(0,
|
|
41
|
+
(0, utils_1.error)(`Your "${chalk_1.default.green(constants_1.TSCONFIG_PATH)}" file does not have an include directive, which is surely a mistake. Delete the file and re-run isaacscript.`);
|
|
42
42
|
}
|
|
43
43
|
if (tsConfig.include.length === 0) {
|
|
44
|
-
(0,
|
|
44
|
+
(0, utils_1.error)(`Your "${chalk_1.default.green(constants_1.TSCONFIG_PATH)}" file has an empty include directive, which is surely a mistake. Delete the file and re-run isaacscript.`);
|
|
45
45
|
}
|
|
46
46
|
return tsConfig.include[0];
|
|
47
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTSConfigInclude.js","sourceRoot":"","sources":["../../../../src/commands/monitor/getTSConfigInclude.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,oDAAsC;AACtC,+CAAgD;AAChD,iDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"getTSConfigInclude.js","sourceRoot":"","sources":["../../../../src/commands/monitor/getTSConfigInclude.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,oDAAsC;AACtC,+CAAgD;AAChD,iDAAmC;AACnC,uCAAoC;AAEpC,SAAgB,kBAAkB;IAChC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAa,CAAC,CAAC;IAC7C,IAAI,QAAkC,CAAC;IACvC,IAAI;QACF,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAA6B,CAAC;KACjE;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,aAAK,EAAC,oBAAoB,eAAK,CAAC,KAAK,CAAC,yBAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAChE;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;QAC9D,IAAA,aAAK,EACH,SAAS,eAAK,CAAC,KAAK,CAClB,yBAAa,CACd,+GAA+G,CACjH,CAAC;KACH;IACD,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACjC,IAAA,aAAK,EACH,SAAS,eAAK,CAAC,KAAK,CAClB,yBAAa,CACd,2GAA2G,CAC7G,CAAC;KACH;IAED,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAzBD,gDAyBC"}
|
|
@@ -28,7 +28,7 @@ const child_process_1 = require("child_process");
|
|
|
28
28
|
const path_1 = __importDefault(require("path"));
|
|
29
29
|
const constants_1 = require("../../constants");
|
|
30
30
|
const file = __importStar(require("../../file"));
|
|
31
|
-
const
|
|
31
|
+
const utils_1 = require("../../utils");
|
|
32
32
|
const copyWatcherMod_1 = require("./copyWatcherMod");
|
|
33
33
|
const getTSConfigInclude_1 = require("./getTSConfigInclude");
|
|
34
34
|
const notifyGame = __importStar(require("./notifyGame"));
|
|
@@ -46,7 +46,7 @@ function monitor(argv, config) {
|
|
|
46
46
|
// Read the "tsconfig.json" file
|
|
47
47
|
const tsConfigInclude = (0, getTSConfigInclude_1.getTSConfigInclude)();
|
|
48
48
|
const resolvedIncludePath = path_1.default.resolve(constants_1.CWD, tsConfigInclude);
|
|
49
|
-
const modTargetDirectoryName = (0,
|
|
49
|
+
const modTargetDirectoryName = (0, utils_1.getModTargetDirectoryName)(config);
|
|
50
50
|
const modTargetPath = path_1.default.join(config.modsDirectory, modTargetDirectoryName);
|
|
51
51
|
// Prepare the IsaacScript watcher mod
|
|
52
52
|
(0, copyWatcherMod_1.copyWatcherMod)(config, verbose);
|
|
@@ -61,7 +61,7 @@ function monitor(argv, config) {
|
|
|
61
61
|
// Subprocess #2 - The mod directory syncer
|
|
62
62
|
spawnModDirectorySyncer(config);
|
|
63
63
|
// Subprocess #3 - tstl --watch (to automatically convert TypeScript to Lua)
|
|
64
|
-
spawnTSTLWatcher(
|
|
64
|
+
spawnTSTLWatcher();
|
|
65
65
|
// Also, start constantly pinging the watcher mod
|
|
66
66
|
setInterval(() => {
|
|
67
67
|
notifyGame.ping();
|
|
@@ -79,7 +79,7 @@ function spawnModDirectorySyncer(config) {
|
|
|
79
79
|
const processName = "modDirectorySyncer";
|
|
80
80
|
const processDescription = "Directory syncer";
|
|
81
81
|
const processPath = path_1.default.join(__dirname, processName, processName);
|
|
82
|
-
const modTargetName = (0,
|
|
82
|
+
const modTargetName = (0, utils_1.getModTargetDirectoryName)(config);
|
|
83
83
|
const modTargetPath = path_1.default.join(config.modsDirectory, modTargetName);
|
|
84
84
|
const directorySycner = (0, child_process_1.fork)(processPath, [constants_1.MOD_SOURCE_PATH, modTargetPath]);
|
|
85
85
|
directorySycner.on("message", (msg) => {
|
|
@@ -94,33 +94,18 @@ function spawnModDirectorySyncer(config) {
|
|
|
94
94
|
}
|
|
95
95
|
});
|
|
96
96
|
directorySycner.on("close", (code) => {
|
|
97
|
-
(0,
|
|
97
|
+
(0, utils_1.error)(`Error: ${processDescription} subprocess closed with code: ${code}`);
|
|
98
98
|
});
|
|
99
99
|
directorySycner.on("exit", (code) => {
|
|
100
|
-
(0,
|
|
100
|
+
(0, utils_1.error)(`Error: ${processDescription} subprocess exited with code: ${code}`);
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
|
-
function spawnTSTLWatcher(
|
|
103
|
+
function spawnTSTLWatcher() {
|
|
104
104
|
const processDescription = "tstl";
|
|
105
|
-
const
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
tstlArgs.push('\'{ "name": "./node_modules/isaacscript/src/plugins/addCrashDebugStatements.ts" }\'');
|
|
110
|
-
}
|
|
111
|
-
let tstl;
|
|
112
|
-
if (runningFromLocalPath()) {
|
|
113
|
-
const tstlPath = path_1.default.join(constants_1.CWD, "..", "isaacscript", "node_modules", "typescript-to-lua", "dist", "tstl.js");
|
|
114
|
-
tstl = (0, child_process_1.spawn)("node", [tstlPath, ...tstlArgs], {
|
|
115
|
-
shell: true,
|
|
116
|
-
cwd: constants_1.CWD,
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
tstl = (0, child_process_1.spawn)("npx", ["tstl", ...tstlArgs], {
|
|
121
|
-
shell: true,
|
|
122
|
-
});
|
|
123
|
-
}
|
|
105
|
+
const tstlArgs = (0, utils_1.getTSTLArgs)(true);
|
|
106
|
+
const tstl = (0, child_process_1.spawn)("node", tstlArgs, {
|
|
107
|
+
shell: true,
|
|
108
|
+
});
|
|
124
109
|
tstl.stdout.on("data", (data) => {
|
|
125
110
|
const msg = data.toString().trim();
|
|
126
111
|
if (msg.includes("Starting compilation in watch mode...")) {
|
|
@@ -148,17 +133,10 @@ function spawnTSTLWatcher(argv) {
|
|
|
148
133
|
notifyGame.msg(`Error: ${msg}`);
|
|
149
134
|
});
|
|
150
135
|
tstl.on("close", (code) => {
|
|
151
|
-
(0,
|
|
136
|
+
(0, utils_1.error)(`Error: ${processDescription} subprocess exited with code: ${code}`);
|
|
152
137
|
});
|
|
153
138
|
tstl.on("exit", (code) => {
|
|
154
|
-
(0,
|
|
139
|
+
(0, utils_1.error)(`Error: ${processDescription} subprocess exited with code: ${code}`);
|
|
155
140
|
});
|
|
156
141
|
}
|
|
157
|
-
// Returns whether or not IsaacScript is a local path in "package.json"
|
|
158
|
-
// e.g. "isaacscript": "../isaacscript"
|
|
159
|
-
function runningFromLocalPath() {
|
|
160
|
-
const packageJSONPath = path_1.default.join(constants_1.CWD, constants_1.PACKAGE_JSON);
|
|
161
|
-
const packageJSON = file.read(packageJSONPath);
|
|
162
|
-
return packageJSON.includes('"isaacscript": "file:../isaacscript"');
|
|
163
|
-
}
|
|
164
142
|
//# sourceMappingURL=monitor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../../src/commands/monitor/monitor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,
|
|
1
|
+
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../../src/commands/monitor/monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ping = exports.command = exports.msg = void 0;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
const
|
|
8
|
+
const utils_1 = require("../../utils");
|
|
9
9
|
const spawnSaveDatWriter_1 = require("./spawnSaveDatWriter");
|
|
10
10
|
function msg(data) {
|
|
11
11
|
const formattedData = data
|
|
@@ -21,7 +21,7 @@ function msg(data) {
|
|
|
21
21
|
return;
|
|
22
22
|
}
|
|
23
23
|
// Add a time prefix
|
|
24
|
-
const formattedLine = `[${(0,
|
|
24
|
+
const formattedLine = `[${(0, utils_1.getTime)()}] ${trimmedLine}`;
|
|
25
25
|
(0, spawnSaveDatWriter_1.sendMsgToSaveDatWriter)({
|
|
26
26
|
type: "msg",
|
|
27
27
|
data: formattedLine,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifyGame.js","sourceRoot":"","sources":["../../../../src/commands/monitor/notifyGame.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,
|
|
1
|
+
{"version":3,"file":"notifyGame.js","sourceRoot":"","sources":["../../../../src/commands/monitor/notifyGame.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uCAAsC;AACtC,6DAA8D;AAE9D,SAAgB,GAAG,CAAC,IAAY;IAC9B,MAAM,aAAa,GAAG,IAAI;SACvB,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,8CAA8C;SACrE,IAAI,EAAE,CAAC,CAAC,kBAAkB;IAE7B,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,WAAW,KAAK,EAAE,EAAE;YACtB,SAAS;SACV;QAED,8DAA8D;QAC9D,IAAI,WAAW,KAAK,4BAA4B,EAAE;YAChD,OAAO;SACR;QAED,oBAAoB;QACpB,MAAM,aAAa,GAAG,IAAI,IAAA,eAAO,GAAE,KAAK,WAAW,EAAE,CAAC;QAEtD,IAAA,2CAAsB,EAAC;YACrB,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;QAEH,4FAA4F;QAC5F,yFAAyF;QACzF,qBAAqB,CAAC,aAAa,CAAC,CAAC;KACtC;AACH,CAAC;AA5BD,kBA4BC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,IAAI,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,KAAK,IAAI,EAAE;QACnD,WAAW,GAAG,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACjC;SAAM,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;QACxC,WAAW,GAAG,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAC3B,CAAC;AAED,SAAgB,OAAO,CAAC,IAAY;IAClC,IAAA,2CAAsB,EAAC;QACrB,IAAI,EAAE,SAAS;QACf,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AALD,0BAKC;AAED,SAAgB,IAAI;IAClB,IAAA,2CAAsB,EAAC;QACrB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,EAAE;KACT,CAAC,CAAC;AACL,CAAC;AALD,oBAKC"}
|