binary-collections 2.0.10 → 2.0.12
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/.opencode/package.json +5 -0
- package/.puppeterrc.cjs +25 -0
- package/binaries/binary-executor.cjs +138 -3
- package/binaries/clean-nodemodule.cjs +138 -3
- package/binaries/clean-nodemodules.cjs +138 -3
- package/binaries/dev.cjs +138 -3
- package/binaries/empty.cjs +138 -3
- package/binaries/git-reduce-size.cjs +138 -3
- package/binaries/javakill.cjs +138 -3
- package/binaries/kill-night-crows.bat +7 -0
- package/binaries/kill-night-crows.ps1 +172 -0
- package/binaries/kill-process.cjs +138 -3
- package/binaries/nodekill.cjs +138 -3
- package/binaries/prod.cjs +138 -3
- package/binaries/py +111 -0
- package/binaries/py.cjs +178 -0
- package/binaries/py.cmd +49 -0
- package/binaries/rmfind.cjs +138 -3
- package/binaries/rmx +15 -1
- package/binaries/rmx.cjs +138 -3
- package/binaries/rmx.cmd +12 -0
- package/binaries/submodule-token.cjs +138 -3
- package/binaries/test-cjs +18 -0
- package/binaries/test-cjs.cjs +178 -0
- package/binaries/test-cjs.cmd +26 -0
- package/binaries/test-esm +16 -0
- package/binaries/test-esm.cjs +178 -0
- package/binaries/test-esm.cmd +23 -0
- package/binaries/yarn-clean +32 -0
- package/binaries/yarn-clean.cjs +178 -0
- package/binaries/yarn-clean.cmd +30 -0
- package/binaries/yarn-clean.py +166 -0
- package/binaries/yc +110 -0
- package/binaries/yc.cjs +178 -0
- package/lib/binary-collections/config.cjs +126 -0
- package/lib/binary-collections/config.mjs +7 -0
- package/lib/binary-collections/executeScript.cjs +19 -0
- package/lib/binary-collections/executeScript.d.cts +12 -0
- package/lib/binary-collections/executeScript.mjs +6 -0
- package/lib/binary-collections/findScript.cjs +284 -0
- package/lib/binary-collections/findScript.d.cts +12 -0
- package/lib/binary-collections/findScript.mjs +7 -0
- package/lib/binary-collections/listScript.cjs +266 -0
- package/lib/binary-collections/listScript.d.cts +19 -0
- package/lib/binary-collections/listScript.mjs +7 -0
- package/lib/binary-collections.cjs +342 -194
- package/lib/binary-collections.mjs +22 -268
- package/lib/changelog.cjs +61 -13
- package/lib/changelog.mjs +1 -1
- package/lib/{chunk-E6FDDAOO.mjs → chunk-2LSRSEXF.mjs} +2 -2
- package/lib/chunk-34IQDTLZ.mjs +27 -0
- package/lib/chunk-3HFFECCI.mjs +27 -0
- package/lib/{chunk-V3N3JEUF.mjs → chunk-5RTXZVCW.mjs} +60 -13
- package/lib/chunk-66KDU4TX.mjs +268 -0
- package/lib/chunk-6PU7BAHB.mjs +61 -0
- package/lib/{chunk-6HHJRKFB.mjs → chunk-BZWVHODJ.mjs} +4 -1
- package/lib/chunk-C6D2TTYU.mjs +32 -0
- package/lib/chunk-FB2WKVJD.mjs +158 -0
- package/lib/{chunk-66PAU5PS.mjs → chunk-G5UUEWUO.mjs} +9 -5
- package/lib/{chunk-HO6GHCOB.mjs → chunk-GAGABICI.mjs} +198 -63
- package/lib/chunk-H44UWUFY.mjs +105 -0
- package/lib/chunk-NCZPTKDV.mjs +79 -0
- package/lib/chunk-NGFK3EYW.mjs +28 -0
- package/lib/chunk-NVEG3LEZ.mjs +143 -0
- package/lib/chunk-OGXVGBRI.mjs +29 -0
- package/lib/chunk-OXV52GD5.mjs +62 -0
- package/lib/{chunk-PDSXF5HY.mjs → chunk-PDN26I7O.mjs} +1 -0
- package/lib/chunk-PXBMHE7O.mjs +35 -0
- package/lib/chunk-R5FJOR63.mjs +47 -0
- package/lib/chunk-SPTECFE5.mjs +180 -0
- package/lib/chunk-UXCFNAR6.mjs +55 -0
- package/lib/chunk-V2IBPCEV.mjs +39 -0
- package/lib/chunk-XPJGCDOD.mjs +14 -0
- package/lib/{chunk-AI4CVPJ7.mjs → chunk-ZDMWBSYF.mjs} +4 -4
- package/lib/chunk-ZOWVMII3.mjs +228 -0
- package/lib/clean-github-actions-caches-cli.cjs +465 -0
- package/lib/clean-github-actions-caches-cli.d.cts +1 -0
- package/lib/clean-github-actions-caches-cli.mjs +56 -0
- package/lib/clean-github-actions-caches.cjs +152 -160
- package/lib/clean-github-actions-caches.d.cts +15 -1
- package/lib/clean-github-actions-caches.mjs +4 -130
- package/lib/cross-env/command.cjs +63 -0
- package/lib/cross-env/command.d.ts +8 -0
- package/lib/cross-env/command.js +45 -0
- package/lib/cross-env/command.mjs +9 -0
- package/lib/cross-env/index.cjs +178 -0
- package/lib/cross-env/index.d.ts +8 -0
- package/lib/cross-env/index.js +102 -0
- package/lib/cross-env/index.mjs +101 -0
- package/lib/cross-env/variable.cjs +60 -0
- package/lib/cross-env/variable.d.ts +7 -0
- package/lib/cross-env/variable.js +59 -0
- package/lib/cross-env/variable.mjs +9 -0
- package/lib/del-gradle.cjs +61 -13
- package/lib/del-gradle.js +9 -8
- package/lib/del-gradle.mjs +1 -1
- package/lib/del-node-modules.cjs +143 -148
- package/lib/del-node-modules.js +210 -14
- package/lib/del-node-modules.mjs +148 -17
- package/lib/del-ps.cjs +61 -13
- package/lib/del-ps.js +9 -8
- package/lib/del-ps.mjs +1 -1
- package/lib/del-yarn-caches.cjs +61 -13
- package/lib/del-yarn-caches.js +2 -2
- package/lib/del-yarn-caches.mjs +1 -1
- package/lib/file/copy-cli.cjs +92 -0
- package/lib/file/copy-cli.d.mts +1 -0
- package/lib/file/copy-cli.mjs +55 -0
- package/lib/file/copy.cjs +56 -0
- package/lib/file/copy.d.mts +1 -0
- package/lib/file/copy.mjs +8 -0
- package/lib/file/move-cli.cjs +91 -0
- package/lib/file/move-cli.d.mts +1 -0
- package/lib/file/move-cli.mjs +55 -0
- package/lib/file/move.cjs +55 -0
- package/lib/file/move.d.mts +1 -0
- package/lib/file/move.mjs +8 -0
- package/lib/find-node-modules-cli.js +2 -1
- package/lib/free-chatgpt.cjs +259 -47
- package/lib/free-chatgpt.js +10 -10
- package/lib/free-chatgpt.mjs +2 -2
- package/lib/git/gitattributes.cjs +1 -0
- package/lib/git/gitattributes.d.cts +7 -2
- package/lib/git/gitattributes.mjs +1 -1
- package/lib/git/line-endings.cjs +2 -1
- package/lib/git/line-endings.mjs +2 -2
- package/lib/git/undo-commit-cli.cjs +110 -0
- package/lib/git/undo-commit-cli.d.ts +1 -0
- package/lib/git/undo-commit-cli.js +4 -0
- package/lib/git/undo-commit-cli.mjs +14 -0
- package/lib/git/undo-commit.cjs +81 -0
- package/lib/git/undo-commit.d.cts +1 -0
- package/lib/git/undo-commit.mjs +7 -0
- package/lib/git/undo-staged-cli.cjs +110 -0
- package/lib/git/undo-staged-cli.d.ts +1 -0
- package/lib/git/undo-staged-cli.js +4 -0
- package/lib/git/undo-staged-cli.mjs +14 -0
- package/lib/git/undo-staged.cjs +81 -0
- package/lib/git/undo-staged.d.cts +1 -0
- package/lib/git/undo-staged.mjs +7 -0
- package/lib/git/user-config.cjs +61 -14
- package/lib/git/user-config.mjs +2 -2
- package/lib/git-diff-cli.cjs +427 -75
- package/lib/git-diff-cli.d.ts +1 -0
- package/lib/git-diff-cli.js +1 -0
- package/lib/git-diff-cli.mjs +6 -4
- package/lib/git-diff.cjs +426 -75
- package/lib/git-diff.d.ts +2 -1
- package/lib/git-diff.js +91 -34
- package/lib/git-diff.mjs +5 -4
- package/lib/git-fix.cjs +64 -16
- package/lib/git-fix.mjs +10 -10
- package/lib/git-purge.cjs +61 -13
- package/lib/git-purge.mjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/kill-night-crows.cjs +87 -0
- package/lib/kill-night-crows.d.mts +1 -0
- package/lib/kill-night-crows.mjs +65 -0
- package/lib/node-cache-cleaner/npm.cjs +65 -0
- package/lib/node-cache-cleaner/npm.d.ts +2 -0
- package/lib/node-cache-cleaner/npm.js +41 -0
- package/lib/node-cache-cleaner/npm.mjs +10 -0
- package/lib/node-cache-cleaner/npx.cjs +89 -0
- package/lib/node-cache-cleaner/npx.d.ts +4 -0
- package/lib/node-cache-cleaner/npx.js +82 -0
- package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
- package/lib/node-cache-cleaner/yarn.cjs +73 -0
- package/lib/node-cache-cleaner/yarn.d.ts +2 -0
- package/lib/node-cache-cleaner/yarn.js +62 -0
- package/lib/node-cache-cleaner/yarn.mjs +10 -0
- package/lib/node-cache-cleaner-cli.cjs +182 -0
- package/lib/node-cache-cleaner-cli.d.ts +2 -0
- package/lib/node-cache-cleaner-cli.js +60 -0
- package/lib/node-cache-cleaner-cli.mjs +56 -0
- package/lib/node-executor.cjs +91 -0
- package/lib/node-executor.d.cts +2 -0
- package/lib/node-executor.mjs +103 -0
- package/lib/npm-run-series.cjs +79 -39
- package/lib/npm-run-series.mjs +20 -6
- package/lib/package-resolutions-updater-cli.cjs +645 -0
- package/lib/package-resolutions-updater-cli.d.mts +1 -0
- package/lib/package-resolutions-updater-cli.mjs +102 -0
- package/lib/package-resolutions-updater.cjs +259 -133
- package/lib/package-resolutions-updater.d.mts +51 -1
- package/lib/package-resolutions-updater.mjs +18 -294
- package/lib/php-cs-fixer-staged.cjs +105 -0
- package/lib/php-cs-fixer-staged.d.cts +2 -0
- package/lib/php-cs-fixer-staged.mjs +117 -0
- package/lib/print-directory-tree.cjs +62 -14
- package/lib/print-directory-tree.mjs +2 -2
- package/lib/ps/connected-domain.d.ts +1 -1
- package/lib/ps/connected-domain.js +10 -10
- package/lib/ps/index.cjs +1 -1
- package/lib/ps/index.mjs +177 -171
- package/lib/ps/isWin.js +1 -1
- package/lib/ps/table-parser.js +6 -6
- package/lib/remove-module.cjs +61 -13
- package/lib/remove-module.mjs +1 -1
- package/lib/rm-node-module-cli.cjs +222 -0
- package/lib/rm-node-module-cli.d.cts +1 -0
- package/lib/rm-node-module-cli.mjs +89 -0
- package/lib/rm-node-modules.cjs +127 -0
- package/lib/rm-node-modules.d.cts +35 -0
- package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
- package/lib/rmpath.cjs +63 -15
- package/lib/rmpath.mjs +2 -2
- package/lib/submodule-install.cjs +107 -47
- package/lib/submodule-install.mjs +48 -35
- package/lib/submodule-remove-cli.cjs +6 -3
- package/lib/submodule-remove-cli.js +3 -3
- package/lib/submodule-remove-cli.mjs +2 -3
- package/lib/submodule-remove.cjs +4 -1
- package/lib/submodule-remove.mjs +1 -1
- package/lib/utils/chatgpt.cjs +198 -34
- package/lib/utils/chatgpt.js +260 -93
- package/lib/utils/chatgpt.mjs +1 -1
- package/lib/utils/findEnvFiles.cjs +89 -0
- package/lib/utils/findEnvFiles.d.cts +19 -0
- package/lib/utils/findEnvFiles.mjs +6 -0
- package/lib/utils/findWorkspaceRoot.cjs +70 -0
- package/lib/utils/findWorkspaceRoot.d.ts +9 -0
- package/lib/utils/findWorkspaceRoot.js +57 -0
- package/lib/utils/findWorkspaceRoot.mjs +40 -0
- package/lib/utils/index.cjs +60 -13
- package/lib/utils/index.mjs +1 -1
- package/lib/utils/isGithubTokenValid.cjs +64 -0
- package/lib/utils/isGithubTokenValid.d.ts +7 -0
- package/lib/utils/isGithubTokenValid.js +48 -0
- package/lib/utils/isGithubTokenValid.mjs +36 -0
- package/lib/{ps/index.d.cjs → utils/isWindows.cjs} +17 -3
- package/lib/utils/isWindows.d.ts +5 -0
- package/lib/utils/isWindows.js +10 -0
- package/lib/utils/isWindows.mjs +8 -0
- package/lib/utils/runBash.cjs +53 -0
- package/lib/utils/runBash.d.cts +12 -0
- package/lib/utils/runBash.mjs +66 -0
- package/lib/yarn-per-branch-lock-installer.cjs +97 -0
- package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
- package/lib/yarn-per-branch-lock-installer.mjs +109 -0
- package/lib/yarn-reinstall.cjs +61 -13
- package/lib/yarn-reinstall.mjs +1 -1
- package/package.json +133 -110
- package/readme.html +784 -0
- package/readme.md +116 -229
- package/releases/readme.md +1 -1
- package/requirements.txt +1 -0
- package/test/README.md +2 -2
- package/test-project/package.json +8 -2
- package/test-project/workspaces/workspace-a/package.json +135 -0
- package/test-project/workspaces/workspace-a/readme.md +20 -0
- package/test-project/workspaces/workspace-a/release/readme.md +42 -0
- package/test-project/workspaces/workspace-a/test/demo/package.json +25 -0
- package/test-project/workspaces/workspace-a/test/readme.md +12 -0
- package/test-project/workspaces/workspace-b/package.json +139 -0
- package/test-project/workspaces/workspace-b/readme.md +94 -0
- package/test-project/workspaces/workspace-b/requirements.txt +1 -0
- package/test-project/workspaces/workspace-b/test/sample-project/package.json +7 -0
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +96 -0
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
- package/tmp/rm-node-modules-test-project/package.json +17 -0
- package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +16 -0
- package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +16 -0
- package/tmp/test-repo/README.md +2 -35
- package/tmp/test-repo/package.json +13 -3
- package/docs-src/clean-github-actions-caches.md +0 -26
- package/docs-src/free-chatgpt.md +0 -26
- package/lib/binary-collections-config.cjs +0 -15
- package/lib/chunk-4EWQC6GZ.mjs +0 -382
- package/lib/chunk-4ZI7BQKQ.mjs +0 -381
- package/lib/chunk-5J2BEPY5.mjs +0 -83
- package/lib/chunk-AGZYRDC2.mjs +0 -323
- package/lib/chunk-BDCHCWHD.mjs +0 -136
- package/lib/chunk-BEZKJ25G.mjs +0 -140
- package/lib/chunk-DI5MDPSN.mjs +0 -386
- package/lib/chunk-GJTGHXRA.mjs +0 -356
- package/lib/chunk-HMRMTYZM.mjs +0 -40
- package/lib/chunk-HN52G2YL.mjs +0 -305
- package/lib/chunk-LEM5OMRP.mjs +0 -384
- package/lib/chunk-O6SWBEOQ.mjs +0 -81
- package/lib/chunk-RCP7DHVY.mjs +0 -190
- package/lib/chunk-SBNDSKG5.mjs +0 -136
- package/lib/chunk-U6SO4QEV.mjs +0 -320
- package/lib/chunk-XD6BJK6Q.mjs +0 -351
- package/lib/chunk-YXSFGA2D.mjs +0 -383
- package/lib/git/gitattributes.d.ts +0 -33
- package/lib/git/gitattributes.js +0 -223
- package/lib/ps/index.d.ts +0 -2
- package/lib/ps/index.js +0 -253
- package/tmp/typedoc/readme.md +0 -320
- /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
package/lib/git-diff.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export default runGitDiff;
|
|
|
10
10
|
* @param {string} command - The git command to execute (e.g., "git --no-pager diff --staged")
|
|
11
11
|
* @param {string} successMessage - Message to display when the command executes successfully
|
|
12
12
|
* @param {string} errorMessage - Message to display when the command fails
|
|
13
|
+
* @returns {boolean} True when diff content exists, false when no changes were found
|
|
13
14
|
*
|
|
14
15
|
* @throws {Error} Exits the process with code 1 if the git command fails
|
|
15
16
|
*
|
|
@@ -29,7 +30,7 @@ export default runGitDiff;
|
|
|
29
30
|
* 'Failed to generate file diff'
|
|
30
31
|
* );
|
|
31
32
|
*/
|
|
32
|
-
declare function runGitDiff(command: string, successMessage: string, errorMessage: string):
|
|
33
|
+
declare function runGitDiff(command: string, successMessage: string, errorMessage: string): boolean;
|
|
33
34
|
export const CACHE_DIR: string;
|
|
34
35
|
export const DIFF_OUTPUT: string;
|
|
35
36
|
export const DIFF_OUTPUT_RELATIVE: string;
|
package/lib/git-diff.js
CHANGED
|
@@ -16,19 +16,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
16
16
|
exports.GPT_DIFF_OUTPUT_RELATIVE = exports.GPT_DIFF_OUTPUT = exports.DIFF_OUTPUT_RELATIVE = exports.DIFF_OUTPUT = exports.CACHE_DIR = void 0;
|
|
17
17
|
exports.gitDiff = runGitDiff;
|
|
18
18
|
exports.mainGitDiff = mainGitDiff;
|
|
19
|
+
const ansi_colors_1 = __importDefault(require("ansi-colors"));
|
|
19
20
|
const child_process_1 = require("child_process");
|
|
20
21
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
22
|
+
const sbg_utility_1 = require("sbg-utility");
|
|
21
23
|
const upath_1 = __importDefault(require("upath"));
|
|
22
24
|
const url_1 = require("url");
|
|
23
|
-
const
|
|
25
|
+
const config_cjs_1 = require("./binary-collections/config.cjs");
|
|
24
26
|
const chatgpt_js_1 = require("./utils/chatgpt.js");
|
|
25
27
|
const index_cjs_1 = require("./utils/index.cjs");
|
|
26
28
|
const __filename = (0, url_1.fileURLToPath)(import.meta.url);
|
|
27
29
|
const __dirname = upath_1.default.dirname(__filename);
|
|
30
|
+
const args = (0, index_cjs_1.getArgs)();
|
|
31
|
+
const positional = args._ || [];
|
|
28
32
|
// Output path using centralized temp directory configuration
|
|
29
|
-
const
|
|
33
|
+
const FILENAME = (0, sbg_utility_1.md5)((positional[0] || 'default') + JSON.stringify(args));
|
|
34
|
+
const DIFF_OUTPUT = (0, config_cjs_1.getTempPath)(`git-diff/${FILENAME}.txt`);
|
|
30
35
|
exports.DIFF_OUTPUT = DIFF_OUTPUT;
|
|
31
|
-
const GPT_DIFF_OUTPUT = (0,
|
|
36
|
+
const GPT_DIFF_OUTPUT = (0, config_cjs_1.getTempPath)(`git-diff/gpt-${FILENAME}.txt`);
|
|
32
37
|
exports.GPT_DIFF_OUTPUT = GPT_DIFF_OUTPUT;
|
|
33
38
|
const CACHE_DIR = upath_1.default.dirname(DIFF_OUTPUT);
|
|
34
39
|
exports.CACHE_DIR = CACHE_DIR;
|
|
@@ -38,18 +43,19 @@ exports.DIFF_OUTPUT_RELATIVE = DIFF_OUTPUT_RELATIVE;
|
|
|
38
43
|
const GPT_DIFF_OUTPUT_RELATIVE = upath_1.default.relative(process.cwd(), GPT_DIFF_OUTPUT);
|
|
39
44
|
exports.GPT_DIFF_OUTPUT_RELATIVE = GPT_DIFF_OUTPUT_RELATIVE;
|
|
40
45
|
// Ensure output directory exists
|
|
41
|
-
|
|
42
|
-
fs_extra_1.default.mkdirSync(CACHE_DIR, { recursive: true });
|
|
43
|
-
}
|
|
46
|
+
fs_extra_1.default.ensureDirSync(CACHE_DIR, { mode: 0o755 });
|
|
44
47
|
function showHelp() {
|
|
45
|
-
console.log(
|
|
46
|
-
console.log(
|
|
47
|
-
console.log(
|
|
48
|
-
console.log(
|
|
49
|
-
console.log(
|
|
50
|
-
console.log(
|
|
51
|
-
console.log(
|
|
52
|
-
console.log(
|
|
48
|
+
console.log('\u{1F4DD} Git Diff Helper');
|
|
49
|
+
console.log('\u{1F4C4} Usage:');
|
|
50
|
+
console.log(' \u{1F4C2} git-diff FILE Show staged diff of specified file');
|
|
51
|
+
console.log(' \u{1F4C2} git-diff --staged-only Show staged diff of all files');
|
|
52
|
+
console.log(' \u{1F4C2} git-diff -s | -S Same as --staged-only');
|
|
53
|
+
console.log(' \u{1F4C2} git-diff --unstaged FILE Show unstaged diff of specified file');
|
|
54
|
+
console.log(' \u{1F4C2} git-diff --unstaged Show unstaged diff of all files');
|
|
55
|
+
console.log(' \u{1F4C2} git-diff -u Same as --unstaged');
|
|
56
|
+
console.log(' \u{1F4C2} git-diff --ai Run ChatGPT automation for commit message');
|
|
57
|
+
console.log(' \u{1F4C2} git-diff --help | -h Show this help message');
|
|
58
|
+
console.log('');
|
|
53
59
|
console.log(`\u{1F4BE} Output is saved to: ${DIFF_OUTPUT_RELATIVE}`);
|
|
54
60
|
console.log(`\u{1F916} GPT prompt is saved to: ${GPT_DIFF_OUTPUT_RELATIVE}`);
|
|
55
61
|
process.exit(0);
|
|
@@ -64,6 +70,7 @@ function showHelp() {
|
|
|
64
70
|
* @param {string} command - The git command to execute (e.g., "git --no-pager diff --staged")
|
|
65
71
|
* @param {string} successMessage - Message to display when the command executes successfully
|
|
66
72
|
* @param {string} errorMessage - Message to display when the command fails
|
|
73
|
+
* @returns {boolean} True when diff content exists, false when no changes were found
|
|
67
74
|
*
|
|
68
75
|
* @throws {Error} Exits the process with code 1 if the git command fails
|
|
69
76
|
*
|
|
@@ -87,65 +94,115 @@ function runGitDiff(command, successMessage, errorMessage) {
|
|
|
87
94
|
try {
|
|
88
95
|
console.log(`🔍 [i] Running command: ${command}`);
|
|
89
96
|
const result = (0, child_process_1.execSync)(command, {
|
|
90
|
-
encoding:
|
|
97
|
+
encoding: 'utf8',
|
|
91
98
|
maxBuffer: 1024 * 1024 * 10 // 10MB buffer to handle large diffs
|
|
92
99
|
});
|
|
93
100
|
// If result is empty, inform user but don't treat as error
|
|
94
|
-
if (!result || result.trim() ===
|
|
95
|
-
console.log(`ℹ️
|
|
96
|
-
|
|
101
|
+
if (!result || result.trim() === '') {
|
|
102
|
+
console.log(`ℹ️ [i] No changes found for the specified criteria`);
|
|
103
|
+
(0, sbg_utility_1.writefile)(DIFF_OUTPUT, '# No changes found\n');
|
|
97
104
|
console.log(`✅ Empty diff saved to "${DIFF_OUTPUT_RELATIVE}"`);
|
|
98
|
-
return;
|
|
105
|
+
return false;
|
|
99
106
|
}
|
|
100
|
-
|
|
101
|
-
|
|
107
|
+
(0, sbg_utility_1.writefile)(DIFF_OUTPUT, result);
|
|
108
|
+
(0, sbg_utility_1.writefile)(GPT_DIFF_OUTPUT, `Hello, ChatGPT!\nCan you create a conventional commit message by diff content below:\n\n\`\`\`${result}\n\`\`\`\n\nGive me result as codeblock with language "text" only.\n\nThank you!`);
|
|
102
109
|
console.log(`✅ ${successMessage}`);
|
|
103
|
-
console.log(`💾 GPT diff prompt saved to "${GPT_DIFF_OUTPUT_RELATIVE}"`);
|
|
110
|
+
console.log(`💾 GPT diff prompt saved to "${ansi_colors_1.default.green(GPT_DIFF_OUTPUT_RELATIVE)}"`);
|
|
111
|
+
return true;
|
|
104
112
|
}
|
|
105
113
|
catch (error) {
|
|
106
114
|
console.error(`❌ ${errorMessage}`);
|
|
107
115
|
console.error(`📝 Command: ${command}`);
|
|
108
116
|
console.error(`⚠️ Error: ${error.message}`);
|
|
109
117
|
// Check if it's a git-related error
|
|
110
|
-
if (error.message.includes(
|
|
111
|
-
console.error(
|
|
118
|
+
if (error.message.includes('not a git repository')) {
|
|
119
|
+
console.error('🚧 Make sure you are in a git repository');
|
|
112
120
|
}
|
|
113
121
|
process.exit(1);
|
|
114
122
|
}
|
|
115
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Checks whether a file has changes for a specific git diff mode.
|
|
126
|
+
*
|
|
127
|
+
* Uses `git diff --quiet` semantics:
|
|
128
|
+
* - exit code 0: no changes
|
|
129
|
+
* - exit code 1: changes exist
|
|
130
|
+
*
|
|
131
|
+
* @param {string} file - Target file path
|
|
132
|
+
* @param {"staged" | "unstaged"} mode - Diff mode to check
|
|
133
|
+
* @returns {boolean} True when changes exist for the given mode
|
|
134
|
+
*/
|
|
135
|
+
function fileHasChanges(file, mode) {
|
|
136
|
+
const command = mode === 'staged' ? `git diff --cached --quiet -- "${file}"` : `git diff --quiet -- "${file}"`;
|
|
137
|
+
try {
|
|
138
|
+
(0, child_process_1.execSync)(command, { stdio: 'ignore' });
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
if (error.status === 1) {
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
throw error;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
116
148
|
function mainGitDiff() {
|
|
117
149
|
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
-
const args = (0, index_cjs_1.getArgs)();
|
|
119
|
-
const positional = args._ || [];
|
|
120
150
|
// Show help if no arguments or --help/-h is passed
|
|
121
151
|
if (args.help || args.h) {
|
|
122
152
|
showHelp();
|
|
123
153
|
}
|
|
124
|
-
|
|
125
|
-
|
|
154
|
+
const useUnstaged = args.unstaged || args.u;
|
|
155
|
+
const fileFromFlag = typeof args.unstaged === 'string' ? args.unstaged : typeof args.u === 'string' ? args.u : null;
|
|
156
|
+
let hasDiff = false;
|
|
157
|
+
if (args['staged-only'] || args.s || args.S) {
|
|
158
|
+
hasDiff = runGitDiff('git --no-pager diff --staged', `Full staged diff saved to "${ansi_colors_1.default.green(DIFF_OUTPUT_RELATIVE)}"`, 'Failed to save staged diff');
|
|
126
159
|
}
|
|
127
160
|
else {
|
|
128
161
|
// Handle specific file diff
|
|
129
|
-
const file = positional[0];
|
|
162
|
+
const file = positional[0] || fileFromFlag;
|
|
130
163
|
if (!file) {
|
|
131
|
-
|
|
164
|
+
const fullDiffModeLabel = useUnstaged ? 'unstaged' : 'unstaged';
|
|
165
|
+
hasDiff = runGitDiff('git --no-pager diff', `Full ${fullDiffModeLabel} diff saved to "${ansi_colors_1.default.green(DIFF_OUTPUT_RELATIVE)}"`, "Failed to save all diff's");
|
|
132
166
|
}
|
|
133
167
|
else {
|
|
134
|
-
|
|
168
|
+
let fileDiffMode = useUnstaged ? 'unstaged' : 'staged';
|
|
169
|
+
// Default behavior for file target: prefer staged changes, then fall back to unstaged.
|
|
170
|
+
if (!useUnstaged && !fileHasChanges(file, 'staged') && fileHasChanges(file, 'unstaged')) {
|
|
171
|
+
fileDiffMode = 'unstaged';
|
|
172
|
+
}
|
|
173
|
+
hasDiff = runGitDiff(fileDiffMode === 'unstaged' ? `git --no-pager diff -- "${file}"` : `git --no-pager diff --cached -- "${file}"`, `${fileDiffMode[0].toUpperCase() + fileDiffMode.slice(1)} diff of "${file}" saved to "${ansi_colors_1.default.green(DIFF_OUTPUT_RELATIVE)}"`, `Failed to generate ${fileDiffMode} diff for "${file}"`);
|
|
135
174
|
}
|
|
136
175
|
}
|
|
176
|
+
if (hasDiff) {
|
|
177
|
+
// Generate command prompt for opencode CLI
|
|
178
|
+
const opencodePrompt = [
|
|
179
|
+
'',
|
|
180
|
+
'🤖 OpenCode Prompt Helper',
|
|
181
|
+
'────────────────────────',
|
|
182
|
+
'',
|
|
183
|
+
'📄 App Prompt:',
|
|
184
|
+
` Generate a conventional commit message from diff file: ${DIFF_OUTPUT}`,
|
|
185
|
+
'',
|
|
186
|
+
'💻 CLI Command:',
|
|
187
|
+
` opencode run "Generate a conventional commit message from diff file ${DIFF_OUTPUT}"`,
|
|
188
|
+
''
|
|
189
|
+
];
|
|
190
|
+
const opencodePromptPath = (0, config_cjs_1.getTempPath)(`git-diff/opencode-${FILENAME}.txt`);
|
|
191
|
+
(0, sbg_utility_1.writefile)(opencodePromptPath, opencodePrompt.join('\n'));
|
|
192
|
+
console.log(`💡 OpenCode prompt saved to "${ansi_colors_1.default.green(upath_1.default.relative(process.cwd(), opencodePromptPath))}"`);
|
|
193
|
+
}
|
|
137
194
|
// Generate commit message prompt from ChatGPT (only if --ai is specified)
|
|
138
195
|
if (args.ai) {
|
|
139
196
|
try {
|
|
140
197
|
yield (0, chatgpt_js_1.runChatGpt)({ headless: true, questionFile: GPT_DIFF_OUTPUT });
|
|
141
198
|
}
|
|
142
199
|
catch (error) {
|
|
143
|
-
console.error(
|
|
144
|
-
console.error(
|
|
200
|
+
console.error('❌ Error running ChatGPT:', error.message);
|
|
201
|
+
console.error('💡 Try running with visible browser mode or check if Chrome is installed');
|
|
145
202
|
}
|
|
146
203
|
}
|
|
147
204
|
else {
|
|
148
|
-
console.log(
|
|
205
|
+
console.log('💡 Tip: Use --ai flag to generate commit message with ChatGPT');
|
|
149
206
|
}
|
|
150
207
|
});
|
|
151
208
|
}
|
package/lib/git-diff.mjs
CHANGED
|
@@ -9,10 +9,11 @@ import {
|
|
|
9
9
|
git_diff_default,
|
|
10
10
|
mainGitDiff,
|
|
11
11
|
runGitDiff
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-SPTECFE5.mjs";
|
|
13
|
+
import "./chunk-G5UUEWUO.mjs";
|
|
14
|
+
import "./chunk-GAGABICI.mjs";
|
|
15
|
+
import "./chunk-H44UWUFY.mjs";
|
|
16
|
+
import "./chunk-5RTXZVCW.mjs";
|
|
16
17
|
import "./chunk-QQ4A6DLD.mjs";
|
|
17
18
|
export {
|
|
18
19
|
CACHE_DIR,
|
package/lib/git-fix.cjs
CHANGED
|
@@ -243,6 +243,7 @@ var require_gitattributes = __commonJS({
|
|
|
243
243
|
formatGitAttributes,
|
|
244
244
|
updateGitAttributes
|
|
245
245
|
};
|
|
246
|
+
module2.exports.default = module2.exports;
|
|
246
247
|
}
|
|
247
248
|
});
|
|
248
249
|
|
|
@@ -253,7 +254,7 @@ var require_line_endings = __commonJS({
|
|
|
253
254
|
var path2 = require("upath");
|
|
254
255
|
var fs = require("fs");
|
|
255
256
|
var { runGitCommand } = require_utils();
|
|
256
|
-
var { updateGitAttributes } = require_gitattributes()
|
|
257
|
+
var { updateGitAttributes } = require_gitattributes();
|
|
257
258
|
function forceLfLineEndings2() {
|
|
258
259
|
console.log("\n=== Configuring LF Line Endings ===");
|
|
259
260
|
runGitCommand(["config", "core.autocrlf", "false"], "Disable automatic CRLF conversion");
|
|
@@ -397,31 +398,78 @@ var require_utils2 = __commonJS({
|
|
|
397
398
|
}
|
|
398
399
|
module2.exports.getArgs = getArgs2;
|
|
399
400
|
function del(fullPath) {
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
401
|
+
try {
|
|
402
|
+
if (!fs.existsSync(fullPath)) return;
|
|
403
|
+
const stat = fs.lstatSync(fullPath);
|
|
404
|
+
if (stat.isSymbolicLink()) {
|
|
405
|
+
try {
|
|
406
|
+
fs.unlinkSync(fullPath);
|
|
407
|
+
console.log("deleted symlink", fullPath);
|
|
408
|
+
} catch (e) {
|
|
409
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
410
|
+
}
|
|
411
|
+
return;
|
|
412
|
+
}
|
|
413
|
+
if (stat.isDirectory()) {
|
|
414
|
+
const subdir = fs.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
415
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
416
|
+
del(subdir[i]);
|
|
417
|
+
}
|
|
418
|
+
try {
|
|
419
|
+
fs.rmdirSync(fullPath);
|
|
420
|
+
console.log("deleted", fullPath);
|
|
421
|
+
} catch (_e) {
|
|
422
|
+
try {
|
|
423
|
+
fs.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
424
|
+
console.log("deleted", fullPath);
|
|
425
|
+
} catch (ee) {
|
|
426
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
return;
|
|
404
430
|
}
|
|
405
|
-
} else {
|
|
406
431
|
try {
|
|
407
|
-
fs.
|
|
432
|
+
fs.unlinkSync(fullPath);
|
|
408
433
|
console.log("deleted", fullPath);
|
|
409
|
-
} catch (
|
|
410
|
-
|
|
434
|
+
} catch (_e) {
|
|
435
|
+
try {
|
|
436
|
+
fs.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
437
|
+
console.log("deleted", fullPath);
|
|
438
|
+
} catch (ee) {
|
|
439
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
440
|
+
}
|
|
411
441
|
}
|
|
442
|
+
} catch (err) {
|
|
443
|
+
console.log("failed delete", fullPath, err && err.message);
|
|
412
444
|
}
|
|
413
445
|
}
|
|
414
446
|
module2.exports.del = del;
|
|
415
447
|
function delStream(globStream) {
|
|
416
448
|
globStream.stream().on("data", (result) => {
|
|
417
449
|
const fullPath = path2.resolve(process.cwd(), result);
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
450
|
+
try {
|
|
451
|
+
if (fs.existsSync(fullPath)) {
|
|
452
|
+
const stat = fs.lstatSync(fullPath);
|
|
453
|
+
if (stat.isSymbolicLink()) {
|
|
454
|
+
try {
|
|
455
|
+
fs.unlinkSync(fullPath);
|
|
456
|
+
console.log("deleted symlink", fullPath);
|
|
457
|
+
} catch (e) {
|
|
458
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
459
|
+
}
|
|
460
|
+
return;
|
|
461
|
+
}
|
|
462
|
+
if (stat.isDirectory()) {
|
|
463
|
+
const subdir = fs.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
464
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
465
|
+
del(subdir[i]);
|
|
466
|
+
}
|
|
467
|
+
}
|
|
422
468
|
}
|
|
469
|
+
del(fullPath);
|
|
470
|
+
} catch (err) {
|
|
471
|
+
console.log("failed processing", fullPath, err && err.message);
|
|
423
472
|
}
|
|
424
|
-
del(fullPath);
|
|
425
473
|
});
|
|
426
474
|
}
|
|
427
475
|
module2.exports.delStream = delStream;
|
|
@@ -474,7 +522,7 @@ var require_user_config = __commonJS({
|
|
|
474
522
|
var gch = require("git-command-helper");
|
|
475
523
|
var { runGitCommand, runGitCommandOutput } = require_utils();
|
|
476
524
|
var { getArgs: getArgs2 } = require_utils2();
|
|
477
|
-
require("dotenv").config({ path: require("path").join(process.cwd(), ".env") });
|
|
525
|
+
require("dotenv").config({ path: require("path").join(process.cwd(), ".env"), quiet: true });
|
|
478
526
|
function configureGitUser2(cliUser = null, cliEmail = null, options2 = {}) {
|
|
479
527
|
console.log("\n=== Configuring Git User ===");
|
|
480
528
|
let username, email;
|
|
@@ -608,7 +656,7 @@ var { configureGitUser } = require_user_config();
|
|
|
608
656
|
var { normalizeLineEndings } = require_normalize();
|
|
609
657
|
var { getArgs } = require_utils2();
|
|
610
658
|
var path = require("upath");
|
|
611
|
-
require("dotenv").config({ path: path.join(process.cwd(), ".env") });
|
|
659
|
+
require("dotenv").config({ path: path.join(process.cwd(), ".env"), quiet: true, override: true });
|
|
612
660
|
function showHelp() {
|
|
613
661
|
console.log("Git Fix Utility");
|
|
614
662
|
console.log("----------------------------");
|
package/lib/git-fix.mjs
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
require_pull_strategy
|
|
5
|
+
} from "./chunk-A2JQXI5Z.mjs";
|
|
6
|
+
import {
|
|
7
|
+
require_user_config
|
|
8
|
+
} from "./chunk-2LSRSEXF.mjs";
|
|
3
9
|
import {
|
|
4
10
|
require_line_endings
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-ZDMWBSYF.mjs";
|
|
12
|
+
import "./chunk-PDN26I7O.mjs";
|
|
7
13
|
import {
|
|
8
14
|
require_normalize
|
|
9
15
|
} from "./chunk-HLGOWBEO.mjs";
|
|
10
16
|
import {
|
|
11
17
|
require_permissions
|
|
12
18
|
} from "./chunk-7YD7IPFF.mjs";
|
|
13
|
-
import {
|
|
14
|
-
require_pull_strategy
|
|
15
|
-
} from "./chunk-A2JQXI5Z.mjs";
|
|
16
|
-
import {
|
|
17
|
-
require_user_config
|
|
18
|
-
} from "./chunk-E6FDDAOO.mjs";
|
|
19
19
|
import {
|
|
20
20
|
require_utils as require_utils2
|
|
21
21
|
} from "./chunk-A3VUZEJK.mjs";
|
|
22
22
|
import {
|
|
23
23
|
require_utils
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-5RTXZVCW.mjs";
|
|
25
25
|
import {
|
|
26
26
|
__commonJS,
|
|
27
27
|
__require,
|
|
@@ -40,7 +40,7 @@ var require_git_fix = __commonJS({
|
|
|
40
40
|
var { normalizeLineEndings } = require_normalize();
|
|
41
41
|
var { getArgs } = require_utils();
|
|
42
42
|
var path = __require("upath");
|
|
43
|
-
__require("dotenv").config({ path: path.join(process.cwd(), ".env") });
|
|
43
|
+
__require("dotenv").config({ path: path.join(process.cwd(), ".env"), quiet: true, override: true });
|
|
44
44
|
function showHelp() {
|
|
45
45
|
console.log("Git Fix Utility");
|
|
46
46
|
console.log("----------------------------");
|
package/lib/git-purge.cjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
1
2
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
2
3
|
var __esm = (fn, res) => function __init() {
|
|
3
4
|
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
@@ -67,31 +68,78 @@ var require_utils = __commonJS({
|
|
|
67
68
|
}
|
|
68
69
|
module2.exports.getArgs = getArgs;
|
|
69
70
|
function del(fullPath) {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
try {
|
|
72
|
+
if (!fs.existsSync(fullPath)) return;
|
|
73
|
+
const stat = fs.lstatSync(fullPath);
|
|
74
|
+
if (stat.isSymbolicLink()) {
|
|
75
|
+
try {
|
|
76
|
+
fs.unlinkSync(fullPath);
|
|
77
|
+
console.log("deleted symlink", fullPath);
|
|
78
|
+
} catch (e) {
|
|
79
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
80
|
+
}
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (stat.isDirectory()) {
|
|
84
|
+
const subdir = fs.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
85
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
86
|
+
del(subdir[i]);
|
|
87
|
+
}
|
|
88
|
+
try {
|
|
89
|
+
fs.rmdirSync(fullPath);
|
|
90
|
+
console.log("deleted", fullPath);
|
|
91
|
+
} catch (_e) {
|
|
92
|
+
try {
|
|
93
|
+
fs.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
94
|
+
console.log("deleted", fullPath);
|
|
95
|
+
} catch (ee) {
|
|
96
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return;
|
|
74
100
|
}
|
|
75
|
-
} else {
|
|
76
101
|
try {
|
|
77
|
-
fs.
|
|
102
|
+
fs.unlinkSync(fullPath);
|
|
78
103
|
console.log("deleted", fullPath);
|
|
79
|
-
} catch (
|
|
80
|
-
|
|
104
|
+
} catch (_e) {
|
|
105
|
+
try {
|
|
106
|
+
fs.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
107
|
+
console.log("deleted", fullPath);
|
|
108
|
+
} catch (ee) {
|
|
109
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
110
|
+
}
|
|
81
111
|
}
|
|
112
|
+
} catch (err) {
|
|
113
|
+
console.log("failed delete", fullPath, err && err.message);
|
|
82
114
|
}
|
|
83
115
|
}
|
|
84
116
|
module2.exports.del = del;
|
|
85
117
|
function delStream(globStream) {
|
|
86
118
|
globStream.stream().on("data", (result) => {
|
|
87
119
|
const fullPath = path2.resolve(process.cwd(), result);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
120
|
+
try {
|
|
121
|
+
if (fs.existsSync(fullPath)) {
|
|
122
|
+
const stat = fs.lstatSync(fullPath);
|
|
123
|
+
if (stat.isSymbolicLink()) {
|
|
124
|
+
try {
|
|
125
|
+
fs.unlinkSync(fullPath);
|
|
126
|
+
console.log("deleted symlink", fullPath);
|
|
127
|
+
} catch (e) {
|
|
128
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
129
|
+
}
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
if (stat.isDirectory()) {
|
|
133
|
+
const subdir = fs.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
134
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
135
|
+
del(subdir[i]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
92
138
|
}
|
|
139
|
+
del(fullPath);
|
|
140
|
+
} catch (err) {
|
|
141
|
+
console.log("failed processing", fullPath, err && err.message);
|
|
93
142
|
}
|
|
94
|
-
del(fullPath);
|
|
95
143
|
});
|
|
96
144
|
}
|
|
97
145
|
module2.exports.delStream = delStream;
|
package/lib/git-purge.mjs
CHANGED
package/lib/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { findNodeModules } from
|
|
1
|
+
import { findNodeModules } from './find-node-modules.cjs';
|
|
2
2
|
export { findNodeModules };
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __copyProps = (to, from, except, desc) => {
|
|
9
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
10
|
+
for (let key of __getOwnPropNames(from))
|
|
11
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
12
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
+
}
|
|
14
|
+
return to;
|
|
15
|
+
};
|
|
16
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
17
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
18
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
19
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
20
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
21
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
+
mod
|
|
23
|
+
));
|
|
24
|
+
|
|
25
|
+
// node_modules/tsup/assets/cjs_shims.js
|
|
26
|
+
var getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.tagName.toUpperCase() === "SCRIPT" ? document.currentScript.src : new URL("main.js", document.baseURI).href;
|
|
27
|
+
var importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
|
|
28
|
+
|
|
29
|
+
// src/kill-night-crows.mjs
|
|
30
|
+
var import_node_child_process = require("child_process");
|
|
31
|
+
var import_node_fs = __toESM(require("fs"), 1);
|
|
32
|
+
var import_node_path = __toESM(require("path"), 1);
|
|
33
|
+
var import_node_url = require("url");
|
|
34
|
+
var __filename2 = (0, import_node_url.fileURLToPath)(importMetaUrl);
|
|
35
|
+
var __dirname = import_node_path.default.dirname(__filename2);
|
|
36
|
+
var scriptCandidates = [
|
|
37
|
+
import_node_path.default.resolve(__dirname, "../bin/kill-night-crows.ps1"),
|
|
38
|
+
import_node_path.default.resolve(__dirname, "../binaries/kill-night-crows.ps1")
|
|
39
|
+
];
|
|
40
|
+
var scriptPath = scriptCandidates.find((candidate) => import_node_fs.default.existsSync(candidate));
|
|
41
|
+
var scriptChecks = scriptCandidates.map((candidate) => ({
|
|
42
|
+
path: candidate,
|
|
43
|
+
exists: import_node_fs.default.existsSync(candidate)
|
|
44
|
+
}));
|
|
45
|
+
var args = process.argv.slice(2);
|
|
46
|
+
var isHelp = args.includes("--help") || args.includes("-h");
|
|
47
|
+
if (isHelp) {
|
|
48
|
+
console.log(`
|
|
49
|
+
kill-night-crows
|
|
50
|
+
|
|
51
|
+
Usage:
|
|
52
|
+
node src/kill-night-crows.mjs [options]
|
|
53
|
+
|
|
54
|
+
Options:
|
|
55
|
+
--help, -h Show this help message
|
|
56
|
+
|
|
57
|
+
Description:
|
|
58
|
+
Runs kill-night-crows.ps1 to watch Night Crows processes
|
|
59
|
+
and kill the launcher tree when the shipping process is not responding.
|
|
60
|
+
Resolution priority: ../bin first, then ../binaries.
|
|
61
|
+
|
|
62
|
+
Script check:
|
|
63
|
+
${scriptChecks.map((check) => ` ${check.exists ? "found" : "missing"} - ${check.path}`).join("\n")}
|
|
64
|
+
`);
|
|
65
|
+
process.exit(0);
|
|
66
|
+
}
|
|
67
|
+
if (!scriptPath) {
|
|
68
|
+
console.error(
|
|
69
|
+
`PowerShell script not found in any of these paths:
|
|
70
|
+
${scriptCandidates.map((p) => ` - ${p}`).join("\n")}`
|
|
71
|
+
);
|
|
72
|
+
process.exit(1);
|
|
73
|
+
}
|
|
74
|
+
if (process.platform !== "win32") {
|
|
75
|
+
console.error("kill-night-crows is supported only on Windows.");
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
var result = (0, import_node_child_process.spawnSync)("powershell.exe", ["-NoProfile", "-ExecutionPolicy", "Bypass", "-File", scriptPath, ...args], {
|
|
79
|
+
stdio: "inherit"
|
|
80
|
+
});
|
|
81
|
+
if (typeof result.status === "number") {
|
|
82
|
+
process.exit(result.status);
|
|
83
|
+
}
|
|
84
|
+
if (result.error) {
|
|
85
|
+
console.error(result.error.message);
|
|
86
|
+
}
|
|
87
|
+
process.exit(1);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|