isaacscript 2.0.15 → 2.1.2

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 (51) hide show
  1. package/file-templates/{static → dynamic}/.github/workflows/ci.yml +3 -3
  2. package/file-templates/dynamic/{metadata.vdf → mod/metadata.vdf} +0 -0
  3. package/file-templates/dynamic/{metadata.xml → mod/metadata.xml} +0 -0
  4. package/file-templates/dynamic/package.json +4 -2
  5. package/file-templates/dynamic/{main.ts → src/main.ts} +0 -0
  6. package/file-templates/static/.vscode/settings.json +4 -0
  7. package/file-templates/static/gitattributes +9 -0
  8. package/file-templates/static/lint.sh +2 -2
  9. package/file-templates/static-alt/check-file-updates.sh +1 -1
  10. package/isaacscript-watcher/.luacheckrc +3 -3
  11. package/package.json +18 -6
  12. package/src/commands/copy/copy.js +2 -2
  13. package/src/commands/copy/copy.js.map +1 -1
  14. package/src/commands/init/createMod.js +41 -25
  15. package/src/commands/init/createMod.js.map +1 -1
  16. package/src/commands/init/getModsDir.js +3 -3
  17. package/src/commands/init/getModsDir.js.map +1 -1
  18. package/src/commands/init/getProjectPath.js +4 -4
  19. package/src/commands/init/getProjectPath.js.map +1 -1
  20. package/src/commands/init/git.js +2 -2
  21. package/src/commands/init/git.js.map +1 -1
  22. package/src/commands/init/init.js +13 -11
  23. package/src/commands/init/init.js.map +1 -1
  24. package/src/commands/init/promptSaveSlot.js +3 -3
  25. package/src/commands/init/promptSaveSlot.js.map +1 -1
  26. package/src/commands/monitor/modDirectorySyncer/modDirectorySyncer.js +3 -3
  27. package/src/commands/monitor/modDirectorySyncer/modDirectorySyncer.js.map +1 -1
  28. package/src/commands/monitor/monitor.js +8 -8
  29. package/src/commands/monitor/monitor.js.map +1 -1
  30. package/src/commands/monitor/saveDatWriter/saveDatWriter.js +2 -2
  31. package/src/commands/monitor/saveDatWriter/saveDatWriter.js.map +1 -1
  32. package/src/commands/publish/publish.js +6 -6
  33. package/src/commands/publish/publish.js.map +1 -1
  34. package/src/configFile.js +5 -5
  35. package/src/configFile.js.map +1 -1
  36. package/src/constants.js +7 -6
  37. package/src/constants.js.map +1 -1
  38. package/src/file.js +17 -1
  39. package/src/file.js.map +1 -1
  40. package/src/index.js +10 -0
  41. package/src/index.js.map +1 -0
  42. package/src/main.js +27 -28
  43. package/src/main.js.map +1 -1
  44. package/src/packageManager.js +74 -0
  45. package/src/packageManager.js.map +1 -0
  46. package/src/parseArgs.js +6 -5
  47. package/src/parseArgs.js.map +1 -1
  48. package/src/types/PackageManager.js +9 -0
  49. package/src/types/PackageManager.js.map +1 -0
  50. package/src/utils.js +18 -2
  51. package/src/utils.js.map +1 -1
@@ -14,18 +14,18 @@ jobs:
14
14
  with:
15
15
  # The default version is 14. The ESLint config requires Node 16 to work properly.
16
16
  node-version: "16"
17
- cache: "npm"
17
+ cache: "PACKAGE-MANAGER-NAME"
18
18
 
19
19
  - name: Retrieve the cached "node_modules" directory (if present)
20
20
  uses: actions/cache@v3
21
21
  id: node-cache
22
22
  with:
23
23
  path: node_modules
24
- key: node-modules-${{ runner.os }}-${{ hashFiles('package-lock.json') }}
24
+ key: node-modules-${{ runner.os }}-${{ hashFiles('PACKAGE-MANAGER-LOCK-FILE-NAME') }}
25
25
 
26
26
  - name: Install dependencies (if the cached directory was not found)
27
27
  if: steps.node-cache.outputs.cache-hit != 'true'
28
- run: npm ci
28
+ run: PACKAGE-MANAGER-INSTALL
29
29
 
30
30
  - name: Install xmllint (which the "lint.sh" script uses)
31
31
  run: sudo apt-get update && sudo apt-get install libxml2-utils -y
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "MOD-NAME-TO-REPLACE",
3
3
  "version": "0.0.1",
4
- "description": "A mod for The Binding of Isaac: Repentance",
4
+ "description": "A mod for The Binding of Isaac: Repentance.",
5
5
  "keywords": [
6
6
  "isaac",
7
7
  "mod",
@@ -10,11 +10,13 @@
10
10
  "repentance"
11
11
  ],
12
12
  "license": "GPL-3.0",
