isaacscript 2.17.1 → 2.18.1
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/isaacscript-watcher/main.lua +1 -1
- package/package.json +1 -1
- package/src/commands/init/createMod.js +4 -4
- package/src/commands/init/createMod.js.map +1 -1
- package/src/commands/init/init.js +6 -13
- package/src/commands/init/init.js.map +1 -1
- package/src/commands/monitor/monitor.js +27 -4
- package/src/commands/monitor/monitor.js.map +1 -1
- package/src/configFile.js +21 -16
- package/src/configFile.js.map +1 -1
- package/src/dev.js +19 -0
- package/src/dev.js.map +1 -0
- package/src/main.js +2 -2
- package/src/main.js.map +1 -1
|
@@ -217,7 +217,7 @@ function mod:LoadSuccessful(saveDatContents)
|
|
|
217
217
|
pushMessageArray(entry.data)
|
|
218
218
|
|
|
219
219
|
if sprite ~= nil then
|
|
220
|
-
local starting1 = string.match(entry.data, "TypeScript change detected
|
|
220
|
+
local starting1 = string.match(entry.data, "TypeScript change detected")
|
|
221
221
|
local starting2 = string.match(entry.data, "Compiling the mod for the first time...")
|
|
222
222
|
local finished1 = string.match(entry.data, "Compilation successful.")
|
|
223
223
|
-- Found 1 error. Watching for file changes.
|
package/package.json
CHANGED
|
@@ -4,19 +4,19 @@ exports.createMod = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
6
6
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
7
|
-
const
|
|
7
|
+
const configFile_1 = require("../../configFile");
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
9
|
const exec_1 = require("../../exec");
|
|
10
10
|
const file = tslib_1.__importStar(require("../../file"));
|
|
11
11
|
const packageManager_1 = require("../../packageManager");
|
|
12
12
|
const utils_1 = require("../../utils");
|
|
13
13
|
const git_1 = require("./git");
|
|
14
|
-
function createMod(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, verbose) {
|
|
14
|
+
function createMod(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, dev, verbose) {
|
|
15
15
|
if (createNewDir) {
|
|
16
16
|
file.makeDir(projectPath, verbose);
|
|
17
17
|
}
|
|
18
|
-
const config =
|
|
19
|
-
|
|
18
|
+
const config = (0, configFile_1.newConfig)(modsDirectory, saveSlot, dev);
|
|
19
|
+
(0, configFile_1.createConfigFile)(projectPath, config, verbose);
|
|
20
20
|
copyStaticFiles(projectPath, verbose);
|
|
21
21
|
copyDynamicFiles(projectName, projectPath, packageManager, verbose);
|
|
22
22
|
updateNodeModules(projectPath, verbose);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/createMod.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,wDAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/createMod.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,9 @@ const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
|
6
6
|
const command_exists_1 = tslib_1.__importDefault(require("command-exists"));
|
|
7
7
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
+
const dev_1 = require("../../dev");
|
|
9
10
|
const exec_1 = require("../../exec");
|
|
10
|
-
const file = tslib_1.__importStar(require("../../file"));
|
|
11
11
|
const packageManager_1 = require("../../packageManager");
|
|
12
|
-
const utils_1 = require("../../utils");
|
|
13
12
|
const checkIfProjectPathExists_1 = require("./checkIfProjectPathExists");
|
|
14
13
|
const checkModSubdirectory_1 = require("./checkModSubdirectory");
|
|
15
14
|
const checkModTargetDirectory_1 = require("./checkModTargetDirectory");
|
|
@@ -40,7 +39,7 @@ async function init(args) {
|
|
|
40
39
|
const saveSlot = await (0, promptSaveSlot_1.promptSaveSlot)(args, yes);
|
|
41
40
|
const gitRemoteURL = await (0, git_1.promptGitHubRepoOrGitRemoteURL)(projectName, noGit, yes, dev, verbose);
|
|
42
41
|
// Now that we have asked the user all of the questions we need, we can create the project.
|
|
43
|
-
(0, createMod_1.createMod)(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, verbose);
|
|
42
|
+
(0, createMod_1.createMod)(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, dev, verbose);
|
|
44
43
|
// Now that the project is created, we can perform the steps to link to a development version of
|
|
45
44
|
// "isaacscript-common", if necessary.
|
|
46
45
|
if (dev) {
|
|
@@ -51,18 +50,12 @@ async function init(args) {
|
|
|
51
50
|
}
|
|
52
51
|
exports.init = init;
|
|
53
52
|
function linkDevelopmentIsaacScriptCommon(projectPath, verbose) {
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
if (!file.exists(isaacScriptMonorepoDirectory, verbose) ||
|
|
57
|
-
!file.isDir(isaacScriptMonorepoDirectory, verbose)) {
|
|
58
|
-
console.error(`Failed to find the IsaacScript repository at: ${isaacScriptMonorepoDirectory}`);
|
|
59
|
-
(0, utils_1.error)("In order to link a development version of IsaacScript common, you must place the repositories side by side.");
|
|
60
|
-
}
|
|
61
|
-
// Build "isaacscript-common" and set up the link.
|
|
53
|
+
const isaacScriptMonorepoDirectory = (0, dev_1.getAndValidateIsaacScriptMonorepoDirectory)(projectPath, verbose);
|
|
54
|
+
console.log('Building "isaacscript-common" and setting up the link...');
|
|
62
55
|
const linkScript = path_1.default.join(isaacScriptMonorepoDirectory, "link-isaacscript-common.sh");
|
|
63
56
|
(0, exec_1.execShell)("bash", [linkScript], verbose);
|
|
64
|
-
|
|
65
|
-
(0, exec_1.execShell)("yarn", ["link", "isaacscript-common"], verbose);
|
|
57
|
+
console.log('Linking this repository to the development version of "isaacscript-common"...');
|
|
58
|
+
(0, exec_1.execShell)("yarn", ["link", "isaacscript-common"], verbose, false, projectPath);
|
|
66
59
|
}
|
|
67
60
|
async function openVSCode(projectPath, vscode, yes, verbose) {
|
|
68
61
|
const VSCodeCommand = getVSCodeCommand();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/init.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,4EAA2C;AAC3C,wDAAwB;AACxB,+CAAoD;AACpD,qCAAuC;AACvC,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ const child_process_1 = require("child_process");
|
|
|
7
7
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
9
|
const customStage_1 = require("../../customStage");
|
|
10
|
+
const dev_1 = require("../../dev");
|
|
10
11
|
const file = tslib_1.__importStar(require("../../file"));
|
|
11
12
|
const json_1 = require("../../json");
|
|
12
13
|
const packageManager_1 = require("../../packageManager");
|
|
@@ -61,8 +62,19 @@ async function monitor(args, config) {
|
|
|
61
62
|
(0, spawnSaveDatWriter_1.spawnSaveDatWriter)(config);
|
|
62
63
|
// Subprocess #2 - The mod directory syncer.
|
|
63
64
|
spawnModDirectorySyncer(config);
|
|
64
|
-
// Subprocess #3 - tstl --watch (to automatically convert TypeScript to Lua).
|
|
65
|
-
spawnTSTLWatcher();
|
|
65
|
+
// Subprocess #3 - `tstl --watch` (to automatically convert TypeScript to Lua).
|
|
66
|
+
spawnTSTLWatcher(config, constants_1.CWD);
|
|
67
|
+
// Subprocess #4 - `tstl --watch` (for the development version of `isaacscript-common`).
|
|
68
|
+
if (config.isaacScriptCommonDev === true) {
|
|
69
|
+
const isaacScriptMonorepoDirectory = (0, dev_1.getAndValidateIsaacScriptMonorepoDirectory)(constants_1.CWD, verbose);
|
|
70
|
+
const isaacScriptCommonDirectory = path_1.default.join(isaacScriptMonorepoDirectory, "packages", "isaacscript-common");
|
|
71
|
+
if (!file.exists(isaacScriptCommonDirectory, verbose) ||
|
|
72
|
+
!file.isDir(isaacScriptCommonDirectory, verbose)) {
|
|
73
|
+
console.error(`The "isaacscript-common" directory does not exist at: ${isaacScriptCommonDirectory}`);
|
|
74
|
+
(0, utils_1.error)('Please make sure that the IsaacScript repository is placed next to this one. If you do not want to test a local version of "isaacscript-common", then set the "isaacScriptCommonDev" field to false in your "isaacscript.json" file.');
|
|
75
|
+
}
|
|
76
|
+
spawnTSTLWatcher(config, isaacScriptCommonDirectory);
|
|
77
|
+
}
|
|
66
78
|
// Also, start constantly pinging the watcher mod.
|
|
67
79
|
setInterval(() => {
|
|
68
80
|
notifyGame.ping();
|
|
@@ -115,10 +127,11 @@ function spawnModDirectorySyncer(config) {
|
|
|
115
127
|
(0, utils_1.error)(`Error: ${processDescription} subprocess exited with code: ${code}`);
|
|
116
128
|
});
|
|
117
129
|
}
|
|
118
|
-
function spawnTSTLWatcher() {
|
|
130
|
+
function spawnTSTLWatcher(config, cwd) {
|
|
119
131
|
const processDescription = "tstl";
|
|
120
132
|
const tstl = (0, child_process_1.spawn)("npx", ["tstl", "--watch", "--preserveWatchOutput"], {
|
|
121
133
|
shell: true,
|
|
134
|
+
cwd,
|
|
122
135
|
});
|
|
123
136
|
tstl.stdout.on("data", (data) => {
|
|
124
137
|
const msg = data.toString().trim();
|
|
@@ -130,7 +143,8 @@ function spawnTSTLWatcher() {
|
|
|
130
143
|
}
|
|
131
144
|
else if (msg.includes("File change detected. Starting incremental compilation...")) {
|
|
132
145
|
compilationStartTime = new Date();
|
|
133
|
-
const
|
|
146
|
+
const suffix = getChangeMessageSuffix(config, cwd);
|
|
147
|
+
const newMsg = `TypeScript change detected${suffix}. Compiling...`;
|
|
134
148
|
notifyGame.msg(newMsg);
|
|
135
149
|
}
|
|
136
150
|
else if (msg.includes("Found 0 errors. Watching for file changes.")) {
|
|
@@ -159,4 +173,13 @@ function spawnTSTLWatcher() {
|
|
|
159
173
|
(0, utils_1.error)(`Error: ${processDescription} subprocess exited with code: ${code}`);
|
|
160
174
|
});
|
|
161
175
|
}
|
|
176
|
+
function getChangeMessageSuffix(config, cwd) {
|
|
177
|
+
if (config.isaacScriptCommonDev !== true) {
|
|
178
|
+
return "";
|
|
179
|
+
}
|
|
180
|
+
const baseName = path_1.default.basename(cwd);
|
|
181
|
+
return baseName === "isaacscript-common"
|
|
182
|
+
? ' (in "isaacscript-common")'
|
|
183
|
+
: " (in this mod)";
|
|
184
|
+
}
|
|
162
185
|
//# sourceMappingURL=monitor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/monitor/monitor.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,iDAA4C;AAC5C,wDAAwB;AAExB,+CAOyB;AACzB,mDAAwD;AACxD,yDAAmC;AACnC,qCAAsC;AACtC,yDAG8B;AAE9B,6CAA6D;AAC7D,uCAAyE;AACzE,2CAAqD;AACrD,qDAAkD;AAClD,iEAA2C;AAC3C,6DAA0D;AAC1D,yEAAsE;AAEtE,MAAM,kCAAkC,GAAG;IACzC,8BAA8B;IAC9B,aAAa;IACb,0CAA0C;IAC1C,wCAAwC;IACxC,yCAAyC;IACzC,YAAY;IACZ,mBAAmB;CACpB,CAAC;AAEF,IAAI,oBAAoB,GAAG,IAAI,IAAI,EAAE,CAAC;AAE/B,KAAK,UAAU,OAAO,CAAC,IAAU,EAAE,MAAc;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC;IAC1D,MAAM,cAAc,GAAG,IAAA,wDAAuC,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE9E,2FAA2F;IAC3F,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;QACpC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,wCAAwC;KACpF;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;QAC/B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,wCAAwC;KAC1E;IAED,oBAAoB;IACpB,IAAI,CAAC,iBAAiB,EAAE;QACtB,+BAA+B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KAChD;IAED,iCAAiC;IACjC,MAAM,eAAe,GAAG,IAAA,sCAA2B,EAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,mBAAmB,GAAG,cAAI,CAAC,OAAO,CAAC,eAAG,EAAE,eAAe,CAAC,CAAC;IAC/D,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,uCAAuC;IACvC,IAAA,+BAAc,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,IAAA,mDAAwB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1C,mDAAmD;IACnD,MAAM,IAAA,iCAAmB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEnD,+FAA+F;IAC/F,kBAAkB;IAClB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE;QACvC,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;KACpD;IAED,+CAA+C;IAC/C,IAAA,uCAAkB,EAAC,MAAM,CAAC,CAAC;IAE3B,4CAA4C;IAC5C,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAEhC,
|
|
1
|
+
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/monitor/monitor.ts"],"names":[],"mappings":"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"}
|
package/src/configFile.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createConfigFile = exports.newConfig = exports.getConfigFromFile = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
6
6
|
const getModsDir_1 = require("./commands/init/getModsDir");
|
|
@@ -9,10 +9,11 @@ const constants_1 = require("./constants");
|
|
|
9
9
|
const file = tslib_1.__importStar(require("./file"));
|
|
10
10
|
const json_1 = require("./json");
|
|
11
11
|
const utils_1 = require("./utils");
|
|
12
|
-
const
|
|
13
|
-
async function
|
|
12
|
+
const NUM_INDENT_SPACES = 2;
|
|
13
|
+
async function getConfigFromFile(args) {
|
|
14
14
|
const verbose = args.verbose === true;
|
|
15
15
|
const yes = args.yes === true;
|
|
16
|
+
const dev = args.dev === true;
|
|
16
17
|
const existingConfig = getExistingConfig(verbose);
|
|
17
18
|
if (existingConfig !== undefined) {
|
|
18
19
|
return existingConfig;
|
|
@@ -20,43 +21,47 @@ async function get(args) {
|
|
|
20
21
|
// No config file exists, so prompt the user for some information and create one.
|
|
21
22
|
const modsDirectory = await (0, getModsDir_1.getModsDir)(args, verbose);
|
|
22
23
|
const saveSlot = await (0, promptSaveSlot_1.promptSaveSlot)(args, yes);
|
|
23
|
-
const config =
|
|
24
|
-
|
|
24
|
+
const config = newConfig(modsDirectory, saveSlot, dev);
|
|
25
|
+
createConfigFile(constants_1.CWD, config, verbose);
|
|
25
26
|
return config;
|
|
26
27
|
}
|
|
27
|
-
exports.
|
|
28
|
+
exports.getConfigFromFile = getConfigFromFile;
|
|
28
29
|
function getExistingConfig(verbose) {
|
|
29
30
|
if (!file.exists(constants_1.CONFIG_FILE_PATH, verbose)) {
|
|
30
31
|
return undefined;
|
|
31
32
|
}
|
|
32
33
|
const config = (0, json_1.getJSONC)(constants_1.CONFIG_FILE_PATH, verbose);
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
validateMandatoryConfigFields(config);
|
|
35
|
+
return config;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Even though some fields are always initialized in the class, it may not be necessarily exist in
|
|
39
|
+
* the JSON file.
|
|
40
|
+
*/
|
|
41
|
+
function validateMandatoryConfigFields(config) {
|
|
35
42
|
if (config["modsDirectory"] === undefined) {
|
|
36
43
|
errorMissing("modsDirectory", "This should be equal to the directory where Isaac mods live on your system.");
|
|
37
44
|
}
|
|
38
|
-
// Even though the "saveSlot" field is always initialized in the class, it may not be necessarily
|
|
39
|
-
// exist in the JSON file.
|
|
40
45
|
if (config["saveSlot"] === undefined) {
|
|
41
46
|
errorMissing("saveSlot", "This should be equal to the save slot that you test your mods on.");
|
|
42
47
|
}
|
|
43
|
-
return config;
|
|
44
48
|
}
|
|
45
49
|
function errorMissing(field, description) {
|
|
46
50
|
(0, utils_1.error)(`The "${constants_1.CONFIG_FILE_NAME}" file is missing a "${field}" value. ${description} Please add it.`);
|
|
47
51
|
}
|
|
48
|
-
function
|
|
52
|
+
function newConfig(modsDirectory, saveSlot, isaacScriptCommonDev) {
|
|
49
53
|
return {
|
|
50
54
|
modsDirectory,
|
|
51
55
|
saveSlot,
|
|
56
|
+
isaacScriptCommonDev,
|
|
52
57
|
};
|
|
53
58
|
}
|
|
54
|
-
exports.
|
|
55
|
-
function
|
|
59
|
+
exports.newConfig = newConfig;
|
|
60
|
+
function createConfigFile(projectPath, config, verbose) {
|
|
56
61
|
const configFilePath = path_1.default.join(projectPath, constants_1.CONFIG_FILE_NAME);
|
|
57
62
|
// Add a newline at the end to satisfy Prettier.
|
|
58
|
-
const configContents = JSON.stringify(config, null,
|
|
63
|
+
const configContents = JSON.stringify(config, null, NUM_INDENT_SPACES).concat("\n");
|
|
59
64
|
file.write(configFilePath, configContents, verbose);
|
|
60
65
|
}
|
|
61
|
-
exports.
|
|
66
|
+
exports.createConfigFile = createConfigFile;
|
|
62
67
|
//# 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,wDAAwB;AAExB,2DAAwD;AACxD,mEAAgE;AAChE,2CAAsE;AACtE,qDAA+B;AAC/B,iCAAkC;AAElC,mCAAgC;AAEhC,MAAM,
|
|
1
|
+
{"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/configFile.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AAExB,2DAAwD;AACxD,mEAAgE;AAChE,2CAAsE;AACtE,qDAA+B;AAC/B,iCAAkC;AAElC,mCAAgC;AAEhC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAErB,KAAK,UAAU,iBAAiB,CAAC,IAAU;IAChD,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,uBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAc,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvD,gBAAgB,CAAC,eAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC;AAChB,CAAC;AAjBD,8CAiBC;AAED,SAAS,iBAAiB,CAAC,OAAgB;IACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,4BAAgB,EAAE,OAAO,CAAC,EAAE;QAC3C,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,MAAM,GAAG,IAAA,eAAQ,EAAC,4BAAgB,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,aAAK,EACH,QAAQ,4BAAgB,wBAAwB,KAAK,YAAY,WAAW,iBAAiB,CAC9F,CAAC;AACJ,CAAC;AAED,SAAgB,SAAS,CACvB,aAAqB,EACrB,QAAgB,EAChB,oBAA8B;IAE9B,OAAO;QACL,aAAa;QACb,QAAQ;QACR,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAVD,8BAUC;AAED,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,MAAc,EACd,OAAgB;IAEhB,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,4BAAgB,CAAC,CAAC;IAEhE,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,MAAM,CAC3E,IAAI,CACL,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAbD,4CAaC"}
|
package/src/dev.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getAndValidateIsaacScriptMonorepoDirectory = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const path_1 = tslib_1.__importDefault(require("path"));
|
|
6
|
+
const file = tslib_1.__importStar(require("./file"));
|
|
7
|
+
const utils_1 = require("./utils");
|
|
8
|
+
function getAndValidateIsaacScriptMonorepoDirectory(projectPath, verbose) {
|
|
9
|
+
const parentDirectory = path_1.default.join(projectPath, "..");
|
|
10
|
+
const isaacScriptMonorepoDirectory = path_1.default.join(parentDirectory, "isaacscript");
|
|
11
|
+
if (!file.exists(isaacScriptMonorepoDirectory, verbose) ||
|
|
12
|
+
!file.isDir(isaacScriptMonorepoDirectory, verbose)) {
|
|
13
|
+
console.error(`Failed to find the IsaacScript repository at: ${isaacScriptMonorepoDirectory}`);
|
|
14
|
+
(0, utils_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
|
+
}
|
|
16
|
+
return isaacScriptMonorepoDirectory;
|
|
17
|
+
}
|
|
18
|
+
exports.getAndValidateIsaacScriptMonorepoDirectory = getAndValidateIsaacScriptMonorepoDirectory;
|
|
19
|
+
//# sourceMappingURL=dev.js.map
|
package/src/dev.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/dev.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,qDAA+B;AAC/B,mCAAgC;AAEhC,SAAgB,0CAA0C,CACxD,WAAmB,EACnB,OAAgB;IAEhB,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,4BAA4B,GAAG,cAAI,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,aAAK,EACH,sOAAsO,CACvO,CAAC;KACH;IAED,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAtBD,gGAsBC"}
|
package/src/main.js
CHANGED
|
@@ -15,7 +15,7 @@ const copy_1 = require("./commands/copy/copy");
|
|
|
15
15
|
const init_1 = require("./commands/init/init");
|
|
16
16
|
const monitor_1 = require("./commands/monitor/monitor");
|
|
17
17
|
const publish_1 = require("./commands/publish/publish");
|
|
18
|
-
const
|
|
18
|
+
const configFile_1 = require("./configFile");
|
|
19
19
|
const constants_1 = require("./constants");
|
|
20
20
|
const exec_1 = require("./exec");
|
|
21
21
|
const packageManager_1 = require("./packageManager");
|
|
@@ -77,7 +77,7 @@ async function handleCommands(args) {
|
|
|
77
77
|
if (!skipProjectChecks) {
|
|
78
78
|
(0, validateInIsaacScriptProject_1.validateInIsaacScriptProject)(verbose);
|
|
79
79
|
}
|
|
80
|
-
config = await
|
|
80
|
+
config = await (0, configFile_1.getConfigFromFile)(args);
|
|
81
81
|
ensureDepsAreInstalled(args, verbose);
|
|
82
82
|
}
|
|
83
83
|
switch (command) {
|
package/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/main.ts"],"names":[],"mappings":";;;;AAEA,0DAA0B;AAC1B,uDAAiC;AACjC,4DAA4B;AAC5B,wDAAwB;AACxB,oFAAkD;AAClD,8EAA6C;AAC7C,2EAAkC;AAClC,+EAA4E;AAC5E,6CAA0C;AAC1C,+CAA4C;AAC5C,+CAA4C;AAC5C,wDAAqD;AACrD,wDAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../packages/isaacscript-cli/src/main.ts"],"names":[],"mappings":"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"}
|