@kingsoftcloud/ksadk-web 0.2.16 → 0.2.18
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/CHANGELOG.md +22 -0
- package/dist-ksadk/assets/{ArtifactsPanel-B06x6rZH.js → ArtifactsPanel-C0meuOdi.js} +1 -1
- package/dist-ksadk/assets/{CodeBlock-D0ZicJVx.js → CodeBlock-BbI4HPtJ.js} +1 -1
- package/dist-ksadk/assets/{MathMessageMarkdown-DnGENSaK.js → MathMessageMarkdown-DMLQYoLp.js} +1 -1
- package/dist-ksadk/assets/{MermaidBlock-hUd4MS-D.js → MermaidBlock-DCR8WZ17.js} +6 -6
- package/dist-ksadk/assets/{NativeTerminalPanel-HgxLA5wc.js → NativeTerminalPanel-CKUvWhUz.js} +1 -1
- package/dist-ksadk/assets/{arc-DdocI6pD.js → arc-bj2rZnP5.js} +1 -1
- package/dist-ksadk/assets/architecture-7EHR7CIX-Cr6Xz1_c.js +1 -0
- package/dist-ksadk/assets/{architectureDiagram-3BPJPVTR-CQMnd8MC.js → architectureDiagram-3BPJPVTR-2u1ltDIj.js} +1 -1
- package/dist-ksadk/assets/{blockDiagram-GPEHLZMM-_Kk7Sg5y.js → blockDiagram-GPEHLZMM-D6fvdK20.js} +1 -1
- package/dist-ksadk/assets/{c4Diagram-AAUBKEIU-B76y_Yuu.js → c4Diagram-AAUBKEIU-BK82L5n5.js} +1 -1
- package/dist-ksadk/assets/channel-BSSOwFIb.js +1 -0
- package/dist-ksadk/assets/{chunk-2J33WTMH-Brm7O3ZZ.js → chunk-2J33WTMH-DLVdkeyQ.js} +1 -1
- package/dist-ksadk/assets/{chunk-4BX2VUAB-Bl8JEjQI.js → chunk-4BX2VUAB-BbwsYcbW.js} +1 -1
- package/dist-ksadk/assets/{chunk-55IACEB6-CjasIGqA.js → chunk-55IACEB6-DOairxzw.js} +1 -1
- package/dist-ksadk/assets/{chunk-727SXJPM-BBJRvNjI.js → chunk-727SXJPM-hCO487gs.js} +1 -1
- package/dist-ksadk/assets/{chunk-AQP2D5EJ-VuZ8Sc3p.js → chunk-AQP2D5EJ-XU8vDOuG.js} +1 -1
- package/dist-ksadk/assets/{chunk-FMBD7UC4-CirX_mqI.js → chunk-FMBD7UC4-PrapyfMu.js} +1 -1
- package/dist-ksadk/assets/{chunk-ND2GUHAM-CfFXNLUo.js → chunk-ND2GUHAM-CboKhTZ3.js} +1 -1
- package/dist-ksadk/assets/chunk-QZHKN3VN-XXpdiwUL.js +1 -0
- package/dist-ksadk/assets/classDiagram-4FO5ZUOK-C5HvGiyK.js +1 -0
- package/dist-ksadk/assets/classDiagram-v2-Q7XG4LA2-C5HvGiyK.js +1 -0
- package/dist-ksadk/assets/{cose-bilkent-S5V4N54A-DCCZQXHd.js → cose-bilkent-S5V4N54A-_N8bJ-EU.js} +1 -1
- package/dist-ksadk/assets/{dagre-BM42HDAG-DNfED9pb.js → dagre-BM42HDAG-FoDlo5J2.js} +1 -1
- package/dist-ksadk/assets/{diagram-2AECGRRQ-yO4PjQql.js → diagram-2AECGRRQ-BBp6ebBw.js} +1 -1
- package/dist-ksadk/assets/{diagram-5GNKFQAL-Bt2ljVnh.js → diagram-5GNKFQAL-CqOvG1PR.js} +1 -1
- package/dist-ksadk/assets/{diagram-KO2AKTUF-Bb7wNlPg.js → diagram-KO2AKTUF-O9T3t6ba.js} +1 -1
- package/dist-ksadk/assets/{diagram-LMA3HP47-CrH2YWcd.js → diagram-LMA3HP47-CGG8ekBO.js} +1 -1
- package/dist-ksadk/assets/{diagram-OG6HWLK6-bbtBEd5z.js → diagram-OG6HWLK6-4BmH1EEg.js} +1 -1
- package/dist-ksadk/assets/{dist-CyRnZq0Y.js → dist-6kSZvCZh.js} +1 -1
- package/dist-ksadk/assets/{dist-FZxygvt4.js → dist-B67uF2uK.js} +1 -1
- package/dist-ksadk/assets/{dist-DG5t7Qfp.js → dist-BMKM66B4.js} +1 -1
- package/dist-ksadk/assets/{dist-uW8Tf3ke.js → dist-BVzcWa6D.js} +1 -1
- package/dist-ksadk/assets/{dist-DKfGasx3.js → dist-Bk1l05Ni.js} +1 -1
- package/dist-ksadk/assets/{dist-Bn3JJ6WT.js → dist-BkJjNih3.js} +1 -1
- package/dist-ksadk/assets/{dist-D1A6B1m9.js → dist-BmuTWcm7.js} +1 -1
- package/dist-ksadk/assets/{dist-BA2ewTEN.js → dist-C2DKRFVK.js} +1 -1
- package/dist-ksadk/assets/{dist-pl0ZdN9h.js → dist-CWiTDN_V.js} +1 -1
- package/dist-ksadk/assets/{dist-BvXOJV-u.js → dist-CZ6C3x8B.js} +1 -1
- package/dist-ksadk/assets/{dist-cKezgS7F.js → dist-CiZHB6ZW.js} +1 -1
- package/dist-ksadk/assets/{dist-Yj9GFrNq.js → dist-Cp1_jKwf.js} +1 -1
- package/dist-ksadk/assets/{dist-BorYRkBd.js → dist-Cwhk4lwI.js} +1 -1
- package/dist-ksadk/assets/{dist-BVqRhq4R.js → dist-D5JGcxBx.js} +1 -1
- package/dist-ksadk/assets/{dist-D8EPdm_6.js → dist-D99wf6_X.js} +1 -1
- package/dist-ksadk/assets/{dist-CaTCmLPC.js → dist-DCpZrjaK.js} +1 -1
- package/dist-ksadk/assets/{dist-UgODcks7.js → dist-DI-oVAXw.js} +1 -1
- package/dist-ksadk/assets/{dist-521BEWj6.js → dist-DLMjL01k.js} +1 -1
- package/dist-ksadk/assets/{dist-C6o23WK-.js → dist-DLeM1OCK.js} +1 -1
- package/dist-ksadk/assets/{dist-B2SIcB2s.js → dist-DM0rEQPk.js} +1 -1
- package/dist-ksadk/assets/{dist-DP5ziceH.js → dist-DbaH3p5h.js} +1 -1
- package/dist-ksadk/assets/{dist-Crh9NdRs.js → dist-S4klkK5W.js} +1 -1
- package/dist-ksadk/assets/{erDiagram-TEJ5UH35-DUiCZd4K.js → erDiagram-TEJ5UH35-oJhaci7S.js} +1 -1
- package/dist-ksadk/assets/eventmodeling-FCH6USID-CIgwHJLL.js +1 -0
- package/dist-ksadk/assets/{flowDiagram-I6XJVG4X-DYGVQCIm.js → flowDiagram-I6XJVG4X-DtTmUan-.js} +1 -1
- package/dist-ksadk/assets/{ganttDiagram-6RSMTGT7-BhZtYjVe.js → ganttDiagram-6RSMTGT7-BSsb_eij.js} +1 -1
- package/dist-ksadk/assets/gitGraph-WXDBUCRP-BVAJ7uo0.js +1 -0
- package/dist-ksadk/assets/{gitGraphDiagram-PVQCEYII-C7drTtvf.js → gitGraphDiagram-PVQCEYII-BR5s6Pws.js} +1 -1
- package/dist-ksadk/assets/index-BH7-pC0B.js +165 -0
- package/dist-ksadk/assets/info-J43DQDTF-MT80V4ge.js +1 -0
- package/dist-ksadk/assets/{infoDiagram-5YYISTIA-DHmGck8o.js → infoDiagram-5YYISTIA-DYPc5cvh.js} +1 -1
- package/dist-ksadk/assets/{ishikawaDiagram-YF4QCWOH-fNk1ytOs.js → ishikawaDiagram-YF4QCWOH-MoBdALDg.js} +1 -1
- package/dist-ksadk/assets/{journeyDiagram-JHISSGLW-DaEsNvC6.js → journeyDiagram-JHISSGLW-DgLiQT8l.js} +1 -1
- package/dist-ksadk/assets/{kanban-definition-UN3LZRKU-BInyyqqY.js → kanban-definition-UN3LZRKU-CsFx112F.js} +1 -1
- package/dist-ksadk/assets/{katex-DGk10-r4.js → katex-DRsiwpM2.js} +1 -1
- package/dist-ksadk/assets/{linear-B2JRl5uz.js → linear-TNRQ5Orv.js} +1 -1
- package/dist-ksadk/assets/{mermaid-parser.core-CMRjttGv.js → mermaid-parser.core-D2eMVOgo.js} +2 -2
- package/dist-ksadk/assets/{mindmap-definition-RKZ34NQL-BUSqS_N5.js → mindmap-definition-RKZ34NQL-BtByYFhL.js} +1 -1
- package/dist-ksadk/assets/packet-YPE3B663-BLKhbXZB.js +1 -0
- package/dist-ksadk/assets/pie-LRSECV5Y-DFOikjSY.js +1 -0
- package/dist-ksadk/assets/{pieDiagram-4H26LBE5-DAc7TaHh.js → pieDiagram-4H26LBE5-DPnuCB8c.js} +1 -1
- package/dist-ksadk/assets/{quadrantDiagram-W4KKPZXB-CMTmojtL.js → quadrantDiagram-W4KKPZXB-miFpCPv4.js} +1 -1
- package/dist-ksadk/assets/radar-GUYGQ44K-095b1Ikw.js +1 -0
- package/dist-ksadk/assets/{requirementDiagram-4Y6WPE33-DMksKYum.js → requirementDiagram-4Y6WPE33-mjB_yYkW.js} +1 -1
- package/dist-ksadk/assets/{sankeyDiagram-5OEKKPKP-BPcqMkO3.js → sankeyDiagram-5OEKKPKP-D7hSlZZZ.js} +1 -1
- package/dist-ksadk/assets/{sequenceDiagram-3UESZ5HK-CmeJJ6Nf.js → sequenceDiagram-3UESZ5HK-D9Cx6hC3.js} +1 -1
- package/dist-ksadk/assets/{stateDiagram-AJRCARHV-D7oaMooj.js → stateDiagram-AJRCARHV-D_zrg47o.js} +1 -1
- package/dist-ksadk/assets/stateDiagram-v2-BHNVJYJU-J9kCb0nC.js +1 -0
- package/dist-ksadk/assets/{timeline-definition-PNZ67QCA-BjxnngqB.js → timeline-definition-PNZ67QCA-CwSec0Wa.js} +1 -1
- package/dist-ksadk/assets/treeView-BLDUP644-yinfJEY6.js +1 -0
- package/dist-ksadk/assets/treemap-LRROVOQU-DosUqN1Q.js +1 -0
- package/dist-ksadk/assets/{vennDiagram-CIIHVFJN-CvHaX62m.js → vennDiagram-CIIHVFJN-agCVobiF.js} +1 -1
- package/dist-ksadk/assets/wardley-L42UT6IY-Bvp7-5uH.js +1 -0
- package/dist-ksadk/assets/{wardleyDiagram-YWT4CUSO-DgZ7L1lC.js → wardleyDiagram-YWT4CUSO-TmrlhWNt.js} +1 -1
- package/dist-ksadk/assets/{xychartDiagram-2RQKCTM6-C1D-4iPc.js → xychartDiagram-2RQKCTM6-DV71V-ah.js} +1 -1
- package/dist-ksadk/index.html +1 -1
- package/dist-lib/{ArtifactsPanel-D3AiN69_.js → ArtifactsPanel-DCn5q1OB.js} +1 -1
- package/dist-lib/{CodeBlock-CWHejqEk.js → CodeBlock-BGJr6bCf.js} +1 -1
- package/dist-lib/{MathMessageMarkdown-BlZXusY6.js → MathMessageMarkdown-DQPFplDT.js} +2 -2
- package/dist-lib/{NativeTerminalPanel-mQwtEFvo.js → NativeTerminalPanel-CjyPyYC4.js} +1 -1
- package/dist-lib/{WorkspacePanelContainer-D5WLGlO_.js → WorkspacePanelContainer-fvYVV4lp.js} +15 -17
- package/dist-lib/api/messages.d.ts +51 -0
- package/dist-lib/api/messages.d.ts.map +1 -0
- package/dist-lib/api/session.d.ts +20 -0
- package/dist-lib/api/session.d.ts.map +1 -1
- package/dist-lib/components.js +2 -2
- package/dist-lib/core/api/facade.d.ts +12 -0
- package/dist-lib/core/api/facade.d.ts.map +1 -1
- package/dist-lib/core/api/types.d.ts +38 -0
- package/dist-lib/core/api/types.d.ts.map +1 -1
- package/dist-lib/core/run/engine.d.ts.map +1 -1
- package/dist-lib/hooks/useSessionLifecycle.d.ts.map +1 -1
- package/dist-lib/runtime.js +277 -242
- package/dist-lib/utils/messages.d.ts +17 -0
- package/dist-lib/utils/messages.d.ts.map +1 -0
- package/dist-lib/utils/session-events.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist-ksadk/assets/architecture-7EHR7CIX-secg40UA.js +0 -1
- package/dist-ksadk/assets/channel-Ch9mVx2Q.js +0 -1
- package/dist-ksadk/assets/chunk-QZHKN3VN-DJTxDPIP.js +0 -1
- package/dist-ksadk/assets/classDiagram-4FO5ZUOK-BcixWJ90.js +0 -1
- package/dist-ksadk/assets/classDiagram-v2-Q7XG4LA2-BcixWJ90.js +0 -1
- package/dist-ksadk/assets/eventmodeling-FCH6USID-CyTirFUD.js +0 -1
- package/dist-ksadk/assets/gitGraph-WXDBUCRP-BLAtLgjE.js +0 -1
- package/dist-ksadk/assets/index-CouGNrf0.js +0 -165
- package/dist-ksadk/assets/info-J43DQDTF-Dpnm-hnd.js +0 -1
- package/dist-ksadk/assets/packet-YPE3B663-CBNSejbV.js +0 -1
- package/dist-ksadk/assets/pie-LRSECV5Y-DYYr4y45.js +0 -1
- package/dist-ksadk/assets/radar-GUYGQ44K-DvlkOiap.js +0 -1
- package/dist-ksadk/assets/stateDiagram-v2-BHNVJYJU-UPHW9RVm.js +0 -1
- package/dist-ksadk/assets/treeView-BLDUP644-ClgeJ2Gz.js +0 -1
- package/dist-ksadk/assets/treemap-LRROVOQU-rQg49Xh0.js +0 -1
- package/dist-ksadk/assets/wardley-L42UT6IY-DYuzSwXI.js +0 -1
- package/dist-lib/utils/run-state.d.ts +0 -3
- package/dist-lib/utils/run-state.d.ts.map +0 -1
package/dist-lib/runtime.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as e, t } from "./capabilities-CiyyeRQ9.js";
|
|
2
|
-
import { C as n, D as r, E as i, O as a, T as o, _ as s, b as c, c as l, f as u, g as d, h as f, k as p, l as m, m as h, n as g, o as _, p as v, r as y, s as b, t as ee, u as te, v as x, w as S, y as C } from "./WorkspacePanelContainer-
|
|
2
|
+
import { C as n, D as r, E as i, O as a, T as o, _ as s, b as c, c as l, f as u, g as d, h as f, k as p, l as m, m as h, n as g, o as _, p as v, r as y, s as b, t as ee, u as te, v as x, w as S, y as C } from "./WorkspacePanelContainer-fvYVV4lp.js";
|
|
3
3
|
import { t as w } from "./artifact-BfFsPe5A.js";
|
|
4
4
|
import { X as T } from "lucide-react";
|
|
5
5
|
import { Fragment as ne, jsx as E, jsxs as D } from "react/jsx-runtime";
|
|
@@ -969,7 +969,9 @@ var ht = new Set([
|
|
|
969
969
|
"error",
|
|
970
970
|
"cancelled",
|
|
971
971
|
"canceled",
|
|
972
|
-
"aborted"
|
|
972
|
+
"aborted",
|
|
973
|
+
"interrupted",
|
|
974
|
+
"resume_failed"
|
|
973
975
|
]);
|
|
974
976
|
function gt(e) {
|
|
975
977
|
if (e.EventType !== "run_status") return null;
|
|
@@ -1261,11 +1263,21 @@ var yt = {
|
|
|
1261
1263
|
phase: "后台长任务已取消",
|
|
1262
1264
|
status: "stopped",
|
|
1263
1265
|
countEvent: !1
|
|
1266
|
+
}) : t === "interrupted" ? this.emit({
|
|
1267
|
+
type: "activity",
|
|
1268
|
+
phase: "后台长任务已中断",
|
|
1269
|
+
status: "stopped",
|
|
1270
|
+
countEvent: !1
|
|
1264
1271
|
}) : t === "failed" || t === "error" ? this.emit({
|
|
1265
1272
|
type: "activity",
|
|
1266
1273
|
phase: "后台长任务失败",
|
|
1267
1274
|
status: "failed",
|
|
1268
1275
|
countEvent: !1
|
|
1276
|
+
}) : t === "resume_failed" ? this.emit({
|
|
1277
|
+
type: "activity",
|
|
1278
|
+
phase: "后台长任务恢复失败",
|
|
1279
|
+
status: "failed",
|
|
1280
|
+
countEvent: !1
|
|
1269
1281
|
}) : this.emit({
|
|
1270
1282
|
type: "activity",
|
|
1271
1283
|
phase: "后台长任务已完成",
|
|
@@ -1732,7 +1744,9 @@ var Q = P()((e, t) => ({
|
|
|
1732
1744
|
"error",
|
|
1733
1745
|
"cancelled",
|
|
1734
1746
|
"canceled",
|
|
1735
|
-
"aborted"
|
|
1747
|
+
"aborted",
|
|
1748
|
+
"interrupted",
|
|
1749
|
+
"resume_failed"
|
|
1736
1750
|
]), Ft = new Set([
|
|
1737
1751
|
"tool_call",
|
|
1738
1752
|
"tool_result",
|
|
@@ -2212,18 +2226,12 @@ function rn(e = [], t = []) {
|
|
|
2212
2226
|
return Number.isFinite(n) && Number.isFinite(r) && n !== r ? n - r : Number(e?.Timestamp || 0) - Number(t?.Timestamp || 0);
|
|
2213
2227
|
});
|
|
2214
2228
|
}
|
|
2215
|
-
function an(e
|
|
2216
|
-
return (Array.isArray(e) ? e : []).reduce((e, t) => {
|
|
2217
|
-
let n = Number(t.SeqId || 0);
|
|
2218
|
-
return Number.isFinite(n) ? Math.max(e, n) : e;
|
|
2219
|
-
}, 0);
|
|
2220
|
-
}
|
|
2221
|
-
function on(e) {
|
|
2229
|
+
function an(e) {
|
|
2222
2230
|
return e?.EventType === "run_status" ? Pt.has(String(e.Content?.status || "").trim().toLowerCase()) : !1;
|
|
2223
2231
|
}
|
|
2224
2232
|
//#endregion
|
|
2225
2233
|
//#region src/core/run/dispatcher.ts
|
|
2226
|
-
var $ = !1,
|
|
2234
|
+
var $ = !1, on = new Set(["completed"]), sn = new Set([
|
|
2227
2235
|
"failed",
|
|
2228
2236
|
"error",
|
|
2229
2237
|
"cancelled",
|
|
@@ -2231,7 +2239,7 @@ var $ = !1, sn = new Set(["completed"]), cn = new Set([
|
|
|
2231
2239
|
"aborted",
|
|
2232
2240
|
"incomplete"
|
|
2233
2241
|
]);
|
|
2234
|
-
function
|
|
2242
|
+
function cn(e) {
|
|
2235
2243
|
$ || ($ = !0, J.getState().patchMessages((t) => [...t, {
|
|
2236
2244
|
id: e,
|
|
2237
2245
|
role: "model",
|
|
@@ -2240,8 +2248,8 @@ function ln(e) {
|
|
|
2240
2248
|
reasoning: ""
|
|
2241
2249
|
}]));
|
|
2242
2250
|
}
|
|
2243
|
-
function
|
|
2244
|
-
let t = String(e || "").trim().toLowerCase(), n =
|
|
2251
|
+
function ln(e) {
|
|
2252
|
+
let t = String(e || "").trim().toLowerCase(), n = on.has(t) ? "completed" : sn.has(t) ? "error" : null;
|
|
2245
2253
|
n && J.getState().patchMessages((e) => e.map((e) => {
|
|
2246
2254
|
if (!e.tools) return e;
|
|
2247
2255
|
let t = !1, r = Object.fromEntries(Object.entries(e.tools).map(([e, r]) => r.status === "running" ? (t = !0, [e, {
|
|
@@ -2254,7 +2262,7 @@ function un(e) {
|
|
|
2254
2262
|
} : e;
|
|
2255
2263
|
}));
|
|
2256
2264
|
}
|
|
2257
|
-
function
|
|
2265
|
+
function un(e) {
|
|
2258
2266
|
if (e.sessionId && z.getState().currentSessionId !== e.sessionId) {
|
|
2259
2267
|
e.type === "stage_changed" && (e.stage === "completing" || e.stage === "error" || e.stage === "cancelled") && ($ = !1);
|
|
2260
2268
|
return;
|
|
@@ -2280,28 +2288,28 @@ function dn(e) {
|
|
|
2280
2288
|
}]);
|
|
2281
2289
|
break;
|
|
2282
2290
|
case "assistant_message_created":
|
|
2283
|
-
|
|
2291
|
+
cn(e.messageId);
|
|
2284
2292
|
break;
|
|
2285
2293
|
case "text_delta":
|
|
2286
|
-
|
|
2294
|
+
cn(e.messageId), t.patchMessages((t) => t.map((t) => t.id === e.messageId ? {
|
|
2287
2295
|
...t,
|
|
2288
2296
|
content: t.content + e.delta
|
|
2289
2297
|
} : t));
|
|
2290
2298
|
break;
|
|
2291
2299
|
case "text_final":
|
|
2292
|
-
|
|
2300
|
+
cn(e.messageId), t.patchMessages((t) => t.map((t) => t.id === e.messageId ? {
|
|
2293
2301
|
...t,
|
|
2294
2302
|
content: e.text
|
|
2295
2303
|
} : t));
|
|
2296
2304
|
break;
|
|
2297
2305
|
case "reasoning_delta":
|
|
2298
|
-
|
|
2306
|
+
cn(e.messageId), t.patchMessages((t) => t.map((t) => t.id === e.messageId ? {
|
|
2299
2307
|
...t,
|
|
2300
2308
|
reasoning: (t.reasoning || "") + e.delta
|
|
2301
2309
|
} : t));
|
|
2302
2310
|
break;
|
|
2303
2311
|
case "tool_upsert":
|
|
2304
|
-
|
|
2312
|
+
cn(e.messageId), t.patchMessages((t) => t.map((t) => t.id === e.messageId ? {
|
|
2305
2313
|
...t,
|
|
2306
2314
|
tools: {
|
|
2307
2315
|
...t.tools || {},
|
|
@@ -2320,7 +2328,7 @@ function dn(e) {
|
|
|
2320
2328
|
} : t));
|
|
2321
2329
|
break;
|
|
2322
2330
|
case "tool_result":
|
|
2323
|
-
|
|
2331
|
+
cn(e.messageId), t.patchMessages((t) => t.map((t) => t.id === e.messageId ? {
|
|
2324
2332
|
...t,
|
|
2325
2333
|
tools: {
|
|
2326
2334
|
...t.tools || {},
|
|
@@ -2380,7 +2388,7 @@ function dn(e) {
|
|
|
2380
2388
|
}]), $ = !1;
|
|
2381
2389
|
break;
|
|
2382
2390
|
case "terminal":
|
|
2383
|
-
|
|
2391
|
+
ln(e.status);
|
|
2384
2392
|
break;
|
|
2385
2393
|
case "stream_event": {
|
|
2386
2394
|
let t = e.sessionId || e.event.SessionId;
|
|
@@ -2407,12 +2415,12 @@ function dn(e) {
|
|
|
2407
2415
|
}
|
|
2408
2416
|
}
|
|
2409
2417
|
}
|
|
2410
|
-
function
|
|
2418
|
+
function dn() {
|
|
2411
2419
|
$ = !1;
|
|
2412
2420
|
}
|
|
2413
2421
|
//#endregion
|
|
2414
2422
|
//#region src/hooks/useRunAgent.ts
|
|
2415
|
-
function
|
|
2423
|
+
function fn(e) {
|
|
2416
2424
|
let t = M(/* @__PURE__ */ new Map()), n = M(() => {}), { agentId: r, apiFormats: i, agentFramework: a, selectedModel: o, selectedModelMetadata: s, thinkingMode: c, currentSessionIdRef: l, queuedDraftRef: u, onRunSettled: d, uiCapabilities: f } = e, p = A((e) => {
|
|
2417
2425
|
e.updateConfig({
|
|
2418
2426
|
agentId: r,
|
|
@@ -2433,7 +2441,7 @@ function pn(e) {
|
|
|
2433
2441
|
f.RunLifecycle?.CheckpointResumePreview
|
|
2434
2442
|
]), m = A((n) => {
|
|
2435
2443
|
let r = String(n || "new-session"), i = t.current.get(r);
|
|
2436
|
-
return i ? p(i) : (i = new bt(e.api), p(i), i.subscribe(
|
|
2444
|
+
return i ? p(i) : (i = new bt(e.api), p(i), i.subscribe(un), t.current.set(r, i)), i;
|
|
2437
2445
|
}, [e.api, p]);
|
|
2438
2446
|
j(() => {
|
|
2439
2447
|
for (let e of t.current.values()) p(e);
|
|
@@ -2443,7 +2451,7 @@ function pn(e) {
|
|
|
2443
2451
|
}, [u]), g = A((e) => {
|
|
2444
2452
|
let i = l.current, a = m(i);
|
|
2445
2453
|
if (a.stage !== "idle") return !1;
|
|
2446
|
-
|
|
2454
|
+
dn(), _.getState().setMobileActionsOpen(!1), L.getState().setSessionStreaming(i, !0);
|
|
2447
2455
|
let o = e.text.trim(), s = String(Date.now()), c = e.attachments.map((e) => ({
|
|
2448
2456
|
name: e.name,
|
|
2449
2457
|
url: URL.createObjectURL(e),
|
|
@@ -2525,7 +2533,7 @@ function pn(e) {
|
|
|
2525
2533
|
resumeCheckpoint: A((e) => {
|
|
2526
2534
|
let t = m(e.sessionId);
|
|
2527
2535
|
if (t.stage !== "idle") return !1;
|
|
2528
|
-
|
|
2536
|
+
dn(), _.getState().setMobileActionsOpen(!1), L.getState().setSessionStreaming(e.sessionId, !0);
|
|
2529
2537
|
let r = t.resumeCheckpoint({
|
|
2530
2538
|
...e,
|
|
2531
2539
|
onSettled: (e) => {
|
|
@@ -2535,13 +2543,13 @@ function pn(e) {
|
|
|
2535
2543
|
return r || L.getState().setSessionStreaming(e.sessionId, !1), r;
|
|
2536
2544
|
}, [m, d]),
|
|
2537
2545
|
resetCompaction: A(() => {
|
|
2538
|
-
|
|
2546
|
+
dn();
|
|
2539
2547
|
}, [])
|
|
2540
2548
|
};
|
|
2541
2549
|
}
|
|
2542
2550
|
//#endregion
|
|
2543
2551
|
//#region src/hooks/useFeedback.ts
|
|
2544
|
-
function
|
|
2552
|
+
function pn(e) {
|
|
2545
2553
|
let { agentId: t, currentSessionId: n, isStreaming: r, api: i, submitDraft: a } = e;
|
|
2546
2554
|
return {
|
|
2547
2555
|
submitResponseFeedback: A(async (e) => {
|
|
@@ -2620,102 +2628,90 @@ function mn(e) {
|
|
|
2620
2628
|
};
|
|
2621
2629
|
}
|
|
2622
2630
|
//#endregion
|
|
2623
|
-
//#region src/utils/
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
|
|
2631
|
+
//#region src/utils/messages.js
|
|
2632
|
+
var mn = {
|
|
2633
|
+
running: "running",
|
|
2634
|
+
completed: "completed",
|
|
2635
|
+
failed: "error",
|
|
2636
|
+
paused: "paused",
|
|
2637
|
+
approved: "completed",
|
|
2638
|
+
denied: "completed"
|
|
2639
|
+
}, hn = {
|
|
2640
|
+
paused: "pending",
|
|
2641
|
+
approved: "approved",
|
|
2642
|
+
denied: "rejected"
|
|
2643
|
+
};
|
|
2627
2644
|
function gn(e) {
|
|
2628
|
-
|
|
2629
|
-
if (typeof
|
|
2630
|
-
|
|
2631
|
-
|
|
2632
|
-
return Number.isNaN(e) ? 0 : e;
|
|
2645
|
+
if (typeof e == "number") return e;
|
|
2646
|
+
if (typeof e == "string") {
|
|
2647
|
+
let t = Date.parse(e);
|
|
2648
|
+
if (Number.isFinite(t)) return t;
|
|
2633
2649
|
}
|
|
2634
|
-
return
|
|
2650
|
+
return Date.now();
|
|
2635
2651
|
}
|
|
2636
|
-
|
|
2637
|
-
"
|
|
2638
|
-
"
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
"
|
|
2643
|
-
]);
|
|
2644
|
-
function vn(e) {
|
|
2645
|
-
return String(e?.EventType || e?.event_type || "").trim();
|
|
2652
|
+
function _n(e) {
|
|
2653
|
+
if (typeof e == "string") return e;
|
|
2654
|
+
if (e && typeof e == "object") {
|
|
2655
|
+
if (typeof e.text == "string") return e.text;
|
|
2656
|
+
if (Array.isArray(e.parts)) return e.parts.map((e) => e && typeof e == "object" && typeof e.text == "string" ? e.text : "").join("");
|
|
2657
|
+
}
|
|
2658
|
+
return "";
|
|
2646
2659
|
}
|
|
2647
|
-
function
|
|
2648
|
-
let
|
|
2649
|
-
for (let
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
|
|
2660
|
+
function vn(e) {
|
|
2661
|
+
let t = {};
|
|
2662
|
+
for (let n of e ?? []) {
|
|
2663
|
+
if (!n?.Name) continue;
|
|
2664
|
+
let e = mn[String(n.Status ?? "completed").toLowerCase()] ?? "completed", r = {
|
|
2665
|
+
name: n.Name,
|
|
2666
|
+
args: n.Args === void 0 ? "" : typeof n.Args == "string" ? n.Args : JSON.stringify(n.Args),
|
|
2667
|
+
status: e
|
|
2668
|
+
};
|
|
2669
|
+
n.Result !== void 0 && (r.output = typeof n.Result == "string" ? n.Result : JSON.stringify(n.Result)), n.ApprovalRequestId && (r.approvalRequestId = n.ApprovalRequestId, r.approvalStatus = hn[String(n.Status ?? "paused").toLowerCase()] ?? "pending"), n.ToolCallId && (r.previousResponseId = n.ToolCallId), t[n.Name] = r;
|
|
2654
2670
|
}
|
|
2655
|
-
return
|
|
2656
|
-
|
|
2657
|
-
|
|
2658
|
-
|
|
2671
|
+
return t;
|
|
2672
|
+
}
|
|
2673
|
+
function yn(e) {
|
|
2674
|
+
if (Array.isArray(e)) return e.map((e) => ({
|
|
2675
|
+
name: e.name || "",
|
|
2676
|
+
url: e.url || "",
|
|
2677
|
+
type: e.mime || "",
|
|
2678
|
+
fileUri: e.file_uri
|
|
2679
|
+
}));
|
|
2680
|
+
}
|
|
2681
|
+
function bn(e) {
|
|
2682
|
+
let t = e.Role === "assistant" ? "model" : e.Role || "user", n = e.ToolEvents?.length ? vn(e.ToolEvents) : void 0, r = yn(e.Attachments), i = e.Reasoning?.length ? e.Reasoning.map((e) => e.text).join("") : void 0, a = {
|
|
2683
|
+
id: e.MessageId || `msg-${e.SeqId ?? Math.random().toString(36).slice(2)}`,
|
|
2684
|
+
role: t,
|
|
2685
|
+
content: _n(e.Content),
|
|
2686
|
+
timestamp: gn(e.Timestamp),
|
|
2687
|
+
eventType: t === "user" ? "user_message" : "assistant_message",
|
|
2688
|
+
reasoning: i,
|
|
2689
|
+
tools: n,
|
|
2690
|
+
attachments: r
|
|
2691
|
+
};
|
|
2692
|
+
return e.MessageId && (a.eventId = e.MessageId), e.ResponseId && (a.responseId = e.ResponseId), e.TraceId && (a.traceId = e.TraceId), e.RootSpanId && (a.rootSpanId = e.RootSpanId), a;
|
|
2693
|
+
}
|
|
2694
|
+
function xn(e) {
|
|
2695
|
+
return e.map(bn);
|
|
2659
2696
|
}
|
|
2660
2697
|
//#endregion
|
|
2661
2698
|
//#region src/utils/session-event-history.ts
|
|
2662
|
-
function
|
|
2699
|
+
function Sn(e, t) {
|
|
2663
2700
|
let n = Math.max(0, Number(e.offset) || 0), r = Math.max(0, Number(e.total) || 0);
|
|
2664
2701
|
return n >= r ? null : {
|
|
2665
2702
|
offset: n,
|
|
2666
2703
|
limit: Math.min(Math.max(1, Number(t) || 1), r - n)
|
|
2667
2704
|
};
|
|
2668
2705
|
}
|
|
2669
|
-
async function xn(e, t, n) {
|
|
2670
|
-
let r = Math.max(1, Number(n?.pageSize) || 50), i = n?.shouldContinue || (() => !0), a = () => !i(), o = await t(e, {
|
|
2671
|
-
offset: 0,
|
|
2672
|
-
limit: 1
|
|
2673
|
-
});
|
|
2674
|
-
if (a()) return null;
|
|
2675
|
-
let s = Math.max(0, Number(o.Total ?? o.Events?.length ?? 0) || 0);
|
|
2676
|
-
if (s <= 1) return {
|
|
2677
|
-
events: o.Events || [],
|
|
2678
|
-
total: s,
|
|
2679
|
-
offset: Number(o.Offset ?? 0),
|
|
2680
|
-
limit: Number(o.Limit ?? o.Events?.length ?? 0)
|
|
2681
|
-
};
|
|
2682
|
-
let c = bn({
|
|
2683
|
-
offset: 0,
|
|
2684
|
-
total: s
|
|
2685
|
-
}, r);
|
|
2686
|
-
if (!c) return {
|
|
2687
|
-
events: [],
|
|
2688
|
-
total: s,
|
|
2689
|
-
offset: 0,
|
|
2690
|
-
limit: 0
|
|
2691
|
-
};
|
|
2692
|
-
let l = await t(e, c);
|
|
2693
|
-
if (a()) return null;
|
|
2694
|
-
let u = l.Events || [], d = u.length;
|
|
2695
|
-
for (; d < s;) {
|
|
2696
|
-
let n = bn({
|
|
2697
|
-
offset: d,
|
|
2698
|
-
total: s
|
|
2699
|
-
}, r);
|
|
2700
|
-
if (!n) break;
|
|
2701
|
-
let i = await t(e, n);
|
|
2702
|
-
if (a()) return null;
|
|
2703
|
-
u = rn(i.Events || [], u), d += (i.Events || []).length;
|
|
2704
|
-
}
|
|
2705
|
-
return {
|
|
2706
|
-
events: u,
|
|
2707
|
-
total: s,
|
|
2708
|
-
offset: d,
|
|
2709
|
-
limit: u.length
|
|
2710
|
-
};
|
|
2711
|
-
}
|
|
2712
2706
|
//#endregion
|
|
2713
2707
|
//#region src/hooks/useSessionLifecycle.ts
|
|
2714
|
-
var
|
|
2715
|
-
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2708
|
+
var Cn = 9e4, wn = 30, Tn = 50, En = 500, Dn = new Set([
|
|
2709
|
+
"in_progress",
|
|
2710
|
+
"running",
|
|
2711
|
+
"resuming",
|
|
2712
|
+
"starting"
|
|
2713
|
+
]);
|
|
2714
|
+
function On(e) {
|
|
2719
2715
|
if (e.EventType !== "run_status") return null;
|
|
2720
2716
|
let t = String(e.Content?.status || "").trim().toLowerCase();
|
|
2721
2717
|
return t === "completed" ? {
|
|
@@ -2724,12 +2720,18 @@ function Dn(e) {
|
|
|
2724
2720
|
} : t === "cancelled" || t === "canceled" || t === "aborted" ? {
|
|
2725
2721
|
status: "stopped",
|
|
2726
2722
|
phase: "后台长任务已取消"
|
|
2723
|
+
} : t === "interrupted" ? {
|
|
2724
|
+
status: "stopped",
|
|
2725
|
+
phase: "后台长任务已中断"
|
|
2727
2726
|
} : t === "failed" || t === "error" ? {
|
|
2728
2727
|
status: "failed",
|
|
2729
2728
|
phase: "后台长任务失败"
|
|
2729
|
+
} : t === "resume_failed" ? {
|
|
2730
|
+
status: "failed",
|
|
2731
|
+
phase: "后台长任务恢复失败"
|
|
2730
2732
|
} : null;
|
|
2731
2733
|
}
|
|
2732
|
-
function
|
|
2734
|
+
function kn(e) {
|
|
2733
2735
|
let { agentId: t, api: n, isMobile: r, resetCompaction: i, uiCapabilities: a, disconnectRun: o } = e, s = M(e.currentSessionId), l = M(e.agentId), u = M(null), d = M(null), f = M(null), p = A(async (e, t, r) => {
|
|
2734
2736
|
let i = r.filter((e) => c(e, !1, !1));
|
|
2735
2737
|
if (!i.length) return;
|
|
@@ -2763,7 +2765,7 @@ function On(e) {
|
|
|
2763
2765
|
u.current !== t || t.signal.aborted || t.abort();
|
|
2764
2766
|
}, o = globalThis.setTimeout(() => {
|
|
2765
2767
|
a();
|
|
2766
|
-
},
|
|
2768
|
+
}, Cn);
|
|
2767
2769
|
try {
|
|
2768
2770
|
let o = (await n.subscribeRunEvents({
|
|
2769
2771
|
sessionId: e.sessionId,
|
|
@@ -2793,8 +2795,8 @@ function On(e) {
|
|
|
2793
2795
|
}
|
|
2794
2796
|
try {
|
|
2795
2797
|
let t = JSON.parse(o);
|
|
2796
|
-
u = rn(u, [t]), i ||=
|
|
2797
|
-
let n =
|
|
2798
|
+
u = rn(u, [t]), i ||= an(t), r ||= i, t.EventType === "run_checkpoint" && Q.getState().upsertSessionCheckpoint(e.sessionId, t);
|
|
2799
|
+
let n = On(t);
|
|
2798
2800
|
if (n && L.getState().updateActivity({
|
|
2799
2801
|
sessionId: e.sessionId,
|
|
2800
2802
|
status: n.status,
|
|
@@ -2805,8 +2807,6 @@ function On(e) {
|
|
|
2805
2807
|
a();
|
|
2806
2808
|
break;
|
|
2807
2809
|
}
|
|
2808
|
-
let c = nn(u);
|
|
2809
|
-
En(c, J.getState().messages) && J.getState().setMessages(c);
|
|
2810
2810
|
} catch (e) {
|
|
2811
2811
|
console.warn("Failed to parse run event data", o, e);
|
|
2812
2812
|
}
|
|
@@ -2822,18 +2822,30 @@ function On(e) {
|
|
|
2822
2822
|
let t = () => s.current === e;
|
|
2823
2823
|
z.getState().setCurrentSessionId(e), i(), u.current?.abort(), r && _.getState().setMobileSidebarOpen(!1);
|
|
2824
2824
|
try {
|
|
2825
|
-
let r = await
|
|
2826
|
-
|
|
2827
|
-
|
|
2825
|
+
let r = await n.listSessionMessages(e, {
|
|
2826
|
+
agentId: l.current || void 0,
|
|
2827
|
+
includeReasoning: !0,
|
|
2828
|
+
includeToolEvents: !0,
|
|
2829
|
+
includeAttachments: !0
|
|
2828
2830
|
});
|
|
2829
|
-
if (!
|
|
2830
|
-
|
|
2831
|
-
|
|
2832
|
-
|
|
2833
|
-
|
|
2834
|
-
|
|
2835
|
-
|
|
2836
|
-
|
|
2831
|
+
if (!t()) return;
|
|
2832
|
+
let i = xn(r.Messages);
|
|
2833
|
+
J.getState().setMessages(i), p(l.current, e, i);
|
|
2834
|
+
let o = r.LatestSeqId || 0;
|
|
2835
|
+
n.listSessionEvents(e, { limit: En }).then((n) => {
|
|
2836
|
+
if (!t()) return;
|
|
2837
|
+
let r = n.Events || [];
|
|
2838
|
+
z.getState().setSessionEventCache(e, {
|
|
2839
|
+
events: r,
|
|
2840
|
+
total: n.Total ?? 0,
|
|
2841
|
+
offset: (n.Offset ?? 0) + r.length,
|
|
2842
|
+
limit: n.Limit ?? 0
|
|
2843
|
+
});
|
|
2844
|
+
}).catch((e) => {
|
|
2845
|
+
console.warn("[SessionLifecycle] event cache load failed:", e);
|
|
2846
|
+
});
|
|
2847
|
+
let s = F.getState().capabilities || a;
|
|
2848
|
+
if (s.RunLifecycle.Enabled && s.RunLifecycle.Checkpoints ? (n.listSessionCheckpoints({
|
|
2837
2849
|
agentId: l.current,
|
|
2838
2850
|
sessionId: e
|
|
2839
2851
|
}).then((t) => {
|
|
@@ -2847,26 +2859,21 @@ function On(e) {
|
|
|
2847
2859
|
Q.getState().setSessionToolReceipts(e, t.ToolReceipts || []);
|
|
2848
2860
|
}).catch((t) => {
|
|
2849
2861
|
console.warn("[SessionLifecycle] tool receipt load failed:", t), Q.getState().setSessionToolReceipts(e, []);
|
|
2850
|
-
})) : Q.getState().clearSessionCheckpoints(e),
|
|
2851
|
-
let
|
|
2862
|
+
})) : Q.getState().clearSessionCheckpoints(e), s.RunLifecycle.Enabled && s.RunLifecycle.Resume) try {
|
|
2863
|
+
let r = await n.getSession(e);
|
|
2852
2864
|
if (!t()) return;
|
|
2853
|
-
|
|
2854
|
-
|
|
2855
|
-
now: Date.now(),
|
|
2856
|
-
staleAfterMs: 1800 * 1e3
|
|
2857
|
-
}), s = an(n);
|
|
2858
|
-
i.RunLifecycle.Enabled && i.RunLifecycle.Resume && o[0] && m({
|
|
2865
|
+
let i = String(r.ActiveRunStatus || "").toLowerCase();
|
|
2866
|
+
Dn.has(i) && r.ActiveInvocationId && m({
|
|
2859
2867
|
sessionId: e,
|
|
2860
|
-
invocationId:
|
|
2861
|
-
afterSeqId:
|
|
2862
|
-
initialEvents:
|
|
2868
|
+
invocationId: r.ActiveInvocationId,
|
|
2869
|
+
afterSeqId: o,
|
|
2870
|
+
initialEvents: []
|
|
2863
2871
|
});
|
|
2864
|
-
}
|
|
2865
|
-
|
|
2866
|
-
J.getState().setMessages([]), Q.getState().setSessionCheckpoints(e, []), Q.getState().setSessionToolReceipts(e, []);
|
|
2872
|
+
} catch (e) {
|
|
2873
|
+
console.warn("[SessionLifecycle] getSession for reconnect failed:", e);
|
|
2867
2874
|
}
|
|
2868
2875
|
} catch (e) {
|
|
2869
|
-
console.error("Failed to load session
|
|
2876
|
+
console.error("Failed to load session messages:", e);
|
|
2870
2877
|
}
|
|
2871
2878
|
}, [
|
|
2872
2879
|
n,
|
|
@@ -2881,13 +2888,13 @@ function On(e) {
|
|
|
2881
2888
|
r.sessionsAgentId && r.sessionsAgentId !== e && r.resetSessionPagination(e), z.getState().setLoadingSessions(!0);
|
|
2882
2889
|
let i = await n.listSessions(e, {
|
|
2883
2890
|
page: 1,
|
|
2884
|
-
pageSize:
|
|
2891
|
+
pageSize: wn
|
|
2885
2892
|
});
|
|
2886
2893
|
z.getState().upsertSessions(i.Sessions || [], {
|
|
2887
2894
|
agentId: e,
|
|
2888
2895
|
total: Number(i.Total ?? i.Sessions?.length ?? 0),
|
|
2889
2896
|
page: Number(i.Page ?? 1),
|
|
2890
|
-
pageSize: Number(i.PageSize ??
|
|
2897
|
+
pageSize: Number(i.PageSize ?? wn),
|
|
2891
2898
|
replace: !0
|
|
2892
2899
|
});
|
|
2893
2900
|
let a = z.getState().sessions, o = s.current, c = we(a, o || t || Se(e));
|
|
@@ -2903,11 +2910,11 @@ function On(e) {
|
|
|
2903
2910
|
if (e.isLoadingSessions || !e.hasMoreSessions) return;
|
|
2904
2911
|
let t = le({
|
|
2905
2912
|
total: e.sessionsTotal,
|
|
2906
|
-
pageSize: e.sessionsPageSize ||
|
|
2913
|
+
pageSize: e.sessionsPageSize || wn,
|
|
2907
2914
|
loadedPages: e.loadedPages
|
|
2908
2915
|
});
|
|
2909
2916
|
if (!t) return;
|
|
2910
|
-
let r = e.sessionsPageSize ||
|
|
2917
|
+
let r = e.sessionsPageSize || wn, i = e.sessionsAgentId || l.current || "default-agent";
|
|
2911
2918
|
try {
|
|
2912
2919
|
z.getState().setLoadingSessions(!0);
|
|
2913
2920
|
let a = await n.listSessions(i, {
|
|
@@ -2969,7 +2976,7 @@ function On(e) {
|
|
|
2969
2976
|
loadOlderSessionEvents: A(async (e) => {
|
|
2970
2977
|
let t = z.getState().eventCache[e];
|
|
2971
2978
|
if (!t || t.isLoadingOlder) return;
|
|
2972
|
-
let r =
|
|
2979
|
+
let r = Sn(t, Tn);
|
|
2973
2980
|
if (r) try {
|
|
2974
2981
|
z.getState().setSessionEventLoadingOlder(e, !0);
|
|
2975
2982
|
let i = await n.listSessionEvents(e, r), a = i.Events || [], o = rn(a, t.events), c = t.offset + a.length;
|
|
@@ -2997,7 +3004,7 @@ function On(e) {
|
|
|
2997
3004
|
}
|
|
2998
3005
|
//#endregion
|
|
2999
3006
|
//#region src/components/chat/ConnectedSidebar.tsx
|
|
3000
|
-
function
|
|
3007
|
+
function An({ uiCapabilities: e, createNewSession: n, deleteSession: a, loadSession: s, loadMoreSessions: c }) {
|
|
3001
3008
|
let u = z((e) => e.sessions), d = z((e) => e.currentSessionId), f = z((e) => e.pinnedSessionIds), m = z((e) => e.isLoadingSessions), h = z((e) => e.hasMoreSessions), g = _((e) => e.sidebarOpen), v = _((e) => e.mobileSidebarOpen), { isMobile: y } = Pe(), b = t(e), { desktopSidebarVisible: ee } = ge({
|
|
3002
3009
|
isMobile: y,
|
|
3003
3010
|
desktopSidebarOpen: g,
|
|
@@ -3060,13 +3067,13 @@ function kn({ uiCapabilities: e, createNewSession: n, deleteSession: a, loadSess
|
|
|
3060
3067
|
}
|
|
3061
3068
|
//#endregion
|
|
3062
3069
|
//#region src/components/ui/dialog.tsx
|
|
3063
|
-
var
|
|
3070
|
+
var jn = N.Root, Mn = N.Portal, Nn = O.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ E(N.Overlay, {
|
|
3064
3071
|
ref: n,
|
|
3065
3072
|
className: p("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", e),
|
|
3066
3073
|
...t
|
|
3067
3074
|
}));
|
|
3068
|
-
|
|
3069
|
-
var
|
|
3075
|
+
Nn.displayName = N.Overlay.displayName;
|
|
3076
|
+
var Pn = O.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */ D(Mn, { children: [/* @__PURE__ */ E(Nn, {}), /* @__PURE__ */ D(N.Content, {
|
|
3070
3077
|
ref: r,
|
|
3071
3078
|
className: p("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg", e),
|
|
3072
3079
|
...n,
|
|
@@ -3078,50 +3085,50 @@ var Nn = O.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ *
|
|
|
3078
3085
|
})]
|
|
3079
3086
|
})]
|
|
3080
3087
|
})] }));
|
|
3081
|
-
|
|
3082
|
-
var
|
|
3088
|
+
Pn.displayName = N.Content.displayName;
|
|
3089
|
+
var Fn = ({ className: e, ...t }) => /* @__PURE__ */ E("div", {
|
|
3083
3090
|
className: p("flex flex-col space-y-1.5 text-center sm:text-left", e),
|
|
3084
3091
|
...t
|
|
3085
3092
|
});
|
|
3086
|
-
|
|
3087
|
-
var
|
|
3093
|
+
Fn.displayName = "DialogHeader";
|
|
3094
|
+
var In = ({ className: e, ...t }) => /* @__PURE__ */ E("div", {
|
|
3088
3095
|
className: p("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", e),
|
|
3089
3096
|
...t
|
|
3090
3097
|
});
|
|
3091
|
-
|
|
3092
|
-
var
|
|
3098
|
+
In.displayName = "DialogFooter";
|
|
3099
|
+
var Ln = O.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ E(N.Title, {
|
|
3093
3100
|
ref: n,
|
|
3094
3101
|
className: p("text-lg font-semibold leading-none tracking-tight", e),
|
|
3095
3102
|
...t
|
|
3096
3103
|
}));
|
|
3097
|
-
|
|
3098
|
-
var
|
|
3104
|
+
Ln.displayName = N.Title.displayName;
|
|
3105
|
+
var Rn = O.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ E(N.Description, {
|
|
3099
3106
|
ref: n,
|
|
3100
3107
|
className: p("text-sm text-muted-foreground", e),
|
|
3101
3108
|
...t
|
|
3102
3109
|
}));
|
|
3103
|
-
|
|
3110
|
+
Rn.displayName = N.Description.displayName;
|
|
3104
3111
|
//#endregion
|
|
3105
3112
|
//#region src/components/chat/AttachmentPreview.tsx
|
|
3106
|
-
function
|
|
3113
|
+
function zn(e, t) {
|
|
3107
3114
|
if (!(!t || e)) return {
|
|
3108
3115
|
width: `min(${t.width}px, calc(100vw - 5rem))`,
|
|
3109
3116
|
height: `min(${t.height}px, calc(100vh - 9rem))`
|
|
3110
3117
|
};
|
|
3111
3118
|
}
|
|
3112
|
-
function
|
|
3119
|
+
function Bn(e, t) {
|
|
3113
3120
|
if (!(!t || e)) return { width: `min(${t.width + 32}px, calc(100vw - 3rem))` };
|
|
3114
3121
|
}
|
|
3115
|
-
function
|
|
3116
|
-
return /* @__PURE__ */ E(
|
|
3122
|
+
function Vn({ attachment: e, isMobile: t, previewImageSize: n, onClose: r, onImageLoad: i }) {
|
|
3123
|
+
return /* @__PURE__ */ E(jn, {
|
|
3117
3124
|
open: !!e?.url,
|
|
3118
3125
|
onOpenChange: (e) => !e && r(),
|
|
3119
|
-
children: /* @__PURE__ */ D(
|
|
3126
|
+
children: /* @__PURE__ */ D(Pn, {
|
|
3120
3127
|
className: p("gap-0 overflow-hidden border-slate-700 bg-slate-950 p-0 text-slate-100 shadow-2xl [&>button]:right-3 [&>button]:top-3 [&>button]:rounded-md [&>button]:border [&>button]:border-slate-700 [&>button]:bg-slate-900/70 [&>button]:p-1.5 [&>button]:text-slate-200 [&>button]:opacity-100", t ? "left-0 top-0 h-[var(--app-height)] max-h-[var(--app-height)] w-screen max-w-none translate-x-0 translate-y-0 rounded-none border-0" : "max-h-[calc(100vh-2rem)] max-w-[calc(100vw-2rem)] rounded-2xl"),
|
|
3121
|
-
style:
|
|
3128
|
+
style: Bn(t, n),
|
|
3122
3129
|
children: [/* @__PURE__ */ E("div", {
|
|
3123
3130
|
className: "flex items-center gap-3 border-b border-slate-800 px-4 py-3 pr-16",
|
|
3124
|
-
children: /* @__PURE__ */ E(
|
|
3131
|
+
children: /* @__PURE__ */ E(Ln, {
|
|
3125
3132
|
className: "truncate text-sm font-medium",
|
|
3126
3133
|
children: e?.name || "附件预览"
|
|
3127
3134
|
})
|
|
@@ -3131,7 +3138,7 @@ function Bn({ attachment: e, isMobile: t, previewImageSize: n, onClose: r, onIma
|
|
|
3131
3138
|
src: e.url,
|
|
3132
3139
|
alt: e.name,
|
|
3133
3140
|
className: p("object-contain", t ? "h-auto max-h-full w-full max-w-full" : "h-auto w-auto max-h-[calc(100vh-9rem)] max-w-[calc(100vw-5rem)]"),
|
|
3134
|
-
style:
|
|
3141
|
+
style: zn(t, n),
|
|
3135
3142
|
onLoad: (e) => {
|
|
3136
3143
|
let t = e.currentTarget;
|
|
3137
3144
|
i({
|
|
@@ -3150,7 +3157,7 @@ function Bn({ attachment: e, isMobile: t, previewImageSize: n, onClose: r, onIma
|
|
|
3150
3157
|
}
|
|
3151
3158
|
//#endregion
|
|
3152
3159
|
//#region src/utils/context.js
|
|
3153
|
-
function
|
|
3160
|
+
function Hn(e) {
|
|
3154
3161
|
if (typeof e == "number" && Number.isFinite(e) && e > 0) return e;
|
|
3155
3162
|
if (typeof e == "string" && e.trim()) {
|
|
3156
3163
|
let t = Number(e);
|
|
@@ -3158,15 +3165,15 @@ function Vn(e) {
|
|
|
3158
3165
|
}
|
|
3159
3166
|
return null;
|
|
3160
3167
|
}
|
|
3161
|
-
function
|
|
3168
|
+
function Un(e) {
|
|
3162
3169
|
return /[\u3400-\u4DBF\u4E00-\u9FFF\uF900-\uFAFF]/u.test(e);
|
|
3163
3170
|
}
|
|
3164
|
-
function
|
|
3171
|
+
function Wn(e) {
|
|
3165
3172
|
let t = String(e || "").trim();
|
|
3166
3173
|
if (!t) return 0;
|
|
3167
3174
|
let n = 0, r = 0;
|
|
3168
3175
|
for (let e of t) {
|
|
3169
|
-
if (
|
|
3176
|
+
if (Un(e)) {
|
|
3170
3177
|
n += 1;
|
|
3171
3178
|
continue;
|
|
3172
3179
|
}
|
|
@@ -3174,24 +3181,24 @@ function Un(e) {
|
|
|
3174
3181
|
}
|
|
3175
3182
|
return Math.max(1, n + Math.ceil(r / 4));
|
|
3176
3183
|
}
|
|
3177
|
-
function Wn(e) {
|
|
3178
|
-
if (!e) return 0;
|
|
3179
|
-
if (e.role === "system") return e.eventType === "context_checkpoint" ? Un(e.summary || "") : 0;
|
|
3180
|
-
let t = Un(e.content || "");
|
|
3181
|
-
return e.tools && (t += Object.values(e.tools).reduce((e, t) => e + Un(t?.name || "") + Un(t?.args || "") + Un(t?.output || ""), 0)), t;
|
|
3182
|
-
}
|
|
3183
3184
|
function Gn(e) {
|
|
3184
|
-
|
|
3185
|
+
if (!e) return 0;
|
|
3186
|
+
if (e.role === "system") return e.eventType === "context_checkpoint" ? Wn(e.summary || "") : 0;
|
|
3187
|
+
let t = Wn(e.content || "");
|
|
3188
|
+
return e.tools && (t += Object.values(e.tools).reduce((e, t) => e + Wn(t?.name || "") + Wn(t?.args || "") + Wn(t?.output || ""), 0)), t;
|
|
3185
3189
|
}
|
|
3186
3190
|
function Kn(e) {
|
|
3187
|
-
return e ?
|
|
3191
|
+
return e ? Hn(e.context_window_tokens) ?? Hn(e?.limits?.context_window_tokens) : null;
|
|
3188
3192
|
}
|
|
3189
|
-
function qn(
|
|
3190
|
-
|
|
3193
|
+
function qn(e) {
|
|
3194
|
+
return e ? Hn(e.auto_compact_threshold_percentage) ?? 84 : 84;
|
|
3195
|
+
}
|
|
3196
|
+
function Jn({ messages: e, draftInput: t, selectedModel: n }) {
|
|
3197
|
+
let r = Kn(n);
|
|
3191
3198
|
if (!r) return null;
|
|
3192
3199
|
let i = [...e || []].reverse().find((e) => e?.role === "system" && e?.eventType === "context_checkpoint" && e?.status === "running");
|
|
3193
3200
|
if (i) {
|
|
3194
|
-
let e =
|
|
3201
|
+
let e = Gn(i);
|
|
3195
3202
|
return {
|
|
3196
3203
|
label: "正在压缩上下文…",
|
|
3197
3204
|
phase: "compressing",
|
|
@@ -3200,10 +3207,10 @@ function qn({ messages: e, draftInput: t, selectedModel: n }) {
|
|
|
3200
3207
|
percent: Math.min(100, Math.max(0, Math.round(e / r * 100)))
|
|
3201
3208
|
};
|
|
3202
3209
|
}
|
|
3203
|
-
let a = (e || []).reduce((e, t) => e +
|
|
3210
|
+
let a = (e || []).reduce((e, t) => e + Gn(t), 0) + Wn(t || "");
|
|
3204
3211
|
if (a <= 0) return null;
|
|
3205
3212
|
let o = Math.min(100, Math.max(0, Math.round(a / r * 100)));
|
|
3206
|
-
return o >=
|
|
3213
|
+
return o >= qn(n) ? {
|
|
3207
3214
|
label: `估算上下文 ${o}% · 即将压缩`,
|
|
3208
3215
|
phase: "warning",
|
|
3209
3216
|
percent: o,
|
|
@@ -3219,8 +3226,8 @@ function qn({ messages: e, draftInput: t, selectedModel: n }) {
|
|
|
3219
3226
|
}
|
|
3220
3227
|
//#endregion
|
|
3221
3228
|
//#region src/components/chat/ConnectedMessageList.tsx
|
|
3222
|
-
function
|
|
3223
|
-
let u = J((e) => e.messages), d = z((e) => e.currentSessionId), f = L((e) => !!(e.getSessionActivity(d) && e.isSessionStreaming(d))), p = L((e) => e.getSessionActivity(d)), h = Q((e) => e.getSessionCheckpoints(d)), g = z((e) => d ? e.eventCache[d] : null), v = _((e) => e.input), y = I((e) => e.availableModels), b = I((e) => e.selectedModel), ee = _((e) => e.previewAttachment), te = _((e) => e.previewImageSize), x = M(null), S = M(!0), C = M(!1), w = M(0), T = M(f), O = M(!1), k = M(!0), re = ie(() => y.find((e) => e.id === b) || null, [y, b]), A = ie(() =>
|
|
3229
|
+
function Yn({ agentName: e, isMobile: t, onDeleteFeedback: n, onSubmitFeedback: r, onRespondToApproval: i, onStopGeneration: a, onCancelRemote: o, checkpointResumeEnabled: s = !1, onResumeCheckpoint: c, onLoadOlderSessionEvents: l }) {
|
|
3230
|
+
let u = J((e) => e.messages), d = z((e) => e.currentSessionId), f = L((e) => !!(e.getSessionActivity(d) && e.isSessionStreaming(d))), p = L((e) => e.getSessionActivity(d)), h = Q((e) => e.getSessionCheckpoints(d)), g = z((e) => d ? e.eventCache[d] : null), v = _((e) => e.input), y = I((e) => e.availableModels), b = I((e) => e.selectedModel), ee = _((e) => e.previewAttachment), te = _((e) => e.previewImageSize), x = M(null), S = M(!0), C = M(!1), w = M(0), T = M(f), O = M(!1), k = M(!0), re = ie(() => y.find((e) => e.id === b) || null, [y, b]), A = ie(() => Jn({
|
|
3224
3231
|
messages: u,
|
|
3225
3232
|
draftInput: v,
|
|
3226
3233
|
selectedModel: re
|
|
@@ -3306,7 +3313,7 @@ function Jn({ agentName: e, isMobile: t, onDeleteFeedback: n, onSubmitFeedback:
|
|
|
3306
3313
|
checkpoints: s ? h : [],
|
|
3307
3314
|
onResumeCheckpoint: c,
|
|
3308
3315
|
scrollRef: x
|
|
3309
|
-
}), /* @__PURE__ */ E(
|
|
3316
|
+
}), /* @__PURE__ */ E(Vn, {
|
|
3310
3317
|
attachment: ee,
|
|
3311
3318
|
isMobile: t,
|
|
3312
3319
|
previewImageSize: te,
|
|
@@ -3318,7 +3325,7 @@ function Jn({ agentName: e, isMobile: t, onDeleteFeedback: n, onSubmitFeedback:
|
|
|
3318
3325
|
}
|
|
3319
3326
|
//#endregion
|
|
3320
3327
|
//#region src/utils/attachment.ts
|
|
3321
|
-
function
|
|
3328
|
+
function Xn(e) {
|
|
3322
3329
|
return [
|
|
3323
3330
|
e.name,
|
|
3324
3331
|
e.size,
|
|
@@ -3326,19 +3333,19 @@ function Yn(e) {
|
|
|
3326
3333
|
e.type
|
|
3327
3334
|
].join(":");
|
|
3328
3335
|
}
|
|
3329
|
-
function
|
|
3336
|
+
function Zn(e, t) {
|
|
3330
3337
|
let n = /* @__PURE__ */ new Map();
|
|
3331
|
-
for (let t of e) n.set(
|
|
3332
|
-
for (let e of t) n.set(
|
|
3338
|
+
for (let t of e) n.set(Xn(t), t);
|
|
3339
|
+
for (let e of t) n.set(Xn(e), e);
|
|
3333
3340
|
return Array.from(n.values());
|
|
3334
3341
|
}
|
|
3335
|
-
function
|
|
3342
|
+
function Qn(e) {
|
|
3336
3343
|
return Array.from(e.clipboardData.items || []).filter((e) => e.kind === "file").map((e) => e.getAsFile()).filter((e) => !!e);
|
|
3337
3344
|
}
|
|
3338
3345
|
//#endregion
|
|
3339
3346
|
//#region src/components/chat/ConnectedComposer.tsx
|
|
3340
|
-
function
|
|
3341
|
-
let o = _((e) => e.input), s = _((e) => e.attachments), c = z((e) => e.currentSessionId), l = L((e) => !!(e.getSessionActivity(c) && e.isSessionStreaming(c))), u = _((e) => e.queuedDrafts), d = J((e) => e.messages), f = I((e) => e.availableModels), p = I((e) => e.selectedModel), m = M(null), h = M(null), g = ie(() => f.find((e) => e.id === p) || null, [f, p]), v = ie(() =>
|
|
3347
|
+
function $n({ composerMaxHeight: e, submitDraft: t, stopGeneration: n, cancelRemote: r, isMobile: i }) {
|
|
3348
|
+
let o = _((e) => e.input), s = _((e) => e.attachments), c = z((e) => e.currentSessionId), l = L((e) => !!(e.getSessionActivity(c) && e.isSessionStreaming(c))), u = _((e) => e.queuedDrafts), d = J((e) => e.messages), f = I((e) => e.availableModels), p = I((e) => e.selectedModel), m = M(null), h = M(null), g = ie(() => f.find((e) => e.id === p) || null, [f, p]), v = ie(() => Jn({
|
|
3342
3349
|
messages: d,
|
|
3343
3350
|
draftInput: o,
|
|
3344
3351
|
selectedModel: g
|
|
@@ -3355,7 +3362,7 @@ function Qn({ composerMaxHeight: e, submitDraft: t, stopGeneration: n, cancelRem
|
|
|
3355
3362
|
let b = (t) => {
|
|
3356
3363
|
_.getState().setInput(t.target.value), t.target.style.height = "auto", t.target.style.height = `${Math.min(t.target.scrollHeight, e)}px`;
|
|
3357
3364
|
}, ee = (e) => {
|
|
3358
|
-
e.length && _.getState().setAttachments((t) =>
|
|
3365
|
+
e.length && _.getState().setAttachments((t) => Zn(t, e));
|
|
3359
3366
|
};
|
|
3360
3367
|
return /* @__PURE__ */ E(a, {
|
|
3361
3368
|
attachments: s,
|
|
@@ -3369,7 +3376,7 @@ function Qn({ composerMaxHeight: e, submitDraft: t, stopGeneration: n, cancelRem
|
|
|
3369
3376
|
onAppendAttachments: ee,
|
|
3370
3377
|
onInputChange: b,
|
|
3371
3378
|
onPaste: (e) => {
|
|
3372
|
-
let t =
|
|
3379
|
+
let t = Qn(e);
|
|
3373
3380
|
t.length && (e.preventDefault(), e.stopPropagation(), ee(t));
|
|
3374
3381
|
},
|
|
3375
3382
|
onRemoveAttachment: (e) => _.getState().setAttachments((t) => t.filter((t, n) => n !== e)),
|
|
@@ -3381,7 +3388,7 @@ function Qn({ composerMaxHeight: e, submitDraft: t, stopGeneration: n, cancelRem
|
|
|
3381
3388
|
}
|
|
3382
3389
|
//#endregion
|
|
3383
3390
|
//#region src/api/session.ts
|
|
3384
|
-
async function
|
|
3391
|
+
async function er(e, t) {
|
|
3385
3392
|
let n = await q("ListSessions", {
|
|
3386
3393
|
AgentId: e,
|
|
3387
3394
|
Page: t?.page,
|
|
@@ -3394,15 +3401,18 @@ async function $n(e, t) {
|
|
|
3394
3401
|
PageSize: Number.isFinite(Number(n.PageSize)) ? Number(n.PageSize) : t?.pageSize ?? n.Sessions?.length ?? 0
|
|
3395
3402
|
};
|
|
3396
3403
|
}
|
|
3397
|
-
async function
|
|
3404
|
+
async function tr(e, t) {
|
|
3398
3405
|
return (await q("CreateSession", { AgentId: e }, t)).Session;
|
|
3399
3406
|
}
|
|
3400
|
-
async function
|
|
3407
|
+
async function nr(e, t) {
|
|
3401
3408
|
await q("DeleteSession", { SessionId: e }, t);
|
|
3402
3409
|
}
|
|
3410
|
+
async function rr(e, t) {
|
|
3411
|
+
return (await q("GetSession", { SessionId: e }, t)).Session;
|
|
3412
|
+
}
|
|
3403
3413
|
//#endregion
|
|
3404
3414
|
//#region src/api/events.ts
|
|
3405
|
-
async function
|
|
3415
|
+
async function ir(e, t) {
|
|
3406
3416
|
let n = await q("ListSessionEvents", {
|
|
3407
3417
|
SessionId: e,
|
|
3408
3418
|
Offset: t?.offset,
|
|
@@ -3416,20 +3426,39 @@ async function nr(e, t) {
|
|
|
3416
3426
|
};
|
|
3417
3427
|
}
|
|
3418
3428
|
//#endregion
|
|
3429
|
+
//#region src/api/messages.ts
|
|
3430
|
+
async function ar(e, t) {
|
|
3431
|
+
let n = await q("ListSessionMessages", {
|
|
3432
|
+
AgentId: t?.agentId,
|
|
3433
|
+
SessionId: e,
|
|
3434
|
+
AfterSeqId: t?.afterSeqId,
|
|
3435
|
+
Limit: t?.limit,
|
|
3436
|
+
IncludeReasoning: t?.includeReasoning,
|
|
3437
|
+
IncludeToolEvents: t?.includeToolEvents,
|
|
3438
|
+
IncludeAttachments: t?.includeAttachments
|
|
3439
|
+
}, t);
|
|
3440
|
+
return {
|
|
3441
|
+
Messages: n.Messages ?? [],
|
|
3442
|
+
LatestSeqId: Number.isFinite(Number(n.LatestSeqId)) ? Number(n.LatestSeqId) : 0,
|
|
3443
|
+
HasMore: !!n.HasMore,
|
|
3444
|
+
NextCursor: Number.isFinite(Number(n.NextCursor)) ? Number(n.NextCursor) : null
|
|
3445
|
+
};
|
|
3446
|
+
}
|
|
3447
|
+
//#endregion
|
|
3419
3448
|
//#region src/api/run.ts
|
|
3420
|
-
async function
|
|
3449
|
+
async function or(e, t) {
|
|
3421
3450
|
return Re("RunAgent", e, t);
|
|
3422
3451
|
}
|
|
3423
3452
|
//#endregion
|
|
3424
3453
|
//#region src/api/checkpoints.ts
|
|
3425
|
-
async function
|
|
3454
|
+
async function sr(e, t) {
|
|
3426
3455
|
let n = {
|
|
3427
3456
|
AgentId: e.agentId,
|
|
3428
3457
|
SessionId: e.sessionId
|
|
3429
3458
|
};
|
|
3430
3459
|
return e.runId && (n.RunId = e.runId), q("ListSessionCheckpoints", n, t);
|
|
3431
3460
|
}
|
|
3432
|
-
async function
|
|
3461
|
+
async function cr(e, t) {
|
|
3433
3462
|
return q("GetCheckpointResumePreview", {
|
|
3434
3463
|
AgentId: e.agentId,
|
|
3435
3464
|
SessionId: e.sessionId,
|
|
@@ -3437,14 +3466,14 @@ async function ar(e, t) {
|
|
|
3437
3466
|
CheckpointId: e.checkpointId
|
|
3438
3467
|
}, t);
|
|
3439
3468
|
}
|
|
3440
|
-
async function
|
|
3469
|
+
async function lr(e, t) {
|
|
3441
3470
|
let n = {
|
|
3442
3471
|
AgentId: e.agentId,
|
|
3443
3472
|
SessionId: e.sessionId
|
|
3444
3473
|
};
|
|
3445
3474
|
return e.runId && (n.RunId = e.runId), e.checkpointId && (n.CheckpointId = e.checkpointId), q("ListToolReceipts", n, t);
|
|
3446
3475
|
}
|
|
3447
|
-
async function
|
|
3476
|
+
async function ur(e, t) {
|
|
3448
3477
|
let n = {
|
|
3449
3478
|
AgentId: e.agentId,
|
|
3450
3479
|
SessionId: e.sessionId,
|
|
@@ -3456,23 +3485,23 @@ async function sr(e, t) {
|
|
|
3456
3485
|
}
|
|
3457
3486
|
//#endregion
|
|
3458
3487
|
//#region src/api/workspace.ts
|
|
3459
|
-
async function
|
|
3488
|
+
async function dr(e, t, n) {
|
|
3460
3489
|
return q("ListWorkspaceFiles", {
|
|
3461
3490
|
AgentId: e,
|
|
3462
3491
|
Path: t,
|
|
3463
3492
|
Recursive: n
|
|
3464
3493
|
});
|
|
3465
3494
|
}
|
|
3466
|
-
async function
|
|
3495
|
+
async function fr(e) {
|
|
3467
3496
|
return Ie("AddWorkspaceFile", e);
|
|
3468
3497
|
}
|
|
3469
|
-
async function
|
|
3498
|
+
async function pr(e, t) {
|
|
3470
3499
|
return q("DeleteWorkspaceFile", {
|
|
3471
3500
|
AgentId: e,
|
|
3472
3501
|
Path: t
|
|
3473
3502
|
});
|
|
3474
3503
|
}
|
|
3475
|
-
async function
|
|
3504
|
+
async function mr(e, t, n) {
|
|
3476
3505
|
return Le("GetWorkspaceFileContent", {
|
|
3477
3506
|
AgentId: e,
|
|
3478
3507
|
FilePath: t
|
|
@@ -3483,38 +3512,44 @@ async function dr(e, t, n) {
|
|
|
3483
3512
|
}
|
|
3484
3513
|
//#endregion
|
|
3485
3514
|
//#region src/api/upload.ts
|
|
3486
|
-
async function
|
|
3515
|
+
async function hr(e, t) {
|
|
3487
3516
|
return Ie("UploadFile", e, t);
|
|
3488
3517
|
}
|
|
3489
3518
|
//#endregion
|
|
3490
3519
|
//#region src/core/api/facade.ts
|
|
3491
|
-
var
|
|
3520
|
+
var gr = class {
|
|
3492
3521
|
async listSessions(e, t) {
|
|
3493
|
-
return
|
|
3522
|
+
return er(e, t);
|
|
3494
3523
|
}
|
|
3495
3524
|
async createSession(e, t) {
|
|
3496
|
-
return { SessionId: (await
|
|
3525
|
+
return { SessionId: (await tr(e, t)).SessionId };
|
|
3497
3526
|
}
|
|
3498
3527
|
async deleteSession(e, t) {
|
|
3499
|
-
await
|
|
3528
|
+
await nr(e, t);
|
|
3529
|
+
}
|
|
3530
|
+
async getSession(e, t) {
|
|
3531
|
+
return rr(e, t);
|
|
3500
3532
|
}
|
|
3501
3533
|
async listSessionEvents(e, t) {
|
|
3502
|
-
return
|
|
3534
|
+
return ir(e, t);
|
|
3535
|
+
}
|
|
3536
|
+
async listSessionMessages(e, t) {
|
|
3537
|
+
return ar(e, t);
|
|
3503
3538
|
}
|
|
3504
3539
|
async listSessionCheckpoints(e, t) {
|
|
3505
|
-
return
|
|
3540
|
+
return sr(e, t);
|
|
3506
3541
|
}
|
|
3507
3542
|
async previewCheckpointResume(e, t) {
|
|
3508
|
-
return
|
|
3543
|
+
return cr(e, t);
|
|
3509
3544
|
}
|
|
3510
3545
|
async listToolReceipts(e, t) {
|
|
3511
|
-
return
|
|
3546
|
+
return lr(e, t);
|
|
3512
3547
|
}
|
|
3513
3548
|
async runAgent(e, t) {
|
|
3514
|
-
return
|
|
3549
|
+
return or(e, t);
|
|
3515
3550
|
}
|
|
3516
3551
|
async resumeRun(e, t) {
|
|
3517
|
-
return
|
|
3552
|
+
return ur(e, t);
|
|
3518
3553
|
}
|
|
3519
3554
|
async subscribeRunEvents(e, t) {
|
|
3520
3555
|
return ze("SubscribeRunEvents", {
|
|
@@ -3539,16 +3574,16 @@ var pr = class {
|
|
|
3539
3574
|
await q("DeleteResponseFeedback", e, t);
|
|
3540
3575
|
}
|
|
3541
3576
|
async listWorkspaceFiles(e, t, n) {
|
|
3542
|
-
return
|
|
3577
|
+
return dr(e, t, n);
|
|
3543
3578
|
}
|
|
3544
3579
|
async addWorkspaceFile(e) {
|
|
3545
|
-
return
|
|
3580
|
+
return fr(e);
|
|
3546
3581
|
}
|
|
3547
3582
|
async deleteWorkspaceFile(e, t) {
|
|
3548
|
-
await
|
|
3583
|
+
await pr(e, t);
|
|
3549
3584
|
}
|
|
3550
3585
|
async getWorkspaceFileContent(e, t, n) {
|
|
3551
|
-
return
|
|
3586
|
+
return mr(e, t, n);
|
|
3552
3587
|
}
|
|
3553
3588
|
async listAgentModels(e) {
|
|
3554
3589
|
return Ve(e);
|
|
@@ -3557,14 +3592,14 @@ var pr = class {
|
|
|
3557
3592
|
return Be();
|
|
3558
3593
|
}
|
|
3559
3594
|
async uploadFile(e, t) {
|
|
3560
|
-
return
|
|
3595
|
+
return hr(e, t);
|
|
3561
3596
|
}
|
|
3562
|
-
},
|
|
3563
|
-
function
|
|
3564
|
-
let a = e ||
|
|
3597
|
+
}, _r = new gr(), vr = k.lazy(() => import("./ArtifactsPanel-DCn5q1OB.js").then((e) => ({ default: e.ArtifactsPanel }))), yr = k.lazy(() => import("./NativeTerminalPanel-CjyPyYC4.js").then((e) => e.n).then((e) => ({ default: e.NativeTerminalPanel })));
|
|
3598
|
+
function br({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
3599
|
+
let a = e || _r, o = F((e) => e.agentId), s = z((e) => e.currentSessionId), c = L((e) => e.isStreaming), l = _((e) => e.sidebarOpen), u = _((e) => e.mobileSidebarOpen), d = _((e) => e.mobileActionsOpen), f = F((e) => e.agentName), p = I((e) => e.selectedModel), m = I((e) => e.availableModels), h = I((e) => e.modelSource), v = I((e) => e.modelCatalogLoaded), te = I((e) => e.thinkingMode), x = F((e) => e.agentFramework), S = F((e) => e.workspaceFiles), C = F((e) => e.accessMode), T = _((e) => e.workspacePanelOpen), O = _((e) => e.workspacePanelWidth), k = _((e) => e.workspacePanelFullscreen), ie = F((e) => e.apiFormats), N = F((e) => e.capabilities), P = w((e) => e.visible && !!e.content), oe = M([]), se = M(null), { isMobile: R, viewportHeight: ce } = Pe(), le = _e({
|
|
3565
3600
|
isMobile: R,
|
|
3566
3601
|
viewportHeight: ce
|
|
3567
|
-
}), { fetchSessions: ue, loadMoreSessions: de, loadSession: fe, loadOlderSessionEvents: pe, createNewSession: me, deleteSession: he, currentSessionIdRef: B, agentIdRef: V, runSubscriptionAbortRef: ge } =
|
|
3602
|
+
}), { fetchSessions: ue, loadMoreSessions: de, loadSession: fe, loadOlderSessionEvents: pe, createNewSession: me, deleteSession: he, currentSessionIdRef: B, agentIdRef: V, runSubscriptionAbortRef: ge } = kn({
|
|
3568
3603
|
agentId: o,
|
|
3569
3604
|
currentSessionId: s,
|
|
3570
3605
|
isMobile: R,
|
|
@@ -3578,7 +3613,7 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3578
3613
|
z.getState().clearSessionEventCache(e), ue(V.current, e);
|
|
3579
3614
|
};
|
|
3580
3615
|
queueMicrotask(t), window.setTimeout(t, 1800), window.setTimeout(t, 5e3);
|
|
3581
|
-
}, [V, ue]), ye = m.find((e) => e.id === p) || null, { submitDraft: be, stopGeneration: xe, disconnectRun: Se, resumeCheckpoint: we } =
|
|
3616
|
+
}, [V, ue]), ye = m.find((e) => e.id === p) || null, { submitDraft: be, stopGeneration: xe, disconnectRun: Se, resumeCheckpoint: we } = fn({
|
|
3582
3617
|
agentId: o,
|
|
3583
3618
|
currentSessionId: s,
|
|
3584
3619
|
agentFramework: x,
|
|
@@ -3623,7 +3658,7 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3623
3658
|
o,
|
|
3624
3659
|
B,
|
|
3625
3660
|
ve
|
|
3626
|
-
]), { submitResponseFeedback: De, deleteResponseFeedback: Oe, respondToApproval: Ae } =
|
|
3661
|
+
]), { submitResponseFeedback: De, deleteResponseFeedback: Oe, respondToApproval: Ae } = pn({
|
|
3627
3662
|
agentId: o,
|
|
3628
3663
|
currentSessionId: s,
|
|
3629
3664
|
isStreaming: c,
|
|
@@ -3659,7 +3694,7 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3659
3694
|
let Be = /* @__PURE__ */ D("div", {
|
|
3660
3695
|
className: "flex h-[var(--app-height)] min-h-[var(--app-height)] overflow-hidden bg-white font-sans text-slate-800 dark:bg-slate-900 dark:text-slate-200",
|
|
3661
3696
|
children: [
|
|
3662
|
-
/* @__PURE__ */ E(
|
|
3697
|
+
/* @__PURE__ */ E(An, {
|
|
3663
3698
|
uiCapabilities: N,
|
|
3664
3699
|
createNewSession: me,
|
|
3665
3700
|
deleteSession: he,
|
|
@@ -3701,7 +3736,7 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3701
3736
|
nativeTerminal: N.NativeTerminal,
|
|
3702
3737
|
workspaceEnabled: H,
|
|
3703
3738
|
onOpenWorkspace: () => _.getState().setWorkspacePanelOpen(!0)
|
|
3704
|
-
}) : /* @__PURE__ */ D(ne, { children: [/* @__PURE__ */ E(
|
|
3739
|
+
}) : /* @__PURE__ */ D(ne, { children: [/* @__PURE__ */ E(Yn, {
|
|
3705
3740
|
agentName: f,
|
|
3706
3741
|
isMobile: R,
|
|
3707
3742
|
onDeleteFeedback: Oe,
|
|
@@ -3712,7 +3747,7 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3712
3747
|
checkpointResumeEnabled: N.RunLifecycle.Enabled && N.RunLifecycle.Checkpoints && N.RunLifecycle.CheckpointResume,
|
|
3713
3748
|
onResumeCheckpoint: we,
|
|
3714
3749
|
onLoadOlderSessionEvents: pe
|
|
3715
|
-
}), /* @__PURE__ */ E(
|
|
3750
|
+
}), /* @__PURE__ */ E($n, {
|
|
3716
3751
|
composerMaxHeight: le,
|
|
3717
3752
|
submitDraft: be,
|
|
3718
3753
|
stopGeneration: Te,
|
|
@@ -3750,11 +3785,11 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3750
3785
|
}),
|
|
3751
3786
|
P && /* @__PURE__ */ E(re, {
|
|
3752
3787
|
fallback: null,
|
|
3753
|
-
children: /* @__PURE__ */ E(
|
|
3788
|
+
children: /* @__PURE__ */ E(vr, {})
|
|
3754
3789
|
}),
|
|
3755
3790
|
ze ? /* @__PURE__ */ E(re, {
|
|
3756
3791
|
fallback: null,
|
|
3757
|
-
children: /* @__PURE__ */ E(
|
|
3792
|
+
children: /* @__PURE__ */ E(yr, {
|
|
3758
3793
|
capability: N.NativeTerminal,
|
|
3759
3794
|
open: !0,
|
|
3760
3795
|
sessionId: s,
|
|
@@ -3767,14 +3802,14 @@ function _r({ apiAdapter: e, initialSurface: r = "chat", routeShell: i } = {}) {
|
|
|
3767
3802
|
}
|
|
3768
3803
|
//#endregion
|
|
3769
3804
|
//#region src/core/transport/sse-transport.ts
|
|
3770
|
-
function
|
|
3805
|
+
function xr(e, t) {
|
|
3771
3806
|
if (e.eventName === "__ping__") {
|
|
3772
3807
|
L.getState().updateActivity({ countEvent: !1 });
|
|
3773
3808
|
return;
|
|
3774
3809
|
}
|
|
3775
3810
|
t.onEvent(e);
|
|
3776
3811
|
}
|
|
3777
|
-
var
|
|
3812
|
+
var Sr = class {
|
|
3778
3813
|
protocol = "sse-post";
|
|
3779
3814
|
async connect(e, t) {
|
|
3780
3815
|
let n = (await Re(e.action, e.body || {}, { signal: e.signal })).getReader(), r = new TextDecoder(), i = "", a = !1;
|
|
@@ -3794,7 +3829,7 @@ var yr = class {
|
|
|
3794
3829
|
t.onComplete();
|
|
3795
3830
|
return;
|
|
3796
3831
|
}
|
|
3797
|
-
|
|
3832
|
+
xr(e, t);
|
|
3798
3833
|
}
|
|
3799
3834
|
}
|
|
3800
3835
|
}
|
|
@@ -3806,7 +3841,7 @@ var yr = class {
|
|
|
3806
3841
|
a = !0, n.cancel().catch(() => {});
|
|
3807
3842
|
};
|
|
3808
3843
|
}
|
|
3809
|
-
},
|
|
3844
|
+
}, Cr = class {
|
|
3810
3845
|
protocol = "sse-get";
|
|
3811
3846
|
async connect(e, t) {
|
|
3812
3847
|
let n = (await ze(e.action, e.params || {}, { signal: e.signal })).getReader(), r = new TextDecoder(), i = "", a = !1;
|
|
@@ -3826,7 +3861,7 @@ var yr = class {
|
|
|
3826
3861
|
t.onComplete();
|
|
3827
3862
|
return;
|
|
3828
3863
|
}
|
|
3829
|
-
|
|
3864
|
+
xr(e, t);
|
|
3830
3865
|
}
|
|
3831
3866
|
}
|
|
3832
3867
|
}
|
|
@@ -3840,4 +3875,4 @@ var yr = class {
|
|
|
3840
3875
|
}
|
|
3841
3876
|
};
|
|
3842
3877
|
//#endregion
|
|
3843
|
-
export {
|
|
3878
|
+
export { br as AgentWorkbench, gr as ApiFacadeImpl, bt as RunEngineImpl, Cr as SseGetTransport, Sr as SsePostTransport, st as createProtocol };
|