isaacscript 3.6.4 → 3.6.6

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.
Files changed (65) hide show
  1. package/package.json +1 -2
  2. package/src/checkForWindowsTerminalBugs.js +3 -3
  3. package/src/checkForWindowsTerminalBugs.js.map +1 -1
  4. package/src/commands/check/check.js +8 -8
  5. package/src/commands/check/check.js.map +1 -1
  6. package/src/commands/copy/copy.js +5 -5
  7. package/src/commands/copy/copy.js.map +1 -1
  8. package/src/commands/init/checkIfProjectPathExists.js +5 -5
  9. package/src/commands/init/checkIfProjectPathExists.js.map +1 -1
  10. package/src/commands/init/checkModSubdirectory.js +2 -2
  11. package/src/commands/init/checkModSubdirectory.js.map +1 -1
  12. package/src/commands/init/checkModTargetDirectory.js +5 -5
  13. package/src/commands/init/checkModTargetDirectory.js.map +1 -1
  14. package/src/commands/init/createProject.js +27 -27
  15. package/src/commands/init/createProject.js.map +1 -1
  16. package/src/commands/init/getModsDir.js +4 -5
  17. package/src/commands/init/getModsDir.js.map +1 -1
  18. package/src/commands/init/installVSCodeExtensions.js +2 -2
  19. package/src/commands/init/installVSCodeExtensions.js.map +1 -1
  20. package/src/commands/monitor/copyWatcherMod.js +8 -8
  21. package/src/commands/monitor/copyWatcherMod.js.map +1 -1
  22. package/src/commands/monitor/monitor.js +12 -13
  23. package/src/commands/monitor/monitor.js.map +1 -1
  24. package/src/commands/monitor/notifyGame.js +2 -2
  25. package/src/commands/monitor/notifyGame.js.map +1 -1
  26. package/src/commands/monitor/saveDatWriter/saveDatWriter.js +6 -6
  27. package/src/commands/monitor/saveDatWriter/saveDatWriter.js.map +1 -1
  28. package/src/commands/monitor/touchWatcherSaveDatFiles.js +5 -5
  29. package/src/commands/monitor/touchWatcherSaveDatFiles.js.map +1 -1
  30. package/src/commands/publish/isaacscriptMod.js +23 -63
  31. package/src/commands/publish/isaacscriptMod.js.map +1 -1
  32. package/src/commands/publish/prePublish.js +79 -0
  33. package/src/commands/publish/prePublish.js.map +1 -0
  34. package/src/commands/publish/publish.js +14 -2
  35. package/src/commands/publish/publish.js.map +1 -1
  36. package/src/commands/publish/validate.js +58 -0
  37. package/src/commands/publish/validate.js.map +1 -0
  38. package/src/configFile.js +3 -3
  39. package/src/configFile.js.map +1 -1
  40. package/src/constants.js +5 -1
  41. package/src/constants.js.map +1 -1
  42. package/src/customStage.js +24 -23
  43. package/src/customStage.js.map +1 -1
  44. package/src/dev.js +3 -3
  45. package/src/dev.js.map +1 -1
  46. package/src/file.js +21 -13
  47. package/src/file.js.map +1 -1
  48. package/src/git.js +31 -23
  49. package/src/git.js.map +1 -1
  50. package/src/json.js +13 -3
  51. package/src/json.js.map +1 -1
  52. package/src/main.js +3 -1
  53. package/src/main.js.map +1 -1
  54. package/src/packageManager.js +3 -13
  55. package/src/packageManager.js.map +1 -1
  56. package/src/parseArgs.js +29 -1
  57. package/src/parseArgs.js.map +1 -1
  58. package/src/validateInIsaacScriptProject.js +6 -6
  59. package/src/validateInIsaacScriptProject.js.map +1 -1
  60. package/src/commands/monitor/constants.js +0 -5
  61. package/src/commands/monitor/constants.js.map +0 -1
  62. package/src/commands/publish/typeScript.js +0 -6
  63. package/src/commands/publish/typeScript.js.map +0 -1
  64. package/src/index.js +0 -10
  65. package/src/index.js.map +0 -1
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validate = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
+ const isaacscript_common_ts_1 = require("isaacscript-common-ts");
7
+ const constants_js_1 = require("../../constants.js");
8
+ const exec_js_1 = require("../../exec.js");
9
+ const file_js_1 = require("../../file.js");
10
+ const git_js_1 = require("../../git.js");
11
+ function validate(typeScript, setVersion, verbose) {
12
+ if (!(0, git_js_1.isGitRepository)(verbose)) {
13
+ (0, isaacscript_common_ts_1.error)("Failed to publish since the current working directory is not inside of a git repository.");
14
+ }
15
+ if (!(0, git_js_1.isGitClean)(verbose)) {
16
+ (0, isaacscript_common_ts_1.error)("Failed to publish since the Git repository was dirty. Before publishing, you must push any current changes to git. (Version commits should not contain any code changes.)");
17
+ }
18
+ if (!(0, file_js_1.fileExists)(constants_js_1.PACKAGE_JSON, verbose)) {
19
+ (0, isaacscript_common_ts_1.error)(`Failed to find the "${constants_js_1.PACKAGE_JSON}" file in the current working directory.`);
20
+ }
21
+ if (setVersion !== undefined && /^\d+\.\d+\.\d+$/.exec(setVersion) === null) {
22
+ (0, isaacscript_common_ts_1.error)(chalk_1.default.red(`The version of "${setVersion}" does not match the semantic versioning format.`));
23
+ }
24
+ if (typeScript) {
25
+ validateTypeScriptProject(verbose);
26
+ }
27
+ else {
28
+ validateIsaacScriptMod(verbose);
29
+ }
30
+ }
31
+ exports.validate = validate;
32
+ function validateTypeScriptProject(verbose) {
33
+ if (!isLoggedInToNPM(verbose)) {
34
+ (0, isaacscript_common_ts_1.error)('Failed to publish since you are not logged in to npm. Try doing "npm login".');
35
+ }
36
+ }
37
+ function isLoggedInToNPM(verbose) {
38
+ const { exitStatus } = (0, exec_js_1.execShellString)("npm whoami", verbose, true);
39
+ return exitStatus === 0;
40
+ }
41
+ function validateIsaacScriptMod(verbose) {
42
+ validateIsaacScriptOtherCopiesNotRunning(verbose);
43
+ }
44
+ function validateIsaacScriptOtherCopiesNotRunning(verbose) {
45
+ if (process.platform !== "win32") {
46
+ return;
47
+ }
48
+ // From: https://securityboulevard.com/2020/01/get-process-list-with-command-line-arguments/
49
+ const stdout = (0, exec_js_1.execPowershell)("Get-WmiObject Win32_Process -Filter \"name = 'node.exe'\" | Select-Object -ExpandProperty CommandLine", verbose);
50
+ const lines = stdout.split("\r\n");
51
+ const otherCopiesOfRunningIsaacScript = lines.filter((line) => line.includes("node.exe") &&
52
+ line.includes("isaacscript") &&
53
+ !line.includes("isaacscript publish"));
54
+ if (otherCopiesOfRunningIsaacScript.length > 0) {
55
+ (0, isaacscript_common_ts_1.error)(chalk_1.default.red(`Other copies of ${constants_js_1.PROJECT_NAME} appear to be running. You must close those copies before publishing.`));
56
+ }
57
+ }
58
+ //# sourceMappingURL=validate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/publish/validate.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,iEAA8C;AAC9C,qDAAgE;AAChE,2CAAgE;AAChE,2CAA2C;AAC3C,yCAA2D;AAE3D,SAAgB,QAAQ,CACtB,UAAmB,EACnB,UAA8B,EAC9B,OAAgB;IAEhB,IAAI,CAAC,IAAA,wBAAe,EAAC,OAAO,CAAC,EAAE;QAC7B,IAAA,6BAAK,EACH,0FAA0F,CAC3F,CAAC;KACH;IAED,IAAI,CAAC,IAAA,mBAAU,EAAC,OAAO,CAAC,EAAE;QACxB,IAAA,6BAAK,EACH,2KAA2K,CAC5K,CAAC;KACH;IAED,IAAI,CAAC,IAAA,oBAAU,EAAC,2BAAY,EAAE,OAAO,CAAC,EAAE;QACtC,IAAA,6BAAK,EACH,uBAAuB,2BAAY,0CAA0C,CAC9E,CAAC;KACH;IAED,IAAI,UAAU,KAAK,SAAS,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;QAC3E,IAAA,6BAAK,EACH,eAAK,CAAC,GAAG,CACP,mBAAmB,UAAU,kDAAkD,CAChF,CACF,CAAC;KACH;IAED,IAAI,UAAU,EAAE;QACd,yBAAyB,CAAC,OAAO,CAAC,CAAC;KACpC;SAAM;QACL,sBAAsB,CAAC,OAAO,CAAC,CAAC;KACjC;AACH,CAAC;AApCD,4BAoCC;AAED,SAAS,yBAAyB,CAAC,OAAgB;IACjD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;QAC7B,IAAA,6BAAK,EACH,8EAA8E,CAC/E,CAAC;KACH;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAAgB;IACvC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,yBAAe,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACpE,OAAO,UAAU,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAgB;IAC9C,wCAAwC,CAAC,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,wCAAwC,CAAC,OAAgB;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QAChC,OAAO;KACR;IAED,4FAA4F;IAC5F,MAAM,MAAM,GAAG,IAAA,wBAAc,EAC3B,uGAAuG,EACvG,OAAO,CACR,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,+BAA+B,GAAG,KAAK,CAAC,MAAM,CAClD,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACxC,CAAC;IACF,IAAI,+BAA+B,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,IAAA,6BAAK,EACH,eAAK,CAAC,GAAG,CACP,mBAAmB,2BAAY,uEAAuE,CACvG,CACF,CAAC;KACH;AACH,CAAC"}
package/src/configFile.js CHANGED
@@ -8,7 +8,7 @@ const Config_js_1 = require("./classes/Config.js");
8
8
  const getModsDir_js_1 = require("./commands/init/getModsDir.js");
