ccjk 13.5.6 → 13.5.7

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.
@@ -3429,7 +3429,7 @@ const systemItems = [
3429
3429
  id: "codex-switch-tool",
3430
3430
  label: "menuOptions.switchCodeTool",
3431
3431
  description: "menuDescriptions.switchCodeTool",
3432
- category: "system",
3432
+ category: "quick",
3433
3433
  level: "basic",
3434
3434
  action: "command",
3435
3435
  icon: "\u{1F504}",
@@ -4000,6 +4000,9 @@ function createAllSections(level = "basic", codeTool = "claude-code") {
4000
4000
  }
4001
4001
  return sections;
4002
4002
  }
4003
+ function getVisibleItemCount(sections) {
4004
+ return sections.reduce((total, section) => total + (section.collapsed ? 0 : section.items.length), 0);
4005
+ }
4003
4006
  function filterSectionsByItemLimit(sections, maxItems) {
4004
4007
  const result = [];
4005
4008
  let count = 0;
@@ -4327,6 +4330,81 @@ function getMenuShellConfig(codeTool) {
4327
4330
  };
4328
4331
  }
4329
4332
  async function showProgressiveMenu(codeTool) {
4333
+ if (codeTool !== "codex") {
4334
+ const rawItems2 = getItemsForLevel(menuState.level, "claude-code");
4335
+ const items2 = attachHandlers(rawItems2, "claude-code");
4336
+ const sections2 = createAllSections(menuState.level, "claude-code");
4337
+ const maxItems2 = levelDefinitions[menuState.level].maxItems;
4338
+ const filteredSections2 = filterSectionsByItemLimit(sections2, maxItems2);
4339
+ const visibleItemCount2 = getVisibleItemCount(filteredSections2);
4340
+ const visibleItems2 = items2.slice(0, visibleItemCount2);
4341
+ const footerCommands = [
4342
+ {
4343
+ key: "s",
4344
+ label: i18n.t("menu:menuOptions.switchCodeTool")
4345
+ }
4346
+ ];
4347
+ const allowedCommands2 = ["0", "q", "m", "s"];
4348
+ const menuOutput2 = renderMenu(
4349
+ "menu:oneClick.title",
4350
+ visibleItems2,
4351
+ {
4352
+ showShortcuts: true,
4353
+ showDescriptions: true,
4354
+ useColor: true,
4355
+ terminalWidth: 80,
4356
+ showMoreCommand: true,
4357
+ extraFooterCommands: footerCommands
4358
+ }
4359
+ );
4360
+ console.log(menuOutput2);
4361
+ const choice2 = await promptMenuSelection(visibleItemCount2, visibleItems2, void 0, allowedCommands2);
4362
+ const input2 = parseMenuInput(choice2);
4363
+ if (isExitCommand(input2)) {
4364
+ console.log(a.green(i18n.t("common:goodbye")));
4365
+ return "exit";
4366
+ }
4367
+ if (isBackCommand(input2)) {
4368
+ const currentLang = i18n.language;
4369
+ await changeScriptLanguageFeature(currentLang);
4370
+ printSeparator();
4371
+ return "continue";
4372
+ }
4373
+ if (isMoreCommand(input2)) {
4374
+ await showMoreFeaturesMenu();
4375
+ printSeparator();
4376
+ return "continue";
4377
+ }
4378
+ if (input2.normalized === "s") {
4379
+ const switched = await handleCodeToolSwitch(codeTool);
4380
+ if (switched) {
4381
+ return "switch";
4382
+ }
4383
+ printSeparator();
4384
+ return "continue";
4385
+ }
4386
+ const selectedItem2 = findItemByInput(input2, filteredSections2);
4387
+ if (selectedItem2) {
4388
+ menuState.actionsPerformed.push(selectedItem2.id);
4389
+ menuState.usageCount++;
4390
+ const hydratedItem = visibleItems2.find((item) => item.id === selectedItem2.id) || items2.find((item) => item.id === selectedItem2.id);
4391
+ if (hydratedItem?.handler) {
4392
+ await hydratedItem.handler();
4393
+ } else {
4394
+ console.log(a.yellow(`No handler for ${selectedItem2.id}`));
4395
+ }
4396
+ }
4397
+ printSeparator();
4398
+ const shouldContinue2 = await promptBoolean({
4399
+ message: i18n.t("common:returnToMenu"),
4400
+ defaultValue: true
4401
+ });
4402
+ if (!shouldContinue2) {
4403
+ console.log(a.green(i18n.t("common:goodbye")));
4404
+ return "exit";
4405
+ }
4406
+ return "continue";
4407
+ }
4330
4408
  const rawItems = getItemsForLevel(menuState.level, codeTool);
4331
4409
  const items = attachHandlers(rawItems, codeTool);
4332
4410
  const itemMap = new Map(items.map((item) => [item.id, item]));
@@ -1,3 +1,3 @@
1
- const version = "13.5.6";
1
+ const version = "13.5.7";
2
2
 
3
3
  export { version };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ccjk",
3
3
  "type": "module",
4
- "version": "13.5.6",
4
+ "version": "13.5.7",
5
5
  "description": "Production-ready AI dev environment for Claude Code, Codex, and modern coding workflows with 30-second onboarding, persistent memory, Agent Teams, remote control, and capability discovery.",
6
6
  "author": {
7
7
  "name": "CCJK Team",