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.
- package/package.json +1 -2
- package/src/checkForWindowsTerminalBugs.js +3 -3
- package/src/checkForWindowsTerminalBugs.js.map +1 -1
- package/src/commands/check/check.js +8 -8
- package/src/commands/check/check.js.map +1 -1
- package/src/commands/copy/copy.js +5 -5
- package/src/commands/copy/copy.js.map +1 -1
- package/src/commands/init/checkIfProjectPathExists.js +5 -5
- package/src/commands/init/checkIfProjectPathExists.js.map +1 -1
- package/src/commands/init/checkModSubdirectory.js +2 -2
- package/src/commands/init/checkModSubdirectory.js.map +1 -1
- package/src/commands/init/checkModTargetDirectory.js +5 -5
- package/src/commands/init/checkModTargetDirectory.js.map +1 -1
- package/src/commands/init/createProject.js +27 -27
- package/src/commands/init/createProject.js.map +1 -1
- package/src/commands/init/getModsDir.js +4 -5
- package/src/commands/init/getModsDir.js.map +1 -1
- package/src/commands/init/installVSCodeExtensions.js +2 -2
- package/src/commands/init/installVSCodeExtensions.js.map +1 -1
- package/src/commands/monitor/copyWatcherMod.js +8 -8
- package/src/commands/monitor/copyWatcherMod.js.map +1 -1
- package/src/commands/monitor/monitor.js +12 -13
- package/src/commands/monitor/monitor.js.map +1 -1
- package/src/commands/monitor/notifyGame.js +2 -2
- package/src/commands/monitor/notifyGame.js.map +1 -1
- package/src/commands/monitor/saveDatWriter/saveDatWriter.js +6 -6
- package/src/commands/monitor/saveDatWriter/saveDatWriter.js.map +1 -1
- package/src/commands/monitor/touchWatcherSaveDatFiles.js +5 -5
- package/src/commands/monitor/touchWatcherSaveDatFiles.js.map +1 -1
- package/src/commands/publish/isaacscriptMod.js +23 -63
- package/src/commands/publish/isaacscriptMod.js.map +1 -1
- package/src/commands/publish/prePublish.js +79 -0
- package/src/commands/publish/prePublish.js.map +1 -0
- package/src/commands/publish/publish.js +14 -2
- package/src/commands/publish/publish.js.map +1 -1
- package/src/commands/publish/validate.js +58 -0
- package/src/commands/publish/validate.js.map +1 -0
- package/src/configFile.js +3 -3
- package/src/configFile.js.map +1 -1
- package/src/constants.js +5 -1
- package/src/constants.js.map +1 -1
- package/src/customStage.js +24 -23
- package/src/customStage.js.map +1 -1
- package/src/dev.js +3 -3
- package/src/dev.js.map +1 -1
- package/src/file.js +21 -13
- package/src/file.js.map +1 -1
- package/src/git.js +31 -23
- package/src/git.js.map +1 -1
- package/src/json.js +13 -3
- package/src/json.js.map +1 -1
- package/src/main.js +3 -1
- package/src/main.js.map +1 -1
- package/src/packageManager.js +3 -13
- package/src/packageManager.js.map +1 -1
- package/src/parseArgs.js +29 -1
- package/src/parseArgs.js.map +1 -1
- package/src/validateInIsaacScriptProject.js +6 -6
- package/src/validateInIsaacScriptProject.js.map +1 -1
- package/src/commands/monitor/constants.js +0 -5
- package/src/commands/monitor/constants.js.map +0 -1
- package/src/commands/publish/typeScript.js +0 -6
- package/src/commands/publish/typeScript.js.map +0 -1
- package/src/index.js +0 -10
- 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
|
|
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 (!
|
|
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
|
-
|
|
60
|
+
(0, file_js_1.writeFile)(configFilePath, configContents, verbose);
|
|
61
61
|
}
|
|
62
62
|
exports.createConfigFile = createConfigFile;
|
|
63
63
|
//# sourceMappingURL=configFile.js.map
|
package/src/configFile.js.map
CHANGED
|
@@ -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,
|
|
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`
|
package/src/constants.js.map
CHANGED
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/constants.ts"],"names":[],"mappings":"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"}
|
package/src/customStage.js
CHANGED
|
@@ -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
|
|
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 (!
|
|
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
|
-
|
|
95
|
-
for (const fileName of
|
|
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
|
-
|
|
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 (!
|
|
108
|
-
|
|
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 =
|
|
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 =
|
|
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
|
-
|
|
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
|
-
|
|
142
|
+
(0, file_js_1.writeFile)(METADATA_LUA_PATH, customStagesLua, verbose);
|
|
143
143
|
}
|
|
144
144
|
function validateMetadataLuaFileExists(packageManager, verbose) {
|
|
145
|
-
if (!
|
|
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 (!
|
|
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 (!
|
|
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 (!
|
|
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 =
|
|
172
|
-
// eslint-disable-next-line no-await-in-loop
|
|
173
|
-
const
|
|
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 (!
|
|
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 =
|
|
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 (!
|
|
295
|
-
|
|
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
|
-
|
|
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
|
}
|
package/src/customStage.js.map
CHANGED
|
@@ -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
|
|
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 (!
|
|
12
|
-
!
|
|
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,
|
|
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.
|
|
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
|
|
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.
|
|
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
|
|
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.
|
|
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
|
|
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.
|
|
173
|
-
function
|
|
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.
|
|
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
|
|
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.
|
|
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
|
|
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.
|
|
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":";;;;AAAA,0DAA0B;AAC1B,iEAA8C;AAC9C,8DAAyB;AACzB,kEAA6B;AAE7B,SAAgB,
|
|
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.
|
|
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
|
|
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.
|
|
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 (!
|
|
107
|
+
if (!(0, file_js_1.fileExists)(githubCLIHostsPath, verbose)) {
|
|
109
108
|
return undefined;
|
|
110
109
|
}
|
|
111
|
-
const configYAMLRaw =
|
|
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.
|
|
146
|
-
(0, exec_js_1.
|
|
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.
|
|
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.
|
|
158
|
-
const emailExitStatus = (0, exec_js_1.
|
|
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
|
|
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.
|
|
171
|
-
if (
|
|
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.
|
|
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.
|
|
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
|