13
+ "type": "commonjs",
13
14
  "dependencies": {
14
15
  "isaac-typescript-definitions": "^0.0.1",
15
16
  "isaacscript": "^0.0.1",
16
17
  "isaacscript-common": "^0.0.1",
17
18
  "isaacscript-lint": "^0.0.1",
18
- "isaacscript-spell": "^0.0.1"
19
+ "isaacscript-spell": "^0.0.1",
20
+ "typescript-to-lua": "^0.0.1"
19
21
  }
20
22
  }
File without changes
@@ -28,6 +28,10 @@
28
28
  "dist/**/*.js": true,
29
29
  "dist/**/*.json": true,
30
30
  "dist/**/*.lua": true,
31
+ "node_modules/**/*.ts": true,
32
+ "node_modules/**/*.js": true,
33
+ "node_modules/**/*.json": true,
34
+ "node_modules/**/*.lua": true,
31
35
  },
32
36
 
33
37
  // -----------------
@@ -0,0 +1,9 @@
1
+ # Prevent Windows systems from cloning this repository with "\r\n" line endings.
2
+ core.autocrlf=false
3
+
4
+ # Prevent people from making merge commits:
5
+ # https://www.endoflineblog.com/gitflow-considered-harmful
6
+ pull.rebase=true
7
+
8
+ # Convert all files to use "\n" line endings.
9
+ * text=auto eol=lf
@@ -16,9 +16,9 @@ npx prettier --check .
16
16
  # Step 2 - Use ESLint to lint the TypeScript.
17
17
  # Since all ESLint errors are set to warnings, we set max warnings to 0 so that warnings will fail
18
18
  # in CI.
19
- npx eslint --max-warnings 0 src
19
+ npx eslint --max-warnings 0 .
20
20
 
21
- # Step 3 - Spell check every file using cspell.
21
+ # Step 3 - Spell check every file using CSpell.
22
22
  # We use "--no-progress" and "--no-summary" because we want to only output errors.
23
23
  npx cspell --no-progress --no-summary
24
24
 
@@ -29,7 +29,7 @@ for FILE_SPECIFICATION in $(cat "$TEMPLATE_FILES_PATH"); do
29
29
 
30
30
  echo "Checking for an updated version of: $LOCAL_FILE"
31
31
  TMP_FILE_PATH="/tmp/base-file"
32
- URL="https://raw.githubusercontent.com/IsaacScript/isaacscript/main/file-templates/$STATIC_DIRECTORY/$REMOTE_FILE"
32
+ URL="https://raw.githubusercontent.com/IsaacScript/isaacscript/main/packages/isaacscript-cli/file-templates/$STATIC_DIRECTORY/$REMOTE_FILE"
33
33
  curl "$URL" --output "$TMP_FILE_PATH" --silent --show-error
34
34
  if grep "^404: Not Found" "$TMP_FILE_PATH" --silent; then
35
35
  echo
