ccstatusline 1.0.8 → 1.0.10

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.
@@ -228,6 +228,10 @@ var renderSingleLine = (items, terminalWidth, widthDetectionAvailable) => {
228
228
  const sessionColor = chalk[item.color || "blue"] || chalk.blue;
229
229
  elements.push(sessionColor("Session: 2hr 15m"));
230
230
  break;
231
+ case "version":
232
+ const versionColor = chalk[item.color || "green"] || chalk.green;
233
+ elements.push(versionColor("Version: 1.0.72"));
234
+ break;
231
235
  case "terminal-width":
232
236
  const termColor = chalk[item.color || "dim"] || chalk.dim;
233
237
  const detectedWidth = canDetectTerminalWidth() ? terminalWidth : "??";
@@ -235,7 +239,15 @@ var renderSingleLine = (items, terminalWidth, widthDetectionAvailable) => {
235
239
  break;
236
240
  case "separator":
237
241
  const sepChar = item.character || "|";
238
- elements.push(chalk.dim(` ${sepChar} `));
242
+ let sepContent;
243
+ if (sepChar === ",") {
244
+ sepContent = chalk.dim(`${sepChar} `);
245
+ } else if (sepChar === " ") {
246
+ sepContent = chalk.dim(" ");
247
+ } else {
248
+ sepContent = chalk.dim(` ${sepChar} `);
249
+ }
250
+ elements.push(sepContent);
239
251
  break;
240
252
  case "flex-separator":
241
253
  elements.push("FLEX");
@@ -405,7 +417,7 @@ var MainMenu = ({ onSelect, isClaudeInstalled, hasChanges }) => {
405
417
  var ItemsEditor = ({ items, onUpdate, onBack, lineNumber }) => {
406
418
  const [selectedIndex, setSelectedIndex] = useState(0);
407
419
  const [moveMode, setMoveMode] = useState(false);
408
- const separatorChars = ["|", "-", " "];
420
+ const separatorChars = ["|", "-", ",", " "];
409
421
  useInput((input, key) => {
410
422
  if (moveMode) {
411
423
  if (key.upArrow && selectedIndex > 0) {
@@ -448,6 +460,7 @@ var ItemsEditor = ({ items, onUpdate, onBack, lineNumber }) => {
448
460
  "context-percentage",
449
461
  "session-clock",
450
462
  "terminal-width",
463
+ "version",
451
464
  "flex-separator"
452
465
  ];
453
466
  const currentItem = items[selectedIndex];
@@ -476,6 +489,7 @@ var ItemsEditor = ({ items, onUpdate, onBack, lineNumber }) => {
476
489
  "context-percentage",
477
490
  "session-clock",
478
491
  "terminal-width",
492
+ "version",
479
493
  "flex-separator"
480
494
  ];
481
495
  const currentItem = items[selectedIndex];
@@ -564,6 +578,8 @@ var ItemsEditor = ({ items, onUpdate, onBack, lineNumber }) => {
564
578
  return chalk.blue("Session Clock");
565
579
  case "terminal-width":
566
580
  return chalk.dim("Terminal Width");
581
+ case "version":
582
+ return chalk.green("Version");
567
583
  }
568
584
  };
569
585
  const hasFlexSeparator = items.some((item) => item.type === "flex-separator");
@@ -629,7 +645,7 @@ var ItemsEditor = ({ items, onUpdate, onBack, lineNumber }) => {
629
645
  }, undefined, true, undefined, this);
630
646
  };
631
647
  var ColorMenu = ({ items, onUpdate, onBack }) => {
632
- const colorableItems = items.filter((item) => ["model", "git-branch", "tokens-input", "tokens-output", "tokens-cached", "tokens-total", "context-length", "context-percentage", "session-clock"].includes(item.type));
648
+ const colorableItems = items.filter((item) => ["model", "git-branch", "tokens-input", "tokens-output", "tokens-cached", "tokens-total", "context-length", "context-percentage", "session-clock", "version"].includes(item.type));
633
649
  const [selectedIndex, setSelectedIndex] = useState(0);
634
650
  useInput((input, key) => {
635
651
  if (key.escape) {
@@ -692,6 +708,8 @@ var ColorMenu = ({ items, onUpdate, onBack }) => {
692
708
  return "Context Percentage";
693
709
  case "session-clock":
694
710
  return "Session Clock";
711
+ case "version":
712
+ return "Version";
695
713
  default:
696
714
  return item.type;
697
715
  }
@@ -1252,12 +1270,25 @@ function renderSingleLine2(items, settings, data, tokenMetrics, sessionDuration)
1252
1270
  elements.push({ content: color(`Session: ${sessionDuration}`), type: "session-clock" });
1253
1271
  }
1254
1272
  break;
1273
+ case "version":
1274
+ const versionString = data.version || "Unknown";
1275
+ const versionColor = chalk2[item.color || "green"] || chalk2.green;
1276
+ elements.push({ content: versionColor(`Version: ${versionString}`), type: "version" });
1277
+ break;
1255
1278
  case "separator":
1256
1279
  const lastElement = elements[elements.length - 1];
1257
1280
  if (elements.length > 0 && lastElement && lastElement.type !== "separator") {
1258
1281
  const sepColor = chalk2[settings.colors.separator] || chalk2.dim;
1259
1282
  const sepChar = item.character || "|";
1260
- elements.push({ content: sepColor(` ${sepChar} `), type: "separator" });
1283
+ let sepContent;
1284
+ if (sepChar === ",") {
1285
+ sepContent = sepColor(`${sepChar} `);
1286
+ } else if (sepChar === " ") {
1287
+ sepContent = sepColor(" ");
1288
+ } else {
1289
+ sepContent = sepColor(` ${sepChar} `);
1290
+ }
1291
+ elements.push({ content: sepContent, type: "separator" });
1261
1292
  }
1262
1293
  break;
1263
1294
  case "flex-separator":
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccstatusline",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "A customizable status line formatter for Claude Code CLI",
5
5
  "module": "src/ccstatusline.ts",
6
6
  "type": "module",