binary-collections 2.0.14 → 2.0.15
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/plugins/opencode-request-logger/README.md +44 -0
- package/.venv/Lib/site-packages/pyarrow/tests/data/orc/README.md +22 -0
- package/docs-src/install-opencode-plugins.md +86 -0
- package/docs-src/opencode-cli.md +38 -10
- package/lib/binary-collections/config-types.cjs +17 -0
- package/lib/binary-collections/config-types.d.ts +12 -0
- package/lib/binary-collections/config-types.js +2 -0
- package/lib/binary-collections/config-types.mjs +7 -0
- package/lib/binary-collections/config.cjs +16 -8
- package/lib/binary-collections/config.d.cts +18 -10
- package/lib/binary-collections/config.mjs +1 -1
- package/lib/binary-collections/findScript.cjs +8 -6
- package/lib/binary-collections/findScript.mjs +2 -2
- package/lib/binary-collections/listScript.cjs +8 -6
- package/lib/binary-collections/listScript.mjs +2 -2
- package/lib/binary-collections.cjs +8 -6
- package/lib/binary-collections.mjs +3 -3
- package/lib/changelog.cjs +142 -4
- package/lib/changelog.mjs +9 -5
- package/lib/{chunk-SARIXFHP.mjs → chunk-3T6AMFI3.mjs} +16 -8
- package/lib/{chunk-3F6EIHYG.mjs → chunk-3ZF2QMDK.mjs} +3 -3
- package/lib/chunk-B77D3SR4.mjs +28 -0
- package/lib/chunk-BPED62FN.mjs +115 -0
- package/lib/{chunk-XI67TI46.mjs → chunk-DHFRWM2W.mjs} +1 -1
- package/lib/{chunk-2SJKVOTN.mjs → chunk-DPEE3FBB.mjs} +1 -1
- package/lib/{chunk-UYNBNLV5.mjs → chunk-H7AE4IO3.mjs} +1 -1
- package/lib/{chunk-YWSLMAQ7.mjs → chunk-KCJYREA2.mjs} +14 -12
- package/lib/{chunk-JK3MG2KF.mjs → chunk-NHD4HLSU.mjs} +1 -1
- package/lib/{chunk-I3O5ZRYU.mjs → chunk-OWNVMKAA.mjs} +1 -1
- package/lib/chunk-SKVF4TMD.mjs +59 -0
- package/lib/{chunk-SJYP66BO.mjs → chunk-TDUUOAQD.mjs} +1 -1
- package/lib/{chunk-D42YBRZW.mjs → chunk-UAEKSLAX.mjs} +1 -1
- package/lib/chunk-V6PTSDW5.mjs +82 -0
- package/lib/{chunk-AJ3OIYYP.mjs → chunk-WNUEY6VJ.mjs} +8 -6
- package/lib/{chunk-YLV4QATP.mjs → chunk-Z53IUBUN.mjs} +6 -5
- package/lib/{chunk-JMUFQSPE.mjs → chunk-Z7RM46Q4.mjs} +1 -1
- package/lib/cross-env/index.mjs +3 -3
- package/lib/git/git-diff-cli.cjs +16 -8
- package/lib/git/git-diff-cli.mjs +3 -3
- package/lib/git/git-diff.cjs +16 -8
- package/lib/git/git-diff.mjs +3 -3
- package/lib/git/git-fix.cjs +16 -8
- package/lib/git/git-fix.mjs +2 -2
- package/lib/git/user-config.cjs +16 -8
- package/lib/git/user-config.mjs +2 -2
- package/lib/github-workflows/clean-github-actions-caches-cli.cjs +16 -8
- package/lib/github-workflows/clean-github-actions-caches-cli.mjs +2 -2
- package/lib/github-workflows/clean-github-actions-caches.cjs +16 -8
- package/lib/github-workflows/clean-github-actions-caches.mjs +2 -2
- package/lib/github-workflows/get-latest-workflow-status-cli.cjs +16 -8
- package/lib/github-workflows/get-latest-workflow-status-cli.mjs +2 -2
- package/lib/github-workflows/utils.cjs +16 -8
- package/lib/github-workflows/utils.mjs +2 -2
- package/lib/github-workflows/workflow-badge-cli.cjs +16 -8
- package/lib/github-workflows/workflow-badge-cli.mjs +4 -4
- package/lib/node-cache-cleaner-cli.mjs +3 -3
- package/lib/opencode/cli/auth-rotate.cjs +343 -28
- package/lib/opencode/cli/auth-rotate.d.ts +3 -1
- package/lib/opencode/cli/auth-rotate.js +10 -15
- package/lib/opencode/cli/auth-rotate.mjs +6 -2
- package/lib/opencode/cli/auth-rotate.runner.cjs +454 -0
- package/lib/opencode/cli/auth-rotate.runner.d.ts +1 -0
- package/lib/opencode/cli/auth-rotate.runner.js +8 -0
- package/lib/opencode/cli/auth-rotate.runner.mjs +21 -0
- package/lib/opencode/install-opencode-plugins-cli.cjs +82 -0
- package/lib/opencode/install-opencode-plugins-cli.d.ts +1 -0
- package/lib/opencode/install-opencode-plugins-cli.js +78 -0
- package/lib/opencode/install-opencode-plugins-cli.mjs +65 -0
- package/lib/opencode/utils/check-api.cjs +332 -18
- package/lib/opencode/utils/check-api.d.ts +5 -1
- package/lib/opencode/utils/check-api.js +101 -15
- package/lib/opencode/utils/check-api.mjs +5 -1
- package/lib/opencode/utils/check-api.runner.cjs +0 -0
- package/lib/opencode/utils/check-api.runner.d.ts +0 -0
- package/lib/opencode/utils/check-api.runner.js +1 -0
- package/lib/opencode/utils/check-api.runner.mjs +7 -0
- package/lib/opencode-cli.cjs +352 -29
- package/lib/opencode-cli.js +3 -2
- package/lib/opencode-cli.mjs +11 -6
- package/lib/package-resolutions-updater-cli.cjs +16 -8
- package/lib/package-resolutions-updater-cli.mjs +2 -2
- package/lib/package-resolutions-updater.cjs +16 -8
- package/lib/package-resolutions-updater.mjs +2 -2
- package/lib/print-directory-tree.cjs +16 -8
- package/lib/print-directory-tree.mjs +1 -1
- package/lib/print-tarball-tree-cli.cjs +305 -0
- package/lib/print-tarball-tree-cli.d.mts +2 -0
- package/lib/print-tarball-tree-cli.mjs +54 -0
- package/lib/print-tarball-tree.cjs +43 -216
- package/lib/print-tarball-tree.d.mts +4 -1
- package/lib/print-tarball-tree.mjs +12 -66
- package/lib/rmpath-cli.cjs +16 -8
- package/lib/rmpath-cli.mjs +2 -2
- package/lib/rmpath.cjs +16 -8
- package/lib/rmpath.mjs +2 -2
- package/lib/run-by-checksum/hash.cjs +45 -67
- package/lib/run-by-checksum/{hash.d.ts → hash.d.cts} +9 -2
- package/lib/run-by-checksum/hash.mjs +3 -7
- package/lib/run-by-checksum/run.cjs +95 -58
- package/lib/run-by-checksum/run.js +3 -3
- package/lib/run-by-checksum/run.mjs +2 -2
- package/lib/run-by-checksum-cli.cjs +96 -74
- package/lib/run-by-checksum-cli.mjs +2 -2
- package/lib/submodule-install.cjs +16 -8
- package/lib/submodule-install.mjs +1 -1
- package/lib/submodule-remove-cli.cjs +16 -8
- package/lib/submodule-remove-cli.mjs +2 -2
- package/lib/submodule-remove.cjs +16 -8
- package/lib/submodule-remove.mjs +2 -2
- package/lib/utils/isDebug.cjs +13 -0
- package/lib/utils/isDebug.d.cts +9 -0
- package/lib/utils/isDebug.mjs +6 -0
- package/package.json +9 -7
- package/readme.md +63 -0
- package/releases/readme.md +1 -1
- package/lib/chunk-546KAIYT.mjs +0 -113
- package/lib/chunk-5WAOOOGZ.mjs +0 -77
- package/lib/chunk-72XTQ3CK.mjs +0 -45
- package/lib/chunk-7Q6YEUQF.mjs +0 -246
- package/lib/chunk-AQZ7LMFS.mjs +0 -100
- package/lib/chunk-BDCMTOZI.mjs +0 -246
- package/lib/chunk-BEUM4LH4.mjs +0 -184
- package/lib/chunk-BO4TZS4Q.mjs +0 -246
- package/lib/chunk-BZWVHODJ.mjs +0 -62
- package/lib/chunk-CM3IC5YC.mjs +0 -226
- package/lib/chunk-FR3DMHJC.mjs +0 -146
- package/lib/chunk-H44UWUFY.mjs +0 -105
- package/lib/chunk-JVMLKHD2.mjs +0 -62
- package/lib/chunk-KAT2JNLZ.mjs +0 -146
- package/lib/chunk-KRCPFWIF.mjs +0 -193
- package/lib/chunk-LVSPEFU2.mjs +0 -86
- package/lib/chunk-MCCMMZSM.mjs +0 -60
- package/lib/chunk-MGPYPKIE.mjs +0 -109
- package/lib/chunk-OA2RKEY3.mjs +0 -162
- package/lib/chunk-PAZH45HS.mjs +0 -41
- package/lib/chunk-QZMGBDSA.mjs +0 -32
- package/lib/chunk-RDGDLSPD.mjs +0 -76
- package/lib/chunk-RKPIBGKE.mjs +0 -61
- package/lib/chunk-SWUAEY4H.mjs +0 -44
- package/lib/chunk-UAIF5VIA.mjs +0 -89
- package/lib/chunk-UHPFLJXH.mjs +0 -227
- package/lib/chunk-WOC4FZ6F.mjs +0 -164
- package/lib/chunk-WSHVPGNM.mjs +0 -44
- package/lib/run-by-checksum/hash.js +0 -119
- package/readme.html +0 -784
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// src/utils/isDebug.cjs
|
|
2
|
+
function isDebug() {
|
|
3
|
+
if (globalThis.DEBUG !== void 0) {
|
|
4
|
+
if (typeof globalThis.DEBUG === "boolean") {
|
|
5
|
+
return globalThis.DEBUG;
|
|
6
|
+
}
|
|
7
|
+
return globalThis.DEBUG === "true" || globalThis.DEBUG === "1";
|
|
8
|
+
}
|
|
9
|
+
return process.env.DEBUG === "true" || process.env.NODE_ENV === "development" || process.env.DEBUG === "1";
|
|
10
|
+
}
|
|
11
|
+
module.exports = isDebug;
|
|
12
|
+
module.exports.default = isDebug;
|
|
13
|
+
module.exports.isDebug = isDebug;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "binary-collections",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.15",
|
|
4
4
|
"description": "Utility to clean any programming caches and more",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cache",
|
|
@@ -60,7 +60,8 @@
|
|
|
60
60
|
"update:ncu": "npx npm-check-updates -u --enginesNode --root -x jest -x @types/jest -x babel-jest -x @babel/core -x @babel/preset-env -x @babel/preset-typescript -x ts-jest -x eslint -x @eslint/eslintrc -x @eslint/js -x @typescript-eslint/eslint-plugin -x @typescript-eslint/parser -x eslint-config-prettier -x eslint-plugin-prettier -x typescript-eslint -x prettier -x typescript -x ts-node -x @yarnpkg/core",
|
|
61
61
|
"update:packer": "curl -L https://github.com/dimaslanjaka/nodejs-package-types/raw/main/packer.js > packer.cjs",
|
|
62
62
|
"serve": "php -S 0.0.0.0:8490",
|
|
63
|
-
"upload": "node scripts/upload-backend.mjs"
|
|
63
|
+
"upload": "node scripts/upload-backend.mjs",
|
|
64
|
+
"mkdocs-serve": "mkdocs serve -a \"0.0.0.0:5173\" --livereload"
|
|
64
65
|
},
|
|
65
66
|
"repository": {
|
|
66
67
|
"type": "git",
|
|
@@ -71,6 +72,7 @@
|
|
|
71
72
|
"ansi-colors": "^4.1.3",
|
|
72
73
|
"axios": "^1.16.1",
|
|
73
74
|
"better-sqlite3": "^12.10.0",
|
|
75
|
+
"cosmiconfig": "^9.0.1",
|
|
74
76
|
"cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/78b09a1f799430fb251c1b438ec56ce7957674f4/release/cross-spawn.tgz",
|
|
75
77
|
"crypto-js": "^4.2.0",
|
|
76
78
|
"dotenv": "^17.4.2",
|
|
@@ -80,6 +82,7 @@
|
|
|
80
82
|
"minimatch": "^10.2.5",
|
|
81
83
|
"minimist": "^1.2.8",
|
|
82
84
|
"openai": "^6.41.0",
|
|
85
|
+
"proxy-agent": "^8.0.1",
|
|
83
86
|
"ps-node": "^0.1.6",
|
|
84
87
|
"puppeteer": "^25.0.4",
|
|
85
88
|
"puppeteer-extra": "^3.3.6",
|
|
@@ -89,8 +92,7 @@
|
|
|
89
92
|
"upath": "^3.0.7",
|
|
90
93
|
"which": "^7.0.0",
|
|
91
94
|
"yaml": "^2.9.0",
|
|
92
|
-
"yarn": "^1.22.22"
|
|
93
|
-
"zlib": "^1.0.5"
|
|
95
|
+
"yarn": "^1.22.22"
|
|
94
96
|
},
|
|
95
97
|
"devDependencies": {
|
|
96
98
|
"@babel/core": "^7.29.0",
|
|
@@ -146,7 +148,7 @@
|
|
|
146
148
|
"cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/eb82c8e0e60ce425fdf6e89cd53f4391bb8c77cd/release/cross-spawn.tgz",
|
|
147
149
|
"git-command-helper": "https://github.com/dimaslanjaka/git-command-helper/raw/7a28dad83c17abfc4b6ccd2b7327c39ff67adfe5/release/git-command-helper.tgz",
|
|
148
150
|
"sbg-utility": "https://github.com/dimaslanjaka/static-blog-generator/raw/44e5c7b79b4e60f8c2d34857c27b8ce677d7493e/packages/sbg-utility/release/sbg-utility.tgz",
|
|
149
|
-
"@dimaslanjaka/eslint-base-config": "https://github.com/dimaslanjaka/eslint-base-config/raw/
|
|
151
|
+
"@dimaslanjaka/eslint-base-config": "https://github.com/dimaslanjaka/eslint-base-config/raw/822b872f18985462f0da358579cd6493472a2ee0/release/dimaslanjaka-eslint-base-config.tgz"
|
|
150
152
|
},
|
|
151
153
|
"bin": {
|
|
152
154
|
"actions-badge": "lib/github-workflows/workflow-badge-cli.cjs",
|
|
@@ -219,7 +221,7 @@
|
|
|
219
221
|
"pkg-res-updater": "lib/package-resolutions-updater-cli.cjs",
|
|
220
222
|
"pkg-resolutions-updater": "lib/package-resolutions-updater-cli.cjs",
|
|
221
223
|
"print-directory-tree": "lib/print-directory-tree.cjs",
|
|
222
|
-
"print-tarball-tree": "lib/print-tarball-tree.cjs",
|
|
224
|
+
"print-tarball-tree": "lib/print-tarball-tree-cli.cjs",
|
|
223
225
|
"print-tree": "lib/print-directory-tree.cjs",
|
|
224
226
|
"prod": "binaries/prod.cjs",
|
|
225
227
|
"py": "binaries/py.cjs",
|
|
@@ -240,7 +242,7 @@
|
|
|
240
242
|
"submodule-remove": "lib/submodule-remove-cli.cjs",
|
|
241
243
|
"submodule-token": "binaries/submodule-token.cjs",
|
|
242
244
|
"tarball-packer": "lib/node-package-packer-cli.cjs",
|
|
243
|
-
"tarball-tree": "lib/print-tarball-tree.cjs",
|
|
245
|
+
"tarball-tree": "lib/print-tarball-tree-cli.cjs",
|
|
244
246
|
"test-cjs": "binaries/test-cjs.cjs",
|
|
245
247
|
"test-esm": "binaries/test-esm.cjs",
|
|
246
248
|
"undo-commit": "lib/git/undo-commit.cjs",
|
package/readme.md
CHANGED
|
@@ -91,6 +91,69 @@ For development or manual setup.
|
|
|
91
91
|
git clone -b master https://github.com/dimaslanjaka/bin bin
|
|
92
92
|
```
|
|
93
93
|
|
|
94
|
+
## Configuration
|
|
95
|
+
|
|
96
|
+
Binary Collections supports project-level configuration via a `binary-collections.config` file in your project root. Only the name `binary-collections.config` is supported — no `.rc`, JSON, or YAML variants.
|
|
97
|
+
|
|
98
|
+
### Supported Extensions
|
|
99
|
+
|
|
100
|
+
| Extension | Module System |
|
|
101
|
+
|-----------|---------------|
|
|
102
|
+
| `.js` | ESM (project must have `"type": "module"` in `package.json`) |
|
|
103
|
+
| `.cjs` | CommonJS (always works) |
|
|
104
|
+
| `.mjs` | ESM (always works) |
|
|
105
|
+
|
|
106
|
+
### Boilerplate Config
|
|
107
|
+
|
|
108
|
+
A ready-to-use example is provided in the project root:
|
|
109
|
+
|
|
110
|
+
```
|
|
111
|
+
binary-collections.config-example.js
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Copy and rename it to start configuring:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
cp binary-collections.config-example.js binary-collections.config.js
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Example — CJS Config (`binary-collections.config.cjs`)
|
|
121
|
+
|
|
122
|
+
```js
|
|
123
|
+
module.exports = {
|
|
124
|
+
tempDir: './.my-cache'
|
|
125
|
+
};
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Example — ESM Config (`binary-collections.config.mjs`)
|
|
129
|
+
|
|
130
|
+
```js
|
|
131
|
+
export default {
|
|
132
|
+
tempDir: './.my-cache'
|
|
133
|
+
};
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Example — `package.json`
|
|
137
|
+
|
|
138
|
+
Add a `binary-collections` property to your `package.json`:
|
|
139
|
+
|
|
140
|
+
```json
|
|
141
|
+
{
|
|
142
|
+
"name": "my-project",
|
|
143
|
+
"binary-collections": {
|
|
144
|
+
"tempDir": "./.my-cache"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Configurable Properties
|
|
150
|
+
|
|
151
|
+
| Property | Type | Description |
|
|
152
|
+
|----------|------|-------------|
|
|
153
|
+
| `tempDir` | `string` | Base directory for temporary files |
|
|
154
|
+
| `githubToken` | `string` | GitHub API token override |
|
|
155
|
+
| `opencode.keys` | `Array<{name, key}>` | OpenCode API keys for `auth rotate` and other commands |
|
|
156
|
+
|
|
94
157
|
## VSCode Integration
|
|
95
158
|
|
|
96
159
|
To make these tools available directly in your VSCode terminal, create or update `.vscode/settings.json`:
|
package/releases/readme.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
## Releases
|
|
3
3
|
| version | tarball url |
|
|
4
4
|
| :--- | :--- |
|
|
5
|
-
| latest | https://github.com/dimaslanjaka/bin/raw/
|
|
5
|
+
| latest | https://github.com/dimaslanjaka/bin/raw/53834fc/releases/bin.tgz |
|
|
6
6
|
| latest | https://github.com/dimaslanjaka/bin/raw/master/releases/bin.tgz |
|
|
7
7
|
|
|
8
8
|
use this tarball with `resolutions`:
|
package/lib/chunk-546KAIYT.mjs
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
require_utils as require_utils2
|
|
4
|
-
} from "./chunk-A3VUZEJK.mjs";
|
|
5
|
-
import {
|
|
6
|
-
require_config
|
|
7
|
-
} from "./chunk-SARIXFHP.mjs";
|
|
8
|
-
import {
|
|
9
|
-
require_utils
|
|
10
|
-
} from "./chunk-6RK5UCTP.mjs";
|
|
11
|
-
import {
|
|
12
|
-
__commonJS,
|
|
13
|
-
__require,
|
|
14
|
-
init_esm_shims
|
|
15
|
-
} from "./chunk-QQ4A6DLD.mjs";
|
|
16
|
-
|
|
17
|
-
// src/git/user-config.cjs
|
|
18
|
-
var require_user_config = __commonJS({
|
|
19
|
-
"src/git/user-config.cjs"(exports, module) {
|
|
20
|
-
init_esm_shims();
|
|
21
|
-
var { loadDotenv } = require_config();
|
|
22
|
-
var gch = __require("git-command-helper");
|
|
23
|
-
var { runGitCommand, runGitCommandOutput } = require_utils2();
|
|
24
|
-
var { getArgs } = require_utils();
|
|
25
|
-
loadDotenv();
|
|
26
|
-
function configureGitUser(cliUser = null, cliEmail = null, options = {}) {
|
|
27
|
-
console.log("\n=== Configuring Git User ===");
|
|
28
|
-
let username, email;
|
|
29
|
-
if (cliUser && cliEmail) {
|
|
30
|
-
username = cliUser.trim();
|
|
31
|
-
email = cliEmail.trim();
|
|
32
|
-
console.log("[i] Using CLI-provided user configuration");
|
|
33
|
-
} else {
|
|
34
|
-
username = process.env.GITHUB_USER ? process.env.GITHUB_USER.trim() : void 0;
|
|
35
|
-
email = process.env.GITHUB_EMAIL ? process.env.GITHUB_EMAIL.trim() : void 0;
|
|
36
|
-
if (username || email) {
|
|
37
|
-
console.log("[i] Using environment variable user configuration");
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (!username && !email) {
|
|
41
|
-
console.log("[i] No Git user configuration needed (no CLI args or environment variables set)");
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
if (username) {
|
|
45
|
-
const success = runGitCommand(["config", "user.name", username], `Set Git username to "${username}"`);
|
|
46
|
-
if (!success) {
|
|
47
|
-
console.log("[i] Failed to set Git username, but continuing...");
|
|
48
|
-
}
|
|
49
|
-
} else {
|
|
50
|
-
console.log("[i] No username provided, skipping username configuration");
|
|
51
|
-
}
|
|
52
|
-
if (email) {
|
|
53
|
-
const success = runGitCommand(["config", "user.email", email], `Set Git email to "${email}"`);
|
|
54
|
-
if (!success) {
|
|
55
|
-
console.log("[i] Failed to set Git email, but continuing...");
|
|
56
|
-
}
|
|
57
|
-
} else {
|
|
58
|
-
console.log("[i] No email provided, skipping email configuration");
|
|
59
|
-
}
|
|
60
|
-
if (username || email) {
|
|
61
|
-
console.log("[\u2713] Git user configuration completed");
|
|
62
|
-
}
|
|
63
|
-
if (username) {
|
|
64
|
-
const remoteUrl = runGitCommandOutput(["remote", "get-url", "origin"], "Fetching remote URL for verification");
|
|
65
|
-
if (remoteUrl) {
|
|
66
|
-
console.log(`[i] Remote URL: ${remoteUrl}`);
|
|
67
|
-
const parsedUrl = gch.parseGitHubUrl(remoteUrl);
|
|
68
|
-
if (parsedUrl && parsedUrl.owner && username && parsedUrl.owner.toLowerCase() !== username.toLowerCase()) {
|
|
69
|
-
console.warn(
|
|
70
|
-
`
|
|
71
|
-
[!] The GitHub remote owner ("${parsedUrl.owner}") does not match the configured username ("${username}").`
|
|
72
|
-
);
|
|
73
|
-
console.warn(`[!] If this is not intentional, consider updating the remote URL to use your username.`);
|
|
74
|
-
console.warn(`[!] Example: git remote set-url origin https://github.com/${username}/<repo>.git
|
|
75
|
-
`);
|
|
76
|
-
const args = getArgs();
|
|
77
|
-
const updateRemote = options.updateRemote || args["update-remote"] === true;
|
|
78
|
-
if (updateRemote) {
|
|
79
|
-
let newUrl = remoteUrl;
|
|
80
|
-
if (/^https:\/\//.test(remoteUrl)) {
|
|
81
|
-
newUrl = remoteUrl.replace(/https:\/\/(?:[^@]+@)?github.com/, `https://${username}@github.com`);
|
|
82
|
-
} else if (/^git@github.com:/.test(remoteUrl)) {
|
|
83
|
-
console.warn(
|
|
84
|
-
`[!] For SSH remotes, set your SSH config or use HTTPS with username if you want to change authentication user.`
|
|
85
|
-
);
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
if (newUrl !== remoteUrl) {
|
|
89
|
-
const updated = runGitCommand(["remote", "set-url", "origin", newUrl], `Set origin to ${newUrl}`);
|
|
90
|
-
if (updated) {
|
|
91
|
-
console.log(`[\u2713] Remote URL updated to: ${newUrl}`);
|
|
92
|
-
} else {
|
|
93
|
-
console.warn(`[!] Failed to update remote URL. Please update it manually if needed.`);
|
|
94
|
-
}
|
|
95
|
-
} else {
|
|
96
|
-
console.log(`[i] Remote URL does not use HTTPS or already contains the username.`);
|
|
97
|
-
}
|
|
98
|
-
} else {
|
|
99
|
-
console.log(`[i] Remote URL not changed. Use --update-remote to update automatically.`);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
module.exports = {
|
|
106
|
-
configureGitUser
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
export {
|
|
112
|
-
require_user_config
|
|
113
|
-
};
|
package/lib/chunk-5WAOOOGZ.mjs
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
require_config
|
|
4
|
-
} from "./chunk-SWUAEY4H.mjs";
|
|
5
|
-
import {
|
|
6
|
-
__toESM,
|
|
7
|
-
init_esm_shims
|
|
8
|
-
} from "./chunk-QQ4A6DLD.mjs";
|
|
9
|
-
|
|
10
|
-
// src/rmpath.mjs
|
|
11
|
-
init_esm_shims();
|
|
12
|
-
var import_config = __toESM(require_config(), 1);
|
|
13
|
-
import fs from "fs-extra";
|
|
14
|
-
import * as glob from "glob";
|
|
15
|
-
import path from "upath";
|
|
16
|
-
import { fileURLToPath } from "url";
|
|
17
|
-
var __filename = fileURLToPath(import.meta.url);
|
|
18
|
-
var __dirname = path.dirname(__filename);
|
|
19
|
-
(0, import_config.loadDotenv)();
|
|
20
|
-
var deletePatterns = [];
|
|
21
|
-
function resolveDeletePatterns(targetPath) {
|
|
22
|
-
if (fs.existsSync(targetPath) && fs.lstatSync(targetPath).isFile()) {
|
|
23
|
-
deletePatterns.push(targetPath);
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
const vowels = ["a", "i", "u", "e", "o", "A", "I", "U", "E", "O"];
|
|
27
|
-
const letters = [];
|
|
28
|
-
for (let i = 97; i <= 122; i++) letters.push(String.fromCharCode(i));
|
|
29
|
-
for (let i = 65; i <= 90; i++) letters.push(String.fromCharCode(i));
|
|
30
|
-
for (const letter of letters) {
|
|
31
|
-
for (const vowel of vowels) {
|
|
32
|
-
deletePatterns.push(
|
|
33
|
-
`.${letter}*`,
|
|
34
|
-
`@${letter}*`,
|
|
35
|
-
`${letter}*`,
|
|
36
|
-
`@${letter}${vowel}*`,
|
|
37
|
-
`.${letter}${vowel}*`,
|
|
38
|
-
`${letter}${vowel}*`
|
|
39
|
-
);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
async function deleteMatchingFiles(baseDir) {
|
|
44
|
-
for (const pattern of deletePatterns) {
|
|
45
|
-
if (fs.existsSync(pattern)) {
|
|
46
|
-
fs.rmSync(pattern, { recursive: true, force: true });
|
|
47
|
-
continue;
|
|
48
|
-
}
|
|
49
|
-
const matches = glob.sync(path.join(baseDir, pattern), { dot: true, nocase: true });
|
|
50
|
-
for (const fpath of matches) {
|
|
51
|
-
try {
|
|
52
|
-
console.log(`deleting ${fpath}`);
|
|
53
|
-
fs.rmSync(fpath, { recursive: true, force: true });
|
|
54
|
-
} catch (_e) {
|
|
55
|
-
console.error(`cannot delete ${fpath}`);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
async function deleteMainScript(targetPath) {
|
|
61
|
-
if (!fs.existsSync(targetPath)) {
|
|
62
|
-
targetPath = path.resolve(process.cwd(), targetPath);
|
|
63
|
-
}
|
|
64
|
-
resolveDeletePatterns(targetPath);
|
|
65
|
-
await deleteMatchingFiles(targetPath);
|
|
66
|
-
console.log(`cleaning ${targetPath}`);
|
|
67
|
-
try {
|
|
68
|
-
fs.rmSync(targetPath, { recursive: true, force: true });
|
|
69
|
-
} catch (_e) {
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
export {
|
|
74
|
-
resolveDeletePatterns,
|
|
75
|
-
deleteMatchingFiles,
|
|
76
|
-
deleteMainScript
|
|
77
|
-
};
|
package/lib/chunk-72XTQ3CK.mjs
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
require_utils
|
|
4
|
-
} from "./chunk-FR3DMHJC.mjs";
|
|
5
|
-
import {
|
|
6
|
-
__toESM,
|
|
7
|
-
init_esm_shims
|
|
8
|
-
} from "./chunk-QQ4A6DLD.mjs";
|
|
9
|
-
|
|
10
|
-
// src/github-workflows/get-latest-workflow-status.mjs
|
|
11
|
-
init_esm_shims();
|
|
12
|
-
var import_utils = __toESM(require_utils(), 1);
|
|
13
|
-
function printReport(run, jobs) {
|
|
14
|
-
var _a;
|
|
15
|
-
console.log("\n==============================");
|
|
16
|
-
console.log("\u{1F680} Latest Workflow Run");
|
|
17
|
-
console.log("==============================");
|
|
18
|
-
console.log(`Name : ${run.name}`);
|
|
19
|
-
console.log(`Status : ${run.status}`);
|
|
20
|
-
console.log(`Conclusion: ${run.conclusion}`);
|
|
21
|
-
console.log(`Branch : ${run.head_branch}`);
|
|
22
|
-
console.log(`Run ID : ${run.id}`);
|
|
23
|
-
console.log(`URL : ${run.html_url}`);
|
|
24
|
-
console.log("\n==============================");
|
|
25
|
-
console.log("\u{1F9E9} Jobs & Steps");
|
|
26
|
-
console.log("==============================\n");
|
|
27
|
-
for (const job of jobs) {
|
|
28
|
-
console.log(`\u{1F9F1} Job: ${job.name}`);
|
|
29
|
-
console.log(` Status: ${job.status} | Conclusion: ${job.conclusion}`);
|
|
30
|
-
if (!((_a = job.steps) == null ? void 0 : _a.length)) {
|
|
31
|
-
console.log(" (no steps found)\n");
|
|
32
|
-
continue;
|
|
33
|
-
}
|
|
34
|
-
for (const step of job.steps) {
|
|
35
|
-
const icon = step.conclusion === "success" ? "\u2705" : step.conclusion === "failure" ? "\u274C" : step.conclusion === "skipped" ? "\u23ED\uFE0F" : "\u26AA";
|
|
36
|
-
console.log(` ${icon} ${step.name} -> ${step.conclusion} (${step.status})`);
|
|
37
|
-
}
|
|
38
|
-
console.log("");
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export {
|
|
43
|
-
import_utils,
|
|
44
|
-
printReport
|
|
45
|
-
};
|
package/lib/chunk-7Q6YEUQF.mjs
DELETED
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
require_config
|
|
4
|
-
} from "./chunk-PAZH45HS.mjs";
|
|
5
|
-
import {
|
|
6
|
-
runChatGpt
|
|
7
|
-
} from "./chunk-GAGABICI.mjs";
|
|
8
|
-
import {
|
|
9
|
-
require_utils
|
|
10
|
-
} from "./chunk-6RK5UCTP.mjs";
|
|
11
|
-
import {
|
|
12
|
-
__toESM,
|
|
13
|
-
init_esm_shims
|
|
14
|
-
} from "./chunk-QQ4A6DLD.mjs";
|
|
15
|
-
|
|
16
|
-
// src/git/git-diff.js
|
|
17
|
-
init_esm_shims();
|
|
18
|
-
var import_config = __toESM(require_config(), 1);
|
|
19
|
-
import ansiColors from "ansi-colors";
|
|
20
|
-
import { execSync } from "child_process";
|
|
21
|
-
import fs from "fs-extra";
|
|
22
|
-
import { md5, writefile } from "sbg-utility";
|
|
23
|
-
import path from "upath";
|
|
24
|
-
import { fileURLToPath } from "url";
|
|
25
|
-
var import_utils = __toESM(require_utils(), 1);
|
|
26
|
-
var __filename = fileURLToPath(import.meta.url);
|
|
27
|
-
var __dirname = path.dirname(__filename);
|
|
28
|
-
var args = (0, import_utils.getArgs)();
|
|
29
|
-
var positional = args._ || [];
|
|
30
|
-
var FILENAME = md5((positional[0] || "default") + JSON.stringify(args));
|
|
31
|
-
var DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/${FILENAME}.txt`);
|
|
32
|
-
var GPT_DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/gpt-${FILENAME}.txt`);
|
|
33
|
-
var CACHE_DIR = path.dirname(DIFF_OUTPUT);
|
|
34
|
-
var DIFF_OUTPUT_RELATIVE = path.relative(process.cwd(), DIFF_OUTPUT);
|
|
35
|
-
var GPT_DIFF_OUTPUT_RELATIVE = path.relative(process.cwd(), GPT_DIFF_OUTPUT);
|
|
36
|
-
fs.ensureDirSync(CACHE_DIR, { mode: 493 });
|
|
37
|
-
function showHelp() {
|
|
38
|
-
console.log("\u{1F4CB} Git Diff Helper");
|
|
39
|
-
console.log("Usage:");
|
|
40
|
-
console.log(" git-diff FILE Show staged diff of specified file");
|
|
41
|
-
console.log(" git-diff --staged-only Show staged diff of all files");
|
|
42
|
-
console.log(" git-diff -s | -S Same as --staged-only");
|
|
43
|
-
console.log(" git-diff --unstaged FILE Show unstaged diff of specified file");
|
|
44
|
-
console.log(" git-diff --unstaged Show unstaged diff of all files");
|
|
45
|
-
console.log(" git-diff -u Same as --unstaged");
|
|
46
|
-
console.log(" git-diff --ai Run ChatGPT automation for commit message");
|
|
47
|
-
console.log(" git-diff --help | -h Show this help message");
|
|
48
|
-
console.log("");
|
|
49
|
-
console.log(`\u{1F4BE} Output is saved to: ${DIFF_OUTPUT_RELATIVE}`);
|
|
50
|
-
console.log(`\u{1F916} GPT prompt is saved to: ${GPT_DIFF_OUTPUT_RELATIVE}`);
|
|
51
|
-
process.exit(0);
|
|
52
|
-
}
|
|
53
|
-
function runGitDiff(command, successMessage, errorMessage) {
|
|
54
|
-
try {
|
|
55
|
-
console.log(`\u2139\uFE0F Running command: ${command}`);
|
|
56
|
-
const result = execSync(command, {
|
|
57
|
-
encoding: "utf8",
|
|
58
|
-
maxBuffer: 1024 * 1024 * 10
|
|
59
|
-
// 10MB buffer to handle large diffs
|
|
60
|
-
});
|
|
61
|
-
if (!result || result.trim() === "") {
|
|
62
|
-
console.log(`\u2139\uFE0F No changes found for the specified criteria`);
|
|
63
|
-
writefile(DIFF_OUTPUT, "# No changes found\n");
|
|
64
|
-
console.log(`\u2705 Empty diff saved to "${DIFF_OUTPUT_RELATIVE}"`);
|
|
65
|
-
return false;
|
|
66
|
-
}
|
|
67
|
-
writefile(DIFF_OUTPUT, result);
|
|
68
|
-
writefile(
|
|
69
|
-
GPT_DIFF_OUTPUT,
|
|
70
|
-
`Hello!
|
|
71
|
-
Can you create a conventional commit message by diff content below:
|
|
72
|
-
|
|
73
|
-
\`\`\`${result}
|
|
74
|
-
\`\`\`
|
|
75
|
-
|
|
76
|
-
Give me result as codeblock with language "text" only.
|
|
77
|
-
|
|
78
|
-
Thank you!`
|
|
79
|
-
);
|
|
80
|
-
console.log(`\u2705 ${successMessage}`);
|
|
81
|
-
console.log(`\u{1F4BE} GPT diff prompt saved to "${ansiColors.green(GPT_DIFF_OUTPUT_RELATIVE)}"`);
|
|
82
|
-
return true;
|
|
83
|
-
} catch (error) {
|
|
84
|
-
console.error(`\u274C ${errorMessage}`);
|
|
85
|
-
console.error(`\u274C Command: ${command}`);
|
|
86
|
-
console.error(`\u274C Error: ${error.message}`);
|
|
87
|
-
if (error.message.includes("not a git repository")) {
|
|
88
|
-
console.error("\u274C Make sure you are in a git repository");
|
|
89
|
-
}
|
|
90
|
-
process.exit(1);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
function getUntrackedDiff() {
|
|
94
|
-
try {
|
|
95
|
-
const untrackedStr = execSync("git ls-files --others --exclude-standard", {
|
|
96
|
-
encoding: "utf8",
|
|
97
|
-
maxBuffer: 1024 * 1024 * 10
|
|
98
|
-
}).trim();
|
|
99
|
-
if (!untrackedStr) return "";
|
|
100
|
-
const untrackedFiles = untrackedStr.split("\n").filter(function(f) {
|
|
101
|
-
return f;
|
|
102
|
-
});
|
|
103
|
-
if (untrackedFiles.length === 0) return "";
|
|
104
|
-
var result = "\n# Untracked files:\n";
|
|
105
|
-
for (var i = 0; i < untrackedFiles.length; i++) {
|
|
106
|
-
var file = untrackedFiles[i];
|
|
107
|
-
if (!fs.existsSync(file)) continue;
|
|
108
|
-
var stat = fs.statSync(file);
|
|
109
|
-
if (!stat.isFile()) continue;
|
|
110
|
-
var content;
|
|
111
|
-
try {
|
|
112
|
-
content = fs.readFileSync(file, "utf8");
|
|
113
|
-
} catch (_a) {
|
|
114
|
-
continue;
|
|
115
|
-
}
|
|
116
|
-
var lines = content.split("\n");
|
|
117
|
-
if (lines.length > 0 && lines[lines.length - 1] === "") {
|
|
118
|
-
lines.pop();
|
|
119
|
-
}
|
|
120
|
-
result += "diff --git a/" + file + " b/" + file + "\n";
|
|
121
|
-
result += "new file mode 100644\n";
|
|
122
|
-
result += "index 0000000..0000000\n";
|
|
123
|
-
result += "--- /dev/null\n";
|
|
124
|
-
result += "+++ b/" + file + "\n";
|
|
125
|
-
result += "@@ -0,0 +1," + (lines.length || 0) + " @@\n";
|
|
126
|
-
for (var j = 0; j < lines.length; j++) {
|
|
127
|
-
result += "+" + lines[j] + "\n";
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
return result;
|
|
131
|
-
} catch (_b) {
|
|
132
|
-
return "";
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
function fileHasChanges(file, mode) {
|
|
136
|
-
const command = mode === "staged" ? `git diff --cached --quiet -- "${file}"` : `git diff --quiet -- "${file}"`;
|
|
137
|
-
try {
|
|
138
|
-
execSync(command, { stdio: "ignore" });
|
|
139
|
-
return false;
|
|
140
|
-
} catch (error) {
|
|
141
|
-
if (error.status === 1) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
throw error;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
async function mainGitDiff() {
|
|
148
|
-
if (args.help || args.h) {
|
|
149
|
-
showHelp();
|
|
150
|
-
}
|
|
151
|
-
const useUnstaged = args.unstaged || args.u;
|
|
152
|
-
const fileFromFlag = typeof args.unstaged === "string" ? args.unstaged : typeof args.u === "string" ? args.u : null;
|
|
153
|
-
let hasDiff = false;
|
|
154
|
-
if (args["staged-only"] || args.s || args.S) {
|
|
155
|
-
hasDiff = runGitDiff(
|
|
156
|
-
"git --no-pager diff --staged",
|
|
157
|
-
`Full staged diff saved to "${ansiColors.green(DIFF_OUTPUT_RELATIVE)}"`,
|
|
158
|
-
"Failed to save staged diff"
|
|
159
|
-
);
|
|
160
|
-
} else {
|
|
161
|
-
const file = positional[0] || fileFromFlag;
|
|
162
|
-
if (!file) {
|
|
163
|
-
const fullDiffModeLabel = useUnstaged ? "unstaged" : "unstaged";
|
|
164
|
-
hasDiff = runGitDiff(
|
|
165
|
-
"git --no-pager diff",
|
|
166
|
-
`Full ${fullDiffModeLabel} diff saved to "${ansiColors.green(DIFF_OUTPUT_RELATIVE)}"`,
|
|
167
|
-
"Failed to save all diff's"
|
|
168
|
-
);
|
|
169
|
-
const untrackedDiff = getUntrackedDiff();
|
|
170
|
-
if (untrackedDiff) {
|
|
171
|
-
const UNTRACKED_DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/untracked-${FILENAME}.txt`);
|
|
172
|
-
const UNTRACKED_GPT_DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/gpt-untracked-${FILENAME}.txt`);
|
|
173
|
-
const UNTRACKED_DIFF_OUTPUT_RELATIVE = path.relative(process.cwd(), UNTRACKED_DIFF_OUTPUT);
|
|
174
|
-
writefile(UNTRACKED_DIFF_OUTPUT, untrackedDiff);
|
|
175
|
-
writefile(
|
|
176
|
-
UNTRACKED_GPT_DIFF_OUTPUT,
|
|
177
|
-
`Hello!
|
|
178
|
-
Can you create a conventional commit message by diff content below:
|
|
179
|
-
|
|
180
|
-
\`\`\`${untrackedDiff}
|
|
181
|
-
\`\`\`
|
|
182
|
-
|
|
183
|
-
Give me result as codeblock with language "text" only.
|
|
184
|
-
|
|
185
|
-
Thank you!`
|
|
186
|
-
);
|
|
187
|
-
console.log(`\u2705 Untracked file diff saved to "${ansiColors.green(UNTRACKED_DIFF_OUTPUT_RELATIVE)}"`);
|
|
188
|
-
console.log(
|
|
189
|
-
`\u{1F4BE} AI diff prompt saved to "${ansiColors.green(path.relative(process.cwd(), UNTRACKED_GPT_DIFF_OUTPUT))}"`
|
|
190
|
-
);
|
|
191
|
-
hasDiff = true;
|
|
192
|
-
}
|
|
193
|
-
} else {
|
|
194
|
-
let fileDiffMode = useUnstaged ? "unstaged" : "staged";
|
|
195
|
-
if (!useUnstaged && !fileHasChanges(file, "staged") && fileHasChanges(file, "unstaged")) {
|
|
196
|
-
fileDiffMode = "unstaged";
|
|
197
|
-
}
|
|
198
|
-
hasDiff = runGitDiff(
|
|
199
|
-
fileDiffMode === "unstaged" ? `git --no-pager diff -- "${file}"` : `git --no-pager diff --cached -- "${file}"`,
|
|
200
|
-
`${fileDiffMode[0].toUpperCase() + fileDiffMode.slice(1)} diff of "${file}" saved to "${ansiColors.green(
|
|
201
|
-
DIFF_OUTPUT_RELATIVE
|
|
202
|
-
)}"`,
|
|
203
|
-
`Failed to generate ${fileDiffMode} diff for "${file}"`
|
|
204
|
-
);
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
if (hasDiff) {
|
|
208
|
-
const opencodePrompt = [
|
|
209
|
-
"",
|
|
210
|
-
"\u{1F916} OpenCode Prompt Helper",
|
|
211
|
-
"\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
|
|
212
|
-
"",
|
|
213
|
-
"\u{1F4C4} App Prompt:",
|
|
214
|
-
` Generate a conventional commit message from diff file: ${DIFF_OUTPUT}`,
|
|
215
|
-
"",
|
|
216
|
-
"\u{1F4BB} CLI Command:",
|
|
217
|
-
` opencode run "Generate a conventional commit message from diff file ${DIFF_OUTPUT}"`,
|
|
218
|
-
""
|
|
219
|
-
];
|
|
220
|
-
const opencodePromptPath = (0, import_config.getTempPath)(`git-diff/opencode-${FILENAME}.txt`);
|
|
221
|
-
writefile(opencodePromptPath, opencodePrompt.join("\n"));
|
|
222
|
-
console.log(`\u2705 OpenCode prompt saved to "${ansiColors.green(path.relative(process.cwd(), opencodePromptPath))}"`);
|
|
223
|
-
}
|
|
224
|
-
if (args.ai) {
|
|
225
|
-
try {
|
|
226
|
-
await runChatGpt({ headless: true, questionFile: GPT_DIFF_OUTPUT });
|
|
227
|
-
} catch (error) {
|
|
228
|
-
console.error("\u274C Error running ChatGPT:", error.message);
|
|
229
|
-
console.error("\u{1F4A1} Try running with visible browser mode or check if Chrome is installed");
|
|
230
|
-
}
|
|
231
|
-
} else {
|
|
232
|
-
console.log("\u{1F4A1} Use --ai flag to generate commit message with ChatGPT");
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
var git_diff_default = runGitDiff;
|
|
236
|
-
|
|
237
|
-
export {
|
|
238
|
-
DIFF_OUTPUT,
|
|
239
|
-
GPT_DIFF_OUTPUT,
|
|
240
|
-
CACHE_DIR,
|
|
241
|
-
DIFF_OUTPUT_RELATIVE,
|
|
242
|
-
GPT_DIFF_OUTPUT_RELATIVE,
|
|
243
|
-
runGitDiff,
|
|
244
|
-
mainGitDiff,
|
|
245
|
-
git_diff_default
|
|
246
|
-
};
|