9
9
  const promptSaveSlot_js_1 = require("./commands/init/promptSaveSlot.js");
10
10
  const constants_js_1 = require("./constants.js");
11
- const file = tslib_1.__importStar(require("./file.js"));
11
+ const file_js_1 = require("./file.js");
12
12
  const json_js_1 = require("./json.js");
13
13
  const NUM_INDENT_SPACES = 2;
14
14
  async function getConfigFromFile(args, typeScript) {
@@ -28,7 +28,7 @@ async function getConfigFromFile(args, typeScript) {
28
28
  }
29
29
  exports.getConfigFromFile = getConfigFromFile;
30
30
  function getExistingConfig(verbose) {
31
- if (!file.exists(constants_js_1.CONFIG_FILE_PATH, verbose)) {
31
+ if (!(0, file_js_1.fileExists)(constants_js_1.CONFIG_FILE_PATH, verbose)) {
32
32
  return undefined;
33
33
  }
34
34
  const config = (0, json_js_1.getJSONC)(constants_js_1.CONFIG_FILE_PATH, verbose);
@@ -57,7 +57,7 @@ function createConfigFile(projectPath, config, typeScript, verbose) {
57
57
  const configFilePath = node_path_1.default.join(projectPath, constants_js_1.CONFIG_FILE_NAME);
58
58
  // Add a newline at the end to satisfy Prettier.
59
59
  const configContents = JSON.stringify(config, undefined, NUM_INDENT_SPACES).concat("\n");
60
- file.write(configFilePath, configContents, verbose);
60
+ (0, file_js_1.writeFile)(configFilePath, configContents, verbose);
61
61
  }
62
62
  exports.createConfigFile = createConfigFile;
63
63
  //# sourceMappingURL=configFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/configFile.ts"],"names":[],"mappings":";;;;AAAA,iEAA8C;AAC9C,kEAA6B;AAC7B,mDAA6C;AAC7C,iEAA2D;AAC3D,yEAAmE;AACnE,iDAAyE;AACzE,wDAAkC;AAClC,uCAAqC;AAGrC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAErB,KAAK,UAAU,iBAAiB,CACrC,IAAU,EACV,UAAmB;IAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAE9B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE;QAChC,OAAO,cAAc,CAAC;KACvB;IAED,iFAAiF;IACjF,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAU,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,IAAA,kCAAc,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,kBAAM,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACxD,gBAAgB,CAAC,kBAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC;AApBD,8CAoBC;AAED,SAAS,iBAAiB,CAAC,OAAgB;IACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,+BAAgB,EAAE,OAAO,CAAC,EAAE;QAC3C,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,MAAM,GAAG,IAAA,kBAAQ,EAAC,+BAAgB,EAAE,OAAO,CAAC,CAAC;IACnD,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAEtC,OAAO,MAA2B,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CAAC,MAA+B;IACpE,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,SAAS,EAAE;QACzC,YAAY,CACV,eAAe,EACf,6EAA6E,CAC9E,CAAC;KACH;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QACpC,YAAY,CACV,UAAU,EACV,mEAAmE,CACpE,CAAC;KACH;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,WAAmB;IACtD,IAAA,6BAAK,EACH,QAAQ,+BAAgB,wBAAwB,KAAK,YAAY,WAAW,iBAAiB,CAC9F,CAAC;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,MAAc,EACd,UAAmB,EACnB,OAAgB;IAEhB,IAAI,UAAU,EAAE;QACd,OAAO;KACR;IAED,MAAM,cAAc,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,+BAAgB,CAAC,CAAC;IAEhE,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CACnC,MAAM,EACN,SAAS,EACT,iBAAiB,CAClB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEf,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AApBD,4CAoBC"}
1
+ {"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/configFile.ts"],"names":[],"mappings":";;;;AAAA,iEAA8C;AAC9C,kEAA6B;AAC7B,mDAA6C;AAC7C,iEAA2D;AAC3D,yEAAmE;AACnE,iDAAyE;AACzE,uCAAkD;AAClD,uCAAqC;AAGrC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAErB,KAAK,UAAU,iBAAiB,CACrC,IAAU,EACV,UAAmB;IAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAE9B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE;QAChC,OAAO,cAAc,CAAC;KACvB;IAED,iFAAiF;IACjF,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAU,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,IAAA,kCAAc,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,kBAAM,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACxD,gBAAgB,CAAC,kBAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC;AApBD,8CAoBC;AAED,SAAS,iBAAiB,CAAC,OAAgB;IACzC,IAAI,CAAC,IAAA,oBAAU,EAAC,+BAAgB,EAAE,OAAO,CAAC,EAAE;QAC1C,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,MAAM,GAAG,IAAA,kBAAQ,EAAC,+BAAgB,EAAE,OAAO,CAAC,CAAC;IACnD,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAEtC,OAAO,MAA2B,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CAAC,MAA+B;IACpE,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,SAAS,EAAE;QACzC,YAAY,CACV,eAAe,EACf,6EAA6E,CAC9E,CAAC;KACH;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QACpC,YAAY,CACV,UAAU,EACV,mEAAmE,CACpE,CAAC;KACH;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,WAAmB;IACtD,IAAA,6BAAK,EACH,QAAQ,+BAAgB,wBAAwB,KAAK,YAAY,WAAW,iBAAiB,CAC9F,CAAC;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,MAAc,EACd,UAAmB,EACnB,OAAgB;IAEhB,IAAI,UAAU,EAAE;QACd,OAAO;KACR;IAED,MAAM,cAAc,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,+BAAgB,CAAC,CAAC;IAEhE,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CACnC,MAAM,EACN,SAAS,EACT,iBAAiB,CAClB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEf,IAAA,mBAAS,EAAC,cAAc,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;AApBD,4CAoBC"}
package/src/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PUBLISH_POST_COPY_PY_PATH = exports.PUBLISH_PRE_COPY_PY_PATH = exports.VERSION_TXT_PATH = exports.METADATA_XML_PATH = exports.MAIN_LUA = exports.MOD_SOURCE_PATH = exports.CONSTANTS_TS_PATH = exports.PACKAGE_JSON_PATH = exports.PACKAGE_JSON = exports.TSCONFIG_JSON_PATH = exports.TSCONFIG_JSON = exports.CONFIG_FILE_PATH = exports.CONFIG_FILE_NAME = exports.ISAACSCRIPT_SCHEMA_PATH = exports.README_MD = exports.METADATA_XML_TEMPLATE_PATH = exports.METADATA_XML = exports.MAIN_DEV_TS_TEMPLATE_PATH = exports.MAIN_TS_TEMPLATE_PATH = exports.MAIN_TS = exports.GITIGNORE_TEMPLATE_PATH = exports.GITIGNORE = exports.CI_YML_TEMPLATE_PATH = exports.CI_YML = exports.TEMPLATES_DYNAMIC_DIR = exports.TEMPLATES_STATIC_DIR = exports.TEMPLATES_DIR = exports.WATCHER_MOD_SOURCE_PATH = exports.WATCHER_MOD_NAME = exports.DISABLE_IT_FILE = exports.XML_CONVERTER_PATH = exports.SHADERS_XML_PATH = exports.CUSTOM_STAGE_FILES_DIR = exports.REPO_ROOT = exports.PROJECT_NAME = exports.MOD_UPLOADER_PATH = exports.FILE_SYNCED_MESSAGE = exports.HOME_DIR = exports.CURRENT_DIRECTORY_NAME = exports.CWD = void 0;
3
+ exports.PUBLISH_POST_COPY_PY_PATH = exports.PUBLISH_PRE_COPY_PY_PATH = exports.VERSION_TXT_PATH = exports.METADATA_XML_PATH = exports.MAIN_LUA = exports.MOD_SOURCE_PATH = exports.CONSTANTS_TS_PATH = exports.PACKAGE_JSON_PATH = exports.PACKAGE_JSON = exports.TSCONFIG_JSON_PATH = exports.TSCONFIG_JSON = exports.CONFIG_FILE_PATH = exports.CONFIG_FILE_NAME = exports.ISAACSCRIPT_SCHEMA_PATH = exports.README_MD = exports.METADATA_XML_TEMPLATE_PATH = exports.METADATA_XML = exports.MAIN_DEV_TS_TEMPLATE_PATH = exports.MAIN_TS_TEMPLATE_PATH = exports.MAIN_TS = exports.GITIGNORE_TEMPLATE_PATH = exports.GITIGNORE = exports.CI_YML_TEMPLATE_PATH = exports.CI_YML = exports.TEMPLATES_DYNAMIC_DIR = exports.TEMPLATES_STATIC_DIR = exports.TEMPLATES_DIR = exports.WATCHER_MOD_SOURCE_PATH = exports.WATCHER_MOD_NAME = exports.DISABLE_IT_FILE = exports.XML_CONVERTER_PATH = exports.SHADERS_XML_PATH = exports.CUSTOM_STAGE_FILES_DIR = exports.REPO_ROOT = exports.LINT_SCRIPT = exports.BUILD_SCRIPT = exports.UPDATE_SCRIPT = exports.PROJECT_NAME = exports.MOD_UPLOADER_PATH = exports.COMPILATION_SUCCESSFUL_MESSAGE = exports.FILE_SYNCED_MESSAGE = exports.HOME_DIR = exports.CURRENT_DIRECTORY_NAME = exports.CWD = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const os = tslib_1.__importStar(require("node:os"));
6
6
  const path = tslib_1.__importStar(require("node:path"));
@@ -9,8 +9,12 @@ exports.CWD = process.cwd();
9
9
  exports.CURRENT_DIRECTORY_NAME = path.basename(exports.CWD);
10
10
  exports.HOME_DIR = os.homedir();
11
11
  exports.FILE_SYNCED_MESSAGE = "File synced:";
12
+ exports.COMPILATION_SUCCESSFUL_MESSAGE = "Compilation successful.";
12
13
  exports.MOD_UPLOADER_PATH = "C:\\Program Files (x86)\\Steam\\steamapps\\common\\The Binding of Isaac Rebirth\\tools\\ModUploader\\ModUploader.exe";
13
14
  exports.PROJECT_NAME = "IsaacScript";
15
+ exports.UPDATE_SCRIPT = "update.sh";
16
+ exports.BUILD_SCRIPT = "build.sh";
17
+ exports.LINT_SCRIPT = "lint.sh";
14
18
  // `isaacscript`
15
19
  exports.REPO_ROOT = path.join(__dirname, "..");
16
20
  // `isaacscript/custom-stage`
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/constants.ts"],"names":[],"mappings":";;;;AAAA,oDAA8B;AAC9B,wDAAkC;AAElC,gBAAgB;AACH,QAAA,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AACpB,QAAA,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAG,CAAC,CAAC;AAC5C,QAAA,QAAQ,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;AACxB,QAAA,mBAAmB,GAAG,cAAc,CAAC;AACrC,QAAA,iBAAiB,GAC5B,sHAAsH,CAAC;AAC5G,QAAA,YAAY,GAAG,aAAa,CAAC;AAE1C,gBAAgB;AACH,QAAA,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEpD,6BAA6B;AAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,cAAc,CAAC,CAAC;AAClD,QAAA,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAC7C,iBAAiB,EACjB,0BAA0B,CAC3B,CAAC;AACW,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC/D,QAAA,kBAAkB,GAAG,IAAI,CAAC,IAAI,CACzC,iBAAiB,EACjB,mBAAmB,CACpB,CAAC;AAEF,oCAAoC;AACvB,QAAA,eAAe,GAAG,YAAY,CAAC;AAC/B,QAAA,gBAAgB,GAAG,qBAAqB,CAAC;AACzC,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,wBAAgB,CAAC,CAAC;AAE9E,+BAA+B;AAClB,QAAA,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,gBAAgB,CAAC,CAAC;AAEpE,sCAAsC;AACzB,QAAA,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,QAAQ,CAAC,CAAC;AAEvE,uCAAuC;AAC1B,QAAA,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,SAAS,CAAC,CAAC;AAC5D,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAC3C,6BAAqB,EACrB,SAAS,EACT,WAAW,EACX,cAAM,CACP,CAAC;AAEW,QAAA,SAAS,GAAG,WAAW,CAAC,CAAC,0DAA0D;AACnF,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAC9C,6BAAqB,EACrB,iBAAS,CACV,CAAC;AACW,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAC5C,6BAAqB,EACrB,KAAK,EACL,eAAO,CACR,CAAC;AACW,QAAA,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAChD,6BAAqB,EACrB,KAAK,EACL,aAAa,CACd,CAAC;AACW,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,0BAA0B,GAAG,IAAI,CAAC,IAAI,CACjD,6BAAqB,EACrB,KAAK,EACL,oBAAY,CACb,CAAC;AACW,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,wBAAwB;AACxB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,SAAS,CAAC,CAAC;AACvC,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAC9C,WAAW,EACX,0CAA0C,CAC3C,CAAC;AAEF,YAAY;AACC,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACtC,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,wBAAgB,CAAC,CAAC;AACpD,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,qBAAa,CAAC,CAAC;AACnD,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,oBAAY,CAAC,CAAC;AACjD,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;AAEvE,gBAAgB;AACH,QAAA,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,KAAK,CAAC,CAAC;AACxC,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAe,EAAE,cAAc,CAAC,CAAC;AAC/D,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAe,EAAE,aAAa,CAAC,CAAC;AAE1E,oBAAoB;AACpB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,SAAS,CAAC,CAAC;AAClC,QAAA,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAC/C,YAAY,EACZ,qBAAqB,CACtB,CAAC;AACW,QAAA,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAChD,YAAY,EACZ,sBAAsB,CACvB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/constants.ts"],"names":[],"mappings":";;;;AAAA,oDAA8B;AAC9B,wDAAkC;AAElC,gBAAgB;AACH,QAAA,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AACpB,QAAA,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAG,CAAC,CAAC;AAC5C,QAAA,QAAQ,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;AACxB,QAAA,mBAAmB,GAAG,cAAc,CAAC;AACrC,QAAA,8BAA8B,GAAG,yBAAyB,CAAC;AAC3D,QAAA,iBAAiB,GAC5B,sHAAsH,CAAC;AAC5G,QAAA,YAAY,GAAG,aAAa,CAAC;AAC7B,QAAA,aAAa,GAAG,WAAW,CAAC;AAC5B,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,WAAW,GAAG,SAAS,CAAC;AAErC,gBAAgB;AACH,QAAA,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEpD,6BAA6B;AAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,cAAc,CAAC,CAAC;AAClD,QAAA,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAC7C,iBAAiB,EACjB,0BAA0B,CAC3B,CAAC;AACW,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC/D,QAAA,kBAAkB,GAAG,IAAI,CAAC,IAAI,CACzC,iBAAiB,EACjB,mBAAmB,CACpB,CAAC;AAEF,oCAAoC;AACvB,QAAA,eAAe,GAAG,YAAY,CAAC;AAC/B,QAAA,gBAAgB,GAAG,qBAAqB,CAAC;AACzC,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,wBAAgB,CAAC,CAAC;AAE9E,+BAA+B;AAClB,QAAA,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,gBAAgB,CAAC,CAAC;AAEpE,sCAAsC;AACzB,QAAA,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,QAAQ,CAAC,CAAC;AAEvE,uCAAuC;AAC1B,QAAA,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,SAAS,CAAC,CAAC;AAC5D,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAC3C,6BAAqB,EACrB,SAAS,EACT,WAAW,EACX,cAAM,CACP,CAAC;AAEW,QAAA,SAAS,GAAG,WAAW,CAAC,CAAC,0DAA0D;AACnF,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAC9C,6BAAqB,EACrB,iBAAS,CACV,CAAC;AACW,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAC5C,6BAAqB,EACrB,KAAK,EACL,eAAO,CACR,CAAC;AACW,QAAA,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAChD,6BAAqB,EACrB,KAAK,EACL,aAAa,CACd,CAAC;AACW,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,0BAA0B,GAAG,IAAI,CAAC,IAAI,CACjD,6BAAqB,EACrB,KAAK,EACL,oBAAY,CACb,CAAC;AACW,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,wBAAwB;AACxB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAS,EAAE,SAAS,CAAC,CAAC;AACvC,QAAA,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAC9C,WAAW,EACX,0CAA0C,CAC3C,CAAC;AAEF,YAAY;AACC,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACtC,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,wBAAgB,CAAC,CAAC;AACpD,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,qBAAa,CAAC,CAAC;AACnD,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,oBAAY,CAAC,CAAC;AACjD,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;AAEvE,gBAAgB;AACH,QAAA,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,KAAK,CAAC,CAAC;AACxC,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAe,EAAE,cAAc,CAAC,CAAC;AAC/D,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAe,EAAE,aAAa,CAAC,CAAC;AAE1E,oBAAoB;AACpB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAG,EAAE,SAAS,CAAC,CAAC;AAClC,QAAA,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAC/C,YAAY,EACZ,qBAAqB,CACtB,CAAC;AACW,QAAA,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAChD,YAAY,EACZ,sBAAsB,CACvB,CAAC"}
@@ -10,7 +10,7 @@ const xml2js_1 = tslib_1.__importDefault(require("xml2js"));
10
10
  const common_js_1 = require("./common.js");
11
11
  const constants_js_1 = require("./constants.js");
12
12
  const exec_js_1 = require("./exec.js");
13
- const file = tslib_1.__importStar(require("./file.js"));
13
+ const file_js_1 = require("./file.js");
14
14
  const packageManager_js_1 = require("./packageManager.js");
15
15
  const tsconfig_js_1 = require("./tsconfig.js");
16
16
  const ISAACSCRIPT_COMMON = "isaacscript-common";
@@ -84,18 +84,18 @@ function checkFile(filePath, verbose) {
84
84
  if (!filePath.includes("gfx/")) {
85
85
  (0, isaacscript_common_ts_1.error)(`Failed to validate the "${filePath}" file: all PNG file paths must be inside of a "gfx" directory. (e.g. "./mod/resources/gfx/backdrop/foo/nfloor.png")`);
86
86
  }
87
- if (!file.exists(filePath, verbose)) {
87
+ if (!(0, file_js_1.fileExists)(filePath, verbose)) {
88
88
  (0, isaacscript_common_ts_1.error)(`Failed to find the "${filePath}" file. Check your "tsconfig.json" file and then restart IsaacScript.`);
89
89
  }
90
90
  }
91
91
  /** The custom stages feature needs some anm2 files in order to work properly. */
92
92
  function copyCustomStageFilesToProject(verbose) {
93
93
  const dstDirPath = node_path_1.default.join(constants_js_1.CWD, "mod", "resources", "gfx", "isaacscript-custom-stage");
94
- file.makeDir(dstDirPath, verbose);
95
- for (const fileName of file.getDirList(constants_js_1.CUSTOM_STAGE_FILES_DIR, verbose)) {
94
+ (0, file_js_1.makeDir)(dstDirPath, verbose);
95
+ for (const fileName of (0, file_js_1.getDirList)(constants_js_1.CUSTOM_STAGE_FILES_DIR, verbose)) {
96
96
  const srcPath = node_path_1.default.join(constants_js_1.CUSTOM_STAGE_FILES_DIR, fileName);
97
97
  const dstPath = node_path_1.default.join(dstDirPath, fileName);
98
- file.copy(srcPath, dstPath, verbose);
98
+ (0, file_js_1.copyFile)(srcPath, dstPath, verbose);
99
99
  }
100
100
  }
101
101
  /**
@@ -104,20 +104,20 @@ function copyCustomStageFilesToProject(verbose) {
104
104
  */
105
105
  async function insertEmptyShader(verbose) {
106
106
  const shadersXMLDstPath = node_path_1.default.join(constants_js_1.CWD, "mod", "content", "shaders.xml");
107
- if (!file.exists(shadersXMLDstPath, verbose)) {
108
- file.copy(constants_js_1.SHADERS_XML_PATH, shadersXMLDstPath, verbose);
107
+ if (!(0, file_js_1.fileExists)(shadersXMLDstPath, verbose)) {
108
+ (0, file_js_1.copyFile)(constants_js_1.SHADERS_XML_PATH, shadersXMLDstPath, verbose);
109
109
  return;
110
110
  }
111
111
  // The end-user mod might have their own custom shaders, so we need to merge our empty shader
112
112
  // inside the existing "shaders.xml" file.
113
- const shadersXMLDstContents = file.read(shadersXMLDstPath, verbose);
113
+ const shadersXMLDstContents = (0, file_js_1.readFile)(shadersXMLDstPath, verbose);
114
114
  const shadersXMLDst = (await xml2js_1.default.parseStringPromise(shadersXMLDstContents));
115
115
  const hasIsaacScriptEmptyShader = shadersXMLDst.shaders.shader.some((shader) => shader.$.name === EMPTY_SHADER_NAME);
116
116
  if (hasIsaacScriptEmptyShader) {
117
117
  // Our empty shader already exists, so we don't have to do anything.
118
118
  return;
119
119
  }
120
- const shadersXMLSrcContents = file.read(constants_js_1.SHADERS_XML_PATH, verbose);
120
+ const shadersXMLSrcContents = (0, file_js_1.readFile)(constants_js_1.SHADERS_XML_PATH, verbose);
121
121
  const shadersXMLSrc = (await xml2js_1.default.parseStringPromise(shadersXMLSrcContents));
122
122
  const isaacScriptEmptyShader = shadersXMLSrc.shaders.shader.find((shader) => shader.$.name === EMPTY_SHADER_NAME);
123
123
  if (isaacScriptEmptyShader === undefined) {
@@ -127,7 +127,7 @@ async function insertEmptyShader(verbose) {
127
127
  shadersXMLDst.shaders.shader.push(isaacScriptEmptyShader);
128
128
  const xmlBuilder = new xml2js_1.default.Builder();
129
129
  const newXML = xmlBuilder.buildObject(shadersXMLDst);
130
- file.write(shadersXMLDstPath, newXML, verbose);
130
+ (0, file_js_1.writeFile)(shadersXMLDstPath, newXML, verbose);
131
131
  }
132
132
  /**
133
133
  * In order for the custom stage feature to work properly, Lua code will need to know the list of
@@ -139,14 +139,14 @@ async function fillCustomStageMetadata(customStagesTSConfig, packageManager, ver
139
139
  validateMetadataLuaFileExists(packageManager, verbose);
140
140
  const customStages = await getCustomStagesWithMetadata(customStagesTSConfig, verbose);
141
141
  const customStagesLua = convertCustomStagesToLua(customStages);
142
- file.write(METADATA_LUA_PATH, customStagesLua, verbose);
142
+ (0, file_js_1.writeFile)(METADATA_LUA_PATH, customStagesLua, verbose);
143
143
  }
144
144
  function validateMetadataLuaFileExists(packageManager, verbose) {
145
- if (!file.isDir(ISAACSCRIPT_COMMON_PATH, verbose)) {
145
+ if (!(0, file_js_1.isDir)(ISAACSCRIPT_COMMON_PATH, verbose)) {
146
146
  const addCommand = (0, packageManager_js_1.getPackageManagerAddCommand)(packageManager, ISAACSCRIPT_COMMON);
147
147
  (0, isaacscript_common_ts_1.error)(`${chalk_1.default.red(`The custom stages feature requires a dependency of "${ISAACSCRIPT_COMMON}" in the "package.json" file. You can add it with the following command:`)} ${chalk_1.default.green(addCommand)}`);
148
148
  }
149
- if (!file.exists(METADATA_LUA_PATH, verbose)) {
149
+ if (!(0, file_js_1.fileExists)(METADATA_LUA_PATH, verbose)) {
150
150
  (0, isaacscript_common_ts_1.error)(`${chalk_1.default.red("Failed to find the custom stage metadata file at:")} ${chalk_1.default.green(METADATA_LUA_PATH)}`);
151
151
  }
152
152
  }
@@ -155,7 +155,7 @@ function validateMetadataLuaFileExists(packageManager, verbose) {
155
155
  * (In other words, this creates the full set of `CustomStageLua` objects.)
156
156
  */
157
157
  async function getCustomStagesWithMetadata(customStagesTSConfig, verbose) {
158
- if (!file.exists(METADATA_LUA_PATH, verbose)) {
158
+ if (!(0, file_js_1.fileExists)(METADATA_LUA_PATH, verbose)) {
159
159
  (0, isaacscript_common_ts_1.error)(`${chalk_1.default.red("Failed to find the custom stage metadata file at:")} ${chalk_1.default.green(METADATA_LUA_PATH)}`);
160
160
  }
161
161
  const customStagesLua = [];
@@ -165,12 +165,13 @@ async function getCustomStagesWithMetadata(customStagesTSConfig, verbose) {
165
165
  const { name } = customStageTSConfig;
166
166
  const { xmlPath } = customStageTSConfig;
167
167
  const resolvedXMLPath = node_path_1.default.resolve(constants_js_1.CWD, xmlPath);
168
- if (!file.exists(resolvedXMLPath, verbose)) {
168
+ if (!(0, file_js_1.fileExists)(resolvedXMLPath, verbose)) {
169
169
  (0, isaacscript_common_ts_1.error)(`${chalk_1.default.red("Failed to find the custom stage XML file at:")} ${chalk_1.default.green(resolvedXMLPath)}`);
170
170
  }
171
- const xmlContents = file.read(resolvedXMLPath, verbose);
172
- // eslint-disable-next-line no-await-in-loop
173
- const jsonRoomsFile = (await xml2js_1.default.parseStringPromise(xmlContents));
171
+ const xmlContents = (0, file_js_1.readFile)(resolvedXMLPath, verbose);
172
+ // eslint-disable-next-line no-await-in-loop, @typescript-eslint/no-unsafe-assignment
173
+ const jsonRoomsFileAny = await xml2js_1.default.parseStringPromise(xmlContents);
174
+ const jsonRoomsFile = jsonRoomsFileAny;
174
175
  const roomVariantSet = new Set();
175
176
  const customStageRoomsMetadata = [];
176
177
  for (const room of jsonRoomsFile.rooms.room) {
@@ -240,10 +241,10 @@ function combineCustomStageXMLs(customStagesTSConfig, verbose) {
240
241
  let allRooms = "";
241
242
  for (const customStageTSConfig of customStagesTSConfig) {
242
243
  const xmlPath = node_path_1.default.resolve(constants_js_1.CWD, customStageTSConfig.xmlPath);
243
- if (!file.exists(xmlPath, verbose)) {
244
+ if (!(0, file_js_1.fileExists)(xmlPath, verbose)) {
244
245
  (0, isaacscript_common_ts_1.error)(`${chalk_1.default.red("Failed to find the custom stage XML file at:")} ${chalk_1.default.green(xmlPath)}`);
245
246
  }
246
- const xmlContents = file.read(xmlPath, verbose);
247
+ const xmlContents = (0, file_js_1.readFile)(xmlPath, verbose);
247
248
  // It is easier to work with the XML files as text rather than converting it to JSON and then
248
249
  // converting it back to XML.
249
250
  const lines = xmlContents.trim().split("\n");
@@ -291,11 +292,11 @@ ${allRooms}
291
292
  </rooms>
292
293
  `.trim();
293
294
  const contentRoomsDir = node_path_1.default.join(constants_js_1.MOD_SOURCE_PATH, "content", "rooms");
294
- if (!file.exists(contentRoomsDir, verbose)) {
295
- file.makeDir(contentRoomsDir, verbose);
295
+ if (!(0, file_js_1.fileExists)(contentRoomsDir, verbose)) {
296
+ (0, file_js_1.makeDir)(contentRoomsDir, verbose);
296
297
  }
297
298
  const specialRoomsXMLPath = node_path_1.default.join(contentRoomsDir, "00.special rooms.xml");
298
- file.write(specialRoomsXMLPath, combinedXMLFile, verbose);
299
+ (0, file_js_1.writeFile)(specialRoomsXMLPath, combinedXMLFile, verbose);
299
300
  // Convert the XML file to an STB file, which is the format actually read by the game.
300
301
  (0, exec_js_1.execExe)(constants_js_1.XML_CONVERTER_PATH, [specialRoomsXMLPath], verbose, contentRoomsDir);
301
302
  }
@@ -1 +1 @@
1
- {"version":3,"file":"customStage.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/customStage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"customStage.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/customStage.ts"],"names":[],"mappings":"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"}
package/src/dev.js CHANGED
@@ -4,12 +4,12 @@ exports.getAndValidateIsaacScriptMonorepoDirectory = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const isaacscript_common_ts_1 = require("isaacscript-common-ts");
6
6
  const node_path_1 = tslib_1.__importDefault(require("node:path"));
7
- const file = tslib_1.__importStar(require("./file.js"));
7
+ const file_js_1 = require("./file.js");
8
8
  function getAndValidateIsaacScriptMonorepoDirectory(projectPath, verbose) {
9
9
  const parentDirectory = node_path_1.default.join(projectPath, "..");
10
10
  const isaacScriptMonorepoDirectory = node_path_1.default.join(parentDirectory, "isaacscript");
11
- if (!file.exists(isaacScriptMonorepoDirectory, verbose) ||
12
- !file.isDir(isaacScriptMonorepoDirectory, verbose)) {
11
+ if (!(0, file_js_1.fileExists)(isaacScriptMonorepoDirectory, verbose) ||
12
+ !(0, file_js_1.isDir)(isaacScriptMonorepoDirectory, verbose)) {
13
13
  console.error(`Failed to find the IsaacScript repository at: ${isaacScriptMonorepoDirectory}`);
14
14
  (0, isaacscript_common_ts_1.error)("In order to link a development version of IsaacScript common, you must place the repositories side by side. (If you do not already have the IsaacScript repository cloned, then you need to fork the repo and then clone your fork.)");
15
15
  }
package/src/dev.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/dev.ts"],"names":[],"mappings":";;;;AAAA,iEAA8C;AAC9C,kEAA6B;AAC7B,wDAAkC;AAElC,SAAgB,0CAA0C,CACxD,WAAmB,EACnB,OAAgB;IAEhB,MAAM,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,4BAA4B,GAAG,mBAAI,CAAC,IAAI,CAC5C,eAAe,EACf,aAAa,CACd,CAAC;IACF,IACE,CAAC,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACnD,CAAC,IAAI,CAAC,KAAK,CAAC,4BAA4B,EAAE,OAAO,CAAC,EAClD;QACA,OAAO,CAAC,KAAK,CACX,iDAAiD,4BAA4B,EAAE,CAChF,CAAC;QACF,IAAA,6BAAK,EACH,sOAAsO,CACvO,CAAC;KACH;IAED,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAtBD,gGAsBC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/dev.ts"],"names":[],"mappings":";;;;AAAA,iEAA8C;AAC9C,kEAA6B;AAC7B,uCAA8C;AAE9C,SAAgB,0CAA0C,CACxD,WAAmB,EACnB,OAAgB;IAEhB,MAAM,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,4BAA4B,GAAG,mBAAI,CAAC,IAAI,CAC5C,eAAe,EACf,aAAa,CACd,CAAC;IACF,IACE,CAAC,IAAA,oBAAU,EAAC,4BAA4B,EAAE,OAAO,CAAC;QAClD,CAAC,IAAA,eAAK,EAAC,4BAA4B,EAAE,OAAO,CAAC,EAC7C;QACA,OAAO,CAAC,KAAK,CACX,iDAAiD,4BAA4B,EAAE,CAChF,CAAC;QACF,IAAA,6BAAK,EACH,sOAAsO,CACvO,CAAC;KACH;IAED,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAtBD,gGAsBC"}
package/src/file.js CHANGED
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writeTry = exports.write = exports.touch = exports.rename = exports.read = exports.makeDir = exports.isSubDirOf = exports.isLink = exports.isFile = exports.isDir = exports.getDirList = exports.exists = exports.deleteFileOrDirectory = exports.copy = void 0;
3
+ exports.writeFileTry = exports.writeFile = exports.touch = exports.renameFile = exports.readFile = exports.makeDir = exports.isSubDirOf = exports.isLink = exports.isFile = exports.isDir = exports.getHashOfFile = exports.getDirList = exports.fileExists = exports.deleteFileOrDirectory = exports.copyFile = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
6
  const isaacscript_common_ts_1 = require("isaacscript-common-ts");
7
+ const crypto = tslib_1.__importStar(require("node:crypto"));
7
8
  const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
8
9
  const node_path_1 = tslib_1.__importDefault(require("node:path"));
9
- function copy(srcPath, dstPath, verbose) {
10
+ function copyFile(srcPath, dstPath, verbose) {
10
11
  if (verbose) {
11
12
  console.log(`Copying: ${srcPath} --> ${dstPath}`);
12
13
  }
@@ -22,7 +23,7 @@ function copy(srcPath, dstPath, verbose) {
22
23
  console.log(`Copied: ${srcPath} --> ${dstPath}`);
23
24
  }
24
25
  }
25
- exports.copy = copy;
26
+ exports.copyFile = copyFile;
26
27
  function deleteFileOrDirectory(filePath, verbose) {
27
28
  if (verbose) {
28
29
  console.log(`Deleting: ${filePath}`);
@@ -40,7 +41,7 @@ function deleteFileOrDirectory(filePath, verbose) {
40
41
  }
41
42
  }
42
43
  exports.deleteFileOrDirectory = deleteFileOrDirectory;
43
- function exists(filePath, verbose) {
44
+ function fileExists(filePath, verbose) {
44
45
  if (verbose) {
45
46
  console.log(`Checking to see if the following path exists: ${filePath}`);
46
47
  }
@@ -56,7 +57,7 @@ function exists(filePath, verbose) {
56
57
  }
57
58
  return pathExists;
58
59
  }
59
- exports.exists = exists;
60
+ exports.fileExists = fileExists;
60
61
  /**
61
62
  * Returns an array of the file names inside of the directory. (If the full path is required, you
62
63
  * must manually join it with the path to the directory.)
@@ -94,6 +95,13 @@ function getFileStats(filePath, verbose) {
94
95
  }
95
96
  return fileStats;
96
97
  }
98
+ function getHashOfFile(filePath) {
99
+ const fileBuffer = node_fs_1.default.readFileSync(filePath);
100
+ const hashSum = crypto.createHash("sha256");
101
+ hashSum.update(fileBuffer);
102
+ return hashSum.digest("hex");
103
+ }
104
+ exports.getHashOfFile = getHashOfFile;
97
105
  /**
98
106
  * `fs.lstatSync` is necessary (instead of `fs.statSync`) for the situations where we do not want to
99
107
  * follow symbolic links.
@@ -153,7 +161,7 @@ function makeDir(dirPath, verbose) {
153
161
  }
154
162
  }
155
163
  exports.makeDir = makeDir;
156
- function read(filePath, verbose) {
164
+ function readFile(filePath, verbose) {
157
165
  if (verbose) {
158
166
  console.log(`Reading a file: ${filePath}`);
159
167
  }
@@ -169,8 +177,8 @@ function read(filePath, verbose) {
169
177
  }
170
178
  return fileContents;
171
179
  }
172
- exports.read = read;
173
- function rename(srcPath, dstPath, verbose) {
180
+ exports.readFile = readFile;
181
+ function renameFile(srcPath, dstPath, verbose) {
174
182
  if (verbose) {
175
183
  console.log(`Renaming: ${srcPath} --> ${dstPath}`);
176
184
  }
@@ -184,7 +192,7 @@ function rename(srcPath, dstPath, verbose) {
184
192
  console.log(`Renamed: ${srcPath} --> ${dstPath}`);
185
193
  }
186
194
  }
187
- exports.rename = rename;
195
+ exports.renameFile = renameFile;
188
196
  function touch(filePath, verbose) {
189
197
  if (verbose) {
190
198
  console.log(`Touching: ${filePath}`);
@@ -201,7 +209,7 @@ function touch(filePath, verbose) {
201
209
  }
202
210
  }
203
211
  exports.touch = touch;
204
- function write(filePath, data, verbose) {
212
+ function writeFile(filePath, data, verbose) {
205
213
  if (verbose) {
206
214
  console.log(`Writing data to: ${filePath}`);
207
215
  }
@@ -215,12 +223,12 @@ function write(filePath, data, verbose) {
215
223
  console.log(`Wrote data to: ${filePath}`);
216
224
  }
217
225
  }
218
- exports.write = write;
226
+ exports.writeFile = writeFile;
219
227
  /**
220
228
  * Intended to be used in a try/catch block so that you can catch the error and handle it
221
229
  * accordingly.
222
230
  */
223
- function writeTry(filePath, data, verbose) {
231
+ function writeFileTry(filePath, data, verbose) {
224
232
  if (verbose) {
225
233
  console.log(`Writing data to: ${filePath}`);
226
234
  }
@@ -229,5 +237,5 @@ function writeTry(filePath, data, verbose) {
229
237
  console.log(`Wrote data to: ${filePath}`);
230
238
  }
231
239
  }
232
- exports.writeTry = writeTry;
240
+ exports.writeFileTry = writeFileTry;
233
241
  //# sourceMappingURL=file.js.map
package/src/file.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/file.ts"],"names":[],"mappings":"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"}
package/src/git.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gitCommitIfChanges = exports.isGitDirty = exports.initGitRepository = exports.getGitHubUsername = exports.promptGitHubRepoOrGitRemoteURL = void 0;
3
+ exports.gitCommitAllAndPush = exports.isGitClean = exports.isGitRepository = exports.gitCommitIfChanges = exports.initGitRepository = exports.getGitHubUsername = exports.promptGitHubRepoOrGitRemoteURL = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
6
  const command_exists_1 = tslib_1.__importDefault(require("command-exists"));
@@ -9,8 +9,7 @@ const node_path_1 = tslib_1.__importDefault(require("node:path"));
9
9
  const yaml_1 = tslib_1.__importDefault(require("yaml"));
10
10
  const constants_js_1 = require("./constants.js");
11
11
  const exec_js_1 = require("./exec.js");
12
- const file = tslib_1.__importStar(require("./file.js"));
13
- const packageManager_js_1 = require("./packageManager.js");
12
+ const file_js_1 = require("./file.js");
14
13
  const prompt_js_1 = require("./prompt.js");
15
14
  const version_js_1 = require("./version.js");
16
15
  // Versions prior to this do not work properly with: `git branch --move --force main`
@@ -76,7 +75,7 @@ If you don't want to initialize a Git repository for this project, press enter t
76
75
  }
77
76
  exports.promptGitHubRepoOrGitRemoteURL = promptGitHubRepoOrGitRemoteURL;
78
77
  function validateNewGitVersion(verbose) {
79
- const { stdout } = (0, exec_js_1.execShell)("git", ["--version"], verbose);
78
+ const { stdout } = (0, exec_js_1.execShellString)("git --version", verbose);
80
79
  const outputPrefix = "git version ";
81
80
  if (!stdout.startsWith(outputPrefix)) {
82
81
  (0, isaacscript_common_ts_1.error)(`Failed to parse the output from the "git --version" command: ${stdout}`);
@@ -105,10 +104,10 @@ function getGitHubUsername(verbose) {
105
104
  if (githubCLIHostsPath === undefined) {
106
105
  return undefined;
107
106
  }
108
- if (!file.exists(githubCLIHostsPath, verbose)) {
107
+ if (!(0, file_js_1.fileExists)(githubCLIHostsPath, verbose)) {
109
108
  return undefined;
110
109
  }
111
- const configYAMLRaw = file.read(githubCLIHostsPath, verbose);
110
+ const configYAMLRaw = (0, file_js_1.readFile)(githubCLIHostsPath, verbose);
112
111
  const configYAML = yaml_1.default.parse(configYAMLRaw);
113
112
  const githubCom = configYAML["github.com"];
114
113
  if (githubCom === undefined) {
@@ -142,10 +141,10 @@ function initGitRepository(projectPath, gitRemoteURL, verbose) {
142
141
  if (gitRemoteURL === undefined) {
143
142
  return;
144
143
  }
145
- (0, exec_js_1.execShell)("git", ["init"], verbose, false, projectPath);
146
- (0, exec_js_1.execShell)("git", ["branch", "--move", "--force", "main"], verbose, false, projectPath);
144
+ (0, exec_js_1.execShellString)("git init", verbose, false, projectPath);
145
+ (0, exec_js_1.execShellString)("git branch --move --force main", verbose, false, projectPath);
147
146
  if (isGitNameAndEmailConfigured(verbose)) {
148
- (0, exec_js_1.execShell)("git", ["add", "--all"], verbose, false, projectPath);
147
+ (0, exec_js_1.execShellString)("git add --all", verbose, false, projectPath);
149
148
  const version = (0, version_js_1.getVersionOfThisPackage)(verbose);
150
149
  const commitMessage = `chore: add files from ${constants_js_1.PROJECT_NAME} ${version} template`;
151
150
  (0, exec_js_1.execShell)("git", ["commit", "--message", commitMessage], verbose, false, projectPath);
@@ -154,29 +153,38 @@ function initGitRepository(projectPath, gitRemoteURL, verbose) {
154
153
  }
155
154
  exports.initGitRepository = initGitRepository;
156
155
  function isGitNameAndEmailConfigured(verbose) {
157
- const nameExitStatus = (0, exec_js_1.execShell)("git", ["config", "--global", "user.name"], verbose, true).exitStatus;
158
- const emailExitStatus = (0, exec_js_1.execShell)("git", ["config", "--global", "user.email"], verbose, true).exitStatus;
156
+ const nameExitStatus = (0, exec_js_1.execShellString)("git config --global user.name", verbose, true).exitStatus;
157
+ const emailExitStatus = (0, exec_js_1.execShellString)("git config --global user.email", verbose, true).exitStatus;
159
158
  return nameExitStatus === 0 && emailExitStatus === 0;
160
159
  }
161
- function isGitDirty(packageManager, verbose) {
162
- const packageManagerNPXCommand = (0, packageManager_js_1.getPackageManagerNPXCommand)(packageManager);
163
- const { exitStatus } = (0, exec_js_1.execShell)(packageManagerNPXCommand, ["git-dirty"], verbose, true);
164
- // Unintuitively, the program returns 1 if the current directory is dirty.
165
- return exitStatus !== 0;
166
- }
167
- exports.isGitDirty = isGitDirty;
168
- function gitCommitIfChanges(version, packageManager, verbose) {
160
+ function gitCommitIfChanges(version, verbose) {
169
161
  // Throw an error if this is not a git repository.
170
- (0, exec_js_1.execShell)("git", ["status"], verbose);
171
- if (!isGitDirty(packageManager, verbose)) {
162
+ (0, exec_js_1.execShellString)("git status", verbose);
163
+ if (isGitClean(verbose)) {
172
164
  console.log("There are no changes to commit.");
173
165
  return;
174
166
  }
175
- (0, exec_js_1.execShell)("git", ["add", "--all"], verbose);
167
+ (0, exec_js_1.execShellString)("git add --all", verbose);
176
168
  const commitMessage = `chore: release v${version}`;
177
169
  (0, exec_js_1.execShell)("git", ["commit", "--message", commitMessage], verbose);
178
- (0, exec_js_1.execShell)("git", ["push", "origin", "main", "--set-upstream"], verbose);
170
+ (0, exec_js_1.execShellString)("git push origin main --set-upstream", verbose);
179
171
  console.log(`Committed and pushed to the git repository with a message of: ${commitMessage}`);
180
172
  }
181
173
  exports.gitCommitIfChanges = gitCommitIfChanges;
174
+ function isGitRepository(verbose) {
175
+ const { exitStatus } = (0, exec_js_1.execShellString)("git rev-parse --is-inside-work-tree", verbose, true);
176
+ return exitStatus === 0;
177
+ }
178
+ exports.isGitRepository = isGitRepository;
179
+ function isGitClean(verbose) {
180
+ const { stdout } = (0, exec_js_1.execShellString)("git status --short", verbose);
181
+ return stdout.length === 0;
182
+ }
183
+ exports.isGitClean = isGitClean;
184
+ function gitCommitAllAndPush(message, verbose) {
185
+ (0, exec_js_1.execShellString)("git add --all", verbose);
186
+ (0, exec_js_1.execShell)("git", ["commit", "--message", message], verbose);
187
+ (0, exec_js_1.execShellString)("git push", verbose);
188
+ }
189
+ exports.gitCommitAllAndPush = gitCommitAllAndPush;
182
190
  //# sourceMappingURL=git.js.map