ccjk 5.2.0 → 5.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/api.mjs +6 -6
- package/dist/chunks/auto-updater.mjs +80 -133
- package/dist/chunks/ccm.mjs +7 -7
- package/dist/chunks/ccr.mjs +7 -4
- package/dist/chunks/ccu.mjs +6 -6
- package/dist/chunks/check-updates.mjs +3 -3
- package/dist/chunks/claude-code-incremental-manager.mjs +38 -38
- package/dist/chunks/cloud-v5.mjs +1651 -0
- package/dist/chunks/codex.mjs +70 -70
- package/dist/chunks/commands.mjs +25 -25
- package/dist/chunks/commit.mjs +16 -16
- package/dist/chunks/config-consolidator.mjs +9 -9
- package/dist/chunks/config-switch.mjs +39 -39
- package/dist/chunks/config.mjs +5 -5
- package/dist/chunks/config2.mjs +85 -85
- package/dist/chunks/context.mjs +2 -2
- package/dist/chunks/doctor.mjs +31 -31
- package/dist/chunks/features.mjs +84 -83
- package/dist/chunks/help.mjs +116 -116
- package/dist/chunks/index4.mjs +46 -46
- package/dist/chunks/init.mjs +214 -191
- package/dist/chunks/interview.mjs +102 -102
- package/dist/chunks/manager.mjs +238 -0
- package/dist/chunks/marketplace.mjs +59 -59
- package/dist/chunks/mcp.mjs +82 -82
- package/dist/chunks/menu.mjs +441 -379
- package/dist/chunks/notification.mjs +112 -112
- package/dist/chunks/onboarding.mjs +7 -7
- package/dist/chunks/package.mjs +1 -1
- package/dist/chunks/permission-manager.mjs +8 -8
- package/dist/chunks/plugin.mjs +100 -100
- package/dist/chunks/prompts.mjs +15 -15
- package/dist/chunks/providers.mjs +65 -65
- package/dist/chunks/session.mjs +83 -83
- package/dist/chunks/skills-sync.mjs +72 -72
- package/dist/chunks/skills.mjs +88 -88
- package/dist/chunks/team.mjs +6 -6
- package/dist/chunks/uninstall.mjs +35 -35
- package/dist/chunks/update.mjs +6 -6
- package/dist/chunks/upgrade-manager.mjs +4 -4
- package/dist/chunks/workflows2.mjs +13 -13
- package/dist/cli.mjs +21 -0
- package/dist/i18n/locales/en/menu.json +16 -1
- package/dist/i18n/locales/en/skills.json +29 -0
- package/dist/i18n/locales/zh-CN/menu.json +16 -1
- package/dist/i18n/locales/zh-CN/skills.json +29 -0
- package/dist/index.mjs +4 -4
- package/dist/shared/{ccjk.f40us0yY.mjs → ccjk.BiJujy5w.mjs} +4 -4
- package/dist/shared/{ccjk.CQzwtnZ1.mjs → ccjk.C_3BYaWc.mjs} +50 -50
- package/dist/shared/{ccjk.Zwx-YR_P.mjs → ccjk.DjD9Rzxq.mjs} +32 -32
- package/dist/shared/{ccjk.DtWIPt8E.mjs → ccjk.XgW1H2t3.mjs} +68 -68
- package/dist/shared/{ccjk.BlPCiSHj.mjs → ccjk.tI4PJA0c.mjs} +30 -30
- package/package.json +3 -3
package/dist/chunks/help.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ansis__default from 'ansis';
|
|
2
2
|
|
|
3
3
|
const COMMAND_REFERENCE = [
|
|
4
4
|
// Core Commands
|
|
@@ -71,39 +71,39 @@ async function help(topic) {
|
|
|
71
71
|
showCommandHelp(command);
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
|
-
console.log(
|
|
74
|
+
console.log(ansis__default.yellow(`
|
|
75
75
|
\u26A0\uFE0F \u672A\u627E\u5230\u5E2E\u52A9\u4E3B\u9898: ${topic}`));
|
|
76
|
-
console.log(
|
|
77
|
-
console.log(
|
|
76
|
+
console.log(ansis__default.gray("\u53EF\u7528\u4E3B\u9898: quick, mcp, examples, tutorial, faq"));
|
|
77
|
+
console.log(ansis__default.gray("\u6216\u8F93\u5165\u547D\u4EE4\u540D\u79F0\u67E5\u770B\u547D\u4EE4\u5E2E\u52A9\n"));
|
|
78
78
|
}
|
|
79
79
|
function showHelpMenu() {
|
|
80
80
|
console.log("");
|
|
81
|
-
console.log(
|
|
82
|
-
console.log(
|
|
81
|
+
console.log(ansis__default.green.bold("\u{1F4DA} CCJK \u5E2E\u52A9\u4E2D\u5FC3"));
|
|
82
|
+
console.log(ansis__default.gray("\u2500".repeat(50)));
|
|
83
83
|
console.log("");
|
|
84
|
-
console.log(
|
|
85
|
-
console.log(` ${
|
|
86
|
-
console.log(` ${
|
|
87
|
-
console.log(` ${
|
|
84
|
+
console.log(ansis__default.yellow("\u5FEB\u901F\u5165\u95E8:"));
|
|
85
|
+
console.log(` ${ansis__default.green("ccjk help quick")} ${ansis__default.gray("- \u547D\u4EE4\u901F\u67E5\u5361\uFF08\u63A8\u8350\u65B0\u624B\uFF09")}`);
|
|
86
|
+
console.log(` ${ansis__default.green("ccjk help tutorial")} ${ansis__default.gray("- \u65B0\u624B\u5165\u95E8\u6559\u7A0B")}`);
|
|
87
|
+
console.log(` ${ansis__default.green("ccjk help examples")} ${ansis__default.gray("- \u5E38\u7528\u793A\u4F8B")}`);
|
|
88
88
|
console.log("");
|
|
89
|
-
console.log(
|
|
90
|
-
console.log(` ${
|
|
91
|
-
console.log(` ${
|
|
89
|
+
console.log(ansis__default.yellow("\u4E13\u9898\u5E2E\u52A9:"));
|
|
90
|
+
console.log(` ${ansis__default.green("ccjk help mcp")} ${ansis__default.gray("- MCP \u670D\u52A1\u5668\u7BA1\u7406")}`);
|
|
91
|
+
console.log(` ${ansis__default.green("ccjk help faq")} ${ansis__default.gray("- \u5E38\u89C1\u95EE\u9898\u89E3\u7B54")}`);
|
|
92
92
|
console.log("");
|
|
93
|
-
console.log(
|
|
94
|
-
console.log(` ${
|
|
95
|
-
console.log(` ${
|
|
93
|
+
console.log(ansis__default.yellow("\u547D\u4EE4\u5E2E\u52A9:"));
|
|
94
|
+
console.log(` ${ansis__default.green("ccjk help <command>")} ${ansis__default.gray("- \u67E5\u770B\u7279\u5B9A\u547D\u4EE4\u5E2E\u52A9")}`);
|
|
95
|
+
console.log(` ${ansis__default.green("ccjk <command> -h")} ${ansis__default.gray("- \u67E5\u770B\u547D\u4EE4\u9009\u9879")}`);
|
|
96
96
|
console.log("");
|
|
97
|
-
console.log(
|
|
98
|
-
console.log(
|
|
97
|
+
console.log(ansis__default.gray("\u2500".repeat(50)));
|
|
98
|
+
console.log(ansis__default.gray("\u{1F4A1} \u63D0\u793A: \u5728\u4EFB\u4F55\u83DC\u5355\u4E2D\u6309 ? \u6216 H \u53EF\u67E5\u770B\u4E0A\u4E0B\u6587\u5E2E\u52A9"));
|
|
99
99
|
console.log("");
|
|
100
100
|
}
|
|
101
101
|
function showQuickReference() {
|
|
102
102
|
console.log("");
|
|
103
|
-
console.log(
|
|
104
|
-
console.log(
|
|
103
|
+
console.log(ansis__default.green.bold("\u26A1 CCJK \u547D\u4EE4\u901F\u67E5\u5361"));
|
|
104
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
105
105
|
console.log("");
|
|
106
|
-
console.log(
|
|
106
|
+
console.log(ansis__default.yellow.bold("\u{1F525} \u6700\u5E38\u7528\u547D\u4EE4:"));
|
|
107
107
|
console.log("");
|
|
108
108
|
printCommandBox([
|
|
109
109
|
{ cmd: "ccjk", desc: "\u6253\u5F00\u4EA4\u4E92\u5F0F\u83DC\u5355" },
|
|
@@ -121,138 +121,138 @@ function showQuickReference() {
|
|
|
121
121
|
for (const cat of categories) {
|
|
122
122
|
const commands = COMMAND_REFERENCE.filter((c) => c.category === cat.key);
|
|
123
123
|
if (commands.length > 0) {
|
|
124
|
-
console.log(
|
|
124
|
+
console.log(ansis__default.yellow(cat.title));
|
|
125
125
|
for (const cmd of commands) {
|
|
126
|
-
const alias = cmd.alias ?
|
|
127
|
-
console.log(` ${
|
|
126
|
+
const alias = cmd.alias ? ansis__default.gray(` (${cmd.alias})`) : "";
|
|
127
|
+
console.log(` ${ansis__default.green(cmd.name.padEnd(25))}${alias} ${ansis__default.gray(cmd.description)}`);
|
|
128
128
|
}
|
|
129
129
|
console.log("");
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
|
-
console.log(
|
|
133
|
-
console.log(
|
|
132
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
133
|
+
console.log(ansis__default.gray('\u{1F4A1} \u4F7F\u7528 "ccjk help <\u547D\u4EE4>" \u67E5\u770B\u8BE6\u7EC6\u7528\u6CD5'));
|
|
134
134
|
console.log("");
|
|
135
135
|
}
|
|
136
136
|
function printCommandBox(commands) {
|
|
137
137
|
const maxCmdLen = Math.max(...commands.map((c) => c.cmd.length));
|
|
138
138
|
const boxWidth = maxCmdLen + 40;
|
|
139
|
-
console.log(
|
|
139
|
+
console.log(ansis__default.gray(` \u250C${"\u2500".repeat(boxWidth)}\u2510`));
|
|
140
140
|
for (const { cmd, desc } of commands) {
|
|
141
141
|
const paddedCmd = cmd.padEnd(maxCmdLen);
|
|
142
|
-
console.log(
|
|
142
|
+
console.log(ansis__default.gray(" \u2502 ") + ansis__default.green.bold(paddedCmd) + ansis__default.gray(" \u2192 ") + desc.padEnd(boxWidth - maxCmdLen - 5) + ansis__default.gray(" \u2502"));
|
|
143
143
|
}
|
|
144
|
-
console.log(
|
|
144
|
+
console.log(ansis__default.gray(` \u2514${"\u2500".repeat(boxWidth)}\u2518`));
|
|
145
145
|
}
|
|
146
146
|
function showMcpHelp() {
|
|
147
147
|
console.log("");
|
|
148
|
-
console.log(
|
|
149
|
-
console.log(
|
|
148
|
+
console.log(ansis__default.green.bold("\u{1F50C} MCP \u670D\u52A1\u5668\u7BA1\u7406\u5E2E\u52A9"));
|
|
149
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
150
150
|
console.log("");
|
|
151
|
-
console.log(
|
|
152
|
-
console.log(
|
|
153
|
-
console.log(
|
|
151
|
+
console.log(ansis__default.yellow("\u4EC0\u4E48\u662F MCP?"));
|
|
152
|
+
console.log(ansis__default.gray(" MCP (Model Context Protocol) \u662F Claude \u7684\u6269\u5C55\u534F\u8BAE\uFF0C"));
|
|
153
|
+
console.log(ansis__default.gray(" \u5141\u8BB8 AI \u8BBF\u95EE\u5916\u90E8\u5DE5\u5177\u548C\u6570\u636E\u6E90\u3002"));
|
|
154
154
|
console.log("");
|
|
155
|
-
console.log(
|
|
156
|
-
console.log(` ${
|
|
157
|
-
console.log(` ${
|
|
158
|
-
console.log(` ${
|
|
155
|
+
console.log(ansis__default.yellow("\u5E38\u7528\u547D\u4EE4:"));
|
|
156
|
+
console.log(` ${ansis__default.green("ccjk mcp doctor")} ${ansis__default.gray("- \u68C0\u67E5 MCP \u5065\u5EB7\u72B6\u6001")}`);
|
|
157
|
+
console.log(` ${ansis__default.green("ccjk mcp profile <name>")} ${ansis__default.gray("- \u5207\u6362 MCP \u914D\u7F6E\u9884\u8BBE")}`);
|
|
158
|
+
console.log(` ${ansis__default.green("ccjk mcp release")} ${ansis__default.gray("- \u91CA\u653E\u672A\u4F7F\u7528\u7684 MCP")}`);
|
|
159
159
|
console.log("");
|
|
160
|
-
console.log(
|
|
161
|
-
console.log(` ${
|
|
162
|
-
console.log(` ${
|
|
163
|
-
console.log(` ${
|
|
164
|
-
console.log(` ${
|
|
165
|
-
console.log(` ${
|
|
160
|
+
console.log(ansis__default.yellow("\u53EF\u7528\u9884\u8BBE (Profile):"));
|
|
161
|
+
console.log(` ${ansis__default.green("minimal")} ${ansis__default.gray("- \u6700\u5C0F\u914D\u7F6E\uFF0C\u4EC5\u6838\u5FC3 MCP\uFF08\u63A8\u8350\u65E5\u5E38\u4F7F\u7528\uFF09")}`);
|
|
162
|
+
console.log(` ${ansis__default.green("development")} ${ansis__default.gray("- \u5F00\u53D1\u914D\u7F6E\uFF0C\u5305\u542B\u5F00\u53D1\u5DE5\u5177")}`);
|
|
163
|
+
console.log(` ${ansis__default.green("testing")} ${ansis__default.gray("- \u6D4B\u8BD5\u914D\u7F6E\uFF0C\u5305\u542B\u6D4B\u8BD5\u5DE5\u5177")}`);
|
|
164
|
+
console.log(` ${ansis__default.green("research")} ${ansis__default.gray("- \u7814\u7A76\u914D\u7F6E\uFF0C\u5305\u542B\u641C\u7D22\u548C\u6587\u6863\u5DE5\u5177")}`);
|
|
165
|
+
console.log(` ${ansis__default.green("full")} ${ansis__default.gray("- \u5B8C\u6574\u914D\u7F6E\uFF0C\u542F\u7528\u6240\u6709 MCP")}`);
|
|
166
166
|
console.log("");
|
|
167
|
-
console.log(
|
|
168
|
-
console.log(
|
|
169
|
-
console.log(
|
|
170
|
-
console.log(
|
|
171
|
-
console.log(
|
|
167
|
+
console.log(ansis__default.yellow("\u6027\u80FD\u4F18\u5316\u5EFA\u8BAE:"));
|
|
168
|
+
console.log(ansis__default.gray(" 1. \u65E5\u5E38\u4F7F\u7528\u5EFA\u8BAE\u4F7F\u7528 minimal \u9884\u8BBE"));
|
|
169
|
+
console.log(ansis__default.gray(' 2. \u5B9A\u671F\u8FD0\u884C "ccjk mcp doctor" \u68C0\u67E5\u5065\u5EB7\u72B6\u6001'));
|
|
170
|
+
console.log(ansis__default.gray(' 3. \u4F7F\u7528 "ccjk mcp release" \u91CA\u653E\u4E0D\u9700\u8981\u7684 MCP'));
|
|
171
|
+
console.log(ansis__default.gray(" 4. \u907F\u514D\u540C\u65F6\u542F\u7528\u8D85\u8FC7 5 \u4E2A MCP"));
|
|
172
172
|
console.log("");
|
|
173
|
-
console.log(
|
|
174
|
-
console.log(
|
|
173
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
174
|
+
console.log(ansis__default.gray("\u{1F4D6} \u66F4\u591A\u4FE1\u606F: https://github.com/anthropics/claude-code"));
|
|
175
175
|
console.log("");
|
|
176
176
|
}
|
|
177
177
|
function showExamples() {
|
|
178
178
|
console.log("");
|
|
179
|
-
console.log(
|
|
180
|
-
console.log(
|
|
179
|
+
console.log(ansis__default.green.bold("\u{1F4DD} CCJK \u5E38\u7528\u793A\u4F8B"));
|
|
180
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
181
181
|
console.log("");
|
|
182
|
-
console.log(
|
|
183
|
-
console.log(
|
|
184
|
-
console.log(` ${
|
|
182
|
+
console.log(ansis__default.yellow("\u{1F680} \u9996\u6B21\u4F7F\u7528:"));
|
|
183
|
+
console.log(ansis__default.gray(" # \u4E00\u952E\u5B8C\u6210\u6240\u6709\u914D\u7F6E"));
|
|
184
|
+
console.log(` ${ansis__default.green("ccjk init")}`);
|
|
185
185
|
console.log("");
|
|
186
|
-
console.log(
|
|
187
|
-
console.log(
|
|
188
|
-
console.log(` ${
|
|
186
|
+
console.log(ansis__default.yellow("\u{1F527} \u65E5\u5E38\u7EF4\u62A4:"));
|
|
187
|
+
console.log(ansis__default.gray(" # \u68C0\u67E5\u73AF\u5883\u5065\u5EB7\u72B6\u6001"));
|
|
188
|
+
console.log(` ${ansis__default.green("ccjk doctor")}`);
|
|
189
189
|
console.log("");
|
|
190
|
-
console.log(
|
|
191
|
-
console.log(` ${
|
|
190
|
+
console.log(ansis__default.gray(" # \u66F4\u65B0\u5230\u6700\u65B0\u914D\u7F6E"));
|
|
191
|
+
console.log(` ${ansis__default.green("ccjk update")}`);
|
|
192
192
|
console.log("");
|
|
193
|
-
console.log(
|
|
194
|
-
console.log(
|
|
195
|
-
console.log(` ${
|
|
193
|
+
console.log(ansis__default.yellow("\u26A1 MCP \u6027\u80FD\u4F18\u5316:"));
|
|
194
|
+
console.log(ansis__default.gray(" # \u68C0\u67E5 MCP \u72B6\u6001"));
|
|
195
|
+
console.log(` ${ansis__default.green("ccjk mcp doctor")}`);
|
|
196
196
|
console.log("");
|
|
197
|
-
console.log(
|
|
198
|
-
console.log(` ${
|
|
197
|
+
console.log(ansis__default.gray(" # \u5207\u6362\u5230\u6700\u5C0F\u914D\u7F6E\uFF08\u63D0\u5347\u6027\u80FD\uFF09"));
|
|
198
|
+
console.log(` ${ansis__default.green("ccjk mcp profile minimal")}`);
|
|
199
199
|
console.log("");
|
|
200
|
-
console.log(
|
|
201
|
-
console.log(` ${
|
|
200
|
+
console.log(ansis__default.gray(" # \u91CA\u653E\u672A\u4F7F\u7528\u7684 MCP"));
|
|
201
|
+
console.log(` ${ansis__default.green("ccjk mcp release")}`);
|
|
202
202
|
console.log("");
|
|
203
|
-
console.log(
|
|
204
|
-
console.log(
|
|
205
|
-
console.log(` ${
|
|
203
|
+
console.log(ansis__default.yellow("\u{1F4BB} \u5F00\u53D1\u5DE5\u4F5C\u6D41:"));
|
|
204
|
+
console.log(ansis__default.gray(" # \u542F\u52A8\u8BBF\u8C08\u9A71\u52A8\u5F00\u53D1"));
|
|
205
|
+
console.log(` ${ansis__default.green("ccjk interview")}`);
|
|
206
206
|
console.log("");
|
|
207
|
-
console.log(
|
|
208
|
-
console.log(` ${
|
|
207
|
+
console.log(ansis__default.gray(" # \u667A\u80FD Git \u63D0\u4EA4"));
|
|
208
|
+
console.log(` ${ansis__default.green("ccjk commit -a")}`);
|
|
209
209
|
console.log("");
|
|
210
|
-
console.log(
|
|
211
|
-
console.log(
|
|
212
|
-
console.log(` ${
|
|
213
|
-
console.log(` ${
|
|
210
|
+
console.log(ansis__default.yellow("\u{1F504} \u914D\u7F6E\u5207\u6362:"));
|
|
211
|
+
console.log(ansis__default.gray(" # \u5207\u6362\u5DE5\u4F5C/\u4E2A\u4EBA\u914D\u7F6E"));
|
|
212
|
+
console.log(` ${ansis__default.green("ccjk config-switch work")}`);
|
|
213
|
+
console.log(` ${ansis__default.green("ccjk config-switch personal")}`);
|
|
214
214
|
console.log("");
|
|
215
|
-
console.log(
|
|
215
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
216
216
|
console.log("");
|
|
217
217
|
}
|
|
218
218
|
function showTutorial() {
|
|
219
219
|
console.log("");
|
|
220
|
-
console.log(
|
|
221
|
-
console.log(
|
|
220
|
+
console.log(ansis__default.green.bold("\u{1F393} CCJK \u65B0\u624B\u5165\u95E8\u6559\u7A0B"));
|
|
221
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
222
222
|
console.log("");
|
|
223
|
-
console.log(
|
|
224
|
-
console.log(
|
|
225
|
-
console.log(` ${
|
|
226
|
-
console.log(
|
|
223
|
+
console.log(ansis__default.yellow.bold("\u7B2C 1 \u6B65: \u521D\u59CB\u5316\u914D\u7F6E"));
|
|
224
|
+
console.log(ansis__default.gray(" \u8FD0\u884C\u4EE5\u4E0B\u547D\u4EE4\u5B8C\u6210\u4E00\u952E\u914D\u7F6E:"));
|
|
225
|
+
console.log(` ${ansis__default.green.bold("ccjk init")}`);
|
|
226
|
+
console.log(ansis__default.gray(" \u8FD9\u5C06\u81EA\u52A8\u914D\u7F6E API\u3001\u5DE5\u4F5C\u6D41\u548C MCP \u670D\u52A1\u3002"));
|
|
227
227
|
console.log("");
|
|
228
|
-
console.log(
|
|
229
|
-
console.log(
|
|
230
|
-
console.log(` ${
|
|
231
|
-
console.log(
|
|
228
|
+
console.log(ansis__default.yellow.bold("\u7B2C 2 \u6B65: \u9A8C\u8BC1\u5B89\u88C5"));
|
|
229
|
+
console.log(ansis__default.gray(" \u8FD0\u884C\u5065\u5EB7\u68C0\u67E5\u786E\u4FDD\u4E00\u5207\u6B63\u5E38:"));
|
|
230
|
+
console.log(` ${ansis__default.green.bold("ccjk doctor")}`);
|
|
231
|
+
console.log(ansis__default.gray(" \u5982\u679C\u6709\u95EE\u9898\uFF0C\u6309\u7167\u63D0\u793A\u4FEE\u590D\u3002"));
|
|
232
232
|
console.log("");
|
|
233
|
-
console.log(
|
|
234
|
-
console.log(
|
|
235
|
-
console.log(` ${
|
|
236
|
-
console.log(
|
|
237
|
-
console.log(` ${
|
|
233
|
+
console.log(ansis__default.yellow.bold("\u7B2C 3 \u6B65: \u4F18\u5316\u6027\u80FD\uFF08\u63A8\u8350\uFF09"));
|
|
234
|
+
console.log(ansis__default.gray(" \u68C0\u67E5\u5E76\u4F18\u5316 MCP \u914D\u7F6E:"));
|
|
235
|
+
console.log(` ${ansis__default.green.bold("ccjk mcp doctor")}`);
|
|
236
|
+
console.log(ansis__default.gray(" \u5982\u679C MCP \u8FC7\u591A\uFF0C\u5207\u6362\u5230\u6700\u5C0F\u914D\u7F6E:"));
|
|
237
|
+
console.log(` ${ansis__default.green.bold("ccjk mcp profile minimal")}`);
|
|
238
238
|
console.log("");
|
|
239
|
-
console.log(
|
|
240
|
-
console.log(
|
|
241
|
-
console.log(` ${
|
|
239
|
+
console.log(ansis__default.yellow.bold("\u7B2C 4 \u6B65: \u5F00\u59CB\u4F7F\u7528"));
|
|
240
|
+
console.log(ansis__default.gray(" \u6253\u5F00\u4EA4\u4E92\u5F0F\u83DC\u5355\u63A2\u7D22\u66F4\u591A\u529F\u80FD:"));
|
|
241
|
+
console.log(` ${ansis__default.green.bold("ccjk")}`);
|
|
242
242
|
console.log("");
|
|
243
|
-
console.log(
|
|
243
|
+
console.log(ansis__default.green.bold("\u2705 \u606D\u559C\uFF01\u4F60\u5DF2\u7ECF\u5B8C\u6210\u4E86\u57FA\u672C\u8BBE\u7F6E\u3002"));
|
|
244
244
|
console.log("");
|
|
245
|
-
console.log(
|
|
246
|
-
console.log(
|
|
247
|
-
console.log(
|
|
248
|
-
console.log(
|
|
249
|
-
console.log(
|
|
245
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
246
|
+
console.log(ansis__default.yellow("\u{1F4A1} \u8FDB\u9636\u63D0\u793A:"));
|
|
247
|
+
console.log(ansis__default.gray(' \u2022 \u4F7F\u7528 "ccjk help quick" \u67E5\u770B\u547D\u4EE4\u901F\u67E5\u5361'));
|
|
248
|
+
console.log(ansis__default.gray(' \u2022 \u4F7F\u7528 "ccjk help examples" \u67E5\u770B\u66F4\u591A\u793A\u4F8B'));
|
|
249
|
+
console.log(ansis__default.gray(' \u2022 \u4F7F\u7528 "ccjk help faq" \u67E5\u770B\u5E38\u89C1\u95EE\u9898'));
|
|
250
250
|
console.log("");
|
|
251
251
|
}
|
|
252
252
|
function showFaq() {
|
|
253
253
|
console.log("");
|
|
254
|
-
console.log(
|
|
255
|
-
console.log(
|
|
254
|
+
console.log(ansis__default.green.bold("\u2753 \u5E38\u89C1\u95EE\u9898\u89E3\u7B54 (FAQ)"));
|
|
255
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
256
256
|
console.log("");
|
|
257
257
|
const faqs = [
|
|
258
258
|
{
|
|
@@ -301,38 +301,38 @@ function showFaq() {
|
|
|
301
301
|
];
|
|
302
302
|
for (let i = 0; i < faqs.length; i++) {
|
|
303
303
|
const faq = faqs[i];
|
|
304
|
-
console.log(
|
|
304
|
+
console.log(ansis__default.yellow(`Q${i + 1}: ${faq.q}`));
|
|
305
305
|
for (const line of faq.a) {
|
|
306
|
-
console.log(
|
|
306
|
+
console.log(ansis__default.gray(` ${line}`));
|
|
307
307
|
}
|
|
308
308
|
console.log("");
|
|
309
309
|
}
|
|
310
|
-
console.log(
|
|
311
|
-
console.log(
|
|
310
|
+
console.log(ansis__default.gray("\u2500".repeat(60)));
|
|
311
|
+
console.log(ansis__default.gray("\u{1F4D6} \u66F4\u591A\u95EE\u9898\u8BF7\u8BBF\u95EE: https://github.com/miounet11/ccjk/issues"));
|
|
312
312
|
console.log("");
|
|
313
313
|
}
|
|
314
314
|
function showCommandHelp(command) {
|
|
315
315
|
console.log("");
|
|
316
|
-
console.log(
|
|
317
|
-
console.log(
|
|
316
|
+
console.log(ansis__default.green.bold(`\u{1F4D6} \u547D\u4EE4\u5E2E\u52A9: ${command.name}`));
|
|
317
|
+
console.log(ansis__default.gray("\u2500".repeat(50)));
|
|
318
318
|
console.log("");
|
|
319
|
-
console.log(
|
|
319
|
+
console.log(ansis__default.yellow("\u63CF\u8FF0:"));
|
|
320
320
|
console.log(` ${command.description}`);
|
|
321
321
|
console.log("");
|
|
322
322
|
if (command.alias) {
|
|
323
|
-
console.log(
|
|
323
|
+
console.log(ansis__default.yellow("\u522B\u540D:"));
|
|
324
324
|
console.log(` ${command.alias}`);
|
|
325
325
|
console.log("");
|
|
326
326
|
}
|
|
327
327
|
if (command.examples && command.examples.length > 0) {
|
|
328
|
-
console.log(
|
|
328
|
+
console.log(ansis__default.yellow("\u793A\u4F8B:"));
|
|
329
329
|
for (const example of command.examples) {
|
|
330
|
-
console.log(` ${
|
|
330
|
+
console.log(` ${ansis__default.green(example)}`);
|
|
331
331
|
}
|
|
332
332
|
console.log("");
|
|
333
333
|
}
|
|
334
|
-
console.log(
|
|
335
|
-
console.log(
|
|
334
|
+
console.log(ansis__default.gray("\u2500".repeat(50)));
|
|
335
|
+
console.log(ansis__default.gray(`\u8FD0\u884C "${command.name.split(" ")[0]} ${command.name.split(" ")[1] || ""} --help" \u67E5\u770B\u6240\u6709\u9009\u9879`));
|
|
336
336
|
console.log("");
|
|
337
337
|
}
|
|
338
338
|
|
package/dist/chunks/index4.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import './init.mjs';
|
|
2
2
|
import { CCJK_SKILLS_DIR, CLAUDE_DIR, CCJK_GROUPS_DIR, AIDER_DIR, AIDER_CONFIG_FILE, AIDER_ENV_FILE, CODEX_AUTH_FILE, CODEX_DIR, CODEX_CONFIG_FILE, CODEX_AGENTS_FILE, CODEX_PROMPTS_DIR, CONTINUE_DIR, CONTINUE_CONFIG_FILE, CURSOR_CONFIG_FILE, CLINE_CONFIG_FILE, CURSOR_DIR, CLINE_DIR, CODE_TOOL_TYPES, CODE_TOOL_INFO } from './constants.mjs';
|
|
3
|
-
import { S as STATUS, r as renderProgressBar, s as sectionDivider, t as theme } from '../shared/ccjk.
|
|
3
|
+
import { S as STATUS, r as renderProgressBar, s as sectionDivider, t as theme } from '../shared/ccjk.DjD9Rzxq.mjs';
|
|
4
4
|
import './config.mjs';
|
|
5
5
|
import { detectAllConfigs } from './config-consolidator.mjs';
|
|
6
6
|
import '../shared/ccjk.BjUZt6kx.mjs';
|
|
7
7
|
import { homedir } from 'node:os';
|
|
8
8
|
import process__default from 'node:process';
|
|
9
|
-
import
|
|
9
|
+
import ansis__default from 'ansis';
|
|
10
10
|
import ora from 'ora';
|
|
11
11
|
import { exec } from 'tinyexec';
|
|
12
12
|
import { version } from './package.mjs';
|
|
@@ -16,7 +16,7 @@ import './onboarding.mjs';
|
|
|
16
16
|
import './platform.mjs';
|
|
17
17
|
import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'node:fs';
|
|
18
18
|
import { join } from 'node:path';
|
|
19
|
-
import '../shared/ccjk.
|
|
19
|
+
import '../shared/ccjk.tI4PJA0c.mjs';
|
|
20
20
|
import { EventEmitter } from 'node:events';
|
|
21
21
|
import * as p from '@clack/prompts';
|
|
22
22
|
import { isCancel } from '@clack/prompts';
|
|
@@ -3718,13 +3718,13 @@ async function configureIncrementalManagement() {
|
|
|
3718
3718
|
ensureI18nInitialized();
|
|
3719
3719
|
const managementMode = detectConfigManagementMode();
|
|
3720
3720
|
if (managementMode.mode !== "management" || !managementMode.hasProviders) {
|
|
3721
|
-
console.log(
|
|
3721
|
+
console.log(ansis__default.yellow(i18n.t("codex:noExistingProviders")));
|
|
3722
3722
|
return;
|
|
3723
3723
|
}
|
|
3724
|
-
console.log(
|
|
3725
|
-
console.log(
|
|
3724
|
+
console.log(ansis__default.green(i18n.t("codex:incrementalManagementTitle")));
|
|
3725
|
+
console.log(ansis__default.gray(i18n.t("codex:currentProviderCount", { count: managementMode.providerCount })));
|
|
3726
3726
|
if (managementMode.currentProvider) {
|
|
3727
|
-
console.log(
|
|
3727
|
+
console.log(ansis__default.gray(i18n.t("codex:currentDefaultProvider", { provider: managementMode.currentProvider })));
|
|
3728
3728
|
}
|
|
3729
3729
|
const choices = [
|
|
3730
3730
|
{ name: i18n.t("codex:addProvider"), value: "add" },
|
|
@@ -3740,7 +3740,7 @@ async function configureIncrementalManagement() {
|
|
|
3740
3740
|
choices: addNumbersToChoices(choices)
|
|
3741
3741
|
}]);
|
|
3742
3742
|
if (!action || action === "skip") {
|
|
3743
|
-
console.log(
|
|
3743
|
+
console.log(ansis__default.yellow(i18n.t("common:skip")));
|
|
3744
3744
|
return;
|
|
3745
3745
|
}
|
|
3746
3746
|
switch (action) {
|
|
@@ -3780,7 +3780,7 @@ async function handleAddProvider() {
|
|
|
3780
3780
|
prefilledBaseUrl = provider2.codex.baseUrl;
|
|
3781
3781
|
prefilledWireApi = provider2.codex.wireApi;
|
|
3782
3782
|
prefilledModel = provider2.codex.defaultModel;
|
|
3783
|
-
console.log(
|
|
3783
|
+
console.log(ansis__default.gray(i18n.t("api:providerSelected", { name: provider2.name })));
|
|
3784
3784
|
}
|
|
3785
3785
|
}
|
|
3786
3786
|
const answers = await inquirer.prompt([
|
|
@@ -3836,7 +3836,7 @@ async function handleAddProvider() {
|
|
|
3836
3836
|
defaultValue: false
|
|
3837
3837
|
});
|
|
3838
3838
|
if (!shouldOverwrite) {
|
|
3839
|
-
console.log(
|
|
3839
|
+
console.log(ansis__default.yellow(i18n.t("codex:providerDuplicateSkipped")));
|
|
3840
3840
|
return;
|
|
3841
3841
|
}
|
|
3842
3842
|
}
|
|
@@ -3852,9 +3852,9 @@ async function handleAddProvider() {
|
|
|
3852
3852
|
};
|
|
3853
3853
|
const result = await addProviderToExisting(provider, answers.apiKey.trim(), true);
|
|
3854
3854
|
if (result.success) {
|
|
3855
|
-
console.log(
|
|
3855
|
+
console.log(ansis__default.green(i18n.t("codex:providerAdded", { name: result.addedProvider?.name })));
|
|
3856
3856
|
if (result.backupPath) {
|
|
3857
|
-
console.log(
|
|
3857
|
+
console.log(ansis__default.gray(i18n.t("common:backupCreated", { path: result.backupPath })));
|
|
3858
3858
|
}
|
|
3859
3859
|
const setAsDefault = await promptBoolean({
|
|
3860
3860
|
message: i18n.t("multi-config:setAsDefaultPrompt"),
|
|
@@ -3864,11 +3864,11 @@ async function handleAddProvider() {
|
|
|
3864
3864
|
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.Q; });
|
|
3865
3865
|
const switched = await switchToProvider(provider.id);
|
|
3866
3866
|
if (switched) {
|
|
3867
|
-
console.log(
|
|
3867
|
+
console.log(ansis__default.green(i18n.t("multi-config:profileSetAsDefault", { name: provider.name })));
|
|
3868
3868
|
}
|
|
3869
3869
|
}
|
|
3870
3870
|
} else {
|
|
3871
|
-
console.log(
|
|
3871
|
+
console.log(ansis__default.red(i18n.t("codex:providerAddFailed", { error: result.error })));
|
|
3872
3872
|
}
|
|
3873
3873
|
}
|
|
3874
3874
|
async function handleEditProvider(providers) {
|
|
@@ -3883,12 +3883,12 @@ async function handleEditProvider(providers) {
|
|
|
3883
3883
|
choices: addNumbersToChoices(choices)
|
|
3884
3884
|
}]);
|
|
3885
3885
|
if (!selectedProviderId) {
|
|
3886
|
-
console.log(
|
|
3886
|
+
console.log(ansis__default.yellow(i18n.t("common:cancelled")));
|
|
3887
3887
|
return;
|
|
3888
3888
|
}
|
|
3889
3889
|
const provider = providers.find((p) => p.id === selectedProviderId);
|
|
3890
3890
|
if (!provider) {
|
|
3891
|
-
console.log(
|
|
3891
|
+
console.log(ansis__default.red(i18n.t("codex:providerNotFound")));
|
|
3892
3892
|
return;
|
|
3893
3893
|
}
|
|
3894
3894
|
const existingAuth = readJsonConfig(CODEX_AUTH_FILE, { defaultValue: {} }) || {};
|
|
@@ -3952,12 +3952,12 @@ async function handleEditProvider(providers) {
|
|
|
3952
3952
|
};
|
|
3953
3953
|
const result = await editExistingProvider(selectedProviderId, updates);
|
|
3954
3954
|
if (result.success) {
|
|
3955
|
-
console.log(
|
|
3955
|
+
console.log(ansis__default.green(i18n.t("codex:providerUpdated", { name: result.updatedProvider?.name })));
|
|
3956
3956
|
if (result.backupPath) {
|
|
3957
|
-
console.log(
|
|
3957
|
+
console.log(ansis__default.gray(i18n.t("common:backupCreated", { path: result.backupPath })));
|
|
3958
3958
|
}
|
|
3959
3959
|
} else {
|
|
3960
|
-
console.log(
|
|
3960
|
+
console.log(ansis__default.red(i18n.t("codex:providerUpdateFailed", { error: result.error })));
|
|
3961
3961
|
}
|
|
3962
3962
|
}
|
|
3963
3963
|
async function handleCopyProvider(providers) {
|
|
@@ -3972,15 +3972,15 @@ async function handleCopyProvider(providers) {
|
|
|
3972
3972
|
choices: addNumbersToChoices(choices)
|
|
3973
3973
|
}]);
|
|
3974
3974
|
if (!selectedProviderId) {
|
|
3975
|
-
console.log(
|
|
3975
|
+
console.log(ansis__default.yellow(i18n.t("common:cancelled")));
|
|
3976
3976
|
return;
|
|
3977
3977
|
}
|
|
3978
3978
|
const provider = providers.find((p) => p.id === selectedProviderId);
|
|
3979
3979
|
if (!provider) {
|
|
3980
|
-
console.log(
|
|
3980
|
+
console.log(ansis__default.red(i18n.t("codex:providerNotFound")));
|
|
3981
3981
|
return;
|
|
3982
3982
|
}
|
|
3983
|
-
console.log(
|
|
3983
|
+
console.log(ansis__default.green(`
|
|
3984
3984
|
${i18n.t("codex:copyingProvider", { name: provider.name })}`));
|
|
3985
3985
|
const existingAuth = readJsonConfig(CODEX_AUTH_FILE, { defaultValue: {} }) || {};
|
|
3986
3986
|
const existingApiKey = existingAuth[provider.tempEnvKey] || "";
|
|
@@ -4047,9 +4047,9 @@ ${i18n.t("codex:copyingProvider", { name: provider.name })}`));
|
|
|
4047
4047
|
};
|
|
4048
4048
|
const result = await addProviderToExisting(copiedProvider, answers.apiKey.trim(), false);
|
|
4049
4049
|
if (result.success) {
|
|
4050
|
-
console.log(
|
|
4050
|
+
console.log(ansis__default.green(i18n.t("codex:providerCopied", { name: result.addedProvider?.name })));
|
|
4051
4051
|
if (result.backupPath) {
|
|
4052
|
-
console.log(
|
|
4052
|
+
console.log(ansis__default.gray(i18n.t("common:backupCreated", { path: result.backupPath })));
|
|
4053
4053
|
}
|
|
4054
4054
|
const setAsDefault = await promptBoolean({
|
|
4055
4055
|
message: i18n.t("multi-config:setAsDefaultPrompt"),
|
|
@@ -4059,11 +4059,11 @@ ${i18n.t("codex:copyingProvider", { name: provider.name })}`));
|
|
|
4059
4059
|
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.Q; });
|
|
4060
4060
|
const switched = await switchToProvider(copiedProvider.id);
|
|
4061
4061
|
if (switched) {
|
|
4062
|
-
console.log(
|
|
4062
|
+
console.log(ansis__default.green(i18n.t("multi-config:profileSetAsDefault", { name: copiedProvider.name })));
|
|
4063
4063
|
}
|
|
4064
4064
|
}
|
|
4065
4065
|
} else {
|
|
4066
|
-
console.log(
|
|
4066
|
+
console.log(ansis__default.red(i18n.t("codex:providerCopyFailed", { error: result.error })));
|
|
4067
4067
|
}
|
|
4068
4068
|
}
|
|
4069
4069
|
async function handleDeleteProvider(providers) {
|
|
@@ -4088,7 +4088,7 @@ async function handleDeleteProvider(providers) {
|
|
|
4088
4088
|
}
|
|
4089
4089
|
});
|
|
4090
4090
|
if (!selectedProviderIds || selectedProviderIds.length === 0) {
|
|
4091
|
-
console.log(
|
|
4091
|
+
console.log(ansis__default.yellow(i18n.t("common:cancelled")));
|
|
4092
4092
|
return;
|
|
4093
4093
|
}
|
|
4094
4094
|
const selectedNames = selectedProviderIds.map(
|
|
@@ -4099,20 +4099,20 @@ async function handleDeleteProvider(providers) {
|
|
|
4099
4099
|
defaultValue: false
|
|
4100
4100
|
});
|
|
4101
4101
|
if (!confirmDelete) {
|
|
4102
|
-
console.log(
|
|
4102
|
+
console.log(ansis__default.yellow(i18n.t("common:cancelled")));
|
|
4103
4103
|
return;
|
|
4104
4104
|
}
|
|
4105
4105
|
const result = await deleteProviders(selectedProviderIds);
|
|
4106
4106
|
if (result.success) {
|
|
4107
|
-
console.log(
|
|
4107
|
+
console.log(ansis__default.green(i18n.t("codex:providersDeleted", { count: selectedProviderIds.length })));
|
|
4108
4108
|
if (result.newDefaultProvider) {
|
|
4109
|
-
console.log(
|
|
4109
|
+
console.log(ansis__default.green(i18n.t("codex:newDefaultProvider", { provider: result.newDefaultProvider })));
|
|
4110
4110
|
}
|
|
4111
4111
|
if (result.backupPath) {
|
|
4112
|
-
console.log(
|
|
4112
|
+
console.log(ansis__default.gray(i18n.t("common:backupCreated", { path: result.backupPath })));
|
|
4113
4113
|
}
|
|
4114
4114
|
} else {
|
|
4115
|
-
console.log(
|
|
4115
|
+
console.log(ansis__default.red(i18n.t("codex:providersDeleteFailed", { error: result.error })));
|
|
4116
4116
|
}
|
|
4117
4117
|
}
|
|
4118
4118
|
const codexConfigSwitch = { configureIncrementalManagement };
|
|
@@ -5189,7 +5189,7 @@ async function runHealthCheck() {
|
|
|
5189
5189
|
};
|
|
5190
5190
|
}
|
|
5191
5191
|
function displayHealthReport(report) {
|
|
5192
|
-
console.log(
|
|
5192
|
+
console.log(ansis__default.green("\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 CCJK Environment Health \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n"));
|
|
5193
5193
|
for (const check of report.checks) {
|
|
5194
5194
|
switch (check.status) {
|
|
5195
5195
|
case "pass":
|
|
@@ -5207,12 +5207,12 @@ function displayHealthReport(report) {
|
|
|
5207
5207
|
}
|
|
5208
5208
|
}
|
|
5209
5209
|
console.log("");
|
|
5210
|
-
console.log(`Score: ${
|
|
5210
|
+
console.log(`Score: ${ansis__default.green(report.score.toString())}/100`);
|
|
5211
5211
|
console.log(renderProgressBar(report.score, 40));
|
|
5212
5212
|
if (report.recommendations.length > 0) {
|
|
5213
|
-
console.log(
|
|
5213
|
+
console.log(ansis__default.yellow("\nRecommendations:"));
|
|
5214
5214
|
for (const rec of report.recommendations) {
|
|
5215
|
-
console.log(
|
|
5215
|
+
console.log(ansis__default.yellow(` \u2022 ${rec}`));
|
|
5216
5216
|
}
|
|
5217
5217
|
}
|
|
5218
5218
|
console.log("");
|
|
@@ -5221,7 +5221,7 @@ async function runDoctor(fix = false) {
|
|
|
5221
5221
|
const report = await runHealthCheck();
|
|
5222
5222
|
displayHealthReport(report);
|
|
5223
5223
|
if (fix && report.recommendations.length > 0) {
|
|
5224
|
-
console.log(
|
|
5224
|
+
console.log(ansis__default.green("\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 Attempting Fixes \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n"));
|
|
5225
5225
|
for (const check of report.checks) {
|
|
5226
5226
|
if (check.fixable && check.fixCommand && (check.status === "fail" || check.status === "warn")) {
|
|
5227
5227
|
const spinner = ora(`Fixing ${check.name}...`).start();
|
|
@@ -5279,12 +5279,12 @@ class MenuBuilder {
|
|
|
5279
5279
|
const lines = [];
|
|
5280
5280
|
if (this.options.breadcrumb && this.options.breadcrumb.length > 0) {
|
|
5281
5281
|
const breadcrumb = this.options.breadcrumb.join(" > ");
|
|
5282
|
-
lines.push(
|
|
5282
|
+
lines.push(ansis__default.gray(` ${breadcrumb}`));
|
|
5283
5283
|
lines.push("");
|
|
5284
5284
|
}
|
|
5285
5285
|
lines.push(sectionDivider(this.options.title, 50));
|
|
5286
5286
|
if (this.options.subtitle) {
|
|
5287
|
-
lines.push(
|
|
5287
|
+
lines.push(ansis__default.gray(` ${this.options.subtitle}`));
|
|
5288
5288
|
}
|
|
5289
5289
|
lines.push("");
|
|
5290
5290
|
for (const section of this.sections) {
|
|
@@ -5295,28 +5295,28 @@ class MenuBuilder {
|
|
|
5295
5295
|
continue;
|
|
5296
5296
|
if (section.title) {
|
|
5297
5297
|
const icon = section.icon ? `${section.icon} ` : "";
|
|
5298
|
-
lines.push(
|
|
5298
|
+
lines.push(ansis__default.white.bold(` ${icon}${section.title}`));
|
|
5299
5299
|
}
|
|
5300
5300
|
for (const item of visibleItems) {
|
|
5301
|
-
const keyPart = item.disabled ?
|
|
5301
|
+
const keyPart = item.disabled ? ansis__default.gray(`[${item.key}]`) : item.highlight ? ansis__default.yellow.bold(`[${item.key}]`) : ansis__default.green.bold(`[${item.key}]`);
|
|
5302
5302
|
const iconPart = item.icon ? `${item.icon} ` : "";
|
|
5303
|
-
const labelPart = item.disabled ?
|
|
5304
|
-
const descPart = item.description ?
|
|
5303
|
+
const labelPart = item.disabled ? ansis__default.gray(item.label) : item.highlight ? ansis__default.yellow(item.label) : ansis__default.white(item.label);
|
|
5304
|
+
const descPart = item.description ? ansis__default.gray(` - ${item.description}`) : "";
|
|
5305
5305
|
lines.push(` ${keyPart} ${iconPart}${labelPart}${descPart}`);
|
|
5306
5306
|
}
|
|
5307
5307
|
lines.push("");
|
|
5308
5308
|
}
|
|
5309
5309
|
const systemItems = [];
|
|
5310
5310
|
if (this.options.showBack) {
|
|
5311
|
-
systemItems.push(`${
|
|
5311
|
+
systemItems.push(`${ansis__default.gray("[B]")} ${ansis__default.gray("Back")}`);
|
|
5312
5312
|
}
|
|
5313
5313
|
if (this.options.showExit) {
|
|
5314
|
-
systemItems.push(`${
|
|
5314
|
+
systemItems.push(`${ansis__default.gray("[Q]")} ${ansis__default.gray("Quit")}`);
|
|
5315
5315
|
}
|
|
5316
5316
|
if (systemItems.length > 0) {
|
|
5317
5317
|
lines.push(` ${systemItems.join(" ")}`);
|
|
5318
5318
|
}
|
|
5319
|
-
lines.push(
|
|
5319
|
+
lines.push(ansis__default.green("\u2550".repeat(50)));
|
|
5320
5320
|
return lines.join("\n");
|
|
5321
5321
|
}
|
|
5322
5322
|
/**
|