skydive-cli 0.1.0-beta.393 → 0.1.0-beta.396
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/js/bin.mjs
CHANGED
|
@@ -19,7 +19,7 @@ import semver from "semver";
|
|
|
19
19
|
|
|
20
20
|
//#region package.json
|
|
21
21
|
var name = "skydive-cli";
|
|
22
|
-
var version = "0.1.0-beta.
|
|
22
|
+
var version = "0.1.0-beta.396";
|
|
23
23
|
|
|
24
24
|
//#endregion
|
|
25
25
|
//#region src/types.ts
|
|
@@ -1423,7 +1423,7 @@ const chatCommand = {
|
|
|
1423
1423
|
printError(`Unknown theme "${themeId}". Valid themes: ${themes.map((t) => t.id).join(", ")}`);
|
|
1424
1424
|
process.exit(1);
|
|
1425
1425
|
}
|
|
1426
|
-
const { runChat } = await import("./boot-
|
|
1426
|
+
const { runChat } = await import("./boot-BhSVccnq.mjs");
|
|
1427
1427
|
await runChat({
|
|
1428
1428
|
appUrl,
|
|
1429
1429
|
sessionToken: session.value.sessionToken,
|
|
@@ -1735,7 +1735,7 @@ const switchCommand = {
|
|
|
1735
1735
|
printError("The workspace picker needs the Bun runtime and it could not be set up automatically. Pass a workspace slug instead, or install Bun and retry.");
|
|
1736
1736
|
process.exit(1);
|
|
1737
1737
|
}
|
|
1738
|
-
const { runWorkspacePicker } = await import("./boot-
|
|
1738
|
+
const { runWorkspacePicker } = await import("./boot-BhSVccnq.mjs");
|
|
1739
1739
|
await runWorkspacePicker(session);
|
|
1740
1740
|
return;
|
|
1741
1741
|
}
|
|
@@ -1461,6 +1461,25 @@ function Indented({ children }) {
|
|
|
1461
1461
|
//#endregion
|
|
1462
1462
|
//#region src/chat/tui/list-line.ts
|
|
1463
1463
|
/**
|
|
1464
|
+
* Flatten `text` to a single terminal line: newlines, carriage returns, tabs
|
|
1465
|
+
* and other C0/C1 control characters each become one space. A picker row is
|
|
1466
|
+
* budgeted as exactly one line (see the header comment), so a title carrying a
|
|
1467
|
+
* literal newline would otherwise render as two lines, push the rows box past
|
|
1468
|
+
* the height flexbox gave it, and collapse the rows above onto each other.
|
|
1469
|
+
*
|
|
1470
|
+
* The replacement is 1:1 (one code point in, one out) so fuzzy-match highlight
|
|
1471
|
+
* indexes computed against the raw string still line up with the displayed
|
|
1472
|
+
* text — do the same substitution on the fuzzy key.
|
|
1473
|
+
*/
|
|
1474
|
+
function singleLine(text) {
|
|
1475
|
+
let out = "";
|
|
1476
|
+
for (const ch of text) {
|
|
1477
|
+
const code = ch.codePointAt(0) ?? 0;
|
|
1478
|
+
out += code <= 31 || code >= 127 && code <= 159 ? " " : ch;
|
|
1479
|
+
}
|
|
1480
|
+
return out;
|
|
1481
|
+
}
|
|
1482
|
+
/**
|
|
1464
1483
|
* Fit a row's title and trailing detail into `width` columns. The title
|
|
1465
1484
|
* identifies the row so it gets the space first; the detail takes what is
|
|
1466
1485
|
* left and is dropped when nothing is.
|
|
@@ -1718,7 +1737,7 @@ function ConversationList({ agent, conversations, complete, showAutomated, onTog
|
|
|
1718
1737
|
fg,
|
|
1719
1738
|
children: [marker, truncate("+ new conversation", rowWidth)]
|
|
1720
1739
|
}, "new");
|
|
1721
|
-
const { title, detail } = fitRowText(row.hit.item.title ?? "(untitled)", previewLine(row.hit.item), rowWidth);
|
|
1740
|
+
const { title, detail } = fitRowText(singleLine(row.hit.item.title ?? "(untitled)"), previewLine(row.hit.item), rowWidth);
|
|
1722
1741
|
return /* @__PURE__ */ jsxs("text", {
|
|
1723
1742
|
fg,
|
|
1724
1743
|
children: [
|
|
@@ -1738,7 +1757,7 @@ function ConversationList({ agent, conversations, complete, showAutomated, onTog
|
|
|
1738
1757
|
]
|
|
1739
1758
|
});
|
|
1740
1759
|
}
|
|
1741
|
-
const conversationKeys = [(c) => c.title ?? "", (c) => c.preview ?? ""];
|
|
1760
|
+
const conversationKeys = [(c) => singleLine(c.title ?? ""), (c) => c.preview ?? ""];
|
|
1742
1761
|
function previewLine(c) {
|
|
1743
1762
|
const when = relativeTime(c.updatedAt);
|
|
1744
1763
|
const prefix = c.preview ? c.preview.replace(/\s+/g, " ").trim() : "";
|