@quanta-intellect/vessel-browser 0.1.14 → 0.1.15
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 +1 -1
- package/out/main/index.js +1195 -505
- package/out/preload/index.js +32 -1
- package/out/renderer/assets/{index-CvRVBELV.js → index-DSaws_sH.js} +313 -307
- package/out/renderer/index.html +2 -1
- package/package.json +1 -1
|
@@ -703,10 +703,10 @@ function cleanChildren(parent, current, marker, replacement) {
|
|
|
703
703
|
} else parent.insertBefore(node, marker);
|
|
704
704
|
return [node];
|
|
705
705
|
}
|
|
706
|
-
var _tmpl$$
|
|
706
|
+
var _tmpl$$b = /* @__PURE__ */ template(`<div class=title-bar><div class=title-bar-drag></div><div class=window-controls><button class=window-btn data-tooltip=Minimize><svg width=10 height=10 viewBox="0 0 10 10"><rect x=1 y=5 width=8 height=1 fill=currentColor></rect></svg></button><button class=window-btn data-tooltip=Maximize><svg width=10 height=10 viewBox="0 0 10 10"><rect x=1 y=1 width=8 height=8 fill=none stroke=currentColor stroke-width=1></rect></svg></button><button class="window-btn window-btn-close"data-tooltip=Close><svg width=10 height=10 viewBox="0 0 10 10"><line x1=1 y1=1 x2=9 y2=9 stroke=currentColor stroke-width=1.2></line><line x1=9 y1=1 x2=1 y2=9 stroke=currentColor stroke-width=1.2>`);
|
|
707
707
|
const TitleBar = () => {
|
|
708
708
|
return (() => {
|
|
709
|
-
var _el$ = _tmpl$$
|
|
709
|
+
var _el$ = _tmpl$$b(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling, _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling, _el$6 = _el$5.nextSibling;
|
|
710
710
|
_el$4.$$click = () => window.vessel.window.minimize();
|
|
711
711
|
_el$5.$$click = () => window.vessel.window.maximize();
|
|
712
712
|
_el$6.$$click = () => window.vessel.window.close();
|
|
@@ -905,7 +905,7 @@ function getAgentPresence(state, currentTime = Date.now()) {
|
|
|
905
905
|
}
|
|
906
906
|
return "idle";
|
|
907
907
|
}
|
|
908
|
-
var _tmpl$$
|
|
908
|
+
var _tmpl$$a = /* @__PURE__ */ template(`<img class=tab-favicon alt>`), _tmpl$2$9 = /* @__PURE__ */ template(`<span class=tab-favicon-fallback>`), _tmpl$3$6 = /* @__PURE__ */ template(`<div class=tab-bar><div class=tab-list><button class=tab-new data-tooltip="New Tab">+`), _tmpl$4$5 = /* @__PURE__ */ template(`<div role=tab><span class=tab-title></span><button class=tab-close>×`), _tmpl$5$3 = /* @__PURE__ */ template(`<span class=tab-agent-indicator aria-hidden=true title="Agent active on this tab">`), _tmpl$6$3 = /* @__PURE__ */ template(`<span class=tab-loading>`);
|
|
909
909
|
function stringToHue(str) {
|
|
910
910
|
let hash = 0;
|
|
911
911
|
for (let i = 0; i < str.length; i++) {
|
|
@@ -931,14 +931,14 @@ const TabFavicon = (props) => {
|
|
|
931
931
|
},
|
|
932
932
|
get fallback() {
|
|
933
933
|
return (() => {
|
|
934
|
-
var _el$2 = _tmpl$2$
|
|
934
|
+
var _el$2 = _tmpl$2$9();
|
|
935
935
|
insert(_el$2, letter);
|
|
936
936
|
createRenderEffect((_$p) => setStyleProperty(_el$2, "--favicon-hue", `${hue()}`));
|
|
937
937
|
return _el$2;
|
|
938
938
|
})();
|
|
939
939
|
},
|
|
940
940
|
get children() {
|
|
941
|
-
var _el$ = _tmpl$$
|
|
941
|
+
var _el$ = _tmpl$$a();
|
|
942
942
|
_el$.addEventListener("error", () => setFailed(true));
|
|
943
943
|
createRenderEffect(() => setAttribute(_el$, "src", props.favicon));
|
|
944
944
|
return _el$;
|
|
@@ -961,13 +961,13 @@ const TabBar = () => {
|
|
|
961
961
|
onCleanup(() => clearInterval(ticker));
|
|
962
962
|
const modelActiveTabIds = createMemo(() => getAgentActiveTabIds(runtimeState2(), now()));
|
|
963
963
|
return (() => {
|
|
964
|
-
var _el$3 = _tmpl$3$
|
|
964
|
+
var _el$3 = _tmpl$3$6(), _el$4 = _el$3.firstChild, _el$5 = _el$4.firstChild;
|
|
965
965
|
insert(_el$4, createComponent(For, {
|
|
966
966
|
get each() {
|
|
967
967
|
return tabs2();
|
|
968
968
|
},
|
|
969
969
|
children: (tab) => (() => {
|
|
970
|
-
var _el$6 = _tmpl$4$
|
|
970
|
+
var _el$6 = _tmpl$4$5(), _el$7 = _el$6.firstChild, _el$8 = _el$7.nextSibling;
|
|
971
971
|
_el$6.addEventListener("auxclick", (e) => {
|
|
972
972
|
if (e.button === 1) closeTab(tab.id);
|
|
973
973
|
});
|
|
@@ -1094,7 +1094,7 @@ function useUI() {
|
|
|
1094
1094
|
}
|
|
1095
1095
|
};
|
|
1096
1096
|
}
|
|
1097
|
-
var _tmpl$$
|
|
1097
|
+
var _tmpl$$9 = /* @__PURE__ */ template(`<span class=nav-btn-badge>`), _tmpl$2$8 = /* @__PURE__ */ template(`<div class=address-bar><div class=nav-controls><button class=nav-btn data-tooltip=Back><svg width=14 height=14 viewBox="0 0 14 14"><path d="M9 2L4 7l5 5"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg></button><button class=nav-btn data-tooltip=Forward><svg width=14 height=14 viewBox="0 0 14 14"><path d="M5 2l5 5-5 5"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg></button><button class=nav-btn data-tooltip=Reload><svg width=14 height=14 viewBox="0 0 14 14"><path d="M2.5 7a4.5 4.5 0 1 1 1 3"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round></path><path d="M2 4v3.5h3.5"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg></button></div><div class=url-shell><form class=url-form><input class=url-input type=text placeholder="Search or enter URL"></form><div><span class=agent-status-dot aria-hidden=true></span><span class=agent-status-text></span></div></div><div class=toolbar-actions><button class=nav-btn data-tooltip="Reader Mode"><svg width=14 height=14 viewBox="0 0 14 14"><rect x=2 y=1 width=10 height=12 rx=1 fill=none stroke=currentColor stroke-width=1.2></rect><line x1=4 y1=4 x2=10 y2=4 stroke=currentColor stroke-width=1></line><line x1=4 y1=6.5 x2=10 y2=6.5 stroke=currentColor stroke-width=1></line><line x1=4 y1=9 x2=8 y2=9 stroke=currentColor stroke-width=1></line></svg></button><button class=nav-btn data-tooltip="Dev Tools"><svg width=14 height=14 viewBox="0 0 14 14"><polyline points="3,5 1,7 3,9"fill=none stroke=currentColor stroke-width=1.2 stroke-linecap=round stroke-linejoin=round></polyline><polyline points="11,5 13,7 11,9"fill=none stroke=currentColor stroke-width=1.2 stroke-linecap=round stroke-linejoin=round></polyline><line x1=8.5 y1=2 x2=5.5 y2=12 stroke=currentColor stroke-width=1.2 stroke-linecap=round></line></svg></button><button class="nav-btn nav-btn-sidebar"><svg width=14 height=14 viewBox="0 0 14 14"><rect x=1 y=1 width=12 height=12 rx=1.5 fill=none stroke=currentColor stroke-width=1.2></rect><line x1=9 y1=1 x2=9 y2=13 stroke=currentColor stroke-width=1.2></line></svg></button><button class=nav-btn data-tooltip=Settings><svg width=14 height=14 viewBox="0 0 14 14"><circle cx=7 cy=7 r=2 fill=none stroke=currentColor stroke-width=1.2></circle><path d="M7 1v2M7 11v2M1 7h2M11 7h2M2.8 2.8l1.4 1.4M9.8 9.8l1.4 1.4M11.2 2.8l-1.4 1.4M4.2 9.8l-1.4 1.4"stroke=currentColor stroke-width=1 stroke-linecap=round>`);
|
|
1098
1098
|
const AddressBar = () => {
|
|
1099
1099
|
const {
|
|
1100
1100
|
activeTab,
|
|
@@ -1135,7 +1135,7 @@ const AddressBar = () => {
|
|
|
1135
1135
|
}
|
|
1136
1136
|
};
|
|
1137
1137
|
return (() => {
|
|
1138
|
-
var _el$ = _tmpl$2$
|
|
1138
|
+
var _el$ = _tmpl$2$8(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling, _el$5 = _el$4.nextSibling, _el$6 = _el$2.nextSibling, _el$7 = _el$6.firstChild, _el$8 = _el$7.firstChild, _el$9 = _el$7.nextSibling, _el$0 = _el$9.firstChild, _el$1 = _el$0.nextSibling, _el$10 = _el$6.nextSibling, _el$11 = _el$10.firstChild, _el$12 = _el$11.nextSibling, _el$13 = _el$12.nextSibling;
|
|
1139
1139
|
_el$13.firstChild;
|
|
1140
1140
|
var _el$16 = _el$13.nextSibling;
|
|
1141
1141
|
addEventListener(_el$3, "click", goBack);
|
|
@@ -1156,7 +1156,7 @@ const AddressBar = () => {
|
|
|
1156
1156
|
return pendingApprovalCount() > 0;
|
|
1157
1157
|
},
|
|
1158
1158
|
get children() {
|
|
1159
|
-
var _el$15 = _tmpl$$
|
|
1159
|
+
var _el$15 = _tmpl$$9();
|
|
1160
1160
|
insert(_el$15, pendingApprovalCount);
|
|
1161
1161
|
createRenderEffect(() => setAttribute(_el$15, "aria-label", `${pendingApprovalCount()} pending`));
|
|
1162
1162
|
return _el$15;
|
|
@@ -1189,7 +1189,7 @@ const AddressBar = () => {
|
|
|
1189
1189
|
})();
|
|
1190
1190
|
};
|
|
1191
1191
|
delegateEvents(["click", "input"]);
|
|
1192
|
-
var _tmpl$$
|
|
1192
|
+
var _tmpl$$8 = /* @__PURE__ */ template(`<div class=bookmark-toast-stack aria-live=polite aria-atomic=true>`), _tmpl$2$7 = /* @__PURE__ */ template(`<div class=bookmark-toast role=status><div class=bookmark-toast-title></div><div class=bookmark-toast-message>`);
|
|
1193
1193
|
const TOAST_DURATION_MS$1 = 4200;
|
|
1194
1194
|
const TOAST_EXIT_MS$1 = 300;
|
|
1195
1195
|
function isBookmarkToastCandidate(action) {
|
|
@@ -1249,13 +1249,13 @@ const BookmarkNotifications = () => {
|
|
|
1249
1249
|
timeoutIds.clear();
|
|
1250
1250
|
});
|
|
1251
1251
|
return (() => {
|
|
1252
|
-
var _el$ = _tmpl$$
|
|
1252
|
+
var _el$ = _tmpl$$8();
|
|
1253
1253
|
insert(_el$, createComponent(For, {
|
|
1254
1254
|
get each() {
|
|
1255
1255
|
return toasts();
|
|
1256
1256
|
},
|
|
1257
1257
|
children: (toast) => (() => {
|
|
1258
|
-
var _el$2 = _tmpl$2$
|
|
1258
|
+
var _el$2 = _tmpl$2$7(), _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling;
|
|
1259
1259
|
insert(_el$3, () => toast.title);
|
|
1260
1260
|
insert(_el$4, () => toast.message);
|
|
1261
1261
|
createRenderEffect(() => _el$2.classList.toggle("bookmark-toast-leaving", !!toast.leaving));
|
|
@@ -1265,7 +1265,7 @@ const BookmarkNotifications = () => {
|
|
|
1265
1265
|
return _el$;
|
|
1266
1266
|
})();
|
|
1267
1267
|
};
|
|
1268
|
-
var _tmpl$$
|
|
1268
|
+
var _tmpl$$7 = /* @__PURE__ */ template(`<div class=bookmark-toast-stack aria-live=polite><div class="bookmark-toast highlight-toast"role=status><div class=bookmark-toast-title></div><div class=bookmark-toast-message>`);
|
|
1269
1269
|
const TOAST_DURATION_MS = 3e3;
|
|
1270
1270
|
const TOAST_EXIT_MS = 300;
|
|
1271
1271
|
const HighlightNotifications = (props) => {
|
|
@@ -1304,7 +1304,7 @@ const HighlightNotifications = (props) => {
|
|
|
1304
1304
|
return memo(() => !!visible())() && current();
|
|
1305
1305
|
},
|
|
1306
1306
|
get children() {
|
|
1307
|
-
var _el$ = _tmpl$$
|
|
1307
|
+
var _el$ = _tmpl$$7(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling;
|
|
1308
1308
|
insert(_el$3, () => current().title);
|
|
1309
1309
|
insert(_el$4, () => current().message);
|
|
1310
1310
|
createRenderEffect(() => _el$2.classList.toggle("bookmark-toast-leaving", !!leaving()));
|
|
@@ -1330,7 +1330,7 @@ function useScrollFade(el) {
|
|
|
1330
1330
|
observer.disconnect();
|
|
1331
1331
|
});
|
|
1332
1332
|
}
|
|
1333
|
-
var _tmpl$$
|
|
1333
|
+
var _tmpl$$6 = /* @__PURE__ */ template(`<span class=agent-transcript-live><span class=agent-transcript-live-dot aria-hidden=true></span>Live`), _tmpl$2$6 = /* @__PURE__ */ template(`<div class=agent-transcript-list>`), _tmpl$3$5 = /* @__PURE__ */ template(`<aside class=agent-transcript-dock><div class=agent-transcript-header><div class=agent-transcript-title-row><span class=agent-transcript-title>Agent Transcript</span></div><div class=agent-transcript-actions><button class=agent-transcript-icon></button><button class=agent-transcript-icon data-tooltip=Hide>×`), _tmpl$4$4 = /* @__PURE__ */ template(`<article><div class=agent-transcript-meta><span class=agent-transcript-badge></span><span class=agent-transcript-time></span></div><div class=agent-transcript-text>`);
|
|
1334
1334
|
const AgentTranscriptDock = () => {
|
|
1335
1335
|
const {
|
|
1336
1336
|
runtimeState: runtimeState2
|
|
@@ -1365,7 +1365,7 @@ const AgentTranscriptDock = () => {
|
|
|
1365
1365
|
return memo(() => mode() === "full")() && visibleEntries().length > 0;
|
|
1366
1366
|
},
|
|
1367
1367
|
get children() {
|
|
1368
|
-
var _el$ = _tmpl$3$
|
|
1368
|
+
var _el$ = _tmpl$3$5(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
|
|
1369
1369
|
_el$3.firstChild;
|
|
1370
1370
|
var _el$6 = _el$3.nextSibling, _el$7 = _el$6.firstChild, _el$8 = _el$7.nextSibling;
|
|
1371
1371
|
insert(_el$3, createComponent(Show, {
|
|
@@ -1373,7 +1373,7 @@ const AgentTranscriptDock = () => {
|
|
|
1373
1373
|
return hasStreamingEntry();
|
|
1374
1374
|
},
|
|
1375
1375
|
get children() {
|
|
1376
|
-
return _tmpl$$
|
|
1376
|
+
return _tmpl$$6();
|
|
1377
1377
|
}
|
|
1378
1378
|
}), null);
|
|
1379
1379
|
_el$7.$$click = () => setCollapsed((value) => !value);
|
|
@@ -1384,14 +1384,14 @@ const AgentTranscriptDock = () => {
|
|
|
1384
1384
|
return !collapsed();
|
|
1385
1385
|
},
|
|
1386
1386
|
get children() {
|
|
1387
|
-
var _el$9 = _tmpl$2$
|
|
1387
|
+
var _el$9 = _tmpl$2$6();
|
|
1388
1388
|
use((el) => useScrollFade(el), _el$9);
|
|
1389
1389
|
insert(_el$9, createComponent(For, {
|
|
1390
1390
|
get each() {
|
|
1391
1391
|
return visibleEntries();
|
|
1392
1392
|
},
|
|
1393
1393
|
children: (entry) => (() => {
|
|
1394
|
-
var _el$0 = _tmpl$4$
|
|
1394
|
+
var _el$0 = _tmpl$4$4(), _el$1 = _el$0.firstChild, _el$10 = _el$1.firstChild, _el$11 = _el$10.nextSibling, _el$12 = _el$1.nextSibling;
|
|
1395
1395
|
insert(_el$10, () => entry.title || entry.kind);
|
|
1396
1396
|
insert(_el$11, () => formatTime2(entry.updatedAt));
|
|
1397
1397
|
insert(_el$12, () => entry.text);
|
|
@@ -1425,6 +1425,7 @@ const AgentTranscriptDock = () => {
|
|
|
1425
1425
|
};
|
|
1426
1426
|
delegateEvents(["click"]);
|
|
1427
1427
|
const MAX_RECENT_QUERIES = 5;
|
|
1428
|
+
const MAX_MESSAGE_HISTORY = 200;
|
|
1428
1429
|
const [messages, setMessages] = createSignal([]);
|
|
1429
1430
|
const [streamingText, setStreamingText] = createSignal("");
|
|
1430
1431
|
const [isStreaming, setIsStreaming] = createSignal(false);
|
|
@@ -1436,7 +1437,10 @@ function init$1() {
|
|
|
1436
1437
|
if (initialized$1) return;
|
|
1437
1438
|
initialized$1 = true;
|
|
1438
1439
|
window.vessel.ai.onStreamStart((prompt) => {
|
|
1439
|
-
setMessages((prev) =>
|
|
1440
|
+
setMessages((prev) => {
|
|
1441
|
+
const next = [...prev, { role: "user", content: prompt }];
|
|
1442
|
+
return next.length > MAX_MESSAGE_HISTORY ? next.slice(-MAX_MESSAGE_HISTORY) : next;
|
|
1443
|
+
});
|
|
1440
1444
|
setStreamingText("");
|
|
1441
1445
|
setIsStreaming(true);
|
|
1442
1446
|
setHasFirstChunk(false);
|
|
@@ -1451,10 +1455,10 @@ function init$1() {
|
|
|
1451
1455
|
window.vessel.ai.onStreamEnd(() => {
|
|
1452
1456
|
const finalText = streamingText();
|
|
1453
1457
|
if (finalText) {
|
|
1454
|
-
setMessages((prev) =>
|
|
1455
|
-
...prev,
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
+
setMessages((prev) => {
|
|
1459
|
+
const next = [...prev, { role: "assistant", content: finalText }];
|
|
1460
|
+
return next.length > MAX_MESSAGE_HISTORY ? next.slice(-MAX_MESSAGE_HISTORY) : next;
|
|
1461
|
+
});
|
|
1458
1462
|
}
|
|
1459
1463
|
setStreamingText("");
|
|
1460
1464
|
setIsStreaming(false);
|
|
@@ -1482,7 +1486,7 @@ function useAI() {
|
|
|
1482
1486
|
clearHistory: () => setMessages([])
|
|
1483
1487
|
};
|
|
1484
1488
|
}
|
|
1485
|
-
var _tmpl$$
|
|
1489
|
+
var _tmpl$$5 = /* @__PURE__ */ template(`<div class=command-bar-recent><span class=command-bar-recent-label>Recent</span><div class=command-bar-recent-list>`), _tmpl$2$5 = /* @__PURE__ */ template(`<div class=command-bar-overlay><div class=command-bar><form><div class=command-bar-icon><svg width=16 height=16 viewBox="0 0 16 16"><circle cx=8 cy=8 r=6 fill=none stroke=var(--accent-primary) stroke-width=1.5></circle><circle cx=6 cy=7 r=0.8 fill=var(--accent-primary)></circle><circle cx=10 cy=7 r=0.8 fill=var(--accent-primary)></circle><path d="M6 10c0.5 0.8 3.5 0.8 4 0"fill=none stroke=var(--accent-primary) stroke-width=0.8 stroke-linecap=round></path></svg></div><input class=command-bar-input type=text placeholder="Ask about this page, summarize, or search..."></form><div class=command-bar-hints><span><kbd>Enter</kbd> to ask</span><span><kbd>Esc</kbd> to close</span><span>Try "summarize" or ask a question`), _tmpl$3$4 = /* @__PURE__ */ template(`<button class=command-bar-recent-item type=button>`);
|
|
1486
1490
|
const CommandBar = () => {
|
|
1487
1491
|
const {
|
|
1488
1492
|
commandBarOpen: commandBarOpen2,
|
|
@@ -1527,7 +1531,7 @@ const CommandBar = () => {
|
|
|
1527
1531
|
return commandBarOpen2();
|
|
1528
1532
|
},
|
|
1529
1533
|
get children() {
|
|
1530
|
-
var _el$ = _tmpl$2$
|
|
1534
|
+
var _el$ = _tmpl$2$5(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling, _el$9 = _el$3.nextSibling;
|
|
1531
1535
|
addEventListener(_el$, "click", closeCommandBar);
|
|
1532
1536
|
_el$2.$$click = (e) => e.stopPropagation();
|
|
1533
1537
|
_el$3.addEventListener("submit", handleSubmit);
|
|
@@ -1540,13 +1544,13 @@ const CommandBar = () => {
|
|
|
1540
1544
|
return memo(() => recentQueries2().length > 0)() && !input().trim();
|
|
1541
1545
|
},
|
|
1542
1546
|
get children() {
|
|
1543
|
-
var _el$6 = _tmpl$$
|
|
1547
|
+
var _el$6 = _tmpl$$5(), _el$7 = _el$6.firstChild, _el$8 = _el$7.nextSibling;
|
|
1544
1548
|
insert(_el$8, createComponent(For, {
|
|
1545
1549
|
get each() {
|
|
1546
1550
|
return recentQueries2();
|
|
1547
1551
|
},
|
|
1548
1552
|
children: (q) => (() => {
|
|
1549
|
-
var _el$0 = _tmpl$3$
|
|
1553
|
+
var _el$0 = _tmpl$3$4();
|
|
1550
1554
|
_el$0.$$click = () => void handleRecentClick(q);
|
|
1551
1555
|
insert(_el$0, q);
|
|
1552
1556
|
return _el$0;
|
|
@@ -3066,21 +3070,7 @@ function getBookmarkSearchMatch(args) {
|
|
|
3066
3070
|
}
|
|
3067
3071
|
return { matchedFields, score };
|
|
3068
3072
|
}
|
|
3069
|
-
|
|
3070
|
-
var _tmpl$$3 = /* @__PURE__ */ template(`<div class="message-content markdown-content">`), _tmpl$2$3 = /* @__PURE__ */ template(`<div class=dropdown-select-menu role=listbox>`), _tmpl$3$2 = /* @__PURE__ */ template(`<div><button class=dropdown-select-trigger type=button aria-haspopup=listbox><span class=dropdown-select-value></span><span class=dropdown-select-caret aria-hidden=true>▾`), _tmpl$4$2 = /* @__PURE__ */ template(`<span class=dropdown-select-option-description>`), _tmpl$5$2 = /* @__PURE__ */ template(`<button class=dropdown-select-option type=button role=option><span class=dropdown-select-option-copy><span class=dropdown-select-option-label>`), _tmpl$6$2 = /* @__PURE__ */ template(`<span class=sidebar-tab-badge>`), _tmpl$7$2 = /* @__PURE__ */ template(`<div class=agent-section-title>Pending approvals`), _tmpl$8$2 = /* @__PURE__ */ template(`<button class=agent-section-toggle type=button>`), _tmpl$9$2 = /* @__PURE__ */ template(`<section class=agent-panel><div class=agent-panel-header><div><div class=agent-panel-title>Supervisor</div><div class=agent-panel-subtitle></div></div><span class=agent-status-pill></span></div><div class=agent-panel-controls><button class=agent-control-button type=button></button><button class=agent-control-button type=button>Restore session</button></div><div class=agent-muted></div><div class=agent-section-header><div class=agent-section-title>Recent actions`), _tmpl$0$2 = /* @__PURE__ */ template(`<span class=bookmark-status-pill>Saved`), _tmpl$1$2 = /* @__PURE__ */ template(`<div class=bookmark-save-card><div class=bookmark-current-title></div><div class=bookmark-current-url></div><div class=bookmark-save-controls><button class=bookmark-primary-button type=button>Save page</button></div><textarea class=bookmark-note-input placeholder="Optional note about why this matters"rows=2>`), _tmpl$10$2 = /* @__PURE__ */ template(`<section class=bookmark-panel><div class=bookmark-panel-header><div><div class=bookmark-panel-title>Bookmarks</div><div class=bookmark-panel-subtitle></div></div></div><input class="bookmark-input bookmark-search-input"placeholder="Search titles, URLs, notes, and folders"><div class=bookmark-save-shell><button class=bookmark-save-toggle type=button><span class=bookmark-save-toggle-copy><span class=bookmark-save-toggle-title>Save Current Page</span><span class=bookmark-save-toggle-subtitle>Manual bookmark save options</span></span><span class=bookmark-save-toggle-caret aria-hidden=true>▾</span></button></div><form class=bookmark-folder-create><div class=bookmark-folder-form-fields><input class=bookmark-input placeholder="Create a folder"><input class=bookmark-input placeholder="Optional one-line summary"></div><button class=bookmark-secondary-button type=submit>New folder</button></form><div class=bookmark-folder-list>`), _tmpl$11$2 = /* @__PURE__ */ template(`<div class=checkpoint-timeline>`), _tmpl$12$2 = /* @__PURE__ */ template(`<section class="agent-panel checkpoint-panel"><div class=agent-panel-header><div><div class=agent-panel-title>Checkpoints</div><div class=agent-panel-subtitle></div></div></div><div class=agent-panel-body><div class=agent-checkpoint-row><input class=agent-input placeholder="Checkpoint name"><button class=agent-primary-button type=button>Save checkpoint</button></div><div class=agent-section-title>Recent checkpoints`), _tmpl$13$1 = /* @__PURE__ */ template(`<span>`), _tmpl$14$1 = /* @__PURE__ */ template(`<div><div class=streaming-status><span class=streaming-pulse aria-hidden=true></span><span>Generating`), _tmpl$15 = /* @__PURE__ */ template(`<div class="message message-assistant"><div class=message-content>`), _tmpl$16 = /* @__PURE__ */ template(`<div class=sidebar-empty><svg class=sidebar-empty-icon width=48 height=48 viewBox="0 0 48 48"aria-hidden=true><line x1=8 y1=8 x2=24 y2=5 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=24 y1=5 x2=40 y2=10 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=8 y1=8 x2=6 y2=24 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=40 y1=10 x2=44 y2=26 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=6 y1=24 x2=10 y2=38 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=44 y1=26 x2=38 y2=40 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=10 y1=38 x2=24 y2=44 stroke=var(--border-visible) stroke-width=1 opacity=0.35></line><line x1=38 y1=40 x2=24 y2=44 stroke=var(--border-visible) stroke-width=1 opacity=0.35></line><line x1=8 y1=8 x2=20 y2=18 stroke=var(--border-visible) stroke-width=1 opacity=0.5></line><line x1=24 y1=5 x2=20 y2=18 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=40 y1=10 x2=32 y2=20 stroke=var(--border-visible) stroke-width=1 opacity=0.5></line><line x1=20 y1=18 x2=32 y2=20 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.3></line><line x1=6 y1=24 x2=18 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=20 y1=18 x2=18 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=32 y1=20 x2=36 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=44 y1=26 x2=36 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=18 y1=30 x2=36 y2=30 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.25></line><line x1=18 y1=30 x2=10 y2=38 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=36 y1=30 x2=38 y2=40 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=18 y1=30 x2=24 y2=44 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.2></line><line x1=36 y1=30 x2=24 y2=44 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.2></line><circle cx=8 cy=8 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.55></circle><circle cx=24 cy=5 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.45></circle><circle cx=40 cy=10 r=3 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.7></circle><circle cx=6 cy=24 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=44 cy=26 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.55></circle><circle cx=10 cy=38 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=38 cy=40 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.45></circle><circle cx=24 cy=44 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=20 cy=18 r=3.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.85></circle><circle cx=32 cy=20 r=4 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.9></circle><circle cx=18 cy=30 r=3 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.75></circle><circle cx=36 cy=30 r=3.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.8></circle></svg><p class=sidebar-empty-title>Your move.</p><p class=sidebar-empty-hint>Configure a provider in Settings (Ctrl+,) then ask anything about the current page or beyond.`), _tmpl$17 = /* @__PURE__ */ template(`<button class=chat-action-btn title="Stop generating"><svg width=14 height=14 viewBox="0 0 14 14"fill=none aria-hidden=true><rect x=2 y=2 width=10 height=10 rx=1.5 fill=currentColor></rect></svg>Stop`), _tmpl$18 = /* @__PURE__ */ template(`<button class=chat-action-btn title="Retry last prompt"><svg width=14 height=14 viewBox="0 0 14 14"fill=none aria-hidden=true><path d="M11.5 7a4.5 4.5 0 1 1-1.3-3.2"stroke=currentColor stroke-width=1.5 stroke-linecap=round></path><path d="M10.5 1v3h-3"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg>Retry`), _tmpl$19 = /* @__PURE__ */ template(`<div class=chat-actions>`), _tmpl$20 = /* @__PURE__ */ template(`<div class=highlight-nav><button class=highlight-nav-btn type=button title="Previous highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><path d="M8 10L4 6l4-4"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg></button><button class=highlight-nav-label type=button title="Go to current highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><circle cx=6 cy=6 r=3 fill="rgba(196, 160, 90, 0.6)"stroke="rgba(196, 160, 90, 0.9)"stroke-width=1></circle></svg></button><button class=highlight-nav-btn type=button title="Next highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><path d="M4 2l4 4-4 4"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round>`), _tmpl$21 = /* @__PURE__ */ template(`<div class=sidebar-input-area><textarea class=sidebar-input rows=2 placeholder="Ask anything..."></textarea><button class=sidebar-send>Send`), _tmpl$22 = /* @__PURE__ */ template(`<div class=sidebar><div class=sidebar-resize-handle></div><div class=sidebar-header><div class=sidebar-brand><img class=sidebar-logo alt=Vessel><span class=sidebar-brand-text>Vessel Browser</span></div><div class=sidebar-header-actions><button class=sidebar-clear title="Clear chat">Clear</button><button class=sidebar-close title="Close AI chat (Esc)"aria-label="Close AI chat"><svg width=14 height=14 viewBox="0 0 14 14"aria-hidden=true><path d="M3.5 3.5l7 7M10.5 3.5l-7 7"fill=none stroke=currentColor stroke-width=1.4 stroke-linecap=round></path></svg></button></div></div><div class=sidebar-tabs role=tablist><button class=sidebar-tab role=tab>Supervisor</button><button class=sidebar-tab role=tab>Bookmarks</button><button class=sidebar-tab role=tab>Checkpoints</button><button class=sidebar-tab role=tab>Chat</button></div><div class=sidebar-messages><div>`), _tmpl$23 = /* @__PURE__ */ template(`<div class=agent-muted>No pending approvals.`), _tmpl$24 = /* @__PURE__ */ template(`<div class="agent-card agent-card-approval"><div class=agent-card-approval-stripe aria-hidden=true></div><div class=agent-card-title></div><div class=agent-card-copy></div><div class=agent-card-copy></div><div class=agent-card-actions><button class=agent-primary-button type=button>Approve</button><button class=agent-control-button type=button>Reject`), _tmpl$25 = /* @__PURE__ */ template(`<div class=agent-muted>No actions yet.`), _tmpl$26 = /* @__PURE__ */ template(`<div class=agent-muted>Recent actions are collapsed to reduce noise.`), _tmpl$27 = /* @__PURE__ */ template(`<div class="agent-card-copy success">`), _tmpl$28 = /* @__PURE__ */ template(`<div class="agent-card-copy error">`), _tmpl$29 = /* @__PURE__ */ template(`<div class=agent-card><div class=agent-action-row><span class=agent-card-title></span><span></span></div><div class=agent-card-copy>`), _tmpl$30 = /* @__PURE__ */ template(`<div class=bookmark-empty-folder>`), _tmpl$31 = /* @__PURE__ */ template(`<div class=bookmark-folder-summary>`), _tmpl$32 = /* @__PURE__ */ template(`<div class=bookmark-folder-actions><button class=bookmark-ghost-button type=button>Rename</button><button class="bookmark-ghost-button danger"type=button>Delete`), _tmpl$33 = /* @__PURE__ */ template(`<div class=bookmark-folder-edit><div class=bookmark-folder-form-fields><input class=bookmark-input><input class=bookmark-input placeholder="Optional one-line summary"></div><button class=bookmark-secondary-button type=button>Save</button><button class=bookmark-ghost-button type=button>Cancel`), _tmpl$34 = /* @__PURE__ */ template(`<div class=bookmark-items>`), _tmpl$35 = /* @__PURE__ */ template(`<div class=bookmark-folder-section><div class="bookmark-folder-header clickable"role=button tabindex=0><div class=bookmark-folder-overview><span class=bookmark-folder-chevron aria-hidden=true>▸</span><div><div class=bookmark-folder-name></div><div class=bookmark-folder-meta> saved`), _tmpl$36 = /* @__PURE__ */ template(`<div class=bookmark-folder-collapsed-hint>Click to view saved links.`), _tmpl$37 = /* @__PURE__ */ template(`<div class=bookmark-empty-folder>No bookmarks in this folder yet.`), _tmpl$38 = /* @__PURE__ */ template(`<div class=bookmark-item-note>`), _tmpl$39 = /* @__PURE__ */ template(`<div class=bookmark-item><button class=bookmark-item-link type=button><span class=bookmark-item-title></span><span class=bookmark-item-url></span></button><div class=bookmark-item-footer><span class=bookmark-item-time></span><button class="bookmark-ghost-button danger"type=button>Remove`), _tmpl$40 = /* @__PURE__ */ template(`<div class=agent-muted>No checkpoints yet.`), _tmpl$41 = /* @__PURE__ */ template(`<span class=checkpoint-timeline-line>`), _tmpl$42 = /* @__PURE__ */ template(`<div class=checkpoint-timeline-item><div class=checkpoint-timeline-rail><span class=checkpoint-timeline-dot></span></div><div class=checkpoint-timeline-content><div class=checkpoint-timeline-name></div><div class=checkpoint-timeline-time></div><button class=agent-control-button type=button>Restore`), _tmpl$43 = /* @__PURE__ */ template(`<div>`), _tmpl$44 = /* @__PURE__ */ template(`<div class=thinking-state><div class=thinking-orb aria-hidden=true><span></span><span></span><span></span></div><div class=thinking-copy><div class=thinking-title>Thinking`), _tmpl$45 = /* @__PURE__ */ template(`<div class=chat-approval-detail>`), _tmpl$46 = /* @__PURE__ */ template(`<div class=chat-approval><div class=chat-approval-icon aria-hidden=true><svg width=16 height=16 viewBox="0 0 16 16"fill=none><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7.25 4.75a.75.75 0 011.5 0v3.5a.75.75 0 01-1.5 0v-3.5zM8 11.5a.75.75 0 110-1.5.75.75 0 010 1.5z"fill=currentColor></path></svg></div><div class=chat-approval-body><div class=chat-approval-title>Approval needed: <strong></strong></div><div class=chat-approval-detail></div><div class=chat-approval-actions><button class="chat-approval-btn chat-approval-approve"type=button>Approve</button><button class="chat-approval-btn chat-approval-reject"type=button>Reject`);
|
|
3071
|
-
const UNSORTED_FOLDER = {
|
|
3072
|
-
id: "unsorted",
|
|
3073
|
-
name: "Unsorted",
|
|
3074
|
-
createdAt: ""
|
|
3075
|
-
};
|
|
3076
|
-
const MarkdownMessage = (props) => {
|
|
3077
|
-
const html2 = createMemo(() => renderMarkdown(props.content));
|
|
3078
|
-
return (() => {
|
|
3079
|
-
var _el$ = _tmpl$$3();
|
|
3080
|
-
createRenderEffect(() => _el$.innerHTML = html2());
|
|
3081
|
-
return _el$;
|
|
3082
|
-
})();
|
|
3083
|
-
};
|
|
3073
|
+
var _tmpl$$4 = /* @__PURE__ */ template(`<div class=dropdown-select-menu role=listbox>`), _tmpl$2$4 = /* @__PURE__ */ template(`<div><button class=dropdown-select-trigger type=button aria-haspopup=listbox><span class=dropdown-select-value></span><span class=dropdown-select-caret aria-hidden=true>▾`), _tmpl$3$3 = /* @__PURE__ */ template(`<span class=dropdown-select-option-description>`), _tmpl$4$3 = /* @__PURE__ */ template(`<button class=dropdown-select-option type=button role=option><span class=dropdown-select-option-copy><span class=dropdown-select-option-label>`);
|
|
3084
3074
|
const DropdownSelect = (props) => {
|
|
3085
3075
|
const [open, setOpen] = createSignal(false);
|
|
3086
3076
|
let rootRef;
|
|
@@ -3104,59 +3094,59 @@ const DropdownSelect = (props) => {
|
|
|
3104
3094
|
});
|
|
3105
3095
|
});
|
|
3106
3096
|
return (() => {
|
|
3107
|
-
var _el$
|
|
3097
|
+
var _el$ = _tmpl$2$4(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling;
|
|
3108
3098
|
var _ref$ = rootRef;
|
|
3109
|
-
typeof _ref$ === "function" ? use(_ref$, _el$
|
|
3110
|
-
_el$
|
|
3111
|
-
insert(_el$
|
|
3112
|
-
insert(_el
|
|
3099
|
+
typeof _ref$ === "function" ? use(_ref$, _el$) : rootRef = _el$;
|
|
3100
|
+
_el$2.$$click = () => setOpen((current) => !current);
|
|
3101
|
+
insert(_el$3, selectedLabel);
|
|
3102
|
+
insert(_el$, createComponent(Show, {
|
|
3113
3103
|
get when() {
|
|
3114
3104
|
return open();
|
|
3115
3105
|
},
|
|
3116
3106
|
get children() {
|
|
3117
|
-
var _el$
|
|
3118
|
-
insert(_el$
|
|
3107
|
+
var _el$5 = _tmpl$$4();
|
|
3108
|
+
insert(_el$5, createComponent(For, {
|
|
3119
3109
|
get each() {
|
|
3120
3110
|
return props.options;
|
|
3121
3111
|
},
|
|
3122
3112
|
children: (option) => (() => {
|
|
3123
|
-
var _el$
|
|
3124
|
-
_el$
|
|
3113
|
+
var _el$6 = _tmpl$4$3(), _el$7 = _el$6.firstChild, _el$8 = _el$7.firstChild;
|
|
3114
|
+
_el$6.$$click = () => {
|
|
3125
3115
|
props.onChange(option.value);
|
|
3126
3116
|
setOpen(false);
|
|
3127
3117
|
};
|
|
3128
|
-
insert(_el$
|
|
3129
|
-
insert(_el$
|
|
3118
|
+
insert(_el$8, () => option.label);
|
|
3119
|
+
insert(_el$7, createComponent(Show, {
|
|
3130
3120
|
get when() {
|
|
3131
3121
|
return option.description;
|
|
3132
3122
|
},
|
|
3133
3123
|
get children() {
|
|
3134
|
-
var _el$
|
|
3135
|
-
insert(_el$
|
|
3136
|
-
return _el$
|
|
3124
|
+
var _el$9 = _tmpl$3$3();
|
|
3125
|
+
insert(_el$9, () => option.description);
|
|
3126
|
+
return _el$9;
|
|
3137
3127
|
}
|
|
3138
3128
|
}), null);
|
|
3139
3129
|
createRenderEffect((_p$) => {
|
|
3140
3130
|
var _v$5 = !!(option.value === props.value), _v$6 = option.value === props.value;
|
|
3141
|
-
_v$5 !== _p$.e && _el$
|
|
3142
|
-
_v$6 !== _p$.t && setAttribute(_el$
|
|
3131
|
+
_v$5 !== _p$.e && _el$6.classList.toggle("selected", _p$.e = _v$5);
|
|
3132
|
+
_v$6 !== _p$.t && setAttribute(_el$6, "aria-selected", _p$.t = _v$6);
|
|
3143
3133
|
return _p$;
|
|
3144
3134
|
}, {
|
|
3145
3135
|
e: void 0,
|
|
3146
3136
|
t: void 0
|
|
3147
3137
|
});
|
|
3148
|
-
return _el$
|
|
3138
|
+
return _el$6;
|
|
3149
3139
|
})()
|
|
3150
3140
|
}));
|
|
3151
|
-
return _el$
|
|
3141
|
+
return _el$5;
|
|
3152
3142
|
}
|
|
3153
3143
|
}), null);
|
|
3154
3144
|
createRenderEffect((_p$) => {
|
|
3155
3145
|
var _v$ = `dropdown-select ${props.class || ""}`, _v$2 = open(), _v$3 = props.ariaLabel, _v$4 = !!open();
|
|
3156
|
-
_v$ !== _p$.e && className(_el
|
|
3157
|
-
_v$2 !== _p$.t && setAttribute(_el$
|
|
3158
|
-
_v$3 !== _p$.a && setAttribute(_el$
|
|
3159
|
-
_v$4 !== _p$.o && _el$
|
|
3146
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
3147
|
+
_v$2 !== _p$.t && setAttribute(_el$2, "aria-expanded", _p$.t = _v$2);
|
|
3148
|
+
_v$3 !== _p$.a && setAttribute(_el$2, "aria-label", _p$.a = _v$3);
|
|
3149
|
+
_v$4 !== _p$.o && _el$4.classList.toggle("open", _p$.o = _v$4);
|
|
3160
3150
|
return _p$;
|
|
3161
3151
|
}, {
|
|
3162
3152
|
e: void 0,
|
|
@@ -3164,7 +3154,23 @@ const DropdownSelect = (props) => {
|
|
|
3164
3154
|
a: void 0,
|
|
3165
3155
|
o: void 0
|
|
3166
3156
|
});
|
|
3167
|
-
return _el
|
|
3157
|
+
return _el$;
|
|
3158
|
+
})();
|
|
3159
|
+
};
|
|
3160
|
+
delegateEvents(["click"]);
|
|
3161
|
+
const vesselLogo = "" + new URL("vessel-logo-transparent-IT25qr-Z.png", import.meta.url).href;
|
|
3162
|
+
var _tmpl$$3 = /* @__PURE__ */ template(`<div class="message-content markdown-content">`), _tmpl$2$3 = /* @__PURE__ */ template(`<span class=sidebar-tab-badge>`), _tmpl$3$2 = /* @__PURE__ */ template(`<div class=agent-section-title>Pending approvals`), _tmpl$4$2 = /* @__PURE__ */ template(`<button class=agent-section-toggle type=button>`), _tmpl$5$2 = /* @__PURE__ */ template(`<section class=agent-panel><div class=agent-panel-header><div><div class=agent-panel-title>Supervisor</div><div class=agent-panel-subtitle></div></div><span class=agent-status-pill></span></div><div class=agent-panel-controls><button class=agent-control-button type=button></button><button class=agent-control-button type=button>Restore session</button></div><div class=agent-muted></div><div class=agent-section-header><div class=agent-section-title>Recent actions`), _tmpl$6$2 = /* @__PURE__ */ template(`<span class=bookmark-status-pill>Saved`), _tmpl$7$2 = /* @__PURE__ */ template(`<div class=bookmark-save-card><div class=bookmark-current-title></div><div class=bookmark-current-url></div><div class=bookmark-save-controls><button class=bookmark-primary-button type=button>Save page</button></div><textarea class=bookmark-note-input placeholder="Optional note about why this matters"rows=2>`), _tmpl$8$2 = /* @__PURE__ */ template(`<section class=bookmark-panel><div class=bookmark-panel-header><div><div class=bookmark-panel-title>Bookmarks</div><div class=bookmark-panel-subtitle></div></div></div><input class="bookmark-input bookmark-search-input"placeholder="Search titles, URLs, notes, and folders"><div class=bookmark-save-shell><button class=bookmark-save-toggle type=button><span class=bookmark-save-toggle-copy><span class=bookmark-save-toggle-title>Save Current Page</span><span class=bookmark-save-toggle-subtitle>Manual bookmark save options</span></span><span class=bookmark-save-toggle-caret aria-hidden=true>▾</span></button></div><form class=bookmark-folder-create><div class=bookmark-folder-form-fields><input class=bookmark-input placeholder="Create a folder"><input class=bookmark-input placeholder="Optional one-line summary"></div><button class=bookmark-secondary-button type=submit>New folder</button></form><div class=bookmark-folder-list>`), _tmpl$9$2 = /* @__PURE__ */ template(`<div class=checkpoint-timeline>`), _tmpl$0$2 = /* @__PURE__ */ template(`<section class="agent-panel checkpoint-panel"><div class=agent-panel-header><div><div class=agent-panel-title>Checkpoints</div><div class=agent-panel-subtitle></div></div></div><div class=agent-panel-body><div class=agent-checkpoint-row><input class=agent-input placeholder="Checkpoint name"><button class=agent-primary-button type=button>Save checkpoint</button></div><div class=agent-section-title>Recent checkpoints`), _tmpl$1$2 = /* @__PURE__ */ template(`<span>`), _tmpl$10$2 = /* @__PURE__ */ template(`<div><div class=streaming-status><span class=streaming-pulse aria-hidden=true></span><span>Generating`), _tmpl$11$2 = /* @__PURE__ */ template(`<div class="message message-assistant"><div class=message-content>`), _tmpl$12$2 = /* @__PURE__ */ template(`<div class=sidebar-empty><svg class=sidebar-empty-icon width=48 height=48 viewBox="0 0 48 48"aria-hidden=true><line x1=8 y1=8 x2=24 y2=5 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=24 y1=5 x2=40 y2=10 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=8 y1=8 x2=6 y2=24 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=40 y1=10 x2=44 y2=26 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=6 y1=24 x2=10 y2=38 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=44 y1=26 x2=38 y2=40 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=10 y1=38 x2=24 y2=44 stroke=var(--border-visible) stroke-width=1 opacity=0.35></line><line x1=38 y1=40 x2=24 y2=44 stroke=var(--border-visible) stroke-width=1 opacity=0.35></line><line x1=8 y1=8 x2=20 y2=18 stroke=var(--border-visible) stroke-width=1 opacity=0.5></line><line x1=24 y1=5 x2=20 y2=18 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=40 y1=10 x2=32 y2=20 stroke=var(--border-visible) stroke-width=1 opacity=0.5></line><line x1=20 y1=18 x2=32 y2=20 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.3></line><line x1=6 y1=24 x2=18 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=20 y1=18 x2=18 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=32 y1=20 x2=36 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=44 y1=26 x2=36 y2=30 stroke=var(--border-visible) stroke-width=1 opacity=0.45></line><line x1=18 y1=30 x2=36 y2=30 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.25></line><line x1=18 y1=30 x2=10 y2=38 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=36 y1=30 x2=38 y2=40 stroke=var(--border-visible) stroke-width=1 opacity=0.4></line><line x1=18 y1=30 x2=24 y2=44 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.2></line><line x1=36 y1=30 x2=24 y2=44 stroke=var(--accent-primary) stroke-width=0.75 opacity=0.2></line><circle cx=8 cy=8 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.55></circle><circle cx=24 cy=5 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.45></circle><circle cx=40 cy=10 r=3 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.7></circle><circle cx=6 cy=24 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=44 cy=26 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.55></circle><circle cx=10 cy=38 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=38 cy=40 r=2 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.45></circle><circle cx=24 cy=44 r=2.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.5></circle><circle cx=20 cy=18 r=3.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.85></circle><circle cx=32 cy=20 r=4 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.9></circle><circle cx=18 cy=30 r=3 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.75></circle><circle cx=36 cy=30 r=3.5 fill=var(--bg-secondary) stroke=var(--accent-primary) stroke-width=1.5 opacity=0.8></circle></svg><p class=sidebar-empty-title>Your move.</p><p class=sidebar-empty-hint>Configure a provider in Settings (Ctrl+,) then ask anything about the current page or beyond.`), _tmpl$13$1 = /* @__PURE__ */ template(`<button class=chat-action-btn title="Stop generating"><svg width=14 height=14 viewBox="0 0 14 14"fill=none aria-hidden=true><rect x=2 y=2 width=10 height=10 rx=1.5 fill=currentColor></rect></svg>Stop`), _tmpl$14$1 = /* @__PURE__ */ template(`<button class=chat-action-btn title="Retry last prompt"><svg width=14 height=14 viewBox="0 0 14 14"fill=none aria-hidden=true><path d="M11.5 7a4.5 4.5 0 1 1-1.3-3.2"stroke=currentColor stroke-width=1.5 stroke-linecap=round></path><path d="M10.5 1v3h-3"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg>Retry`), _tmpl$15 = /* @__PURE__ */ template(`<div class=chat-actions>`), _tmpl$16 = /* @__PURE__ */ template(`<div class=highlight-nav><button class=highlight-nav-btn type=button title="Previous highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><path d="M8 10L4 6l4-4"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round></path></svg></button><button class=highlight-nav-label type=button title="Go to current highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><circle cx=6 cy=6 r=3 fill="rgba(196, 160, 90, 0.6)"stroke="rgba(196, 160, 90, 0.9)"stroke-width=1></circle></svg></button><button class=highlight-nav-btn type=button title="Next highlight"><svg width=12 height=12 viewBox="0 0 12 12"fill=none aria-hidden=true><path d="M4 2l4 4-4 4"stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round>`), _tmpl$17 = /* @__PURE__ */ template(`<div class=sidebar-input-area><textarea class=sidebar-input rows=2 placeholder="Ask anything..."></textarea><button class=sidebar-send>Send`), _tmpl$18 = /* @__PURE__ */ template(`<div class=sidebar><div class=sidebar-resize-handle></div><div class=sidebar-header><div class=sidebar-brand><img class=sidebar-logo alt=Vessel><span class=sidebar-brand-text>Vessel Browser</span></div><div class=sidebar-header-actions><button class=sidebar-clear title="Clear chat">Clear</button><button class=sidebar-close title="Close AI chat (Esc)"aria-label="Close AI chat"><svg width=14 height=14 viewBox="0 0 14 14"aria-hidden=true><path d="M3.5 3.5l7 7M10.5 3.5l-7 7"fill=none stroke=currentColor stroke-width=1.4 stroke-linecap=round></path></svg></button></div></div><div class=sidebar-tabs role=tablist><button class=sidebar-tab role=tab>Supervisor</button><button class=sidebar-tab role=tab>Bookmarks</button><button class=sidebar-tab role=tab>Checkpoints</button><button class=sidebar-tab role=tab>Chat</button></div><div class=sidebar-messages><div>`), _tmpl$19 = /* @__PURE__ */ template(`<div class=agent-muted>No pending approvals.`), _tmpl$20 = /* @__PURE__ */ template(`<div class="agent-card agent-card-approval"><div class=agent-card-approval-stripe aria-hidden=true></div><div class=agent-card-title></div><div class=agent-card-copy></div><div class=agent-card-copy></div><div class=agent-card-actions><button class=agent-primary-button type=button>Approve</button><button class=agent-control-button type=button>Reject`), _tmpl$21 = /* @__PURE__ */ template(`<div class=agent-muted>No actions yet.`), _tmpl$22 = /* @__PURE__ */ template(`<div class=agent-muted>Recent actions are collapsed to reduce noise.`), _tmpl$23 = /* @__PURE__ */ template(`<div class="agent-card-copy success">`), _tmpl$24 = /* @__PURE__ */ template(`<div class="agent-card-copy error">`), _tmpl$25 = /* @__PURE__ */ template(`<div class=agent-card><div class=agent-action-row><span class=agent-card-title></span><span></span></div><div class=agent-card-copy>`), _tmpl$26 = /* @__PURE__ */ template(`<div class=bookmark-empty-folder>`), _tmpl$27 = /* @__PURE__ */ template(`<div class=bookmark-folder-summary>`), _tmpl$28 = /* @__PURE__ */ template(`<div class=bookmark-folder-actions><button class=bookmark-ghost-button type=button>Rename</button><button class="bookmark-ghost-button danger"type=button>Delete`), _tmpl$29 = /* @__PURE__ */ template(`<div class=bookmark-folder-edit><div class=bookmark-folder-form-fields><input class=bookmark-input><input class=bookmark-input placeholder="Optional one-line summary"></div><button class=bookmark-secondary-button type=button>Save</button><button class=bookmark-ghost-button type=button>Cancel`), _tmpl$30 = /* @__PURE__ */ template(`<div class=bookmark-items>`), _tmpl$31 = /* @__PURE__ */ template(`<div class=bookmark-folder-section><div class="bookmark-folder-header clickable"role=button tabindex=0><div class=bookmark-folder-overview><span class=bookmark-folder-chevron aria-hidden=true>▸</span><div><div class=bookmark-folder-name></div><div class=bookmark-folder-meta> saved`), _tmpl$32 = /* @__PURE__ */ template(`<div class=bookmark-folder-collapsed-hint>Click to view saved links.`), _tmpl$33 = /* @__PURE__ */ template(`<div class=bookmark-empty-folder>No bookmarks in this folder yet.`), _tmpl$34 = /* @__PURE__ */ template(`<div class=bookmark-item-note>`), _tmpl$35 = /* @__PURE__ */ template(`<div class=bookmark-item><button class=bookmark-item-link type=button><span class=bookmark-item-title></span><span class=bookmark-item-url></span></button><div class=bookmark-item-footer><span class=bookmark-item-time></span><button class="bookmark-ghost-button danger"type=button>Remove`), _tmpl$36 = /* @__PURE__ */ template(`<div class=agent-muted>No checkpoints yet.`), _tmpl$37 = /* @__PURE__ */ template(`<span class=checkpoint-timeline-line>`), _tmpl$38 = /* @__PURE__ */ template(`<div class=checkpoint-timeline-item><div class=checkpoint-timeline-rail><span class=checkpoint-timeline-dot></span></div><div class=checkpoint-timeline-content><div class=checkpoint-timeline-name></div><div class=checkpoint-timeline-time></div><button class=agent-control-button type=button>Restore`), _tmpl$39 = /* @__PURE__ */ template(`<div>`), _tmpl$40 = /* @__PURE__ */ template(`<div class=thinking-state><div class=thinking-orb aria-hidden=true><span></span><span></span><span></span></div><div class=thinking-copy><div class=thinking-title>Thinking`), _tmpl$41 = /* @__PURE__ */ template(`<div class=chat-approval-detail>`), _tmpl$42 = /* @__PURE__ */ template(`<div class=chat-approval><div class=chat-approval-icon aria-hidden=true><svg width=16 height=16 viewBox="0 0 16 16"fill=none><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7.25 4.75a.75.75 0 011.5 0v3.5a.75.75 0 01-1.5 0v-3.5zM8 11.5a.75.75 0 110-1.5.75.75 0 010 1.5z"fill=currentColor></path></svg></div><div class=chat-approval-body><div class=chat-approval-title>Approval needed: <strong></strong></div><div class=chat-approval-detail></div><div class=chat-approval-actions><button class="chat-approval-btn chat-approval-approve"type=button>Approve</button><button class="chat-approval-btn chat-approval-reject"type=button>Reject`);
|
|
3163
|
+
const UNSORTED_FOLDER = {
|
|
3164
|
+
id: "unsorted",
|
|
3165
|
+
name: "Unsorted",
|
|
3166
|
+
createdAt: ""
|
|
3167
|
+
};
|
|
3168
|
+
const MarkdownMessage = (props) => {
|
|
3169
|
+
const html2 = createMemo(() => renderMarkdown(props.content));
|
|
3170
|
+
return (() => {
|
|
3171
|
+
var _el$ = _tmpl$$3();
|
|
3172
|
+
createRenderEffect(() => _el$.innerHTML = html2());
|
|
3173
|
+
return _el$;
|
|
3168
3174
|
})();
|
|
3169
3175
|
};
|
|
3170
3176
|
const Sidebar = (props) => {
|
|
@@ -3492,41 +3498,41 @@ ${contextBlock}` : contextBlock);
|
|
|
3492
3498
|
return props.forceOpen || sidebarOpen2();
|
|
3493
3499
|
},
|
|
3494
3500
|
get children() {
|
|
3495
|
-
var _el$
|
|
3496
|
-
_el$
|
|
3497
|
-
var _el$
|
|
3498
|
-
_el$
|
|
3499
|
-
setAttribute(_el$
|
|
3500
|
-
addEventListener(_el$
|
|
3501
|
-
_el$
|
|
3502
|
-
_el$
|
|
3503
|
-
insert(_el$
|
|
3501
|
+
var _el$2 = _tmpl$18(), _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling, _el$5 = _el$4.firstChild, _el$6 = _el$5.firstChild, _el$7 = _el$5.nextSibling, _el$8 = _el$7.firstChild, _el$9 = _el$8.nextSibling, _el$0 = _el$4.nextSibling, _el$1 = _el$0.firstChild;
|
|
3502
|
+
_el$1.firstChild;
|
|
3503
|
+
var _el$12 = _el$1.nextSibling, _el$13 = _el$12.nextSibling, _el$14 = _el$13.nextSibling, _el$15 = _el$0.nextSibling, _el$72 = _el$15.firstChild;
|
|
3504
|
+
_el$3.$$pointerdown = startResize;
|
|
3505
|
+
setAttribute(_el$6, "src", vesselLogo);
|
|
3506
|
+
addEventListener(_el$8, "click", clearHistory);
|
|
3507
|
+
_el$9.$$click = () => void toggleSidebar();
|
|
3508
|
+
_el$1.$$click = () => setSidebarTab("supervisor");
|
|
3509
|
+
insert(_el$1, createComponent(Show, {
|
|
3504
3510
|
get when() {
|
|
3505
3511
|
return runtimeState2().supervisor.pendingApprovals.length > 0;
|
|
3506
3512
|
},
|
|
3507
3513
|
get children() {
|
|
3508
|
-
var _el$
|
|
3509
|
-
insert(_el$
|
|
3510
|
-
return _el$
|
|
3514
|
+
var _el$11 = _tmpl$2$3();
|
|
3515
|
+
insert(_el$11, () => runtimeState2().supervisor.pendingApprovals.length);
|
|
3516
|
+
return _el$11;
|
|
3511
3517
|
}
|
|
3512
3518
|
}), null);
|
|
3513
|
-
_el$
|
|
3514
|
-
_el$
|
|
3515
|
-
_el$
|
|
3519
|
+
_el$12.$$click = () => setSidebarTab("bookmarks");
|
|
3520
|
+
_el$13.$$click = () => setSidebarTab("checkpoints");
|
|
3521
|
+
_el$14.$$click = () => setSidebarTab("chat");
|
|
3516
3522
|
use((el) => {
|
|
3517
3523
|
messagesContainerRef = el;
|
|
3518
3524
|
useScrollFade(el);
|
|
3519
|
-
}, _el$
|
|
3520
|
-
insert(_el$
|
|
3525
|
+
}, _el$15);
|
|
3526
|
+
insert(_el$15, createComponent(Show, {
|
|
3521
3527
|
get when() {
|
|
3522
3528
|
return sidebarTab() === "supervisor";
|
|
3523
3529
|
},
|
|
3524
3530
|
get children() {
|
|
3525
|
-
var _el$
|
|
3526
|
-
_el$
|
|
3527
|
-
insert(_el$
|
|
3528
|
-
insert(_el$
|
|
3529
|
-
insert(_el$
|
|
3531
|
+
var _el$16 = _tmpl$5$2(), _el$17 = _el$16.firstChild, _el$18 = _el$17.firstChild, _el$19 = _el$18.firstChild, _el$20 = _el$19.nextSibling, _el$21 = _el$18.nextSibling, _el$22 = _el$17.nextSibling, _el$23 = _el$22.firstChild, _el$24 = _el$23.nextSibling, _el$25 = _el$22.nextSibling, _el$27 = _el$25.nextSibling;
|
|
3532
|
+
_el$27.firstChild;
|
|
3533
|
+
insert(_el$20, () => runtimeState2().supervisor.paused ? "Agent is paused" : "Agent is live");
|
|
3534
|
+
insert(_el$21, () => runtimeState2().supervisor.paused ? "Paused" : "Running");
|
|
3535
|
+
insert(_el$22, createComponent(DropdownSelect, {
|
|
3530
3536
|
"class": "agent-select",
|
|
3531
3537
|
get value() {
|
|
3532
3538
|
return runtimeState2().supervisor.approvalMode;
|
|
@@ -3536,55 +3542,55 @@ ${contextBlock}` : contextBlock);
|
|
|
3536
3542
|
},
|
|
3537
3543
|
ariaLabel: "Approval mode",
|
|
3538
3544
|
onChange: (value) => void setApprovalMode(value)
|
|
3539
|
-
}), _el$
|
|
3540
|
-
_el$
|
|
3541
|
-
insert(_el$
|
|
3542
|
-
_el$
|
|
3543
|
-
insert(_el$
|
|
3544
|
-
insert(_el$
|
|
3545
|
+
}), _el$23);
|
|
3546
|
+
_el$23.$$click = () => void (runtimeState2().supervisor.paused ? resume() : pause());
|
|
3547
|
+
insert(_el$23, () => runtimeState2().supervisor.paused ? "Resume" : "Pause");
|
|
3548
|
+
_el$24.$$click = () => void restoreSession();
|
|
3549
|
+
insert(_el$25, approvalModeDescription);
|
|
3550
|
+
insert(_el$16, createComponent(Show, {
|
|
3545
3551
|
get when() {
|
|
3546
3552
|
return runtimeState2().supervisor.pendingApprovals.length > 0;
|
|
3547
3553
|
},
|
|
3548
3554
|
get fallback() {
|
|
3549
|
-
return _tmpl$
|
|
3555
|
+
return _tmpl$19();
|
|
3550
3556
|
},
|
|
3551
3557
|
get children() {
|
|
3552
|
-
return [_tmpl$
|
|
3558
|
+
return [_tmpl$3$2(), createComponent(For, {
|
|
3553
3559
|
get each() {
|
|
3554
3560
|
return runtimeState2().supervisor.pendingApprovals;
|
|
3555
3561
|
},
|
|
3556
3562
|
children: (approval) => (() => {
|
|
3557
|
-
var _el$
|
|
3558
|
-
insert(_el$
|
|
3559
|
-
insert(_el$
|
|
3560
|
-
insert(_el$
|
|
3561
|
-
_el$
|
|
3562
|
-
_el$
|
|
3563
|
-
return _el$
|
|
3563
|
+
var _el$85 = _tmpl$20(), _el$86 = _el$85.firstChild, _el$87 = _el$86.nextSibling, _el$88 = _el$87.nextSibling, _el$89 = _el$88.nextSibling, _el$90 = _el$89.nextSibling, _el$91 = _el$90.firstChild, _el$92 = _el$91.nextSibling;
|
|
3564
|
+
insert(_el$87, () => approval.name);
|
|
3565
|
+
insert(_el$88, () => approval.argsSummary);
|
|
3566
|
+
insert(_el$89, () => approval.reason);
|
|
3567
|
+
_el$91.$$click = () => void resolveApproval(approval.id, true);
|
|
3568
|
+
_el$92.$$click = () => void resolveApproval(approval.id, false);
|
|
3569
|
+
return _el$85;
|
|
3564
3570
|
})()
|
|
3565
3571
|
})];
|
|
3566
3572
|
}
|
|
3567
|
-
}), _el$
|
|
3568
|
-
insert(_el$
|
|
3573
|
+
}), _el$27);
|
|
3574
|
+
insert(_el$27, createComponent(Show, {
|
|
3569
3575
|
get when() {
|
|
3570
3576
|
return recentActions().length > 0;
|
|
3571
3577
|
},
|
|
3572
3578
|
get children() {
|
|
3573
|
-
var _el$
|
|
3574
|
-
_el$
|
|
3575
|
-
insert(_el$
|
|
3579
|
+
var _el$29 = _tmpl$4$2();
|
|
3580
|
+
_el$29.$$click = () => setActionsExpanded((current) => !current);
|
|
3581
|
+
insert(_el$29, (() => {
|
|
3576
3582
|
var _c$ = memo(() => !!actionsExpanded());
|
|
3577
3583
|
return () => _c$() ? "Hide history" : `Show history (${recentActions().length})`;
|
|
3578
3584
|
})());
|
|
3579
|
-
return _el$
|
|
3585
|
+
return _el$29;
|
|
3580
3586
|
}
|
|
3581
3587
|
}), null);
|
|
3582
|
-
insert(_el$
|
|
3588
|
+
insert(_el$16, createComponent(Show, {
|
|
3583
3589
|
get when() {
|
|
3584
3590
|
return recentActions().length > 0;
|
|
3585
3591
|
},
|
|
3586
3592
|
get fallback() {
|
|
3587
|
-
return _tmpl$
|
|
3593
|
+
return _tmpl$21();
|
|
3588
3594
|
},
|
|
3589
3595
|
get children() {
|
|
3590
3596
|
return createComponent(Show, {
|
|
@@ -3592,7 +3598,7 @@ ${contextBlock}` : contextBlock);
|
|
|
3592
3598
|
return actionsExpanded();
|
|
3593
3599
|
},
|
|
3594
3600
|
get fallback() {
|
|
3595
|
-
return _tmpl$
|
|
3601
|
+
return _tmpl$22();
|
|
3596
3602
|
},
|
|
3597
3603
|
get children() {
|
|
3598
3604
|
return createComponent(For, {
|
|
@@ -3600,71 +3606,71 @@ ${contextBlock}` : contextBlock);
|
|
|
3600
3606
|
return recentActions();
|
|
3601
3607
|
},
|
|
3602
3608
|
children: (action) => (() => {
|
|
3603
|
-
var _el$
|
|
3604
|
-
insert(_el$
|
|
3605
|
-
insert(_el$
|
|
3606
|
-
insert(_el$
|
|
3607
|
-
insert(_el$
|
|
3609
|
+
var _el$95 = _tmpl$25(), _el$96 = _el$95.firstChild, _el$97 = _el$96.firstChild, _el$98 = _el$97.nextSibling, _el$99 = _el$96.nextSibling;
|
|
3610
|
+
insert(_el$97, () => action.name);
|
|
3611
|
+
insert(_el$98, () => action.status);
|
|
3612
|
+
insert(_el$99, () => action.argsSummary);
|
|
3613
|
+
insert(_el$95, createComponent(Show, {
|
|
3608
3614
|
get when() {
|
|
3609
3615
|
return action.resultSummary;
|
|
3610
3616
|
},
|
|
3611
3617
|
get children() {
|
|
3612
|
-
var _el$
|
|
3613
|
-
insert(_el$
|
|
3614
|
-
return _el$
|
|
3618
|
+
var _el$100 = _tmpl$23();
|
|
3619
|
+
insert(_el$100, () => action.resultSummary);
|
|
3620
|
+
return _el$100;
|
|
3615
3621
|
}
|
|
3616
3622
|
}), null);
|
|
3617
|
-
insert(_el$
|
|
3623
|
+
insert(_el$95, createComponent(Show, {
|
|
3618
3624
|
get when() {
|
|
3619
3625
|
return action.error;
|
|
3620
3626
|
},
|
|
3621
3627
|
get children() {
|
|
3622
|
-
var _el$
|
|
3623
|
-
insert(_el$
|
|
3624
|
-
return _el$
|
|
3628
|
+
var _el$101 = _tmpl$24();
|
|
3629
|
+
insert(_el$101, () => action.error);
|
|
3630
|
+
return _el$101;
|
|
3625
3631
|
}
|
|
3626
3632
|
}), null);
|
|
3627
|
-
createRenderEffect(() => className(_el$
|
|
3628
|
-
return _el$
|
|
3633
|
+
createRenderEffect(() => className(_el$98, `agent-action-status ${action.status}`));
|
|
3634
|
+
return _el$95;
|
|
3629
3635
|
})()
|
|
3630
3636
|
});
|
|
3631
3637
|
}
|
|
3632
3638
|
});
|
|
3633
3639
|
}
|
|
3634
3640
|
}), null);
|
|
3635
|
-
createRenderEffect(() => _el$
|
|
3636
|
-
return _el$
|
|
3641
|
+
createRenderEffect(() => _el$21.classList.toggle("paused", !!runtimeState2().supervisor.paused));
|
|
3642
|
+
return _el$16;
|
|
3637
3643
|
}
|
|
3638
|
-
}), _el$
|
|
3639
|
-
insert(_el$
|
|
3644
|
+
}), _el$72);
|
|
3645
|
+
insert(_el$15, createComponent(Show, {
|
|
3640
3646
|
get when() {
|
|
3641
3647
|
return sidebarTab() === "bookmarks";
|
|
3642
3648
|
},
|
|
3643
3649
|
get children() {
|
|
3644
|
-
var _el$
|
|
3645
|
-
insert(_el$
|
|
3650
|
+
var _el$30 = _tmpl$8$2(), _el$31 = _el$30.firstChild, _el$32 = _el$31.firstChild, _el$33 = _el$32.firstChild, _el$34 = _el$33.nextSibling, _el$36 = _el$31.nextSibling, _el$37 = _el$36.nextSibling, _el$38 = _el$37.firstChild, _el$39 = _el$38.firstChild, _el$40 = _el$39.nextSibling, _el$47 = _el$37.nextSibling, _el$48 = _el$47.firstChild, _el$49 = _el$48.firstChild, _el$50 = _el$49.nextSibling, _el$51 = _el$48.nextSibling, _el$52 = _el$47.nextSibling;
|
|
3651
|
+
insert(_el$34, (() => {
|
|
3646
3652
|
var _c$2 = memo(() => !!normalizedBookmarkSearch());
|
|
3647
3653
|
return () => _c$2() ? `${bookmarkMatchCount()} matches for "${bookmarkSearchQuery().trim()}"` : `${bookmarksState2().bookmarks.length} saved across ${bookmarkFolders().length} folders`;
|
|
3648
3654
|
})());
|
|
3649
|
-
insert(_el$
|
|
3655
|
+
insert(_el$31, createComponent(Show, {
|
|
3650
3656
|
get when() {
|
|
3651
3657
|
return currentTabSaved();
|
|
3652
3658
|
},
|
|
3653
3659
|
get children() {
|
|
3654
|
-
return _tmpl$
|
|
3660
|
+
return _tmpl$6$2();
|
|
3655
3661
|
}
|
|
3656
3662
|
}), null);
|
|
3657
|
-
_el$
|
|
3658
|
-
_el$
|
|
3659
|
-
insert(_el$
|
|
3663
|
+
_el$36.$$input = (e) => setBookmarkSearchQuery(e.currentTarget.value);
|
|
3664
|
+
_el$38.$$click = () => setBookmarkSaveExpanded((current) => !current);
|
|
3665
|
+
insert(_el$37, createComponent(Show, {
|
|
3660
3666
|
get when() {
|
|
3661
3667
|
return bookmarkSaveExpanded();
|
|
3662
3668
|
},
|
|
3663
3669
|
get children() {
|
|
3664
|
-
var _el$
|
|
3665
|
-
insert(_el$
|
|
3666
|
-
insert(_el$
|
|
3667
|
-
insert(_el$
|
|
3670
|
+
var _el$41 = _tmpl$7$2(), _el$42 = _el$41.firstChild, _el$43 = _el$42.nextSibling, _el$44 = _el$43.nextSibling, _el$45 = _el$44.firstChild, _el$46 = _el$44.nextSibling;
|
|
3671
|
+
insert(_el$42, () => currentTab()?.title || "No active page");
|
|
3672
|
+
insert(_el$43, () => currentTab()?.url || "Open a page to save it here.");
|
|
3673
|
+
insert(_el$44, createComponent(DropdownSelect, {
|
|
3668
3674
|
"class": "bookmark-select",
|
|
3669
3675
|
get value() {
|
|
3670
3676
|
return selectedFolderId();
|
|
@@ -3674,29 +3680,29 @@ ${contextBlock}` : contextBlock);
|
|
|
3674
3680
|
},
|
|
3675
3681
|
ariaLabel: "Bookmark folder",
|
|
3676
3682
|
onChange: (value) => setSelectedFolderId(value)
|
|
3677
|
-
}), _el$
|
|
3678
|
-
_el$
|
|
3679
|
-
_el$
|
|
3680
|
-
createRenderEffect(() => _el$
|
|
3681
|
-
createRenderEffect(() => _el$
|
|
3682
|
-
return _el$
|
|
3683
|
+
}), _el$45);
|
|
3684
|
+
_el$45.$$click = () => void handleSaveBookmark();
|
|
3685
|
+
_el$46.$$input = (e) => setBookmarkNote(e.currentTarget.value);
|
|
3686
|
+
createRenderEffect(() => _el$45.disabled = !currentTab()?.url);
|
|
3687
|
+
createRenderEffect(() => _el$46.value = bookmarkNote());
|
|
3688
|
+
return _el$41;
|
|
3683
3689
|
}
|
|
3684
3690
|
}), null);
|
|
3685
|
-
_el$
|
|
3686
|
-
_el$
|
|
3687
|
-
_el$
|
|
3688
|
-
insert(_el$
|
|
3691
|
+
_el$47.addEventListener("submit", handleCreateFolder);
|
|
3692
|
+
_el$49.$$input = (e) => setNewFolderName(e.currentTarget.value);
|
|
3693
|
+
_el$50.$$input = (e) => setNewFolderSummary(e.currentTarget.value);
|
|
3694
|
+
insert(_el$52, createComponent(Show, {
|
|
3689
3695
|
get when() {
|
|
3690
3696
|
return filteredGroupedBookmarks().length > 0;
|
|
3691
3697
|
},
|
|
3692
3698
|
get fallback() {
|
|
3693
3699
|
return (() => {
|
|
3694
|
-
var _el$
|
|
3695
|
-
insert(_el$
|
|
3700
|
+
var _el$102 = _tmpl$26();
|
|
3701
|
+
insert(_el$102, (() => {
|
|
3696
3702
|
var _c$5 = memo(() => !!normalizedBookmarkSearch());
|
|
3697
3703
|
return () => _c$5() ? `No bookmarks matched "${bookmarkSearchQuery().trim()}".` : "No bookmarks saved yet.";
|
|
3698
3704
|
})());
|
|
3699
|
-
return _el$
|
|
3705
|
+
return _el$102;
|
|
3700
3706
|
})();
|
|
3701
3707
|
},
|
|
3702
3708
|
get children() {
|
|
@@ -3705,71 +3711,71 @@ ${contextBlock}` : contextBlock);
|
|
|
3705
3711
|
return filteredGroupedBookmarks();
|
|
3706
3712
|
},
|
|
3707
3713
|
children: (folder) => (() => {
|
|
3708
|
-
var _el$
|
|
3709
|
-
_el$
|
|
3714
|
+
var _el$103 = _tmpl$31(), _el$104 = _el$103.firstChild, _el$105 = _el$104.firstChild, _el$106 = _el$105.firstChild, _el$107 = _el$106.nextSibling, _el$108 = _el$107.firstChild, _el$109 = _el$108.nextSibling, _el$110 = _el$109.firstChild;
|
|
3715
|
+
_el$104.$$keydown = (e) => {
|
|
3710
3716
|
if (e.key === "Enter" || e.key === " ") {
|
|
3711
3717
|
e.preventDefault();
|
|
3712
3718
|
toggleFolderExpanded(folder.id);
|
|
3713
3719
|
}
|
|
3714
3720
|
};
|
|
3715
|
-
_el$
|
|
3716
|
-
insert(_el$
|
|
3717
|
-
insert(_el$
|
|
3718
|
-
insert(_el$
|
|
3721
|
+
_el$104.$$click = () => toggleFolderExpanded(folder.id);
|
|
3722
|
+
insert(_el$108, () => folder.name);
|
|
3723
|
+
insert(_el$109, () => folder.items.length, _el$110);
|
|
3724
|
+
insert(_el$107, createComponent(Show, {
|
|
3719
3725
|
get when() {
|
|
3720
3726
|
return folder.summary;
|
|
3721
3727
|
},
|
|
3722
3728
|
get children() {
|
|
3723
|
-
var _el$
|
|
3724
|
-
insert(_el$
|
|
3725
|
-
return _el$
|
|
3729
|
+
var _el$111 = _tmpl$27();
|
|
3730
|
+
insert(_el$111, () => folder.summary);
|
|
3731
|
+
return _el$111;
|
|
3726
3732
|
}
|
|
3727
3733
|
}), null);
|
|
3728
|
-
insert(_el$
|
|
3734
|
+
insert(_el$104, createComponent(Show, {
|
|
3729
3735
|
get when() {
|
|
3730
3736
|
return folder.id !== UNSORTED_FOLDER.id;
|
|
3731
3737
|
},
|
|
3732
3738
|
get children() {
|
|
3733
|
-
var _el$
|
|
3734
|
-
_el$
|
|
3739
|
+
var _el$112 = _tmpl$28(), _el$113 = _el$112.firstChild, _el$114 = _el$113.nextSibling;
|
|
3740
|
+
_el$113.$$click = (e) => {
|
|
3735
3741
|
e.stopPropagation();
|
|
3736
3742
|
setEditingFolderId(folder.id);
|
|
3737
3743
|
setEditingFolderName(folder.name);
|
|
3738
3744
|
setEditingFolderSummary(folder.summary || "");
|
|
3739
3745
|
};
|
|
3740
|
-
_el$
|
|
3746
|
+
_el$114.$$click = (e) => {
|
|
3741
3747
|
e.stopPropagation();
|
|
3742
3748
|
void handleRemoveFolder(folder.id);
|
|
3743
3749
|
};
|
|
3744
|
-
return _el$
|
|
3750
|
+
return _el$112;
|
|
3745
3751
|
}
|
|
3746
3752
|
}), null);
|
|
3747
|
-
insert(_el$
|
|
3753
|
+
insert(_el$103, createComponent(Show, {
|
|
3748
3754
|
get when() {
|
|
3749
3755
|
return editingFolderId() === folder.id;
|
|
3750
3756
|
},
|
|
3751
3757
|
get children() {
|
|
3752
|
-
var _el$
|
|
3753
|
-
_el$
|
|
3754
|
-
_el$
|
|
3755
|
-
_el$
|
|
3756
|
-
_el$
|
|
3758
|
+
var _el$115 = _tmpl$29(), _el$116 = _el$115.firstChild, _el$117 = _el$116.firstChild, _el$118 = _el$117.nextSibling, _el$119 = _el$116.nextSibling, _el$120 = _el$119.nextSibling;
|
|
3759
|
+
_el$117.$$input = (e) => setEditingFolderName(e.currentTarget.value);
|
|
3760
|
+
_el$118.$$input = (e) => setEditingFolderSummary(e.currentTarget.value);
|
|
3761
|
+
_el$119.$$click = () => void handleRenameFolder(folder.id);
|
|
3762
|
+
_el$120.$$click = () => {
|
|
3757
3763
|
setEditingFolderId(null);
|
|
3758
3764
|
setEditingFolderName("");
|
|
3759
3765
|
setEditingFolderSummary("");
|
|
3760
3766
|
};
|
|
3761
|
-
createRenderEffect(() => _el$
|
|
3762
|
-
createRenderEffect(() => _el$
|
|
3763
|
-
createRenderEffect(() => _el$
|
|
3764
|
-
return _el$
|
|
3767
|
+
createRenderEffect(() => _el$119.disabled = !editingFolderName().trim());
|
|
3768
|
+
createRenderEffect(() => _el$117.value = editingFolderName());
|
|
3769
|
+
createRenderEffect(() => _el$118.value = editingFolderSummary());
|
|
3770
|
+
return _el$115;
|
|
3765
3771
|
}
|
|
3766
3772
|
}), null);
|
|
3767
|
-
insert(_el$
|
|
3773
|
+
insert(_el$103, createComponent(Show, {
|
|
3768
3774
|
get when() {
|
|
3769
3775
|
return isFolderExpanded(folder.id);
|
|
3770
3776
|
},
|
|
3771
3777
|
get fallback() {
|
|
3772
|
-
return _tmpl$
|
|
3778
|
+
return _tmpl$32();
|
|
3773
3779
|
},
|
|
3774
3780
|
get children() {
|
|
3775
3781
|
return createComponent(Show, {
|
|
@@ -3777,116 +3783,116 @@ ${contextBlock}` : contextBlock);
|
|
|
3777
3783
|
return folder.items.length > 0;
|
|
3778
3784
|
},
|
|
3779
3785
|
get fallback() {
|
|
3780
|
-
return _tmpl$
|
|
3786
|
+
return _tmpl$33();
|
|
3781
3787
|
},
|
|
3782
3788
|
get children() {
|
|
3783
|
-
var _el$
|
|
3784
|
-
insert(_el$
|
|
3789
|
+
var _el$121 = _tmpl$30();
|
|
3790
|
+
insert(_el$121, createComponent(For, {
|
|
3785
3791
|
get each() {
|
|
3786
3792
|
return folder.items;
|
|
3787
3793
|
},
|
|
3788
3794
|
children: (bookmark) => (() => {
|
|
3789
|
-
var _el$
|
|
3790
|
-
_el$
|
|
3791
|
-
insert(_el$
|
|
3792
|
-
insert(_el$
|
|
3793
|
-
insert(_el$
|
|
3795
|
+
var _el$124 = _tmpl$35(), _el$125 = _el$124.firstChild, _el$126 = _el$125.firstChild, _el$127 = _el$126.nextSibling, _el$129 = _el$125.nextSibling, _el$130 = _el$129.firstChild, _el$131 = _el$130.nextSibling;
|
|
3796
|
+
_el$125.$$click = () => void createTab(bookmark.url);
|
|
3797
|
+
insert(_el$126, () => bookmark.title || bookmark.url);
|
|
3798
|
+
insert(_el$127, () => bookmark.url);
|
|
3799
|
+
insert(_el$124, createComponent(Show, {
|
|
3794
3800
|
get when() {
|
|
3795
3801
|
return bookmark.note;
|
|
3796
3802
|
},
|
|
3797
3803
|
get children() {
|
|
3798
|
-
var _el$
|
|
3799
|
-
insert(_el$
|
|
3800
|
-
return _el$
|
|
3804
|
+
var _el$128 = _tmpl$34();
|
|
3805
|
+
insert(_el$128, () => bookmark.note);
|
|
3806
|
+
return _el$128;
|
|
3801
3807
|
}
|
|
3802
|
-
}), _el$
|
|
3803
|
-
insert(_el$
|
|
3804
|
-
_el$
|
|
3805
|
-
createRenderEffect(() => setAttribute(_el$
|
|
3806
|
-
return _el$
|
|
3808
|
+
}), _el$129);
|
|
3809
|
+
insert(_el$130, () => formatBookmarkDate(bookmark.savedAt));
|
|
3810
|
+
_el$131.$$click = () => void removeBookmark(bookmark.id);
|
|
3811
|
+
createRenderEffect(() => setAttribute(_el$124, "data-bookmark-id", bookmark.id));
|
|
3812
|
+
return _el$124;
|
|
3807
3813
|
})()
|
|
3808
3814
|
}));
|
|
3809
|
-
return _el$
|
|
3815
|
+
return _el$121;
|
|
3810
3816
|
}
|
|
3811
3817
|
});
|
|
3812
3818
|
}
|
|
3813
3819
|
}), null);
|
|
3814
|
-
createRenderEffect(() => _el$
|
|
3815
|
-
return _el$
|
|
3820
|
+
createRenderEffect(() => _el$106.classList.toggle("expanded", !!isFolderExpanded(folder.id)));
|
|
3821
|
+
return _el$103;
|
|
3816
3822
|
})()
|
|
3817
3823
|
});
|
|
3818
3824
|
}
|
|
3819
3825
|
}));
|
|
3820
3826
|
createRenderEffect((_p$) => {
|
|
3821
|
-
var _v$
|
|
3822
|
-
_v$
|
|
3823
|
-
_v$
|
|
3827
|
+
var _v$ = !!bookmarkSaveExpanded(), _v$2 = !newFolderName().trim();
|
|
3828
|
+
_v$ !== _p$.e && _el$40.classList.toggle("expanded", _p$.e = _v$);
|
|
3829
|
+
_v$2 !== _p$.t && (_el$51.disabled = _p$.t = _v$2);
|
|
3824
3830
|
return _p$;
|
|
3825
3831
|
}, {
|
|
3826
3832
|
e: void 0,
|
|
3827
3833
|
t: void 0
|
|
3828
3834
|
});
|
|
3829
|
-
createRenderEffect(() => _el$
|
|
3830
|
-
createRenderEffect(() => _el$
|
|
3831
|
-
createRenderEffect(() => _el$
|
|
3832
|
-
return _el$
|
|
3835
|
+
createRenderEffect(() => _el$36.value = bookmarkSearchQuery());
|
|
3836
|
+
createRenderEffect(() => _el$49.value = newFolderName());
|
|
3837
|
+
createRenderEffect(() => _el$50.value = newFolderSummary());
|
|
3838
|
+
return _el$30;
|
|
3833
3839
|
}
|
|
3834
|
-
}), _el$
|
|
3835
|
-
insert(_el$
|
|
3840
|
+
}), _el$72);
|
|
3841
|
+
insert(_el$15, createComponent(Show, {
|
|
3836
3842
|
get when() {
|
|
3837
3843
|
return sidebarTab() === "checkpoints";
|
|
3838
3844
|
},
|
|
3839
3845
|
get children() {
|
|
3840
|
-
var _el$
|
|
3841
|
-
_el$
|
|
3842
|
-
insert(_el$
|
|
3846
|
+
var _el$53 = _tmpl$0$2(), _el$54 = _el$53.firstChild, _el$55 = _el$54.firstChild, _el$56 = _el$55.firstChild, _el$57 = _el$56.nextSibling, _el$58 = _el$54.nextSibling, _el$59 = _el$58.firstChild, _el$60 = _el$59.firstChild, _el$61 = _el$60.nextSibling;
|
|
3847
|
+
_el$59.nextSibling;
|
|
3848
|
+
insert(_el$57, (() => {
|
|
3843
3849
|
var _c$3 = memo(() => recentCheckpoints().length > 0);
|
|
3844
3850
|
return () => _c$3() ? `${recentCheckpoints().length} saved snapshots` : "Save and restore session snapshots";
|
|
3845
3851
|
})());
|
|
3846
|
-
_el$
|
|
3847
|
-
_el$
|
|
3852
|
+
_el$60.$$input = (e) => setCheckpointName(e.currentTarget.value);
|
|
3853
|
+
_el$61.$$click = async () => {
|
|
3848
3854
|
const name = checkpointName().trim();
|
|
3849
3855
|
await createCheckpoint(name || void 0);
|
|
3850
3856
|
setCheckpointName("");
|
|
3851
3857
|
};
|
|
3852
|
-
insert(_el$
|
|
3858
|
+
insert(_el$58, createComponent(Show, {
|
|
3853
3859
|
get when() {
|
|
3854
3860
|
return recentCheckpoints().length > 0;
|
|
3855
3861
|
},
|
|
3856
3862
|
get fallback() {
|
|
3857
|
-
return _tmpl$
|
|
3863
|
+
return _tmpl$36();
|
|
3858
3864
|
},
|
|
3859
3865
|
get children() {
|
|
3860
|
-
var _el$
|
|
3861
|
-
insert(_el$
|
|
3866
|
+
var _el$63 = _tmpl$9$2();
|
|
3867
|
+
insert(_el$63, createComponent(For, {
|
|
3862
3868
|
get each() {
|
|
3863
3869
|
return recentCheckpoints();
|
|
3864
3870
|
},
|
|
3865
3871
|
children: (checkpoint, i) => (() => {
|
|
3866
|
-
var _el$
|
|
3867
|
-
insert(_el$
|
|
3872
|
+
var _el$133 = _tmpl$38(), _el$134 = _el$133.firstChild, _el$135 = _el$134.firstChild, _el$137 = _el$134.nextSibling, _el$138 = _el$137.firstChild, _el$139 = _el$138.nextSibling, _el$140 = _el$139.nextSibling;
|
|
3873
|
+
insert(_el$134, createComponent(Show, {
|
|
3868
3874
|
get when() {
|
|
3869
3875
|
return i() < recentCheckpoints().length - 1;
|
|
3870
3876
|
},
|
|
3871
3877
|
get children() {
|
|
3872
|
-
return _tmpl$
|
|
3878
|
+
return _tmpl$37();
|
|
3873
3879
|
}
|
|
3874
3880
|
}), null);
|
|
3875
|
-
insert(_el$
|
|
3876
|
-
insert(_el$
|
|
3877
|
-
_el$
|
|
3878
|
-
createRenderEffect(() => _el$
|
|
3879
|
-
return _el$
|
|
3881
|
+
insert(_el$138, () => checkpoint.name);
|
|
3882
|
+
insert(_el$139, () => new Date(checkpoint.createdAt).toLocaleString());
|
|
3883
|
+
_el$140.$$click = () => void restoreCheckpoint(checkpoint.id);
|
|
3884
|
+
createRenderEffect(() => _el$135.classList.toggle("latest", !!(i() === 0)));
|
|
3885
|
+
return _el$133;
|
|
3880
3886
|
})()
|
|
3881
3887
|
}));
|
|
3882
|
-
return _el$
|
|
3888
|
+
return _el$63;
|
|
3883
3889
|
}
|
|
3884
3890
|
}), null);
|
|
3885
|
-
createRenderEffect(() => _el$
|
|
3886
|
-
return _el$
|
|
3891
|
+
createRenderEffect(() => _el$60.value = checkpointName());
|
|
3892
|
+
return _el$53;
|
|
3887
3893
|
}
|
|
3888
|
-
}), _el$
|
|
3889
|
-
insert(_el$
|
|
3894
|
+
}), _el$72);
|
|
3895
|
+
insert(_el$15, createComponent(Show, {
|
|
3890
3896
|
get when() {
|
|
3891
3897
|
return sidebarTab() === "chat";
|
|
3892
3898
|
},
|
|
@@ -3896,50 +3902,50 @@ ${contextBlock}` : contextBlock);
|
|
|
3896
3902
|
return messages2();
|
|
3897
3903
|
},
|
|
3898
3904
|
children: (msg) => (() => {
|
|
3899
|
-
var _el$
|
|
3900
|
-
insert(_el$
|
|
3905
|
+
var _el$141 = _tmpl$39();
|
|
3906
|
+
insert(_el$141, createComponent(MarkdownMessage, {
|
|
3901
3907
|
get content() {
|
|
3902
3908
|
return msg.content;
|
|
3903
3909
|
}
|
|
3904
3910
|
}));
|
|
3905
|
-
createRenderEffect(() => className(_el$
|
|
3906
|
-
return _el$
|
|
3911
|
+
createRenderEffect(() => className(_el$141, `message message-${msg.role}`));
|
|
3912
|
+
return _el$141;
|
|
3907
3913
|
})()
|
|
3908
3914
|
}), createComponent(Show, {
|
|
3909
3915
|
get when() {
|
|
3910
3916
|
return isStreaming2();
|
|
3911
3917
|
},
|
|
3912
3918
|
get children() {
|
|
3913
|
-
var _el$
|
|
3914
|
-
insert(_el$
|
|
3919
|
+
var _el$64 = _tmpl$11$2(), _el$65 = _el$64.firstChild;
|
|
3920
|
+
insert(_el$65, createComponent(Show, {
|
|
3915
3921
|
get when() {
|
|
3916
3922
|
return hasFirstChunk2();
|
|
3917
3923
|
},
|
|
3918
3924
|
get fallback() {
|
|
3919
|
-
return _tmpl$
|
|
3925
|
+
return _tmpl$40();
|
|
3920
3926
|
},
|
|
3921
3927
|
get children() {
|
|
3922
|
-
var _el$
|
|
3923
|
-
_el$
|
|
3924
|
-
insert(_el$
|
|
3928
|
+
var _el$66 = _tmpl$10$2(), _el$67 = _el$66.firstChild, _el$68 = _el$67.firstChild;
|
|
3929
|
+
_el$68.nextSibling;
|
|
3930
|
+
insert(_el$66, createComponent(MarkdownMessage, {
|
|
3925
3931
|
get content() {
|
|
3926
3932
|
return streamingText2();
|
|
3927
3933
|
}
|
|
3928
|
-
}), _el$
|
|
3929
|
-
insert(_el$
|
|
3934
|
+
}), _el$67);
|
|
3935
|
+
insert(_el$67, createComponent(Show, {
|
|
3930
3936
|
get when() {
|
|
3931
3937
|
return elapsedSeconds() > 0;
|
|
3932
3938
|
},
|
|
3933
3939
|
get children() {
|
|
3934
|
-
var _el$
|
|
3935
|
-
insert(_el$
|
|
3936
|
-
return _el$
|
|
3940
|
+
var _el$70 = _tmpl$1$2();
|
|
3941
|
+
insert(_el$70, () => ` • ${elapsedSeconds()}s`);
|
|
3942
|
+
return _el$70;
|
|
3937
3943
|
}
|
|
3938
3944
|
}), null);
|
|
3939
|
-
return _el$
|
|
3945
|
+
return _el$66;
|
|
3940
3946
|
}
|
|
3941
3947
|
}));
|
|
3942
|
-
return _el$
|
|
3948
|
+
return _el$64;
|
|
3943
3949
|
}
|
|
3944
3950
|
}), createComponent(Show, {
|
|
3945
3951
|
get when() {
|
|
@@ -3951,22 +3957,22 @@ ${contextBlock}` : contextBlock);
|
|
|
3951
3957
|
return runtimeState2().supervisor.pendingApprovals;
|
|
3952
3958
|
},
|
|
3953
3959
|
children: (approval) => (() => {
|
|
3954
|
-
var _el$
|
|
3955
|
-
insert(_el$
|
|
3956
|
-
insert(_el$
|
|
3960
|
+
var _el$143 = _tmpl$42(), _el$144 = _el$143.firstChild, _el$145 = _el$144.nextSibling, _el$146 = _el$145.firstChild, _el$147 = _el$146.firstChild, _el$148 = _el$147.nextSibling, _el$150 = _el$146.nextSibling, _el$151 = _el$150.nextSibling, _el$152 = _el$151.firstChild, _el$153 = _el$152.nextSibling;
|
|
3961
|
+
insert(_el$148, () => approval.name);
|
|
3962
|
+
insert(_el$145, createComponent(Show, {
|
|
3957
3963
|
get when() {
|
|
3958
3964
|
return approval.argsSummary;
|
|
3959
3965
|
},
|
|
3960
3966
|
get children() {
|
|
3961
|
-
var _el$
|
|
3962
|
-
insert(_el$
|
|
3963
|
-
return _el$
|
|
3967
|
+
var _el$149 = _tmpl$41();
|
|
3968
|
+
insert(_el$149, () => approval.argsSummary);
|
|
3969
|
+
return _el$149;
|
|
3964
3970
|
}
|
|
3965
|
-
}), _el$
|
|
3966
|
-
insert(_el$
|
|
3967
|
-
_el$
|
|
3968
|
-
_el$
|
|
3969
|
-
return _el$
|
|
3971
|
+
}), _el$150);
|
|
3972
|
+
insert(_el$150, () => approval.reason);
|
|
3973
|
+
_el$152.$$click = () => void resolveApproval(approval.id, true);
|
|
3974
|
+
_el$153.$$click = () => void resolveApproval(approval.id, false);
|
|
3975
|
+
return _el$143;
|
|
3970
3976
|
})()
|
|
3971
3977
|
});
|
|
3972
3978
|
}
|
|
@@ -3975,14 +3981,14 @@ ${contextBlock}` : contextBlock);
|
|
|
3975
3981
|
return memo(() => messages2().length === 0)() && !isStreaming2();
|
|
3976
3982
|
},
|
|
3977
3983
|
get children() {
|
|
3978
|
-
return _tmpl$
|
|
3984
|
+
return _tmpl$12$2();
|
|
3979
3985
|
}
|
|
3980
3986
|
})];
|
|
3981
3987
|
}
|
|
3982
|
-
}), _el$
|
|
3983
|
-
var _ref$
|
|
3984
|
-
typeof _ref$
|
|
3985
|
-
insert(_el$
|
|
3988
|
+
}), _el$72);
|
|
3989
|
+
var _ref$ = messagesEndRef;
|
|
3990
|
+
typeof _ref$ === "function" ? use(_ref$, _el$72) : messagesEndRef = _el$72;
|
|
3991
|
+
insert(_el$2, createComponent(Show, {
|
|
3986
3992
|
get when() {
|
|
3987
3993
|
return sidebarTab() === "chat";
|
|
3988
3994
|
},
|
|
@@ -3992,85 +3998,85 @@ ${contextBlock}` : contextBlock);
|
|
|
3992
3998
|
return isStreaming2() || messages2().length > 0;
|
|
3993
3999
|
},
|
|
3994
4000
|
get children() {
|
|
3995
|
-
var _el$
|
|
3996
|
-
insert(_el$
|
|
4001
|
+
var _el$73 = _tmpl$15();
|
|
4002
|
+
insert(_el$73, createComponent(Show, {
|
|
3997
4003
|
get when() {
|
|
3998
4004
|
return isStreaming2();
|
|
3999
4005
|
},
|
|
4000
4006
|
get children() {
|
|
4001
|
-
var _el$
|
|
4002
|
-
_el$
|
|
4003
|
-
return _el$
|
|
4007
|
+
var _el$74 = _tmpl$13$1();
|
|
4008
|
+
_el$74.$$click = () => cancel();
|
|
4009
|
+
return _el$74;
|
|
4004
4010
|
}
|
|
4005
4011
|
}), null);
|
|
4006
|
-
insert(_el$
|
|
4012
|
+
insert(_el$73, createComponent(Show, {
|
|
4007
4013
|
get when() {
|
|
4008
4014
|
return memo(() => !!!isStreaming2())() && messages2().length > 0;
|
|
4009
4015
|
},
|
|
4010
4016
|
get children() {
|
|
4011
|
-
var _el$
|
|
4012
|
-
_el$
|
|
4013
|
-
return _el$
|
|
4017
|
+
var _el$75 = _tmpl$14$1();
|
|
4018
|
+
_el$75.$$click = handleRetry;
|
|
4019
|
+
return _el$75;
|
|
4014
4020
|
}
|
|
4015
4021
|
}), null);
|
|
4016
|
-
return _el$
|
|
4022
|
+
return _el$73;
|
|
4017
4023
|
}
|
|
4018
4024
|
}), createComponent(Show, {
|
|
4019
4025
|
get when() {
|
|
4020
4026
|
return highlightCount() > 0;
|
|
4021
4027
|
},
|
|
4022
4028
|
get children() {
|
|
4023
|
-
var _el$
|
|
4024
|
-
_el$
|
|
4025
|
-
var _el$
|
|
4026
|
-
_el$
|
|
4027
|
-
_el$
|
|
4028
|
-
insert(_el$
|
|
4029
|
+
var _el$76 = _tmpl$16(), _el$77 = _el$76.firstChild, _el$78 = _el$77.nextSibling;
|
|
4030
|
+
_el$78.firstChild;
|
|
4031
|
+
var _el$80 = _el$78.nextSibling;
|
|
4032
|
+
_el$77.$$click = () => void scrollToHighlight(highlightIndex() - 1);
|
|
4033
|
+
_el$78.$$click = () => void scrollToHighlight(highlightIndex() < 0 ? 0 : highlightIndex());
|
|
4034
|
+
insert(_el$78, (() => {
|
|
4029
4035
|
var _c$4 = memo(() => highlightIndex() >= 0);
|
|
4030
4036
|
return () => _c$4() ? `${highlightIndex() + 1} / ${highlightCount()}` : `${highlightCount()} highlight${highlightCount() > 1 ? "s" : ""}`;
|
|
4031
4037
|
})(), null);
|
|
4032
|
-
_el$
|
|
4038
|
+
_el$80.$$click = () => void scrollToHighlight(highlightIndex() < 0 ? 0 : highlightIndex() + 1);
|
|
4033
4039
|
createRenderEffect((_p$) => {
|
|
4034
|
-
var _v$
|
|
4035
|
-
_v$
|
|
4036
|
-
_v$
|
|
4040
|
+
var _v$3 = highlightIndex() <= 0, _v$4 = highlightIndex() >= highlightCount() - 1;
|
|
4041
|
+
_v$3 !== _p$.e && (_el$77.disabled = _p$.e = _v$3);
|
|
4042
|
+
_v$4 !== _p$.t && (_el$80.disabled = _p$.t = _v$4);
|
|
4037
4043
|
return _p$;
|
|
4038
4044
|
}, {
|
|
4039
4045
|
e: void 0,
|
|
4040
4046
|
t: void 0
|
|
4041
4047
|
});
|
|
4042
|
-
return _el$
|
|
4048
|
+
return _el$76;
|
|
4043
4049
|
}
|
|
4044
4050
|
}), (() => {
|
|
4045
|
-
var _el$
|
|
4046
|
-
_el$
|
|
4051
|
+
var _el$81 = _tmpl$17(), _el$82 = _el$81.firstChild, _el$83 = _el$82.nextSibling;
|
|
4052
|
+
_el$82.$$keydown = (e) => {
|
|
4047
4053
|
if (e.key === "Enter" && !e.shiftKey) {
|
|
4048
4054
|
e.preventDefault();
|
|
4049
4055
|
void handleChatSend();
|
|
4050
4056
|
}
|
|
4051
4057
|
};
|
|
4052
|
-
_el$
|
|
4053
|
-
var _ref$
|
|
4054
|
-
typeof _ref$
|
|
4055
|
-
_el$
|
|
4056
|
-
createRenderEffect(() => _el$
|
|
4057
|
-
createRenderEffect(() => _el$
|
|
4058
|
-
return _el$
|
|
4058
|
+
_el$82.$$input = (e) => setChatInput(e.currentTarget.value);
|
|
4059
|
+
var _ref$2 = chatInputRef;
|
|
4060
|
+
typeof _ref$2 === "function" ? use(_ref$2, _el$82) : chatInputRef = _el$82;
|
|
4061
|
+
_el$83.$$click = () => void handleChatSend();
|
|
4062
|
+
createRenderEffect(() => _el$83.disabled = !chatInput().trim() || isStreaming2());
|
|
4063
|
+
createRenderEffect(() => _el$82.value = chatInput());
|
|
4064
|
+
return _el$81;
|
|
4059
4065
|
})()];
|
|
4060
4066
|
}
|
|
4061
4067
|
}), null);
|
|
4062
4068
|
createRenderEffect((_p$) => {
|
|
4063
|
-
var _v$
|
|
4064
|
-
_v$
|
|
4065
|
-
_v$
|
|
4066
|
-
_v$
|
|
4067
|
-
_v$
|
|
4068
|
-
_v$
|
|
4069
|
-
_v$
|
|
4070
|
-
_v$
|
|
4071
|
-
_v$
|
|
4072
|
-
_v$
|
|
4073
|
-
_v$
|
|
4069
|
+
var _v$5 = `${sidebarWidth2()}px`, _v$6 = !!isDragging(), _v$7 = !!(sidebarTab() === "supervisor"), _v$8 = sidebarTab() === "supervisor", _v$9 = !!(sidebarTab() === "bookmarks"), _v$0 = sidebarTab() === "bookmarks", _v$1 = !!(sidebarTab() === "checkpoints"), _v$10 = sidebarTab() === "checkpoints", _v$11 = !!(sidebarTab() === "chat"), _v$12 = sidebarTab() === "chat";
|
|
4070
|
+
_v$5 !== _p$.e && setStyleProperty(_el$2, "width", _p$.e = _v$5);
|
|
4071
|
+
_v$6 !== _p$.t && _el$3.classList.toggle("dragging", _p$.t = _v$6);
|
|
4072
|
+
_v$7 !== _p$.a && _el$1.classList.toggle("active", _p$.a = _v$7);
|
|
4073
|
+
_v$8 !== _p$.o && setAttribute(_el$1, "aria-selected", _p$.o = _v$8);
|
|
4074
|
+
_v$9 !== _p$.i && _el$12.classList.toggle("active", _p$.i = _v$9);
|
|
4075
|
+
_v$0 !== _p$.n && setAttribute(_el$12, "aria-selected", _p$.n = _v$0);
|
|
4076
|
+
_v$1 !== _p$.s && _el$13.classList.toggle("active", _p$.s = _v$1);
|
|
4077
|
+
_v$10 !== _p$.h && setAttribute(_el$13, "aria-selected", _p$.h = _v$10);
|
|
4078
|
+
_v$11 !== _p$.r && _el$14.classList.toggle("active", _p$.r = _v$11);
|
|
4079
|
+
_v$12 !== _p$.d && setAttribute(_el$14, "aria-selected", _p$.d = _v$12);
|
|
4074
4080
|
return _p$;
|
|
4075
4081
|
}, {
|
|
4076
4082
|
e: void 0,
|
|
@@ -4084,11 +4090,11 @@ ${contextBlock}` : contextBlock);
|
|
|
4084
4090
|
r: void 0,
|
|
4085
4091
|
d: void 0
|
|
4086
4092
|
});
|
|
4087
|
-
return _el$
|
|
4093
|
+
return _el$2;
|
|
4088
4094
|
}
|
|
4089
4095
|
});
|
|
4090
4096
|
};
|
|
4091
|
-
delegateEvents(["
|
|
4097
|
+
delegateEvents(["pointerdown", "click", "input", "keydown"]);
|
|
4092
4098
|
var _tmpl$$2 = /* @__PURE__ */ template(`<div class=devtools-console>`), _tmpl$2$2 = /* @__PURE__ */ template(`<div class=devtools-empty>Waiting for console output... Console monitoring activates when an agent uses devtools.`), _tmpl$3$1 = /* @__PURE__ */ template(`<div><span></span><span class=console-time></span><span class=console-text></span><span class=console-source>`), _tmpl$4$1 = /* @__PURE__ */ template(`<div class=devtools-network><div class=network-header><span>Method</span><span>URL</span><span>Status</span><span>Type</span><span>Time`), _tmpl$5$1 = /* @__PURE__ */ template(`<div class=devtools-empty>Waiting for network requests... Network monitoring activates when an agent uses devtools.`), _tmpl$6$1 = /* @__PURE__ */ template(`<div><span class=network-method></span><span class=network-url></span><span></span><span class=network-type></span><span class=network-duration>`), _tmpl$7$1 = /* @__PURE__ */ template(`<div class=devtools-activity>`), _tmpl$8$1 = /* @__PURE__ */ template(`<div class=devtools-empty>Waiting for agent devtools activity...`), _tmpl$9$1 = /* @__PURE__ */ template(`<div class=activity-entry><span class=activity-time></span><span class=activity-tool></span><span class=activity-args></span><span></span><span class=activity-duration>`), _tmpl$0$1 = /* @__PURE__ */ template(`<span class="devtools-tab-badge error">`), _tmpl$1$1 = /* @__PURE__ */ template(`<span class="devtools-tab-badge count">`), _tmpl$10$1 = /* @__PURE__ */ template(`<div class=export-date-inputs><div class=export-date-row><span class=export-date-label>From</span><input class=export-date-input type=date></div><div class=export-date-row><span class=export-date-label>To</span><input class=export-date-input type=date>`), _tmpl$11$1 = /* @__PURE__ */ template(`<div class=devtools-export-dropdown><div class=export-section><div class=export-section-label>Log Types</div><label class=export-checkbox><input type=checkbox>Console</label><label class=export-checkbox><input type=checkbox>Network</label><label class=export-checkbox><input type=checkbox>Activity</label></div><div class=export-section><div class=export-section-label>Date Range</div><div class=export-date-btns><button>Today</button><button>Custom</button></div></div><button class=export-submit>Export JSON`), _tmpl$12$1 = /* @__PURE__ */ template(`<div class=devtools-panel><div class=devtools-tabs><button>Console</button><button>Network</button><button>Activity</button><div class=devtools-tab-spacer></div><div class=devtools-export-wrap><button title="Export Logs"><svg width=13 height=13 viewBox="0 0 13 13"fill=none style=vertical-align:middle><path d="M6.5 1v7M3.5 5l3 3 3-3"stroke=currentColor stroke-width=1.3 stroke-linecap=round stroke-linejoin=round></path><path d="M1 9.5v1A1.5 1.5 0 0 0 2.5 12h8A1.5 1.5 0 0 0 12 10.5v-1"stroke=currentColor stroke-width=1.3 stroke-linecap=round></path></svg></button></div><button class=devtools-close-btn title="Close DevTools">×</button></div><div class=devtools-content>`);
|
|
4093
4099
|
function formatTime(iso) {
|
|
4094
4100
|
try {
|