grf-cli 1.0.3 → 1.0.4
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/README.md +15 -7
- package/README.zh-CN.md +15 -7
- package/dist/commands/add/display.d.ts +10 -0
- package/dist/commands/add/display.d.ts.map +1 -0
- package/dist/commands/add/display.js +25 -0
- package/dist/commands/add/display.js.map +1 -0
- package/dist/commands/add/helpers.d.ts +11 -0
- package/dist/commands/add/helpers.d.ts.map +1 -0
- package/dist/commands/add/helpers.js +59 -0
- package/dist/commands/add/helpers.js.map +1 -0
- package/dist/commands/add/index.d.ts +12 -0
- package/dist/commands/add/index.d.ts.map +1 -0
- package/dist/commands/add/index.js +57 -0
- package/dist/commands/add/index.js.map +1 -0
- package/dist/commands/add/types.d.ts +32 -0
- package/dist/commands/add/types.d.ts.map +1 -0
- package/dist/commands/add/types.js +6 -0
- package/dist/commands/add/types.js.map +1 -0
- package/dist/commands/add.d.ts.map +1 -1
- package/dist/commands/add.js +6 -5
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/clean/display.d.ts +30 -0
- package/dist/commands/clean/display.d.ts.map +1 -0
- package/dist/commands/clean/display.js +67 -0
- package/dist/commands/clean/display.js.map +1 -0
- package/dist/commands/clean/handlers/clean-all.d.ts +12 -0
- package/dist/commands/clean/handlers/clean-all.d.ts.map +1 -0
- package/dist/commands/clean/handlers/clean-all.js +43 -0
- package/dist/commands/clean/handlers/clean-all.js.map +1 -0
- package/dist/commands/clean/handlers/clean-single.d.ts +13 -0
- package/dist/commands/clean/handlers/clean-single.d.ts.map +1 -0
- package/dist/commands/clean/handlers/clean-single.js +78 -0
- package/dist/commands/clean/handlers/clean-single.js.map +1 -0
- package/dist/commands/clean/handlers/index.d.ts +6 -0
- package/dist/commands/clean/handlers/index.d.ts.map +1 -0
- package/dist/commands/clean/handlers/index.js +11 -0
- package/dist/commands/clean/handlers/index.js.map +1 -0
- package/dist/commands/clean/helpers.d.ts +25 -0
- package/dist/commands/clean/helpers.d.ts.map +1 -0
- package/dist/commands/clean/helpers.js +70 -0
- package/dist/commands/clean/helpers.js.map +1 -0
- package/dist/commands/clean/index.d.ts +12 -0
- package/dist/commands/clean/index.d.ts.map +1 -0
- package/dist/commands/clean/index.js +90 -0
- package/dist/commands/clean/index.js.map +1 -0
- package/dist/commands/clean/types.d.ts +21 -0
- package/dist/commands/clean/types.d.ts.map +1 -0
- package/dist/commands/clean/types.js +6 -0
- package/dist/commands/clean/types.js.map +1 -0
- package/dist/commands/clean.d.ts.map +1 -1
- package/dist/commands/clean.js +3 -2
- package/dist/commands/clean.js.map +1 -1
- package/dist/commands/config/display.d.ts +36 -0
- package/dist/commands/config/display.d.ts.map +1 -0
- package/dist/commands/config/display.js +86 -0
- package/dist/commands/config/display.js.map +1 -0
- package/dist/commands/config/handlers/index.d.ts +8 -0
- package/dist/commands/config/handlers/index.d.ts.map +1 -0
- package/dist/commands/config/handlers/index.js +15 -0
- package/dist/commands/config/handlers/index.js.map +1 -0
- package/dist/commands/config/handlers/set-value.d.ts +11 -0
- package/dist/commands/config/handlers/set-value.d.ts.map +1 -0
- package/dist/commands/config/handlers/set-value.js +36 -0
- package/dist/commands/config/handlers/set-value.js.map +1 -0
- package/dist/commands/config/handlers/show-all.d.ts +11 -0
- package/dist/commands/config/handlers/show-all.d.ts.map +1 -0
- package/dist/commands/config/handlers/show-all.js +24 -0
- package/dist/commands/config/handlers/show-all.js.map +1 -0
- package/dist/commands/config/handlers/show-path.d.ts +11 -0
- package/dist/commands/config/handlers/show-path.d.ts.map +1 -0
- package/dist/commands/config/handlers/show-path.js +20 -0
- package/dist/commands/config/handlers/show-path.js.map +1 -0
- package/dist/commands/config/handlers/show-value.d.ts +11 -0
- package/dist/commands/config/handlers/show-value.d.ts.map +1 -0
- package/dist/commands/config/handlers/show-value.js +31 -0
- package/dist/commands/config/handlers/show-value.js.map +1 -0
- package/dist/commands/config/helpers.d.ts +23 -0
- package/dist/commands/config/helpers.d.ts.map +1 -0
- package/dist/commands/config/helpers.js +53 -0
- package/dist/commands/config/helpers.js.map +1 -0
- package/dist/commands/config/index.d.ts +12 -0
- package/dist/commands/config/index.d.ts.map +1 -0
- package/dist/commands/config/index.js +56 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/config/types.d.ts +31 -0
- package/dist/commands/config/types.d.ts.map +1 -0
- package/dist/commands/config/types.js +13 -0
- package/dist/commands/config/types.js.map +1 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +3 -2
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/index.d.ts +7 -7
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +28 -28
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/list/display.d.ts +39 -0
- package/dist/commands/list/display.d.ts.map +1 -0
- package/dist/commands/list/display.js +144 -0
- package/dist/commands/list/display.js.map +1 -0
- package/dist/commands/list/index.d.ts +12 -0
- package/dist/commands/list/index.d.ts.map +1 -0
- package/dist/commands/list/index.js +128 -0
- package/dist/commands/list/index.js.map +1 -0
- package/dist/commands/list/types.d.ts +32 -0
- package/dist/commands/list/types.d.ts.map +1 -0
- package/dist/commands/list/types.js +6 -0
- package/dist/commands/list/types.js.map +1 -0
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +2 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/load/display.d.ts +28 -0
- package/dist/commands/load/display.d.ts.map +1 -0
- package/dist/commands/load/display.js +53 -0
- package/dist/commands/load/display.js.map +1 -0
- package/dist/commands/load/handlers/copy-repo.d.ts +13 -0
- package/dist/commands/load/handlers/copy-repo.d.ts.map +1 -0
- package/dist/commands/load/handlers/copy-repo.js +82 -0
- package/dist/commands/load/handlers/copy-repo.js.map +1 -0
- package/dist/commands/load/handlers/index.d.ts +6 -0
- package/dist/commands/load/handlers/index.d.ts.map +1 -0
- package/dist/commands/load/handlers/index.js +11 -0
- package/dist/commands/load/handlers/index.js.map +1 -0
- package/dist/commands/load/handlers/url-add.d.ts +13 -0
- package/dist/commands/load/handlers/url-add.d.ts.map +1 -0
- package/dist/commands/load/handlers/url-add.js +50 -0
- package/dist/commands/load/handlers/url-add.js.map +1 -0
- package/dist/commands/load/helpers.d.ts +81 -0
- package/dist/commands/load/helpers.d.ts.map +1 -0
- package/dist/commands/load/helpers.js +199 -0
- package/dist/commands/load/helpers.js.map +1 -0
- package/dist/commands/load/index.d.ts +13 -0
- package/dist/commands/load/index.d.ts.map +1 -0
- package/dist/commands/load/index.js +46 -0
- package/dist/commands/load/index.js.map +1 -0
- package/dist/commands/load/types.d.ts +37 -0
- package/dist/commands/load/types.d.ts.map +1 -0
- package/dist/commands/load/types.js +6 -0
- package/dist/commands/load/types.js.map +1 -0
- package/dist/commands/load.d.ts.map +1 -1
- package/dist/commands/load.js +4 -3
- package/dist/commands/load.js.map +1 -1
- package/dist/commands/options/all.d.ts +11 -0
- package/dist/commands/options/all.d.ts.map +1 -0
- package/dist/commands/options/all.js +14 -0
- package/dist/commands/options/all.js.map +1 -0
- package/dist/commands/options/branch.d.ts +11 -0
- package/dist/commands/options/branch.d.ts.map +1 -0
- package/dist/commands/options/branch.js +14 -0
- package/dist/commands/options/branch.js.map +1 -0
- package/dist/commands/options/check.d.ts +11 -0
- package/dist/commands/options/check.d.ts.map +1 -0
- package/dist/commands/options/check.js +14 -0
- package/dist/commands/options/check.js.map +1 -0
- package/dist/commands/options/clean-empty.d.ts +11 -0
- package/dist/commands/options/clean-empty.d.ts.map +1 -0
- package/dist/commands/options/clean-empty.js +14 -0
- package/dist/commands/options/clean-empty.js.map +1 -0
- package/dist/commands/options/depth.d.ts +11 -0
- package/dist/commands/options/depth.d.ts.map +1 -0
- package/dist/commands/options/depth.js +14 -0
- package/dist/commands/options/depth.js.map +1 -0
- package/dist/commands/options/dry-run.d.ts +11 -0
- package/dist/commands/options/dry-run.d.ts.map +1 -0
- package/dist/commands/options/dry-run.js +14 -0
- package/dist/commands/options/dry-run.js.map +1 -0
- package/dist/commands/options/force.d.ts +11 -0
- package/dist/commands/options/force.d.ts.map +1 -0
- package/dist/commands/options/force.js +14 -0
- package/dist/commands/options/force.js.map +1 -0
- package/dist/commands/options/index.d.ts +24 -0
- package/dist/commands/options/index.d.ts.map +1 -0
- package/dist/commands/options/index.js +53 -0
- package/dist/commands/options/index.js.map +1 -0
- package/dist/commands/options/json.d.ts +11 -0
- package/dist/commands/options/json.d.ts.map +1 -0
- package/dist/commands/options/json.js +14 -0
- package/dist/commands/options/json.js.map +1 -0
- package/dist/commands/options/keep-empty.d.ts +11 -0
- package/dist/commands/options/keep-empty.d.ts.map +1 -0
- package/dist/commands/options/keep-empty.js +14 -0
- package/dist/commands/options/keep-empty.js.map +1 -0
- package/dist/commands/options/list.d.ts +11 -0
- package/dist/commands/options/list.d.ts.map +1 -0
- package/dist/commands/options/list.js +14 -0
- package/dist/commands/options/list.js.map +1 -0
- package/dist/commands/options/name.d.ts +11 -0
- package/dist/commands/options/name.d.ts.map +1 -0
- package/dist/commands/options/name.js +14 -0
- package/dist/commands/options/name.js.map +1 -0
- package/dist/commands/options/no-ignore.d.ts +11 -0
- package/dist/commands/options/no-ignore.d.ts.map +1 -0
- package/dist/commands/options/no-ignore.js +14 -0
- package/dist/commands/options/no-ignore.js.map +1 -0
- package/dist/commands/options/path.d.ts +11 -0
- package/dist/commands/options/path.d.ts.map +1 -0
- package/dist/commands/options/path.js +14 -0
- package/dist/commands/options/path.js.map +1 -0
- package/dist/commands/options/shallow.d.ts +16 -0
- package/dist/commands/options/shallow.d.ts.map +1 -0
- package/dist/commands/options/shallow.js +19 -0
- package/dist/commands/options/shallow.js.map +1 -0
- package/dist/commands/options/status.d.ts +11 -0
- package/dist/commands/options/status.d.ts.map +1 -0
- package/dist/commands/options/status.js +14 -0
- package/dist/commands/options/status.js.map +1 -0
- package/dist/commands/options/subdir.d.ts +11 -0
- package/dist/commands/options/subdir.d.ts.map +1 -0
- package/dist/commands/options/subdir.js +14 -0
- package/dist/commands/options/subdir.js.map +1 -0
- package/dist/commands/options/sync-only.d.ts +11 -0
- package/dist/commands/options/sync-only.d.ts.map +1 -0
- package/dist/commands/options/sync-only.js +14 -0
- package/dist/commands/options/sync-only.js.map +1 -0
- package/dist/commands/options/sync.d.ts +11 -0
- package/dist/commands/options/sync.d.ts.map +1 -0
- package/dist/commands/options/sync.js +14 -0
- package/dist/commands/options/sync.js.map +1 -0
- package/dist/commands/options/verbose.d.ts +11 -0
- package/dist/commands/options/verbose.d.ts.map +1 -0
- package/dist/commands/options/verbose.js +14 -0
- package/dist/commands/options/verbose.js.map +1 -0
- package/dist/commands/unload/display.d.ts +29 -0
- package/dist/commands/unload/display.d.ts.map +1 -0
- package/dist/commands/unload/display.js +125 -0
- package/dist/commands/unload/display.js.map +1 -0
- package/dist/commands/unload/handlers/clean-empty.d.ts +11 -0
- package/dist/commands/unload/handlers/clean-empty.d.ts.map +1 -0
- package/dist/commands/unload/handlers/clean-empty.js +111 -0
- package/dist/commands/unload/handlers/clean-empty.js.map +1 -0
- package/dist/commands/unload/handlers/index.d.ts +8 -0
- package/dist/commands/unload/handlers/index.d.ts.map +1 -0
- package/dist/commands/unload/handlers/index.js +15 -0
- package/dist/commands/unload/handlers/index.js.map +1 -0
- package/dist/commands/unload/handlers/list.d.ts +11 -0
- package/dist/commands/unload/handlers/list.d.ts.map +1 -0
- package/dist/commands/unload/handlers/list.js +42 -0
- package/dist/commands/unload/handlers/list.js.map +1 -0
- package/dist/commands/unload/handlers/remove-all.d.ts +11 -0
- package/dist/commands/unload/handlers/remove-all.d.ts.map +1 -0
- package/dist/commands/unload/handlers/remove-all.js +184 -0
- package/dist/commands/unload/handlers/remove-all.js.map +1 -0
- package/dist/commands/unload/handlers/remove-single.d.ts +12 -0
- package/dist/commands/unload/handlers/remove-single.d.ts.map +1 -0
- package/dist/commands/unload/handlers/remove-single.js +217 -0
- package/dist/commands/unload/handlers/remove-single.js.map +1 -0
- package/dist/commands/unload/helpers.d.ts +55 -0
- package/dist/commands/unload/helpers.d.ts.map +1 -0
- package/dist/commands/unload/helpers.js +256 -0
- package/dist/commands/unload/helpers.js.map +1 -0
- package/dist/commands/unload/index.d.ts +12 -0
- package/dist/commands/unload/index.d.ts.map +1 -0
- package/dist/commands/unload/index.js +121 -0
- package/dist/commands/unload/index.js.map +1 -0
- package/dist/commands/unload/types.d.ts +53 -0
- package/dist/commands/unload/types.d.ts.map +1 -0
- package/dist/commands/unload/types.js +6 -0
- package/dist/commands/unload/types.js.map +1 -0
- package/dist/commands/unload.d.ts.map +1 -1
- package/dist/commands/unload.js +8 -7
- package/dist/commands/unload.js.map +1 -1
- package/dist/commands/update/display.d.ts +30 -0
- package/dist/commands/update/display.d.ts.map +1 -0
- package/dist/commands/update/display.js +161 -0
- package/dist/commands/update/display.js.map +1 -0
- package/dist/commands/update/handlers/index.d.ts +8 -0
- package/dist/commands/update/handlers/index.d.ts.map +1 -0
- package/dist/commands/update/handlers/index.js +15 -0
- package/dist/commands/update/handlers/index.js.map +1 -0
- package/dist/commands/update/handlers/status.d.ts +11 -0
- package/dist/commands/update/handlers/status.d.ts.map +1 -0
- package/dist/commands/update/handlers/status.js +20 -0
- package/dist/commands/update/handlers/status.js.map +1 -0
- package/dist/commands/update/handlers/sync-only.d.ts +11 -0
- package/dist/commands/update/handlers/sync-only.d.ts.map +1 -0
- package/dist/commands/update/handlers/sync-only.js +41 -0
- package/dist/commands/update/handlers/sync-only.js.map +1 -0
- package/dist/commands/update/handlers/update-all.d.ts +10 -0
- package/dist/commands/update/handlers/update-all.d.ts.map +1 -0
- package/dist/commands/update/handlers/update-all.js +125 -0
- package/dist/commands/update/handlers/update-all.js.map +1 -0
- package/dist/commands/update/handlers/update-single.d.ts +11 -0
- package/dist/commands/update/handlers/update-single.d.ts.map +1 -0
- package/dist/commands/update/handlers/update-single.js +154 -0
- package/dist/commands/update/handlers/update-single.js.map +1 -0
- package/dist/commands/update/helpers.d.ts +13 -0
- package/dist/commands/update/helpers.d.ts.map +1 -0
- package/dist/commands/update/helpers.js +86 -0
- package/dist/commands/update/helpers.js.map +1 -0
- package/dist/commands/update/index.d.ts +12 -0
- package/dist/commands/update/index.d.ts.map +1 -0
- package/dist/commands/update/index.js +67 -0
- package/dist/commands/update/index.js.map +1 -0
- package/dist/commands/update/types.d.ts +55 -0
- package/dist/commands/update/types.d.ts.map +1 -0
- package/dist/commands/update/types.js +6 -0
- package/dist/commands/update/types.js.map +1 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +7 -6
- package/dist/commands/update.js.map +1 -1
- package/dist/core/filesystem.js +1 -1
- package/dist/core/filesystem.js.map +1 -1
- package/dist/core/loading-state.d.ts +32 -16
- package/dist/core/loading-state.d.ts.map +1 -1
- package/dist/core/loading-state.js +51 -26
- package/dist/core/loading-state.js.map +1 -1
- package/dist/core/loading.d.ts +4 -2
- package/dist/core/loading.d.ts.map +1 -1
- package/dist/core/loading.js +37 -35
- package/dist/core/loading.js.map +1 -1
- package/dist/core/migration.d.ts.map +1 -1
- package/dist/core/migration.js +1 -3
- package/dist/core/migration.js.map +1 -1
- package/dist/core/repository.js +2 -2
- package/dist/core/repository.js.map +1 -1
- package/dist/core/sync.d.ts.map +1 -1
- package/dist/core/sync.js.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/ui/format.d.ts.map +1 -1
- package/dist/ui/format.js.map +1 -1
- package/dist/ui/table.d.ts +2 -2
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js.map +1 -1
- package/package.json +23 -3
package/README.md
CHANGED
|
@@ -36,13 +36,13 @@ npx grf-cli <command>
|
|
|
36
36
|
grf config init
|
|
37
37
|
|
|
38
38
|
# Add a reference repository
|
|
39
|
-
grf add https://github.com/example/awesome-utils.git --
|
|
39
|
+
grf add https://github.com/example/awesome-utils.git --name utils
|
|
40
40
|
|
|
41
41
|
# List all reference repositories
|
|
42
42
|
grf list
|
|
43
43
|
|
|
44
44
|
# Load reference code into your project
|
|
45
|
-
grf load utils
|
|
45
|
+
grf load utils src/helpers
|
|
46
46
|
|
|
47
47
|
# Update all references to latest
|
|
48
48
|
grf update
|
|
@@ -120,7 +120,7 @@ grf clean [name] [options]
|
|
|
120
120
|
|
|
121
121
|
| Option | Short | Type | Default | Description |
|
|
122
122
|
| ------- | ----- | ------- | ------- | ------------------------------ |
|
|
123
|
-
| --all | -
|
|
123
|
+
| --all | -a | boolean | false | Remove all cached repositories |
|
|
124
124
|
| --force | -f | boolean | false | Skip confirmation |
|
|
125
125
|
|
|
126
126
|
**Examples:**
|
|
@@ -162,7 +162,7 @@ grf config [key] [value] [options]
|
|
|
162
162
|
|
|
163
163
|
| Option | Short | Type | Default | Description |
|
|
164
164
|
| ------ | ----- | ------- | ------- | ---------------------------- |
|
|
165
|
-
| --list | -
|
|
165
|
+
| --list | -l | boolean | false | Show all configuration |
|
|
166
166
|
| --path | - | boolean | false | Show configuration file path |
|
|
167
167
|
|
|
168
168
|
**Valid Configuration Keys:**
|
|
@@ -209,9 +209,11 @@ grf list [options]
|
|
|
209
209
|
|
|
210
210
|
**Options:**
|
|
211
211
|
|
|
212
|
-
| Option
|
|
213
|
-
|
|
|
214
|
-
| --json
|
|
212
|
+
| Option | Short | Type | Default | Description |
|
|
213
|
+
| --------- | ----- | ------- | ------- | ---------------------------------------- |
|
|
214
|
+
| --json | - | boolean | false | Output in JSON format |
|
|
215
|
+
| --load | - | boolean | false | List loaded references in current project |
|
|
216
|
+
| --verbose | -v | boolean | false | Show detailed output |
|
|
215
217
|
|
|
216
218
|
**Examples:**
|
|
217
219
|
|
|
@@ -221,6 +223,12 @@ grf list
|
|
|
221
223
|
|
|
222
224
|
# List in JSON format
|
|
223
225
|
grf list --json
|
|
226
|
+
|
|
227
|
+
# List loaded references in current project
|
|
228
|
+
grf list --load
|
|
229
|
+
|
|
230
|
+
# Show detailed output
|
|
231
|
+
grf list --verbose
|
|
224
232
|
```
|
|
225
233
|
|
|
226
234
|
---
|
package/README.zh-CN.md
CHANGED
|
@@ -36,13 +36,13 @@ npx grf-cli <command>
|
|
|
36
36
|
grf config init
|
|
37
37
|
|
|
38
38
|
# 添加参考仓库
|
|
39
|
-
grf add https://github.com/example/awesome-utils.git --
|
|
39
|
+
grf add https://github.com/example/awesome-utils.git --name utils
|
|
40
40
|
|
|
41
41
|
# 列出所有参考仓库
|
|
42
42
|
grf list
|
|
43
43
|
|
|
44
44
|
# 将参考代码加载到项目中
|
|
45
|
-
grf load utils
|
|
45
|
+
grf load utils src/helpers
|
|
46
46
|
|
|
47
47
|
# 更新所有参考到最新版本
|
|
48
48
|
grf update
|
|
@@ -120,7 +120,7 @@ grf clean [name] [options]
|
|
|
120
120
|
|
|
121
121
|
| 选项 | 简写 | 类型 | 默认值 | 描述 |
|
|
122
122
|
| ------- | ---- | ------- | ------ | ------------------ |
|
|
123
|
-
| --all | -
|
|
123
|
+
| --all | -a | boolean | false | 移除所有缓存的仓库 |
|
|
124
124
|
| --force | -f | boolean | false | 跳过确认 |
|
|
125
125
|
|
|
126
126
|
**示例:**
|
|
@@ -162,7 +162,7 @@ grf config [key] [value] [options]
|
|
|
162
162
|
|
|
163
163
|
| 选项 | 简写 | 类型 | 默认值 | 描述 |
|
|
164
164
|
| ------ | ---- | ------- | ------ | ---------------- |
|
|
165
|
-
| --list | -
|
|
165
|
+
| --list | -l | boolean | false | 显示所有配置 |
|
|
166
166
|
| --path | - | boolean | false | 显示配置文件路径 |
|
|
167
167
|
|
|
168
168
|
**有效的配置键:**
|
|
@@ -209,9 +209,11 @@ grf list [options]
|
|
|
209
209
|
|
|
210
210
|
**选项:**
|
|
211
211
|
|
|
212
|
-
| 选项
|
|
213
|
-
|
|
|
214
|
-
| --json
|
|
212
|
+
| 选项 | 简写 | 类型 | 默认值 | 描述 |
|
|
213
|
+
| --------- | ---- | ------- | ------ | -------------------------------- |
|
|
214
|
+
| --json | - | boolean | false | 以 JSON 格式输出 |
|
|
215
|
+
| --load | - | boolean | false | 列出当前项目中已加载的参考代码 |
|
|
216
|
+
| --verbose | -v | boolean | false | 显示详细输出 |
|
|
215
217
|
|
|
216
218
|
**示例:**
|
|
217
219
|
|
|
@@ -221,6 +223,12 @@ grf list
|
|
|
221
223
|
|
|
222
224
|
# 以 JSON 格式列出
|
|
223
225
|
grf list --json
|
|
226
|
+
|
|
227
|
+
# 列出当前项目中已加载的参考代码
|
|
228
|
+
grf list --load
|
|
229
|
+
|
|
230
|
+
# 显示详细信息
|
|
231
|
+
grf list --verbose
|
|
224
232
|
```
|
|
225
233
|
|
|
226
234
|
---
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../src/commands/add/display.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAUvD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* add 命令显示函数
|
|
4
|
+
*/
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.displaySuccess = displaySuccess;
|
|
10
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
+
const format_js_1 = require("../../ui/format.js");
|
|
12
|
+
/**
|
|
13
|
+
* 显示添加成功的仓库信息
|
|
14
|
+
* @param repoInfo 仓库信息
|
|
15
|
+
*/
|
|
16
|
+
function displaySuccess(repoInfo) {
|
|
17
|
+
console.log();
|
|
18
|
+
console.log(` ${chalk_1.default.gray("Name:")} ${repoInfo.name}`);
|
|
19
|
+
console.log(` ${chalk_1.default.gray("Path:")} ${repoInfo.path}`);
|
|
20
|
+
if (repoInfo.branch) {
|
|
21
|
+
console.log(` ${chalk_1.default.gray("Branch:")} ${repoInfo.branch}`);
|
|
22
|
+
}
|
|
23
|
+
console.log(` ${chalk_1.default.gray("Commit:")} ${(0, format_js_1.shortCommit)(repoInfo.commitId)}...`);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=display.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.js","sourceRoot":"","sources":["../../../src/commands/add/display.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAUH,wCAUC;AAlBD,kDAA0B;AAE1B,kDAAiD;AAEjD;;;GAGG;AACH,SAAgB,cAAc,CAAC,QAAkB;IAC/C,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAA,uBAAW,EAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CACpE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* add 命令辅助函数
|
|
3
|
+
*/
|
|
4
|
+
import { AddContext } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* 执行仓库添加操作
|
|
7
|
+
* @param context 命令上下文
|
|
8
|
+
* @returns 更新后的上下文(包含 repoInfo)
|
|
9
|
+
*/
|
|
10
|
+
export declare function addRepository(context: AddContext): Promise<AddContext>;
|
|
11
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/add/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAc5E"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* add 命令辅助函数
|
|
4
|
+
*/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.addRepository = addRepository;
|
|
40
|
+
const repository = __importStar(require("../../core/repository.js"));
|
|
41
|
+
/**
|
|
42
|
+
* 执行仓库添加操作
|
|
43
|
+
* @param context 命令上下文
|
|
44
|
+
* @returns 更新后的上下文(包含 repoInfo)
|
|
45
|
+
*/
|
|
46
|
+
async function addRepository(context) {
|
|
47
|
+
const { url, options } = context;
|
|
48
|
+
const repoInfo = await repository.add(url, {
|
|
49
|
+
name: options.name,
|
|
50
|
+
branch: options.branch,
|
|
51
|
+
shallow: options.shallow,
|
|
52
|
+
depth: parseInt(options.depth, 10),
|
|
53
|
+
});
|
|
54
|
+
return {
|
|
55
|
+
...context,
|
|
56
|
+
repoInfo,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/add/helpers.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUH,sCAcC;AAtBD,qEAAuD;AAGvD;;;;GAIG;AACI,KAAK,UAAU,aAAa,CAAC,OAAmB;IACrD,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEjC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;QACzC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;KACnC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,OAAO;QACV,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* add 命令
|
|
3
|
+
* 克隆远程仓库到本地缓存
|
|
4
|
+
*/
|
|
5
|
+
import { Command } from "commander";
|
|
6
|
+
/**
|
|
7
|
+
* 注册 add 命令
|
|
8
|
+
* @param program Commander 程序实例
|
|
9
|
+
*/
|
|
10
|
+
export declare function registerAddCommand(program: Command): void;
|
|
11
|
+
export declare const addCommand: Command;
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/add/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEzD;AAED,eAAO,MAAM,UAAU,SAiCnB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* add 命令
|
|
4
|
+
* 克隆远程仓库到本地缓存
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.addCommand = void 0;
|
|
11
|
+
exports.registerAddCommand = registerAddCommand;
|
|
12
|
+
const commander_1 = require("commander");
|
|
13
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
14
|
+
const spinner_js_1 = require("../../ui/spinner.js");
|
|
15
|
+
const error_js_1 = require("../../utils/error.js");
|
|
16
|
+
const index_js_1 = require("../options/index.js");
|
|
17
|
+
const helpers_js_1 = require("./helpers.js");
|
|
18
|
+
const display_js_1 = require("./display.js");
|
|
19
|
+
/**
|
|
20
|
+
* 注册 add 命令
|
|
21
|
+
* @param program Commander 程序实例
|
|
22
|
+
*/
|
|
23
|
+
function registerAddCommand(program) {
|
|
24
|
+
program.addCommand(exports.addCommand);
|
|
25
|
+
}
|
|
26
|
+
exports.addCommand = new commander_1.Command("add")
|
|
27
|
+
.description("Add a reference repository")
|
|
28
|
+
.argument("<url>", "Git repository URL")
|
|
29
|
+
.addOption(index_js_1.nameOption)
|
|
30
|
+
.addOption(index_js_1.branchOption)
|
|
31
|
+
.addOption(index_js_1.shallowOption)
|
|
32
|
+
.addOption(index_js_1.noShallowOption)
|
|
33
|
+
.addOption(index_js_1.depthOption)
|
|
34
|
+
.action(async (url, options) => {
|
|
35
|
+
const spinner = (0, spinner_js_1.startSpinner)("Cloning repository...");
|
|
36
|
+
// 构建上下文
|
|
37
|
+
const context = {
|
|
38
|
+
url,
|
|
39
|
+
options,
|
|
40
|
+
spinner,
|
|
41
|
+
};
|
|
42
|
+
try {
|
|
43
|
+
// 执行添加操作
|
|
44
|
+
const result = await (0, helpers_js_1.addRepository)(context);
|
|
45
|
+
spinner.succeed(chalk_1.default.green("Repository added successfully!"));
|
|
46
|
+
// 显示仓库信息
|
|
47
|
+
if (result.repoInfo) {
|
|
48
|
+
(0, display_js_1.displaySuccess)(result.repoInfo);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
spinner.fail(chalk_1.default.red("Failed to add repository"));
|
|
53
|
+
console.error();
|
|
54
|
+
(0, error_js_1.handleError)(error, { exit: true });
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/add/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAqBH,gDAEC;AArBD,yCAAoC;AACpC,kDAA0B;AAC1B,oDAAmD;AACnD,mDAAmD;AACnD,kDAM6B;AAE7B,6CAA6C;AAC7C,6CAA8C;AAE9C;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,OAAO,CAAC,UAAU,CAAC,kBAAU,CAAC,CAAC;AACjC,CAAC;AAEY,QAAA,UAAU,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,4BAA4B,CAAC;KACzC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;KACvC,SAAS,CAAC,qBAAU,CAAC;KACrB,SAAS,CAAC,uBAAY,CAAC;KACvB,SAAS,CAAC,wBAAa,CAAC;KACxB,SAAS,CAAC,0BAAe,CAAC;KAC1B,SAAS,CAAC,sBAAW,CAAC;KACtB,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,OAAmB,EAAE,EAAE;IACjD,MAAM,OAAO,GAAG,IAAA,yBAAY,EAAC,uBAAuB,CAAC,CAAC;IAEtD,QAAQ;IACR,MAAM,OAAO,GAAe;QAC1B,GAAG;QACH,OAAO;QACP,OAAO;KACR,CAAC;IAEF,IAAI,CAAC;QACH,SAAS;QACT,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAa,EAAC,OAAO,CAAC,CAAC;QAE5C,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAE/D,SAAS;QACT,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAA,2BAAc,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,IAAA,sBAAW,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* add 命令类型定义
|
|
3
|
+
*/
|
|
4
|
+
import { RepoInfo } from "../../core/repository.js";
|
|
5
|
+
import { Ora } from "ora";
|
|
6
|
+
/**
|
|
7
|
+
* add 命令选项
|
|
8
|
+
*/
|
|
9
|
+
export interface AddOptions {
|
|
10
|
+
/** 自定义仓库名称 */
|
|
11
|
+
name?: string;
|
|
12
|
+
/** 指定分支 */
|
|
13
|
+
branch?: string;
|
|
14
|
+
/** 是否浅克隆 */
|
|
15
|
+
shallow: boolean;
|
|
16
|
+
/** 克隆深度 */
|
|
17
|
+
depth: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* add 命令上下文
|
|
21
|
+
*/
|
|
22
|
+
export interface AddContext {
|
|
23
|
+
/** Git 仓库 URL */
|
|
24
|
+
url: string;
|
|
25
|
+
/** 命令选项 */
|
|
26
|
+
options: AddOptions;
|
|
27
|
+
/** 加载动画 spinner */
|
|
28
|
+
spinner: Ora;
|
|
29
|
+
/** 添加成功后的仓库信息 */
|
|
30
|
+
repoInfo?: RepoInfo;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/add/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,cAAc;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iBAAiB;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW;IACX,OAAO,EAAE,UAAU,CAAC;IACpB,mBAAmB;IACnB,OAAO,EAAE,GAAG,CAAC;IACb,iBAAiB;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/add/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEzD;AAED,eAAO,MAAM,UAAU,SA8CpB,CAAC"}
|
package/dist/commands/add.js
CHANGED
|
@@ -48,6 +48,7 @@ const repository = __importStar(require("../core/repository.js"));
|
|
|
48
48
|
const spinner_js_1 = require("../ui/spinner.js");
|
|
49
49
|
const format_js_1 = require("../ui/format.js");
|
|
50
50
|
const error_js_1 = require("../utils/error.js");
|
|
51
|
+
const index_js_1 = require("./options/index.js");
|
|
51
52
|
/**
|
|
52
53
|
* 注册 add 命令
|
|
53
54
|
* @param program Commander 程序实例
|
|
@@ -58,11 +59,11 @@ function registerAddCommand(program) {
|
|
|
58
59
|
exports.addCommand = new commander_1.Command("add")
|
|
59
60
|
.description("Add a reference repository")
|
|
60
61
|
.argument("<url>", "Git repository URL")
|
|
61
|
-
.
|
|
62
|
-
.
|
|
63
|
-
.
|
|
64
|
-
.
|
|
65
|
-
.
|
|
62
|
+
.addOption(index_js_1.nameOption)
|
|
63
|
+
.addOption(index_js_1.branchOption)
|
|
64
|
+
.addOption(index_js_1.shallowOption)
|
|
65
|
+
.addOption(index_js_1.noShallowOption)
|
|
66
|
+
.addOption(index_js_1.depthOption)
|
|
66
67
|
.action(async (url, options) => {
|
|
67
68
|
const spinner = (0, spinner_js_1.startSpinner)("Cloning repository...");
|
|
68
69
|
try {
|
package/dist/commands/add.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBH,gDAEC;AApBD,yCAAoC;AACpC,kDAA0B;AAC1B,kEAAoD;AACpD,iDAAgD;AAChD,+CAA8C;AAC9C,gDAAgD;AAChD,iDAM4B;AAE5B;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,OAAO,CAAC,UAAU,CAAC,kBAAU,CAAC,CAAC;AACjC,CAAC;AAEY,QAAA,UAAU,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,4BAA4B,CAAC;KACzC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;KACvC,SAAS,CAAC,qBAAU,CAAC;KACrB,SAAS,CAAC,uBAAY,CAAC;KACvB,SAAS,CAAC,wBAAa,CAAC;KACxB,SAAS,CAAC,0BAAe,CAAC;KAC1B,SAAS,CAAC,sBAAW,CAAC;KACtB,MAAM,CACL,KAAK,EACH,GAAW,EACX,OAKC,EACD,EAAE;IACF,MAAM,OAAO,GAAG,IAAA,yBAAY,EAAC,uBAAuB,CAAC,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;YACzC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;SACnC,CAAC,CAAC;QAEH,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAE/D,SAAS;QACT,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAA,uBAAW,EAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CACpE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,IAAA,sBAAW,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clean 命令显示函数
|
|
3
|
+
*/
|
|
4
|
+
import { RepoInfo } from "../../core/repository.js";
|
|
5
|
+
/**
|
|
6
|
+
* 显示没有仓库可清理的消息
|
|
7
|
+
*/
|
|
8
|
+
export declare function displayNoRepos(): void;
|
|
9
|
+
/**
|
|
10
|
+
* 显示将要删除的仓库列表
|
|
11
|
+
* @param repos 仓库列表
|
|
12
|
+
*/
|
|
13
|
+
export declare function displayReposToDelete(repos: RepoInfo[]): void;
|
|
14
|
+
/**
|
|
15
|
+
* 显示部分删除成功的结果
|
|
16
|
+
* @param removedCount 成功删除的数量
|
|
17
|
+
* @param totalCount 总数量
|
|
18
|
+
* @param errors 错误列表
|
|
19
|
+
*/
|
|
20
|
+
export declare function displayPartialRemoveResult(removedCount: number, totalCount: number, errors: string[]): void;
|
|
21
|
+
/**
|
|
22
|
+
* 显示仓库未找到的错误
|
|
23
|
+
* @param name 仓库名称
|
|
24
|
+
*/
|
|
25
|
+
export declare function displayRepoNotFound(name: string): void;
|
|
26
|
+
/**
|
|
27
|
+
* 显示使用帮助
|
|
28
|
+
*/
|
|
29
|
+
export declare function displayUsageHelp(): void;
|
|
30
|
+
//# sourceMappingURL=display.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../src/commands/clean/display.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAMrC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAQ5D;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EAAE,GACf,IAAI,CAKN;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAcvC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* clean 命令显示函数
|
|
4
|
+
*/
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.displayNoRepos = displayNoRepos;
|
|
10
|
+
exports.displayReposToDelete = displayReposToDelete;
|
|
11
|
+
exports.displayPartialRemoveResult = displayPartialRemoveResult;
|
|
12
|
+
exports.displayRepoNotFound = displayRepoNotFound;
|
|
13
|
+
exports.displayUsageHelp = displayUsageHelp;
|
|
14
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
15
|
+
/**
|
|
16
|
+
* 显示没有仓库可清理的消息
|
|
17
|
+
*/
|
|
18
|
+
function displayNoRepos() {
|
|
19
|
+
console.log(chalk_1.default.yellow("No repositories to clean."));
|
|
20
|
+
console.log();
|
|
21
|
+
console.log(`Use '${chalk_1.default.cyan("grf add <url>")}' to add a repository first.`);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 显示将要删除的仓库列表
|
|
25
|
+
* @param repos 仓库列表
|
|
26
|
+
*/
|
|
27
|
+
function displayReposToDelete(repos) {
|
|
28
|
+
console.log(`This will remove all ${chalk_1.default.bold(repos.length)} cached ${repos.length === 1 ? "repository" : "repositories"}:`);
|
|
29
|
+
for (const repo of repos) {
|
|
30
|
+
console.log(` - ${repo.name}`);
|
|
31
|
+
}
|
|
32
|
+
console.log();
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* 显示部分删除成功的结果
|
|
36
|
+
* @param removedCount 成功删除的数量
|
|
37
|
+
* @param totalCount 总数量
|
|
38
|
+
* @param errors 错误列表
|
|
39
|
+
*/
|
|
40
|
+
function displayPartialRemoveResult(removedCount, totalCount, errors) {
|
|
41
|
+
console.log(chalk_1.default.yellow("Some repositories could not be removed:"));
|
|
42
|
+
for (const err of errors) {
|
|
43
|
+
console.log(chalk_1.default.red(` - ${err}`));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* 显示仓库未找到的错误
|
|
48
|
+
* @param name 仓库名称
|
|
49
|
+
*/
|
|
50
|
+
function displayRepoNotFound(name) {
|
|
51
|
+
console.error(chalk_1.default.red(`${chalk_1.default.bold("✗")} Repository not found: ${name}`));
|
|
52
|
+
console.log();
|
|
53
|
+
console.log(`Use '${chalk_1.default.cyan("grf list")}' to see all cached repositories.`);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* 显示使用帮助
|
|
57
|
+
*/
|
|
58
|
+
function displayUsageHelp() {
|
|
59
|
+
console.log(chalk_1.default.yellow("No repository name specified."));
|
|
60
|
+
console.log();
|
|
61
|
+
console.log("Usage:");
|
|
62
|
+
console.log(` ${chalk_1.default.cyan("grf clean <name>")} Remove a specific repository`);
|
|
63
|
+
console.log(` ${chalk_1.default.cyan("grf clean --all")} Remove all repositories`);
|
|
64
|
+
console.log();
|
|
65
|
+
console.log(`Use '${chalk_1.default.cyan("grf list")}' to see all cached repositories.`);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=display.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.js","sourceRoot":"","sources":["../../../src/commands/clean/display.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAQH,wCAMC;AAMD,oDAQC;AAQD,gEASC;AAMD,kDAMC;AAKD,4CAcC;AA1ED,kDAA0B;AAG1B;;GAEG;AACH,SAAgB,cAAc;IAC5B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,QAAQ,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAClE,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,KAAiB;IACpD,OAAO,CAAC,GAAG,CACT,wBAAwB,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,GAAG,CACjH,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CACxC,YAAoB,EACpB,UAAkB,EAClB,MAAgB;IAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC;IACrE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,IAAY;IAC9C,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,QAAQ,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAClE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,mCAAmC,CACvE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,+BAA+B,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,QAAQ,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAClE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clean --all 处理器
|
|
3
|
+
* 删除所有缓存的仓库
|
|
4
|
+
*/
|
|
5
|
+
import { CleanContext } from "../types.js";
|
|
6
|
+
/**
|
|
7
|
+
* 处理 --all 选项,删除所有仓库
|
|
8
|
+
* @param context 命令上下文
|
|
9
|
+
* @returns 是否已处理
|
|
10
|
+
*/
|
|
11
|
+
export declare function handleCleanAll(context: CleanContext): Promise<boolean>;
|
|
12
|
+
//# sourceMappingURL=clean-all.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-all.d.ts","sourceRoot":"","sources":["../../../../src/commands/clean/handlers/clean-all.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CA8B5E"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* clean --all 处理器
|
|
4
|
+
* 删除所有缓存的仓库
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.handleCleanAll = handleCleanAll;
|
|
8
|
+
const prompt_js_1 = require("../../../ui/prompt.js");
|
|
9
|
+
const spinner_js_1 = require("../../../ui/spinner.js");
|
|
10
|
+
const helpers_js_1 = require("../helpers.js");
|
|
11
|
+
const display_js_1 = require("../display.js");
|
|
12
|
+
/**
|
|
13
|
+
* 处理 --all 选项,删除所有仓库
|
|
14
|
+
* @param context 命令上下文
|
|
15
|
+
* @returns 是否已处理
|
|
16
|
+
*/
|
|
17
|
+
async function handleCleanAll(context) {
|
|
18
|
+
const { repos, options } = context;
|
|
19
|
+
if (!options.all) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
// 显示将要删除的仓库列表
|
|
23
|
+
if (!options.force) {
|
|
24
|
+
(0, display_js_1.displayReposToDelete)(repos);
|
|
25
|
+
const confirmed = await (0, prompt_js_1.confirm)("Are you sure?");
|
|
26
|
+
if (!confirmed) {
|
|
27
|
+
(0, prompt_js_1.showCancelled)();
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
// 删除所有仓库
|
|
32
|
+
const spinner = (0, spinner_js_1.startSpinner)("Removing repositories...");
|
|
33
|
+
const { removedCount, errors } = await (0, helpers_js_1.removeAllRepos)(repos);
|
|
34
|
+
if (errors.length > 0) {
|
|
35
|
+
spinner.warn(`Removed ${removedCount} of ${repos.length} repositories.`);
|
|
36
|
+
(0, display_js_1.displayPartialRemoveResult)(removedCount, repos.length, errors);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
spinner.succeed("All repositories removed!");
|
|
40
|
+
}
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=clean-all.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-all.js","sourceRoot":"","sources":["../../../../src/commands/clean/handlers/clean-all.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAgBH,wCA8BC;AA5CD,qDAA+D;AAC/D,uDAAsD;AAEtD,8CAA+C;AAC/C,8CAGuB;AAEvB;;;;GAIG;AACI,KAAK,UAAU,cAAc,CAAC,OAAqB;IACxD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEnC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,cAAc;IACd,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,IAAA,iCAAoB,EAAC,KAAK,CAAC,CAAC;QAE5B,MAAM,SAAS,GAAG,MAAM,IAAA,mBAAO,EAAC,eAAe,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAA,yBAAa,GAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,SAAS;IACT,MAAM,OAAO,GAAG,IAAA,yBAAY,EAAC,0BAA0B,CAAC,CAAC;IACzD,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,2BAAc,EAAC,KAAK,CAAC,CAAC;IAE7D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,WAAW,YAAY,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;QACzE,IAAA,uCAA0B,EAAC,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clean 单个仓库处理器
|
|
3
|
+
* 删除指定的缓存仓库
|
|
4
|
+
*/
|
|
5
|
+
import { CleanContext } from "../types.js";
|
|
6
|
+
/**
|
|
7
|
+
* 处理删除单个仓库
|
|
8
|
+
* @param context 命令上下文
|
|
9
|
+
* @param name 仓库名称
|
|
10
|
+
* @returns 是否已处理
|
|
11
|
+
*/
|
|
12
|
+
export declare function handleCleanSingle(context: CleanContext, name: string): Promise<boolean>;
|
|
13
|
+
//# sourceMappingURL=clean-single.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-single.d.ts","sourceRoot":"","sources":["../../../../src/commands/clean/handlers/clean-single.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CA2BlB"}
|