@@ -1,5 +1,5 @@
1
- -- These are all of the declarations in the "enums.lua" file in the "scripts" subdirectory,
2
- -- sorted alphabetically
1
+ -- These are all of the declarations in the "enums.lua" file in the "scripts" subdirectory, sorted
2
+ -- alphabetically.
3
3
  globals = {
4
4
  "ActionTriggers",
5
5
  "BabySubType",
@@ -92,5 +92,5 @@ globals = {
92
92
  max_line_length = 100
93
93
 
94
94
  -- Luacheck complains about functions in a module declared with a colon if self is unused;
95
- -- we may want all functions to be declared with a colon for uniformity
95
+ -- we may want all functions to be declared with a colon for uniformity.
96
96
  unused_args = false
package/package.json CHANGED
@@ -1,7 +1,16 @@
1
1
  {
2
2
  "name": "isaacscript",
3
- "version": "2.0.15",
3
+ "version": "2.1.2",
4
4
  "description": "A command line tool for managing Isaac mods written in TypeScript.",
5
+ "keywords": [
6
+ "isaac",
7
+ "mod",
8
+ "rebirth",
9
+ "afterbirth",
10
+ "repentance",
11
+ "typescript",
12
+ "lua"
13
+ ],
5
14
  "homepage": "https://isaacscript.github.io/",
6
15
  "bugs": {
7
16
  "url": "https://github.com/IsaacScript/isaacscript/issues"
@@ -17,10 +26,13 @@
17
26
  "isaacscript": "./src/main.js"
18
27
  },
19
28
  "dependencies": {
20
- "isaacscript-tsconfig": "^1.1.16",
21
- "npm-check-updates": "^13.0.1",
22
- "ts-node": "^10.7.0",
23
- "typescript": "^4.6.2",
29
+ "@types/node": "^17.0.35",
30
+ "git-dirty": "^1.0.2",
31
+ "isaacscript-tsconfig": "^1.1.17",
32
+ "npm-check-updates": "^13.0.3",
33
+ "ts-node": "^10.8.0",
34
+ "typescript": "4.6.2",
35
+ "isaac-typescript-definitions": "^2.0.53",
24
36
  "typescript-to-lua": "^1.4.4",
25
37
  "chalk": "4.1.2",
26
38
  "command-exists": "^1.2.9",
@@ -35,7 +47,7 @@
35
47
  "yargs": "^17.5.1",
36
48
  "prompt": "^1.3.0",
37
49
  "moment": "^2.29.3",
38
- "tslib": "^2.3.0"
50
+ "tslib": "^2.4.0"
39
51
  },
40
52
  "main": "./src/main.js",
41
53
  "typings": "./src/main.d.ts",
@@ -7,8 +7,8 @@ const constants_1 = require("../../constants");
7
7
  const exec_1 = require("../../exec");
8
8
  const file = tslib_1.__importStar(require("../../file"));
9
9
  const utils_1 = require("../../utils");
10
- function copy(argv, config) {
11
- const verbose = argv["verbose"] === true;
10
+ function copy(args, config) {
11
+ const verbose = args.verbose === true;
12
12
  const modTargetDirectoryName = (0, utils_1.getModTargetDirectoryName)(config);
13
13
  const modTargetPath = path_1.default.join(config.modsDirectory, modTargetDirectoryName);
14
14
  compileAndCopy(constants_1.MOD_SOURCE_PATH, modTargetPath, verbose);
@@ -1 +1 @@
1
- {"version":3,"file":"copy.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/copy/copy.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,+CAAkD;AAClD,qCAAuC;AACvC,yDAAmC;AAEnC,uCAAwD;AAExD,SAAgB,IAAI,CAAC,IAA6B,EAAE,MAAc;IAChE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IAEzC,MAAM,sBAAsB,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;IAE9E,cAAc,CAAC,2BAAe,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC;AAPD,oBAOC;AAED,SAAgB,cAAc,CAC5B,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,OAAO,CAAC,OAAO,CAAC,CAAC;IACjB,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAPD,wCAOC;AAED,SAAS,OAAO,CAAC,OAAgB;IAC/B,IAAA,gBAAS,EAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,OAAO,CACd,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE;QACvC,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;KACpD;IACD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"copy.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/copy/copy.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,+CAAkD;AAClD,qCAAuC;AACvC,yDAAmC;AAGnC,uCAAwD;AAExD,SAAgB,IAAI,CAAC,IAAU,EAAE,MAAc;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IAEtC,MAAM,sBAAsB,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;IAE9E,cAAc,CAAC,2BAAe,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC;AAPD,oBAOC;AAED,SAAgB,cAAc,CAC5B,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,OAAO,CAAC,OAAO,CAAC,CAAC;IACjB,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAPD,wCAOC;AAED,SAAS,OAAO,CAAC,OAAgB;IAC/B,IAAA,gBAAS,EAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,OAAO,CACd,aAAqB,EACrB,aAAqB,EACrB,OAAgB;IAEhB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE;QACvC,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;KACpD;IACD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC1C,CAAC"}
@@ -8,32 +8,25 @@ const configFile = tslib_1.__importStar(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
+ const packageManager_1 = require("../../packageManager");
11
12
  const git_1 = require("./git");
12
- function createMod(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipNPMInstall, verbose) {
13
+ function createMod(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, verbose) {
13
14
  if (createNewDir) {
14
15
  file.makeDir(projectPath, verbose);
15
16
  }
16
17
  const config = configFile.createObject(modsDirectory, saveSlot);
17
18
  configFile.createFile(projectPath, config, verbose);
18
19
  const targetModDirectory = path_1.default.join(config.modsDirectory, projectName);
19
- makeSubdirectories(projectPath, verbose);
20
20
  copyStaticFiles(projectPath, verbose);
21
- copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose);
21
+ copyDynamicFiles(projectName, projectPath, targetModDirectory, packageManager, verbose);
22
22
  updateNodeModules(projectPath, verbose);
23
- installNodeModules(projectPath, skipNPMInstall, verbose);
23
+ installNodeModules(projectPath, skipInstall, packageManager, verbose);
24
24
  formatFiles(projectPath, verbose);
25
25
  // Only make the initial commit once all of the files have been copied and formatted.
26
26
  (0, git_1.initGitRepository)(projectPath, gitRemoteURL, verbose);
27
27
  console.log(`Successfully created mod: ${chalk_1.default.green(projectName)}`);
28
28
  }
29
29
  exports.createMod = createMod;
30
- function makeSubdirectories(projectPath, verbose) {
31
- // The "src" directory is created during copying of static files.
32
- for (const subdirectory of ["mod"]) {
33
- const srcPath = path_1.default.join(projectPath, subdirectory);
34
- file.makeDir(srcPath, verbose);
35
- }
36
- }
37
30
  /** Copy static files, like ".eslintrc.js", "tsconfig.json", etc. */
38
31
  function copyStaticFiles(projectPath, verbose) {
39
32
  const staticFileList = file.getDirList(constants_1.TEMPLATES_STATIC_DIR, verbose);
@@ -44,19 +37,40 @@ function copyStaticFiles(projectPath, verbose) {
44
37
  file.copy(templateFilePath, destinationFilePath, verbose);
45
38
  }
46
39
  });
47
- // Rename "cspell.json.template" to "cspell.json". (If it is kept as "cspell.json", then local
48
- // spell checking will fail.)
49
- const cSpellConfigPath = path_1.default.join(projectPath, "cspell.json.template");
50
- const correctCSpellConfigPath = path_1.default.join(projectPath, "cspell.json");
51
- file.rename(cSpellConfigPath, correctCSpellConfigPath, verbose);
52
40
  // Rename ".eslintrc.js.template" to ".eslintrc.js". (If it is kept as ".eslintrc.js", then local
53
41
  // linting will fail.)
54
42
  const ESLintConfigPath = path_1.default.join(projectPath, ".eslintrc.js.template");
55
43
  const correctESLintConfigPath = path_1.default.join(projectPath, ".eslintrc.js");
56
44
  file.rename(ESLintConfigPath, correctESLintConfigPath, verbose);
45
+ // Rename "gitattributes" to ".gitattributes". (If it is kept as ".gitattributes", then it won't
46
+ // be committed to git.)
47
+ const gitAttributesPath = path_1.default.join(projectPath, "gitattributes");
48
+ const correctGitAttributesPath = path_1.default.join(projectPath, ".gitattributes");
49
+ file.rename(gitAttributesPath, correctGitAttributesPath, verbose);
50
+ // Rename "cspell.json.template" to "cspell.json". (If it is kept as "cspell.json", then local
51
+ // spell checking will fail.)
52
+ const cSpellConfigPath = path_1.default.join(projectPath, "cspell.json.template");
53
+ const correctCSpellConfigPath = path_1.default.join(projectPath, "cspell.json");
54
+ file.rename(cSpellConfigPath, correctCSpellConfigPath, verbose);
57
55
  }
58
56
  /** Copy files that need to have text replaced inside of them. */
59
- function copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose) {
57
+ function copyDynamicFiles(projectName, projectPath, targetModDirectory, packageManager, verbose) {
58
+ const workflowsPath = path_1.default.join(projectPath, ".github", "workflows");
59
+ file.makeDir(workflowsPath, verbose);
60
+ // `.github/workflows/ci.yml`
61
+ {
62
+ const fileName = constants_1.CI_YML;
63
+ const templatePath = constants_1.CI_YML_TEMPLATE_PATH;
64
+ const template = file.read(templatePath, verbose);
65
+ const lockFileName = (0, packageManager_1.getPackageManagerLockFileName)(packageManager);
66
+ const installCommand = (0, packageManager_1.getPackageManagerInstallCICommand)(packageManager);
67
+ const ciYML = template
68
+ .replace(/PACKAGE-MANAGER-NAME/g, packageManager)
69
+ .replace(/PACKAGE-MANAGER-LOCK-FILE-NAME/, lockFileName)
70
+ .replace(/PACKAGE-MANAGER-INSTALL/, installCommand);
71
+ const destinationPath = path_1.default.join(workflowsPath, fileName);
72
+ file.write(destinationPath, ciYML, verbose);
73
+ }
60
74
  // `.gitignore`
61
75
  {
62
76
  const fileName = constants_1.GITIGNORE;
@@ -92,13 +106,14 @@ function copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose)
92
106
  const destinationPath = path_1.default.join(projectPath, fileName);
93
107
  file.write(destinationPath, readmeMD, verbose);
94
108
  }
109
+ const modPath = path_1.default.join(projectPath, "mod");
110
+ file.makeDir(modPath, verbose);
95
111
  // `mod/metadata.xml`
96
112
  {
97
113
  const fileName = constants_1.METADATA_XML;
98
114
  const templatePath = constants_1.METADATA_XML_TEMPLATE_PATH;
99
115
  const template = file.read(templatePath, verbose);
100
116
  const metadataXML = template.replace(/MOD-NAME-TO-REPLACE/g, projectName);
101
- const modPath = path_1.default.join(projectPath, "mod");
102
117
  const destinationPath = path_1.default.join(modPath, fileName);
103
118
  file.write(destinationPath, metadataXML, verbose);
104
119
  }
@@ -108,15 +123,15 @@ function copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose)
108
123
  const templatePath = constants_1.METADATA_VDF_TEMPLATE_PATH;
109
124
  const template = file.read(templatePath, verbose);
110
125
  const metadataVDF = template.replace(/MOD-TARGET-DIR/g, targetModDirectory);
111
- const modPath = path_1.default.join(projectPath, "mod");
112
126
  const destinationPath = path_1.default.join(modPath, fileName);
113
127
  file.write(destinationPath, metadataVDF, verbose);
114
128
  }
129
+ const srcPath = path_1.default.join(projectPath, "src");
130
+ file.makeDir(srcPath, verbose);
115
131
  // `src/main.ts`
116
132
  {
117
133
  // Convert snake_case and kebab-case to camelCase. (Kebab-case in particular will make the
118
134
  // example TypeScript file fail to compile.)
119
- const srcPath = path_1.default.join(projectPath, "src");
120
135
  const fileName = constants_1.MAIN_TS;
121
136
  const templatePath = constants_1.MAIN_TS_TEMPLATE_PATH;
122
137
  const template = file.read(templatePath, verbose);
@@ -127,15 +142,16 @@ function copyDynamicFiles(projectName, projectPath, targetModDirectory, verbose)
127
142
  }
128
143
  /** The "package.json" file has to be copied first before this step. */
129
144
  function updateNodeModules(projectPath, verbose) {
130
- console.log("Finding out the latest versions of the NPM packages...");
145
+ console.log('Finding out the latest versions of the NPM packages with "npm-check-updates"...');
131
146
  (0, exec_1.execShell)("npx", ["npm-check-updates", "--upgrade", "--packageFile", "package.json"], verbose, false, projectPath);
132
147
  }
133
- function installNodeModules(projectPath, skipNPMInstall, verbose) {
134
- if (skipNPMInstall) {
148
+ function installNodeModules(projectPath, skipInstall, packageManager, verbose) {
149
+ if (skipInstall) {
135
150
  return;
136
151
  }
137
- console.log("Installing node modules... (This can take a long time.)");
138
- (0, exec_1.execShell)("npm", ["install"], verbose, false, projectPath);
152
+ const [command, args] = (0, packageManager_1.getPackageManagerInstallCommand)(packageManager);
153
+ console.log(`Installing node modules with "${command}"... (This can take a long time.)`);
154
+ (0, exec_1.execShell)(command, args, verbose, false, projectPath);
139
155
  }
140
156
  function formatFiles(projectPath, verbose) {
141
157
  (0, exec_1.execShell)("npx", ["prettier", "--write", projectPath], verbose, false, projectPath);
@@ -1 +1 @@
1
- {"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/createMod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createMod.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/createMod.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,11 @@ const MODS = "mods";
12
12
  const DEFAULT_MODS_PATH_WINDOWS = path_1.default.join("C:", "Program Files (x86)", "Steam", "steamapps", "common", "The Binding of Isaac Rebirth", MODS);
13
13
  /** This is a subdirectory of `$HOME`. */
14
14
  const DEFAULT_MODS_PATH_LINUX = path_1.default.join(constants_1.HOME_DIR, ".local", "share", "Steam", "steamapps", "common", "The Binding of Isaac Rebirth", MODS);
15
- async function getModsDir(argv, verbose) {
16
- if (argv["modsDirectory"] !== undefined) {
15
+ async function getModsDir(args, verbose) {
16
+ if (args.modsDirectory !== undefined) {
17
17
  // They specified the "--mods-directory" command-line flag, so there is no need to prompt the
18
18
  // user for it.
19
- return argv["modsDirectory"];
19
+ return args.modsDirectory;
20
20
  }
21
21
  const defaultModsPath = getDefaultModsPath(process.platform);
22
22
  if (file.exists(defaultModsPath, verbose) &&
@@ -1 +1 @@
1
- {"version":3,"file":"getModsDir.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/getModsDir.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,wDAAwB;AACxB,+CAA2C;AAC3C,yDAAmC;AACnC,yCAA8C;AAC9C,uCAAoC;AAEpC,MAAM,IAAI,GAAG,MAAM,CAAC;AAEpB,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CACzC,IAAI,EACJ,qBAAqB,EACrB,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEF,yCAAyC;AACzC,MAAM,uBAAuB,GAAG,cAAI,CAAC,IAAI,CACvC,oBAAQ,EACR,QAAQ,EACR,OAAO,EACP,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEK,KAAK,UAAU,UAAU,CAC9B,IAA6B,EAC7B,OAAgB;IAEhB,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,SAAS,EAAE;QACvC,6FAA6F;QAC7F,eAAe;QACf,OAAO,IAAI,CAAC,eAAe,CAAW,CAAC;KACxC;IAED,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE7D,IACE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,CAAC,EACpC;QACA,OAAO,eAAe,CAAC;KACxB;IAED,OAAO,CAAC,KAAK,CACX,0CAA0C,eAAK,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CACzE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAc,EAClC,+BAA+B,IAAI,kFAAkF,CACtH,CAAC;IAEF,IAAI,OAAO,KAAK,EAAE,EAAE;QAClB,IAAA,aAAK,EAAC,iDAAiD,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAClC,IAAA,aAAK,EACH,4BAA4B,eAAK,CAAC,KAAK,CACrC,OAAO,CACR,4BAA4B,CAC9B,CAAC;KACH;IAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACjC,IAAA,aAAK,EACH,uBAAuB,eAAK,CAAC,KAAK,CAChC,OAAO,CACR,gCAAgC,CAClC,CAAC;KACH;IAED,IAAI,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;QACnC,IAAA,aAAK,EACH,iCAAiC,eAAK,CAAC,KAAK,CAC1C,OAAO,CACR,wDAAwD,IAAI,wBAAwB,CACtF,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAvDD,gCAuDC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,QAAQ,QAAQ,EAAE;QAChB,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,yBAAyB,CAAC;SAClC;QAED,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,uBAAuB,CAAC;SAChC;QAED,OAAO,CAAC,CAAC;YACP,OAAO,IAAA,aAAK,EACV,gEAAgE,eAAK,CAAC,KAAK,CACzE,QAAQ,CACT,EAAE,CACJ,CAAC;SACH;KACF;AACH,CAAC"}
1
+ {"version":3,"file":"getModsDir.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/getModsDir.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,wDAAwB;AACxB,+CAA2C;AAC3C,yDAAmC;AAEnC,yCAA8C;AAC9C,uCAAoC;AAEpC,MAAM,IAAI,GAAG,MAAM,CAAC;AAEpB,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CACzC,IAAI,EACJ,qBAAqB,EACrB,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEF,yCAAyC;AACzC,MAAM,uBAAuB,GAAG,cAAI,CAAC,IAAI,CACvC,oBAAQ,EACR,QAAQ,EACR,OAAO,EACP,OAAO,EACP,WAAW,EACX,QAAQ,EACR,8BAA8B,EAC9B,IAAI,CACL,CAAC;AAEK,KAAK,UAAU,UAAU,CAC9B,IAAU,EACV,OAAgB;IAEhB,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;QACpC,6FAA6F;QAC7F,eAAe;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;IAED,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE7D,IACE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,CAAC,EACpC;QACA,OAAO,eAAe,CAAC;KACxB;IAED,OAAO,CAAC,KAAK,CACX,0CAA0C,eAAK,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CACzE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAc,EAClC,+BAA+B,IAAI,kFAAkF,CACtH,CAAC;IAEF,IAAI,OAAO,KAAK,EAAE,EAAE;QAClB,IAAA,aAAK,EAAC,iDAAiD,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAClC,IAAA,aAAK,EACH,4BAA4B,eAAK,CAAC,KAAK,CACrC,OAAO,CACR,4BAA4B,CAC9B,CAAC;KACH;IAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACjC,IAAA,aAAK,EACH,uBAAuB,eAAK,CAAC,KAAK,CAChC,OAAO,CACR,gCAAgC,CAClC,CAAC;KACH;IAED,IAAI,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;QACnC,IAAA,aAAK,EACH,iCAAiC,eAAK,CAAC,KAAK,CAC1C,OAAO,CACR,wDAAwD,IAAI,wBAAwB,CACtF,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAvDD,gCAuDC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,QAAQ,QAAQ,EAAE;QAChB,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,yBAAyB,CAAC;SAClC;QAED,KAAK,OAAO,CAAC,CAAC;YACZ,OAAO,uBAAuB,CAAC;SAChC;QAED,OAAO,CAAC,CAAC;YACP,OAAO,IAAA,aAAK,EACV,gEAAgE,eAAK,CAAC,KAAK,CACzE,QAAQ,CACT,EAAE,CACJ,CAAC;SACH;KACF;AACH,CAAC"}
@@ -19,8 +19,8 @@ const ILLEGAL_CHARACTERS_FOR_WINDOWS_FILENAMES = [
19
19
  "?",
20
20
  "*",
21
21
  ];
22
- async function getProjectPath(argv, useCurrentDir, yes, forceName) {
23
- let projectName = getProjectNameFromCommandLineArgument(argv);
22
+ async function getProjectPath(args, useCurrentDir, yes, forceName) {
23
+ let projectName = getProjectNameFromCommandLineArgument(args);
24
24
  let projectPath;
25
25
  let createNewDir;
26
26
  if (useCurrentDir) {
@@ -51,8 +51,8 @@ async function getProjectPath(argv, useCurrentDir, yes, forceName) {
51
51
  return [projectPath, createNewDir];
52
52
  }
53
53
  exports.getProjectPath = getProjectPath;
54
- function getProjectNameFromCommandLineArgument(argv) {
55
- const name = argv["name"];
54
+ function getProjectNameFromCommandLineArgument(args) {
55
+ const { name } = args;
56
56
  return typeof name === "string" && name !== "" ? name : undefined;
57
57
  }
58
58
  async function getNewProjectName() {
@@ -1 +1 @@
1
- {"version":3,"file":"getProjectPath.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/getProjectPath.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getProjectPath.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/getProjectPath.ts"],"names":[],"mappings":"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"}
@@ -135,8 +135,8 @@ function isGitNameAndEmailConfigured(verbose) {
135
135
  }
136
136
  function isGitDirty(verbose) {
137
137
  // From: https://remarkablemark.org/blog/2017/10/12/check-git-dirty/
138
- const [, stdout] = (0, exec_1.execShell)("git", ["status", "--porcelain"], verbose);
139
- return stdout !== "";
138
+ const [exitStatus] = (0, exec_1.execShell)("npx", ["git-dirty"], verbose);
139
+ return exitStatus !== 0;
140
140
  }
141
141
  exports.isGitDirty = isGitDirty;
142
142
  function gitCommitIfChanges(version, verbose) {
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/git.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ 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 packageManager_1 = require("../../packageManager");
9
10
  const checkIfProjectPathExists_1 = require("./checkIfProjectPathExists");
10
11
  const checkModSubdirectory_1 = require("./checkModSubdirectory");
11
12
  const checkModTargetDirectory_1 = require("./checkModTargetDirectory");
@@ -16,24 +17,25 @@ const git_1 = require("./git");
16
17
  const installVSCodeExtensions_1 = require("./installVSCodeExtensions");
17
18
  const promptSaveSlot_1 = require("./promptSaveSlot");
18
19
  const promptVSCode_1 = require("./promptVSCode");
19
- async function init(argv) {
20
- const skipNPMInstall = argv["skipNpmInstall"] === true;
21
- const useCurrentDir = argv["useCurrentDir"] === true;
22
- const verbose = argv["verbose"] === true;
23
- const vscode = argv["vscode"] === true;
24
- const yes = argv["yes"] === true;
25
- const forceName = argv["forceName"] === true;
20
+ async function init(args) {
21
+ const packageManager = (0, packageManager_1.getPackageManagerUsedForNewProject)(args);
22
+ const skipInstall = args.skipInstall === true;
23
+ const useCurrentDir = args.useCurrentDir === true;
24
+ const verbose = args.verbose === true;
25
+ const vscode = args.vscode === true;
26
+ const yes = args.yes === true;
27
+ const forceName = args.forceName === true;
26
28
  // Prompt the end-user for some information (and validate it as we go).
27
- const [projectPath, createNewDir] = await (0, getProjectPath_1.getProjectPath)(argv, useCurrentDir, yes, forceName);
29
+ const [projectPath, createNewDir] = await (0, getProjectPath_1.getProjectPath)(args, useCurrentDir, yes, forceName);
28
30
  await (0, checkIfProjectPathExists_1.checkIfProjectPathExists)(projectPath, yes, verbose);
29
- const modsDirectory = await (0, getModsDir_1.getModsDir)(argv, verbose);
31
+ const modsDirectory = await (0, getModsDir_1.getModsDir)(args, verbose);
30
32
  (0, checkModSubdirectory_1.checkModSubdirectory)(projectPath, modsDirectory);
31
33
  const projectName = path_1.default.basename(projectPath);
32
34
  await (0, checkModTargetDirectory_1.checkModTargetDirectory)(modsDirectory, projectName, yes, verbose);
33
- const saveSlot = await (0, promptSaveSlot_1.promptSaveSlot)(argv, yes);
35
+ const saveSlot = await (0, promptSaveSlot_1.promptSaveSlot)(args, yes);
34
36
  const gitRemoteURL = await (0, git_1.promptGitHubRepoOrGitRemoteURL)(projectName, yes, verbose);
35
37
  // Now that we have asked the user all of the questions we need, we can create the project.
36
- (0, createMod_1.createMod)(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipNPMInstall, verbose);
38
+ (0, createMod_1.createMod)(projectName, projectPath, createNewDir, modsDirectory, saveSlot, gitRemoteURL, skipInstall, packageManager, verbose);
37
39
  await openVSCode(projectPath, vscode, verbose);
38
40
  printFinishMessage(projectPath, projectName);
39
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/init.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.promptSaveSlot = void 0;
4
4
  const prompt_1 = require("../../prompt");
5
5
  const utils_1 = require("../../utils");
6
- async function promptSaveSlot(argv, yes) {
7
- if (argv["saveSlot"] !== undefined) {
6
+ async function promptSaveSlot(args, yes) {
7
+ if (args.saveSlot !== undefined) {
8
8
  // They specified the "--save-slot" command-line flag, so there is no need to prompt the user
9
9
  // for it.
10
- return argv["saveSlot"]; // yargs converts this to a number
10
+ return args.saveSlot;
11
11
  }
12
12
  if (yes) {
13
13
  return 1;
@@ -1 +1 @@
1
- {"version":3,"file":"promptSaveSlot.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/promptSaveSlot.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,uCAAoC;AAE7B,KAAK,UAAU,cAAc,CAClC,IAA6B,EAC7B,GAAY;IAEZ,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QAClC,6FAA6F;QAC7F,UAAU;QACV,OAAO,IAAI,CAAC,UAAU,CAAW,CAAC,CAAC,kCAAkC;KACtE;IAED,IAAI,GAAG,EAAE;QACP,OAAO,CAAC,CAAC;KACV;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAW,EAChC,0DAA0D,CAC3D,CAAC;IAEF,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE;QACtD,IAAA,aAAK,EAAC,kDAAkD,CAAC,CAAC;KAC3D;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAvBD,wCAuBC"}
1
+ {"version":3,"file":"promptSaveSlot.js","sourceRoot":"","sources":["../../../../../../packages/isaacscript-cli/src/commands/init/promptSaveSlot.ts"],"names":[],"mappings":";;;AACA,yCAA2C;AAC3C,uCAAoC;AAE7B,KAAK,UAAU,cAAc,CAClC,IAAU,EACV,GAAY;IAEZ,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;QAC/B,6FAA6F;QAC7F,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAED,IAAI,GAAG,EAAE;QACP,OAAO,CAAC,CAAC;KACV;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAW,EAChC,0DAA0D,CAC3D,CAAC;IAEF,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE;QACtD,IAAA,aAAK,EAAC,kDAAkD,CAAC,CAAC;KAC3D;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAvBD,wCAuBC"}
@@ -4,16 +4,16 @@ const tslib_1 = require("tslib");
4
4
  const sync_directory_1 = tslib_1.__importDefault(require("sync-directory"));
5
5
  const constants_1 = require("../../../constants");
6
6
  const SUBPROCESS_NAME = "directory syncer";
7
- const BASE_ARGV_LENGTH = 2;
8
7
  let modSourcePath;
9
8
  let modTargetPath;
10
9
  init();
11
10
  function init() {
12
- const firstArg = process.argv[BASE_ARGV_LENGTH];
11
+ const args = process.argv.slice(2);
12
+ const firstArg = args[0];
13
13
  if (firstArg === undefined) {
14
14
  throw new Error(`The ${SUBPROCESS_NAME} process did not get a valid first argument.`);
15
15
  }
16
- const secondArg = process.argv[BASE_ARGV_LENGTH + 1];
16
+ const secondArg = args[1];
17
17
  if (secondArg === undefined) {
18
18
  throw new Error(`The ${SUBPROCESS_NAME} process did not get the right amount of arguments.`);
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"modDirectorySyncer.js","sourceRoot":"","sources":["../../../../../../../packages/isaacscript-cli/src/commands/monitor/modDirectorySyncer/modDirectorySyncer.ts"],"names":[],"mappings":";;;AAAA,4EAA2C;AAC3C,kDAAyD;AAEzD,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAC3C,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B,IAAI,aAAqB,CAAC;AAC1B,IAAI,aAAqB,CAAC;AAE1B,IAAI,EAAE,CAAC;AAEP,SAAS,IAAI;IACX,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,MAAM,IAAI,KAAK,CACb,OAAO,eAAe,8CAA8C,CACrE,CAAC;KACH;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;IACrD,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,MAAM,IAAI,KAAK,CACb,OAAO,eAAe,qDAAqD,CAC5E,CAAC;KACH;IAED,aAAa,GAAG,QAAQ,CAAC;IACzB,aAAa,GAAG,SAAS,CAAC;IAE1B,IAAA,wBAAa,EAAC,aAAa,EAAE,aAAa,EAAE;QAC1C,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,MAAM;QACZ,aAAa;QACb,OAAO;QACP,oBAAoB,EAAE;YACpB,gBAAgB,EAAE;gBAChB,kBAAkB,EAAE,IAAI;aACzB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAMtB;IACC,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,OAAO;KACR;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAAC,GAAG,+BAAmB,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;KACvD;AACH,CAAC;AAED,SAAS,OAAO,CAAC,GAAU;IACzB,IAAI,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,IAAI,CAAC,GAAW;IACvB,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;QAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnB;AACH,CAAC"}
1
+ {"version":3,"file":"modDirectorySyncer.js","sourceRoot":"","sources":["../../../../../../../packages/isaacscript-cli/src/commands/monitor/modDirectorySyncer/modDirectorySyncer.ts"],"names":[],"mappings":";;;AAAA,4EAA2C;AAC3C,kDAAyD;AAEzD,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAE3C,IAAI,aAAqB,CAAC;AAC1B,IAAI,aAAqB,CAAC;AAE1B,IAAI,EAAE,CAAC;AAEP,SAAS,IAAI;IACX,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,MAAM,IAAI,KAAK,CACb,OAAO,eAAe,8CAA8C,CACrE,CAAC;KACH;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,MAAM,IAAI,KAAK,CACb,OAAO,eAAe,qDAAqD,CAC5E,CAAC;KACH;IAED,aAAa,GAAG,QAAQ,CAAC;IACzB,aAAa,GAAG,SAAS,CAAC;IAE1B,IAAA,wBAAa,EAAC,aAAa,EAAE,aAAa,EAAE;QAC1C,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,MAAM;QACZ,aAAa;QACb,OAAO;QACP,oBAAoB,EAAE;YACpB,gBAAgB,EAAE;gBAChB,kBAAkB,EAAE,IAAI;aACzB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAMtB;IACC,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,OAAO;KACR;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAAC,GAAG,+BAAmB,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;KACvD;AACH,CAAC;AAED,SAAS,OAAO,CAAC,GAAU;IACzB,IAAI,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,IAAI,CAAC,GAAW;IACvB,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;QAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnB;AACH,CAAC"}