@axiom-lattice/react-sdk 4.11.1 → 5.0.0

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.
Files changed (74) hide show
  1. package/dist/{AgentDetailSideApp-OW5LUKMG.mjs → AgentDetailSideApp-TIU7UQZH.mjs} +8 -8
  2. package/dist/AgentGovernanceWorkbench-CWFRVPS5.mjs +20 -0
  3. package/dist/{MessageGraph-SGLKFEJK.mjs → MessageGraph-XRSLD6VY.mjs} +4 -4
  4. package/dist/{ReactChart-FHVYPC7S.mjs → ReactChart-IW27RELF.mjs} +4 -4
  5. package/dist/{SkillFlow-MLSQCF4X.mjs → SkillFlow-7OCWAF5V.mjs} +4 -4
  6. package/dist/{TasksSideApp-F2ZZTWGN.mjs → TasksSideApp-5UTBVBIW.mjs} +5 -7
  7. package/dist/TasksSideApp-5UTBVBIW.mjs.map +1 -0
  8. package/dist/{TeamWorkspace-AQOUI5EN.mjs → TeamWorkspace-WZ7EHM3X.mjs} +4 -4
  9. package/dist/{TopologyRuntimeView-6GZUQLB6.mjs → TopologyRuntimeView-77JCSNTK.mjs} +5 -5
  10. package/dist/{WorkflowAutomationView-UUAUG3LZ.mjs → WorkflowAutomationView-AVGN2L6Y.mjs} +7 -7
  11. package/dist/{chunk-HLOK3K5J.mjs → chunk-CLCJX35D.mjs} +7 -7
  12. package/dist/{chunk-MASPEZN4.mjs → chunk-GJTDVFBS.mjs} +3 -3
  13. package/dist/{chunk-RDC4ZHXF.mjs → chunk-IFRTNJ2P.mjs} +2 -2
  14. package/dist/{chunk-PEEXMLMK.mjs → chunk-IODHU3BD.mjs} +3 -3
  15. package/dist/{chunk-TMGDS7XU.mjs → chunk-MFFUZVR5.mjs} +3 -3
  16. package/dist/{chunk-J23W2JYG.mjs → chunk-NE5RWDYD.mjs} +4 -4
  17. package/dist/{chunk-JBDRDPL5.mjs → chunk-QLFWQ4HR.mjs} +1178 -946
  18. package/dist/chunk-QLFWQ4HR.mjs.map +1 -0
  19. package/dist/{chunk-ZQ7G446O.mjs → chunk-UDSGQ7R7.mjs} +3 -3
  20. package/dist/{chunk-TIYJFBLK.mjs → chunk-VLQM75ZM.mjs} +6 -6
  21. package/dist/{chunk-TXBE42BY.mjs → chunk-VQT22AKU.mjs} +6 -6
  22. package/dist/{embed-page-AgentDetailSideApp-2M4MLVQQ.js → embed-page-AgentDetailSideApp-XCP4LY7Y.js} +1 -1
  23. package/dist/{embed-page-AgentGovernanceWorkbench-KEVBIQP6.js → embed-page-AgentGovernanceWorkbench-BBDKEIBI.js} +1 -1
  24. package/dist/{embed-page-MessageGraph-PRBUQINR.js → embed-page-MessageGraph-D77CYFAG.js} +1 -1
  25. package/dist/{embed-page-ReactChart-V6JJXCEV.js → embed-page-ReactChart-TBDJOTZ5.js} +1 -1
  26. package/dist/{embed-page-SkillFlow-6LPE2VG3.js → embed-page-SkillFlow-NDAK3GAD.js} +1 -1
  27. package/dist/{embed-page-TasksSideApp-OFZI54MF.js → embed-page-TasksSideApp-BVCIAE24.js} +5 -5
  28. package/dist/{embed-page-TeamWorkspace-QSSAF3AA.js → embed-page-TeamWorkspace-JFEKNVFP.js} +1 -1
  29. package/dist/{embed-page-TopologyRuntimeView-PHULW2NG.js → embed-page-TopologyRuntimeView-42TN76MK.js} +1 -1
  30. package/dist/{embed-page-WorkflowAutomationView-LQS6H7X6.js → embed-page-WorkflowAutomationView-JLP4UHPP.js} +1 -1
  31. package/dist/{embed-page-chunk-O44JEYLD.js → embed-page-chunk-2PFKLMTR.js} +5 -5
  32. package/dist/{embed-page-chunk-IJ2YWGKU.js → embed-page-chunk-5NJ3O2GK.js} +1 -1
  33. package/dist/{embed-page-chunk-D5EY6ASK.js → embed-page-chunk-GUSAII2D.js} +1 -1
  34. package/dist/{embed-page-chunk-SSWDAKQU.js → embed-page-chunk-H64UEFHS.js} +1 -1
  35. package/dist/{embed-page-chunk-PFCR6CFL.js → embed-page-chunk-I3OONX3N.js} +1 -1
  36. package/dist/{embed-page-chunk-YNHKD2CY.js → embed-page-chunk-K2U3JD67.js} +1 -1
  37. package/dist/{embed-page-chunk-7PNQFZMK.js → embed-page-chunk-YYDZ6ZBV.js} +307 -191
  38. package/dist/{embed-page-en-PQZ2ZCEH.js → embed-page-en-GLT2HEZZ.js} +1 -1
  39. package/dist/{embed-page-zh-D3EX4GW4.js → embed-page-zh-XMEJPDMF.js} +1 -1
  40. package/dist/embed-page.js +1 -1
  41. package/dist/{en-WQVDOIB7.mjs → en-FDNQNTHX.mjs} +7 -2
  42. package/dist/{en-WQVDOIB7.mjs.map → en-FDNQNTHX.mjs.map} +1 -1
  43. package/dist/index.d.mts +7 -6
  44. package/dist/index.d.ts +7 -6
  45. package/dist/index.js +2677 -2426
  46. package/dist/index.js.map +1 -1
  47. package/dist/index.mjs +10 -10
  48. package/dist/web-app.js +12 -2
  49. package/dist/web-app.js.map +1 -1
  50. package/dist/web-app.mjs +1 -1
  51. package/dist/{zh-6PHD4AY5.mjs → zh-2EJFFUSY.mjs} +7 -2
  52. package/dist/zh-2EJFFUSY.mjs.map +1 -0
  53. package/package.json +3 -3
  54. package/dist/AgentGovernanceWorkbench-NNCUUU3E.mjs +0 -20
  55. package/dist/TasksSideApp-F2ZZTWGN.mjs.map +0 -1
  56. package/dist/chunk-JBDRDPL5.mjs.map +0 -1
  57. package/dist/zh-6PHD4AY5.mjs.map +0 -1
  58. /package/dist/{AgentDetailSideApp-OW5LUKMG.mjs.map → AgentDetailSideApp-TIU7UQZH.mjs.map} +0 -0
  59. /package/dist/{AgentGovernanceWorkbench-NNCUUU3E.mjs.map → AgentGovernanceWorkbench-CWFRVPS5.mjs.map} +0 -0
  60. /package/dist/{MessageGraph-SGLKFEJK.mjs.map → MessageGraph-XRSLD6VY.mjs.map} +0 -0
  61. /package/dist/{ReactChart-FHVYPC7S.mjs.map → ReactChart-IW27RELF.mjs.map} +0 -0
  62. /package/dist/{SkillFlow-MLSQCF4X.mjs.map → SkillFlow-7OCWAF5V.mjs.map} +0 -0
  63. /package/dist/{TeamWorkspace-AQOUI5EN.mjs.map → TeamWorkspace-WZ7EHM3X.mjs.map} +0 -0
  64. /package/dist/{TopologyRuntimeView-6GZUQLB6.mjs.map → TopologyRuntimeView-77JCSNTK.mjs.map} +0 -0
  65. /package/dist/{WorkflowAutomationView-UUAUG3LZ.mjs.map → WorkflowAutomationView-AVGN2L6Y.mjs.map} +0 -0
  66. /package/dist/{chunk-HLOK3K5J.mjs.map → chunk-CLCJX35D.mjs.map} +0 -0
  67. /package/dist/{chunk-MASPEZN4.mjs.map → chunk-GJTDVFBS.mjs.map} +0 -0
  68. /package/dist/{chunk-RDC4ZHXF.mjs.map → chunk-IFRTNJ2P.mjs.map} +0 -0
  69. /package/dist/{chunk-PEEXMLMK.mjs.map → chunk-IODHU3BD.mjs.map} +0 -0
  70. /package/dist/{chunk-TMGDS7XU.mjs.map → chunk-MFFUZVR5.mjs.map} +0 -0
  71. /package/dist/{chunk-J23W2JYG.mjs.map → chunk-NE5RWDYD.mjs.map} +0 -0
  72. /package/dist/{chunk-ZQ7G446O.mjs.map → chunk-UDSGQ7R7.mjs.map} +0 -0
  73. /package/dist/{chunk-TIYJFBLK.mjs.map → chunk-VLQM75ZM.mjs.map} +0 -0
  74. /package/dist/{chunk-TXBE42BY.mjs.map → chunk-VQT22AKU.mjs.map} +0 -0
@@ -9,7 +9,7 @@ import {
9
9
  useAuthOptional,
10
10
  useClient,
11
11
  useLatticeChatShellContext
12
- } from "./chunk-RDC4ZHXF.mjs";
12
+ } from "./chunk-IFRTNJ2P.mjs";
13
13
  import {
14
14
  XMarkdown_default,
15
15
  formatErrorMessage,
@@ -18,7 +18,7 @@ import {
18
18
  import {
19
19
  useLocale,
20
20
  useT
21
- } from "./chunk-PEEXMLMK.mjs";
21
+ } from "./chunk-IODHU3BD.mjs";
22
22
 
23
23
  // src/AppRegistry.ts
24
24
  var AppRegistryImpl = class {
@@ -10559,11 +10559,11 @@ var useSideAppOpener = () => {
10559
10559
  };
10560
10560
 
10561
10561
  // src/components/GenUI/elements/generic_data_table.tsx
10562
- import { Table as Table6, Typography as Typography74, Button as Button90, Flex as Flex7, Space as Space52 } from "antd";
10562
+ import { Table as Table6, Typography as Typography75, Button as Button90, Flex as Flex7, Space as Space52 } from "antd";
10563
10563
 
10564
10564
  // src/components/GenUI/MDResponse.tsx
10565
- import React133, { useRef as useRef59, useState as useState131, useMemo as useMemo54, useDeferredValue as useDeferredValue3 } from "react";
10566
- import { createStyles as createStyles80 } from "antd-style";
10565
+ import React134, { useRef as useRef59, useState as useState132, useMemo as useMemo55, useDeferredValue as useDeferredValue3 } from "react";
10566
+ import { createStyles as createStyles81 } from "antd-style";
10567
10567
 
10568
10568
  // src/components/GenUI/Code.tsx
10569
10569
  import { Suspense as Suspense6, lazy as lazy5 } from "react";
@@ -10623,7 +10623,6 @@ function useExportImport() {
10623
10623
  exportableTypes: [],
10624
10624
  selectedTypes: [],
10625
10625
  exportLoading: false,
10626
- exportJobId: null,
10627
10626
  importLoading: false,
10628
10627
  previewResult: null,
10629
10628
  applyResult: null,
@@ -10654,39 +10653,57 @@ function useExportImport() {
10654
10653
  const deselectAll = useCallback27(() => {
10655
10654
  setState((s) => ({ ...s, selectedTypes: [] }));
10656
10655
  }, []);
10656
+ const saveArchive = useCallback27((filename, data) => {
10657
+ const archiveBytes = data.buffer.slice(
10658
+ data.byteOffset,
10659
+ data.byteOffset + data.byteLength
10660
+ );
10661
+ const blob = new Blob([archiveBytes], { type: "application/gzip" });
10662
+ const url = URL.createObjectURL(blob);
10663
+ const a = document.createElement("a");
10664
+ a.href = url;
10665
+ a.download = filename || "tenant-export.tar.gz";
10666
+ document.body.appendChild(a);
10667
+ a.click();
10668
+ document.body.removeChild(a);
10669
+ URL.revokeObjectURL(url);
10670
+ }, []);
10657
10671
  const doExport = useCallback27(async (entityIds) => {
10658
10672
  setState((s) => ({ ...s, exportLoading: true, error: null }));
10659
10673
  try {
10660
- const json = await api.post(
10661
- `/api/tenants/${tenantId}/export`,
10662
- { entityTypes: state2.selectedTypes, entityIds }
10674
+ const result = await client.exportImport.exportConfig(
10675
+ tenantId,
10676
+ state2.selectedTypes,
10677
+ entityIds
10663
10678
  );
10664
- const result = json.data;
10665
10679
  if ("needsConfirmation" in result) {
10666
10680
  setState((s) => ({ ...s, exportLoading: false }));
10667
10681
  return result;
10668
10682
  }
10669
- setState((s) => ({ ...s, exportJobId: result.jobId, exportLoading: false }));
10670
- return result;
10683
+ saveArchive(result.filename, result.data);
10684
+ setState((s) => ({ ...s, exportLoading: false }));
10685
+ return { downloaded: true };
10671
10686
  } catch (err) {
10672
10687
  setState((s) => ({ ...s, exportLoading: false, error: err.message }));
10673
10688
  return null;
10674
10689
  }
10675
- }, [api, state2.selectedTypes, tenantId]);
10690
+ }, [client, state2.selectedTypes, tenantId, saveArchive]);
10676
10691
  const confirmExport = useCallback27(async (entityTypes, entityIds) => {
10677
- setState((s) => ({ ...s, exportLoading: true }));
10692
+ setState((s) => ({ ...s, exportLoading: true, error: null }));
10678
10693
  try {
10679
- const json = await api.post(
10680
- `/api/tenants/${tenantId}/export/confirm`,
10681
- { entityTypes, entityIds }
10694
+ const archive = await client.exportImport.exportConfigConfirm(
10695
+ tenantId,
10696
+ entityTypes,
10697
+ entityIds
10682
10698
  );
10683
- setState((s) => ({ ...s, exportJobId: json.data.jobId, exportLoading: false }));
10684
- return json.data;
10699
+ saveArchive(archive.filename, archive.data);
10700
+ setState((s) => ({ ...s, exportLoading: false }));
10701
+ return true;
10685
10702
  } catch (err) {
10686
10703
  setState((s) => ({ ...s, exportLoading: false, error: err.message }));
10687
- return null;
10704
+ return false;
10688
10705
  }
10689
- }, [api, tenantId]);
10706
+ }, [client, tenantId, saveArchive]);
10690
10707
  const doImportPreview = useCallback27(async (file) => {
10691
10708
  setState((s) => ({ ...s, importLoading: true, error: null }));
10692
10709
  try {
@@ -10727,28 +10744,6 @@ function useExportImport() {
10727
10744
  return null;
10728
10745
  }
10729
10746
  }, [api, tenantId]);
10730
- const downloadExport = useCallback27(async (jobId) => {
10731
- setState((s) => ({ ...s, exportLoading: true, error: null }));
10732
- try {
10733
- const { filename, data } = await client.exportImport.downloadExport(tenantId, jobId);
10734
- const archiveBytes = data.buffer.slice(
10735
- data.byteOffset,
10736
- data.byteOffset + data.byteLength
10737
- );
10738
- const blob = new Blob([archiveBytes], { type: "application/gzip" });
10739
- const url = URL.createObjectURL(blob);
10740
- const a = document.createElement("a");
10741
- a.href = url;
10742
- a.download = filename || "tenant-export.tar.gz";
10743
- document.body.appendChild(a);
10744
- a.click();
10745
- document.body.removeChild(a);
10746
- URL.revokeObjectURL(url);
10747
- setState((s) => ({ ...s, exportLoading: false }));
10748
- } catch (err) {
10749
- setState((s) => ({ ...s, exportLoading: false, error: err.message }));
10750
- }
10751
- }, [client, tenantId]);
10752
10747
  return {
10753
10748
  ...state2,
10754
10749
  fetchExportableTypes,
@@ -10758,7 +10753,6 @@ function useExportImport() {
10758
10753
  doExport,
10759
10754
  confirmExport,
10760
10755
  fetchEntityPreview,
10761
- downloadExport,
10762
10756
  doImportPreview,
10763
10757
  doImportApply
10764
10758
  };
@@ -11701,8 +11695,8 @@ var GenericDataTableSideApp = (props) => {
11701
11695
  };
11702
11696
 
11703
11697
  // src/components/GenUI/elements/ToolCall.tsx
11704
- import { useCallback as useCallback71, useMemo as useMemo43, useState as useState118 } from "react";
11705
- import { Collapse as Collapse5, Typography as Typography54, Flex as Flex3 } from "antd";
11698
+ import { useCallback as useCallback71, useMemo as useMemo44, useState as useState119 } from "react";
11699
+ import { Collapse as Collapse5, Typography as Typography55, Flex as Flex3 } from "antd";
11706
11700
 
11707
11701
  // src/components/GenUI/elements/ToolCard.tsx
11708
11702
  import { Card as Card3, Typography as Typography8, Space as Space7, Tag as Tag2 } from "antd";
@@ -14446,7 +14440,7 @@ function buildMentionOptions(bots) {
14446
14440
 
14447
14441
  // src/components/ProjectRoom/ProjectRoomComposer.tsx
14448
14442
  import { jsx as jsx46, jsxs as jsxs30 } from "react/jsx-runtime";
14449
- var MAX_UPLOAD_MB = 50;
14443
+ var MAX_UPLOAD_MB = 100;
14450
14444
  var useStyles14 = createStyles19(({ token, css }) => ({
14451
14445
  root: css`
14452
14446
  flex-shrink: 0;
@@ -15709,7 +15703,7 @@ import { Attachments as Attachments2, Sender as Sender2 } from "@ant-design/x";
15709
15703
  import { createStyles as createStyles24 } from "antd-style";
15710
15704
  import { Paperclip as Paperclip2 } from "lucide-react";
15711
15705
  import { jsx as jsx51, jsxs as jsxs35 } from "react/jsx-runtime";
15712
- var MAX_UPLOAD_MB2 = 50;
15706
+ var MAX_UPLOAD_MB2 = 100;
15713
15707
  var useStyles19 = createStyles24(({ token, css }) => ({
15714
15708
  root: css`
15715
15709
  margin-top: 12px;
@@ -25246,7 +25240,7 @@ import { useState as useState73, useEffect as useEffect51, useCallback as useCal
25246
25240
  import { BrainCircuit, Trash2 as Trash29, Network } from "lucide-react";
25247
25241
  import { Modal as Modal18, message as message12, Tag as Tag17, Typography as Typography21, Input as Input23, Button as Button37, Space as Space20, Spin as Spin16 } from "antd";
25248
25242
  import { Fragment as Fragment25, jsx as jsx87, jsxs as jsxs65 } from "react/jsx-runtime";
25249
- var SkillFlow = lazy(() => import("./SkillFlow-MLSQCF4X.mjs"));
25243
+ var SkillFlow = lazy(() => import("./SkillFlow-7OCWAF5V.mjs"));
25250
25244
  var { Text: Text21 } = Typography21;
25251
25245
  var { TextArea: TextArea5 } = Input23;
25252
25246
  var SkillList = () => {
@@ -29488,7 +29482,7 @@ import { Spin as Spin21 } from "antd";
29488
29482
  import { ListChecks as ListChecks2 } from "lucide-react";
29489
29483
  import { jsx as jsx107 } from "react/jsx-runtime";
29490
29484
  var TasksSideApp = lazy2(
29491
- () => import("./TasksSideApp-F2ZZTWGN.mjs").then((m) => ({ default: m.TasksSideApp }))
29485
+ () => import("./TasksSideApp-5UTBVBIW.mjs").then((m) => ({ default: m.TasksSideApp }))
29492
29486
  );
29493
29487
  var TasksButton = () => {
29494
29488
  const { openSideApp, sideAppVisible, sideAppSelectedCard } = useChatUIContext();
@@ -29762,7 +29756,7 @@ ${JSON.stringify(
29762
29756
  // src/components/Chat/MessageViewPanel.tsx
29763
29757
  import { jsx as jsx109 } from "react/jsx-runtime";
29764
29758
  var MessageGraph = React77.lazy(
29765
- () => import("./MessageGraph-SGLKFEJK.mjs").then((m) => ({ default: m.MessageGraph }))
29759
+ () => import("./MessageGraph-XRSLD6VY.mjs").then((m) => ({ default: m.MessageGraph }))
29766
29760
  );
29767
29761
  var MessageViewPanel = ({
29768
29762
  messages,
@@ -37553,7 +37547,7 @@ var TYPE_ICONS = {
37553
37547
  a2a_api_key: Key2,
37554
37548
  eval: FlaskConical3
37555
37549
  };
37556
- var ExportStep = ({ onExported, exportJobId }) => {
37550
+ var ExportStep = () => {
37557
37551
  const {
37558
37552
  exportableTypes,
37559
37553
  selectedTypes,
@@ -37565,8 +37559,7 @@ var ExportStep = ({ onExported, exportJobId }) => {
37565
37559
  selectAll,
37566
37560
  deselectAll,
37567
37561
  doExport,
37568
- confirmExport,
37569
- downloadExport
37562
+ confirmExport
37570
37563
  } = useExportImport();
37571
37564
  const [needsConfirm, setNeedsConfirm] = useState112(null);
37572
37565
  const [step, setStep] = useState112("types");
@@ -37616,8 +37609,7 @@ var ExportStep = ({ onExported, exportJobId }) => {
37616
37609
  const result = await doExport(selectedEntityIds);
37617
37610
  if (result && "needsConfirmation" in result) {
37618
37611
  setNeedsConfirm(result);
37619
- } else if (result && "jobId" in result) {
37620
- onExported(result);
37612
+ } else if (result) {
37621
37613
  setStep("done");
37622
37614
  }
37623
37615
  };
@@ -37627,29 +37619,18 @@ var ExportStep = ({ onExported, exportJobId }) => {
37627
37619
  ...needsConfirm?.missingDependencies || [],
37628
37620
  ...needsConfirm?.cascadeAdditions || []
37629
37621
  ])];
37630
- const result = await confirmExport(entityTypes, selectedEntityIds);
37631
- if (result?.jobId) {
37622
+ const ok = await confirmExport(entityTypes, selectedEntityIds);
37623
+ if (ok) {
37632
37624
  setNeedsConfirm(null);
37633
- onExported(result);
37634
37625
  setStep("done");
37635
37626
  }
37636
37627
  };
37637
- if (step === "done" && exportJobId) {
37628
+ if (step === "done") {
37638
37629
  return /* @__PURE__ */ jsxs108("div", { style: { textAlign: "center", padding: "60px 24px" }, children: [
37639
37630
  /* @__PURE__ */ jsx148(CheckCircle4, { size: 48, color: token.colorSuccess, style: { marginBottom: 16 } }),
37640
37631
  /* @__PURE__ */ jsx148("h3", { style: { marginBottom: 8 }, children: t("migration.export.ready") }),
37641
37632
  /* @__PURE__ */ jsx148(Text41, { type: "secondary", style: { display: "block", marginBottom: 24 }, children: t("migration.export.readyHint") }),
37642
- error && /* @__PURE__ */ jsx148(Alert22, { type: "error", message: error, style: { marginBottom: 16 }, closable: true }),
37643
- /* @__PURE__ */ jsx148(
37644
- Button70,
37645
- {
37646
- type: "primary",
37647
- size: "large",
37648
- onClick: () => downloadExport(exportJobId),
37649
- loading: exportLoading,
37650
- children: t("migration.export.download")
37651
- }
37652
- )
37633
+ error && /* @__PURE__ */ jsx148(Alert22, { type: "error", message: error, style: { marginBottom: 16 }, closable: true })
37653
37634
  ] });
37654
37635
  }
37655
37636
  if (step === "entities") {
@@ -38121,7 +38102,6 @@ var iconBox = (bg, Icon) => /* @__PURE__ */ jsx151("div", { style: {
38121
38102
  }, children: /* @__PURE__ */ jsx151(Icon, { size: 22 }) });
38122
38103
  var MigrationPage = () => {
38123
38104
  const [mode, setMode] = useState114("choose");
38124
- const [exportJobId, setExportJobId] = useState114(null);
38125
38105
  const { token } = theme15.useToken();
38126
38106
  const t = useT();
38127
38107
  if (mode === "choose") {
@@ -38195,13 +38175,7 @@ var MigrationPage = () => {
38195
38175
  /* @__PURE__ */ jsx151(Button72, { type: "text", icon: /* @__PURE__ */ jsx151(ArrowLeft5, { size: 18 }), onClick: () => setMode("choose"), children: t("common.back") }),
38196
38176
  /* @__PURE__ */ jsx151(Title9, { level: 4, style: { margin: 0 }, children: mode === "export" ? t("migration.export.heading") : t("migration.import.heading") })
38197
38177
  ] }),
38198
- mode === "export" && /* @__PURE__ */ jsx151(
38199
- ExportStep,
38200
- {
38201
- onExported: (result) => setExportJobId(result.jobId || null),
38202
- exportJobId
38203
- }
38204
- ),
38178
+ mode === "export" && /* @__PURE__ */ jsx151(ExportStep, {}),
38205
38179
  mode === "import" && /* @__PURE__ */ jsx151(ImportStep, { onComplete: () => setMode("choose") })
38206
38180
  ] });
38207
38181
  };
@@ -38416,19 +38390,19 @@ var DEFAULT_WORKSPACE_MENU_ITEMS = [
38416
38390
  ];
38417
38391
  var PanelSuspenseFallback = () => /* @__PURE__ */ jsx152("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", height: "100%", minHeight: 120 }, children: /* @__PURE__ */ jsx152(Spin32, {}) });
38418
38392
  var AgentGovernanceWorkbench = lazy3(
38419
- () => import("./AgentGovernanceWorkbench-NNCUUU3E.mjs").then((m) => ({ default: m.AgentGovernanceWorkbench }))
38393
+ () => import("./AgentGovernanceWorkbench-CWFRVPS5.mjs").then((m) => ({ default: m.AgentGovernanceWorkbench }))
38420
38394
  );
38421
38395
  var TopologyRuntimeView = lazy3(
38422
- () => import("./TopologyRuntimeView-6GZUQLB6.mjs").then((m) => ({ default: m.TopologyRuntimeView }))
38396
+ () => import("./TopologyRuntimeView-77JCSNTK.mjs").then((m) => ({ default: m.TopologyRuntimeView }))
38423
38397
  );
38424
38398
  var WorkflowAutomationView = lazy3(
38425
- () => import("./WorkflowAutomationView-UUAUG3LZ.mjs").then((m) => ({ default: m.WorkflowAutomationView }))
38399
+ () => import("./WorkflowAutomationView-AVGN2L6Y.mjs").then((m) => ({ default: m.WorkflowAutomationView }))
38426
38400
  );
38427
38401
  var TasksSideApp2 = lazy3(
38428
- () => import("./TasksSideApp-F2ZZTWGN.mjs").then((m) => ({ default: m.TasksSideApp }))
38402
+ () => import("./TasksSideApp-5UTBVBIW.mjs").then((m) => ({ default: m.TasksSideApp }))
38429
38403
  );
38430
38404
  var AgentDetailSideApp = lazy3(
38431
- () => import("./AgentDetailSideApp-OW5LUKMG.mjs").then((m) => ({ default: m.AgentDetailSideApp }))
38405
+ () => import("./AgentDetailSideApp-TIU7UQZH.mjs").then((m) => ({ default: m.AgentDetailSideApp }))
38432
38406
  );
38433
38407
  var createWrapper = (Component2) => {
38434
38408
  return () => /* @__PURE__ */ jsx152(Suspense4, { fallback: /* @__PURE__ */ jsx152(PanelSuspenseFallback, {}), children: /* @__PURE__ */ jsx152(Component2, { ...{} }) });
@@ -39543,27 +39517,285 @@ var ToolResultMedia = ({ ui }) => {
39543
39517
  ) });
39544
39518
  };
39545
39519
 
39546
- // src/components/GenUI/elements/ToolCall.tsx
39520
+ // src/components/McpApp/PluginTestCard.tsx
39521
+ import { useMemo as useMemo43, useState as useState118 } from "react";
39522
+ import { Typography as Typography54 } from "antd";
39523
+ import { createStyles as createStyles66 } from "antd-style";
39524
+ import {
39525
+ AppWindow,
39526
+ Braces,
39527
+ Cable,
39528
+ CornerDownRight,
39529
+ FlaskConical as FlaskConical5
39530
+ } from "lucide-react";
39547
39531
  import { jsx as jsx157, jsxs as jsxs115 } from "react/jsx-runtime";
39532
+ var { Text: Text44 } = Typography54;
39533
+ var asRecord3 = (value) => typeof value === "object" && value !== null && !Array.isArray(value) ? value : void 0;
39534
+ function resolvePluginTestPreview(name, args) {
39535
+ if (name !== "manage_plugin") return null;
39536
+ const call = asRecord3(args);
39537
+ if (call?.action !== "test") return null;
39538
+ const target = asRecord3(call.target);
39539
+ if (target?.kind !== "tool") return null;
39540
+ const pluginType = typeof call.type === "string" ? call.type : "";
39541
+ const toolName = typeof target.name === "string" ? target.name : "";
39542
+ if (pluginType === "" || toolName === "") return null;
39543
+ const connectionKey = typeof target.connectionKey === "string" ? target.connectionKey : void 0;
39544
+ return { pluginType, toolName, input: target.input, ...connectionKey ? { connectionKey } : {} };
39545
+ }
39546
+ function toPretty(value) {
39547
+ if (typeof value === "string") {
39548
+ const trimmed = value.trim();
39549
+ if (trimmed === "") return "";
39550
+ try {
39551
+ return JSON.stringify(JSON.parse(trimmed), null, 2);
39552
+ } catch {
39553
+ return value;
39554
+ }
39555
+ }
39556
+ try {
39557
+ return JSON.stringify(value ?? null, null, 2);
39558
+ } catch {
39559
+ return String(value);
39560
+ }
39561
+ }
39562
+ var useStyles49 = createStyles66(({ css, token }) => ({
39563
+ card: css`
39564
+ max-width: 100%;
39565
+ border-radius: 16px;
39566
+ border: 1px solid ${token.colorBorderSecondary};
39567
+ background: ${token.colorBgContainer};
39568
+ overflow: hidden;
39569
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
39570
+ `,
39571
+ accent: css`
39572
+ height: 3px;
39573
+ background: linear-gradient(
39574
+ 90deg,
39575
+ ${token.colorPrimary},
39576
+ ${token.colorPrimaryBorder}
39577
+ );
39578
+ `,
39579
+ header: css`
39580
+ display: flex;
39581
+ align-items: center;
39582
+ gap: 11px;
39583
+ padding: 14px 16px 12px;
39584
+ `,
39585
+ icon: css`
39586
+ width: 32px;
39587
+ height: 32px;
39588
+ border-radius: 10px;
39589
+ flex-shrink: 0;
39590
+ display: inline-flex;
39591
+ align-items: center;
39592
+ justify-content: center;
39593
+ color: ${token.colorPrimary};
39594
+ background: ${token.colorPrimaryBg};
39595
+ border: 1px solid ${token.colorPrimaryBorder};
39596
+ `,
39597
+ badge: css`
39598
+ font-size: 10px;
39599
+ font-weight: 600;
39600
+ text-transform: uppercase;
39601
+ letter-spacing: 0.1em;
39602
+ color: ${token.colorPrimary};
39603
+ line-height: 1.4;
39604
+ `,
39605
+ subject: css`
39606
+ display: flex;
39607
+ align-items: center;
39608
+ gap: 6px;
39609
+ flex-wrap: wrap;
39610
+ margin-top: 2px;
39611
+ `,
39612
+ toolChip: css`
39613
+ font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
39614
+ font-size: 12px;
39615
+ padding: 1px 7px;
39616
+ border-radius: 6px;
39617
+ background: ${token.colorFillTertiary};
39618
+ color: ${token.colorTextSecondary};
39619
+ `,
39620
+ connChip: css`
39621
+ display: inline-flex;
39622
+ align-items: center;
39623
+ gap: 4px;
39624
+ font-size: 11px;
39625
+ padding: 1px 8px;
39626
+ border-radius: 999px;
39627
+ color: ${token.colorTextSecondary};
39628
+ background: ${token.colorFillQuaternary};
39629
+ border: 1px solid ${token.colorBorderSecondary};
39630
+ `,
39631
+ section: css`
39632
+ padding: 0 16px 14px;
39633
+ `,
39634
+ resultHead: css`
39635
+ display: flex;
39636
+ align-items: center;
39637
+ justify-content: space-between;
39638
+ gap: 8px;
39639
+ margin-bottom: 6px;
39640
+ `,
39641
+ label: css`
39642
+ display: flex;
39643
+ align-items: center;
39644
+ gap: 6px;
39645
+ font-size: 10.5px;
39646
+ font-weight: 600;
39647
+ text-transform: uppercase;
39648
+ letter-spacing: 0.08em;
39649
+ color: ${token.colorTextTertiary};
39650
+ margin-bottom: 6px;
39651
+ `,
39652
+ code: css`
39653
+ margin: 0;
39654
+ font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
39655
+ font-size: 12.5px;
39656
+ line-height: 1.6;
39657
+ padding: 10px 12px;
39658
+ border-radius: 10px;
39659
+ background: ${token.colorFillQuaternary};
39660
+ border: 1px solid ${token.colorBorderSecondary};
39661
+ color: ${token.colorText};
39662
+ white-space: pre-wrap;
39663
+ word-break: break-word;
39664
+ max-height: 220px;
39665
+ overflow: auto;
39666
+ `,
39667
+ placeholder: css`
39668
+ margin: 0;
39669
+ padding: 10px 12px;
39670
+ border-radius: 10px;
39671
+ font-size: 12.5px;
39672
+ color: ${token.colorTextTertiary};
39673
+ background: ${token.colorFillQuaternary};
39674
+ border: 1px dashed ${token.colorBorderSecondary};
39675
+ `,
39676
+ appFrame: css`
39677
+ border: 1px solid ${token.colorBorderSecondary};
39678
+ border-radius: 12px;
39679
+ overflow: hidden;
39680
+ background: ${token.colorFillQuaternary};
39681
+
39682
+ /* The renderer sizes the iframe to the message bubble, which is wider than
39683
+ this card's inset; clamp it so the App fills its slot instead of being
39684
+ clipped by the frame. */
39685
+ iframe {
39686
+ max-width: 100%;
39687
+ }
39688
+ `
39689
+ }));
39690
+ var PluginTestCard = ({ data }) => {
39691
+ const t = useT();
39692
+ const { styles } = useStyles49();
39693
+ const preview = useMemo43(
39694
+ () => resolvePluginTestPreview(data?.name ?? "", data?.args),
39695
+ [data?.name, data?.args]
39696
+ );
39697
+ const uiRef = useMemo43(() => extractUiRef(data?.response), [data?.response]);
39698
+ const output = useMemo43(() => cleanMcpAppResponse(data?.response), [data?.response]);
39699
+ const inputText = useMemo43(() => toPretty(preview?.input ?? null), [preview?.input]);
39700
+ const outputText = useMemo43(() => toPretty(output), [output]);
39701
+ const [appFailed, setAppFailed] = useState118(false);
39702
+ const [resultView, setResultView] = useState118(uiRef ? "ui" : "data");
39703
+ if (!preview) return null;
39704
+ return /* @__PURE__ */ jsxs115("div", { className: styles.card, children: [
39705
+ /* @__PURE__ */ jsx157("div", { className: styles.accent }),
39706
+ /* @__PURE__ */ jsxs115("div", { className: styles.header, children: [
39707
+ /* @__PURE__ */ jsx157("span", { className: styles.icon, children: /* @__PURE__ */ jsx157(FlaskConical5, { size: 16 }) }),
39708
+ /* @__PURE__ */ jsxs115("div", { style: { minWidth: 0 }, children: [
39709
+ /* @__PURE__ */ jsx157("div", { className: styles.badge, children: t("mcpapp.test.badge") }),
39710
+ /* @__PURE__ */ jsxs115("div", { className: styles.subject, children: [
39711
+ /* @__PURE__ */ jsx157(Text44, { strong: true, style: { fontSize: 14 }, children: preview.pluginType }),
39712
+ /* @__PURE__ */ jsx157(Text44, { type: "secondary", style: { fontSize: 12 }, children: "\u203A" }),
39713
+ /* @__PURE__ */ jsx157("span", { className: styles.toolChip, children: preview.toolName }),
39714
+ preview.connectionKey && /* @__PURE__ */ jsxs115("span", { className: styles.connChip, children: [
39715
+ /* @__PURE__ */ jsx157(Cable, { size: 11 }),
39716
+ preview.connectionKey
39717
+ ] })
39718
+ ] })
39719
+ ] })
39720
+ ] }),
39721
+ /* @__PURE__ */ jsxs115("div", { className: styles.section, children: [
39722
+ /* @__PURE__ */ jsxs115("div", { className: styles.label, children: [
39723
+ /* @__PURE__ */ jsx157(CornerDownRight, { size: 12 }),
39724
+ t("mcpapp.test.input")
39725
+ ] }),
39726
+ inputText ? /* @__PURE__ */ jsx157("pre", { className: styles.code, children: inputText }) : /* @__PURE__ */ jsx157("p", { className: styles.placeholder, children: "\u2014" })
39727
+ ] }),
39728
+ /* @__PURE__ */ jsxs115("div", { className: styles.section, children: [
39729
+ /* @__PURE__ */ jsxs115("div", { className: styles.resultHead, children: [
39730
+ /* @__PURE__ */ jsxs115("div", { className: styles.label, style: { marginBottom: 0 }, children: [
39731
+ /* @__PURE__ */ jsx157(Braces, { size: 12 }),
39732
+ t("mcpapp.test.result")
39733
+ ] }),
39734
+ uiRef && /* @__PURE__ */ jsx157(
39735
+ SegmentedToggle,
39736
+ {
39737
+ value: resultView,
39738
+ onChange: setResultView,
39739
+ size: "small",
39740
+ ariaLabel: t("mcpapp.test.result"),
39741
+ options: [
39742
+ {
39743
+ value: "data",
39744
+ icon: /* @__PURE__ */ jsx157(Braces, { size: 12 }),
39745
+ label: t("mcpapp.test.data")
39746
+ },
39747
+ {
39748
+ value: "ui",
39749
+ icon: /* @__PURE__ */ jsx157(AppWindow, { size: 12 }),
39750
+ label: t("mcpapp.test.ui")
39751
+ }
39752
+ ]
39753
+ }
39754
+ )
39755
+ ] }),
39756
+ resultView === "ui" && uiRef ? appFailed ? /* @__PURE__ */ jsx157("p", { className: styles.placeholder, children: t("mcpapp.unavailable") }) : /* @__PURE__ */ jsx157("div", { className: styles.appFrame, children: /* @__PURE__ */ jsx157(
39757
+ McpAppRenderer,
39758
+ {
39759
+ uiRef,
39760
+ ui: data?.ui,
39761
+ toolName: preview.toolName,
39762
+ toolInput: preview.input,
39763
+ toolResult: output,
39764
+ onError: () => setAppFailed(true)
39765
+ }
39766
+ ) }) : outputText ? /* @__PURE__ */ jsx157("pre", { className: styles.code, children: outputText }) : /* @__PURE__ */ jsx157("p", { className: styles.placeholder, children: "\u2014" })
39767
+ ] })
39768
+ ] });
39769
+ };
39770
+
39771
+ // src/components/GenUI/elements/ToolCall.tsx
39772
+ import { jsx as jsx158, jsxs as jsxs116 } from "react/jsx-runtime";
39548
39773
  var CollapsePanel2 = Collapse5.Panel;
39549
39774
  var ToolCall = ({ data }) => {
39550
39775
  const toolCallData = data;
39551
39776
  const t = useT();
39552
- const [appFailed, setAppFailed] = useState118(false);
39777
+ const [appFailed, setAppFailed] = useState119(false);
39553
39778
  const handleAppError = useCallback71(() => {
39554
39779
  setAppFailed(true);
39555
39780
  }, []);
39556
- const uiRef = useMemo43(
39781
+ const uiRef = useMemo44(
39557
39782
  () => extractUiRef(toolCallData.response),
39558
39783
  [toolCallData.response]
39559
39784
  );
39560
- const responseText = useMemo43(
39785
+ const responseText = useMemo44(
39561
39786
  () => toolResponseText(toolCallData.response),
39562
39787
  [toolCallData.response]
39563
39788
  );
39789
+ const pluginPreview = useMemo44(
39790
+ () => resolvePluginTestPreview(toolCallData.name, toolCallData.args),
39791
+ [toolCallData.name, toolCallData.args]
39792
+ );
39793
+ if (pluginPreview) {
39794
+ return /* @__PURE__ */ jsx158(PluginTestCard, { data: toolCallData });
39795
+ }
39564
39796
  if (uiRef && !appFailed) {
39565
- return /* @__PURE__ */ jsxs115("div", { children: [
39566
- /* @__PURE__ */ jsx157(
39797
+ return /* @__PURE__ */ jsxs116("div", { children: [
39798
+ /* @__PURE__ */ jsx158(
39567
39799
  McpAppToolbar,
39568
39800
  {
39569
39801
  uiRef,
@@ -39572,7 +39804,7 @@ var ToolCall = ({ data }) => {
39572
39804
  toolResult: toolCallData.response
39573
39805
  }
39574
39806
  ),
39575
- /* @__PURE__ */ jsx157(
39807
+ /* @__PURE__ */ jsx158(
39576
39808
  McpAppRenderer,
39577
39809
  {
39578
39810
  uiRef,
@@ -39597,10 +39829,10 @@ var ToolCall = ({ data }) => {
39597
39829
  return t("genui.toolCall.parseArgsFailed");
39598
39830
  }
39599
39831
  };
39600
- const header = /* @__PURE__ */ jsxs115(Flex3, { align: "center", wrap: "wrap", children: [
39601
- /* @__PURE__ */ jsx157(Typography54.Text, { strong: true, children: formatToolName(toolCallData.name) }),
39602
- /* @__PURE__ */ jsx157(
39603
- Typography54.Text,
39832
+ const header = /* @__PURE__ */ jsxs116(Flex3, { align: "center", wrap: "wrap", children: [
39833
+ /* @__PURE__ */ jsx158(Typography55.Text, { strong: true, children: formatToolName(toolCallData.name) }),
39834
+ /* @__PURE__ */ jsx158(
39835
+ Typography55.Text,
39604
39836
  {
39605
39837
  type: "secondary",
39606
39838
  style: { fontSize: "12px", marginLeft: "8px" },
@@ -39613,8 +39845,8 @@ var ToolCall = ({ data }) => {
39613
39845
  parameters: toolCallData.args,
39614
39846
  type: "tool_call"
39615
39847
  };
39616
- const content = /* @__PURE__ */ jsxs115("div", { style: { marginTop: "8px" }, children: [
39617
- /* @__PURE__ */ jsx157(
39848
+ const content = /* @__PURE__ */ jsxs116("div", { style: { marginTop: "8px" }, children: [
39849
+ /* @__PURE__ */ jsx158(
39618
39850
  ToolCard,
39619
39851
  {
39620
39852
  data: toolCardData,
@@ -39622,18 +39854,18 @@ var ToolCall = ({ data }) => {
39622
39854
  interactive: false
39623
39855
  }
39624
39856
  ),
39625
- responseText && /* @__PURE__ */ jsxs115("div", { style: { marginTop: "12px" }, children: [
39626
- /* @__PURE__ */ jsx157(
39627
- Typography54.Text,
39857
+ responseText && /* @__PURE__ */ jsxs116("div", { style: { marginTop: "12px" }, children: [
39858
+ /* @__PURE__ */ jsx158(
39859
+ Typography55.Text,
39628
39860
  {
39629
39861
  strong: true,
39630
39862
  style: { fontSize: "12px", marginBottom: "8px", display: "block" },
39631
39863
  children: t("genui.toolCall.response")
39632
39864
  }
39633
39865
  ),
39634
- /* @__PURE__ */ jsx157(MDResponse, { content: responseText })
39866
+ /* @__PURE__ */ jsx158(MDResponse, { content: responseText })
39635
39867
  ] }),
39636
- /* @__PURE__ */ jsx157(ToolResultMedia, { ui: toolCallData.ui })
39868
+ /* @__PURE__ */ jsx158(ToolResultMedia, { ui: toolCallData.ui })
39637
39869
  ] });
39638
39870
  const expandIcon = ({ isActive }) => {
39639
39871
  return getStatusIcon(toolCallData.status);
@@ -39645,16 +39877,16 @@ var ToolCall = ({ data }) => {
39645
39877
  const toolCallElement = getElement(toolCallName);
39646
39878
  if (toolCallElement && !uiRef) {
39647
39879
  const CardView = toolCallElement.card_view;
39648
- return /* @__PURE__ */ jsx157(CardView, { data: toolCallData, component_key: toolCallData.id });
39880
+ return /* @__PURE__ */ jsx158(CardView, { data: toolCallData, component_key: toolCallData.id });
39649
39881
  }
39650
- return /* @__PURE__ */ jsx157(
39882
+ return /* @__PURE__ */ jsx158(
39651
39883
  Collapse5,
39652
39884
  {
39653
39885
  size: "small",
39654
39886
  bordered: false,
39655
39887
  defaultActiveKey: [],
39656
39888
  expandIcon,
39657
- children: /* @__PURE__ */ jsx157(
39889
+ children: /* @__PURE__ */ jsx158(
39658
39890
  CollapsePanel2,
39659
39891
  {
39660
39892
  header,
@@ -39668,11 +39900,11 @@ var ToolCall = ({ data }) => {
39668
39900
  };
39669
39901
 
39670
39902
  // src/components/GenUI/elements/eval_manage_card.tsx
39671
- import { useMemo as useMemo44 } from "react";
39672
- import { Typography as Typography55 } from "antd";
39673
- import { createStyles as createStyles66 } from "antd-style";
39674
- import { FlaskConical as FlaskConical5, TestTube2 as TestTube27, FileText as FileText3, Trash2 as Trash221 } from "lucide-react";
39675
- import { Fragment as Fragment47, jsx as jsx158, jsxs as jsxs116 } from "react/jsx-runtime";
39903
+ import { useMemo as useMemo45 } from "react";
39904
+ import { Typography as Typography56 } from "antd";
39905
+ import { createStyles as createStyles67 } from "antd-style";
39906
+ import { FlaskConical as FlaskConical6, TestTube2 as TestTube27, FileText as FileText3, Trash2 as Trash221 } from "lucide-react";
39907
+ import { Fragment as Fragment47, jsx as jsx159, jsxs as jsxs117 } from "react/jsx-runtime";
39676
39908
  function parseManageEvalResponse(response) {
39677
39909
  if (!response) return { success: true, data: void 0 };
39678
39910
  try {
@@ -39686,7 +39918,7 @@ function parseManageEvalResponse(response) {
39686
39918
  }
39687
39919
  }
39688
39920
  var ErrorCard = ({ message: message36 }) => {
39689
- return /* @__PURE__ */ jsxs116(
39921
+ return /* @__PURE__ */ jsxs117(
39690
39922
  "div",
39691
39923
  {
39692
39924
  style: {
@@ -39701,14 +39933,14 @@ var ErrorCard = ({ message: message36 }) => {
39701
39933
  fontSize: 13
39702
39934
  },
39703
39935
  children: [
39704
- /* @__PURE__ */ jsx158("span", { children: "\u2715" }),
39705
- /* @__PURE__ */ jsx158("span", { children: message36 })
39936
+ /* @__PURE__ */ jsx159("span", { children: "\u2715" }),
39937
+ /* @__PURE__ */ jsx159("span", { children: message36 })
39706
39938
  ]
39707
39939
  }
39708
39940
  );
39709
39941
  };
39710
- var { Text: Text44 } = Typography55;
39711
- var useStyles49 = createStyles66(({ css }) => ({
39942
+ var { Text: Text45 } = Typography56;
39943
+ var useStyles50 = createStyles67(({ css }) => ({
39712
39944
  liveCard: css`
39713
39945
  display: inline-block;
39714
39946
  max-width: 100%;
@@ -39736,14 +39968,14 @@ var metaStyle = {
39736
39968
  color: "rgba(0, 0, 0, 0.45)",
39737
39969
  fontSize: 12
39738
39970
  };
39739
- var StatCell = ({ value, label }) => /* @__PURE__ */ jsxs116("div", { style: { textAlign: "center" }, children: [
39740
- /* @__PURE__ */ jsx158("div", { style: { fontSize: 16, fontWeight: 700, lineHeight: 1.2 }, children: value }),
39741
- /* @__PURE__ */ jsx158("div", { className: "lattice-stat-label", style: metaStyle, children: label })
39971
+ var StatCell = ({ value, label }) => /* @__PURE__ */ jsxs117("div", { style: { textAlign: "center" }, children: [
39972
+ /* @__PURE__ */ jsx159("div", { style: { fontSize: 16, fontWeight: 700, lineHeight: 1.2 }, children: value }),
39973
+ /* @__PURE__ */ jsx159("div", { className: "lattice-stat-label", style: metaStyle, children: label })
39742
39974
  ] });
39743
39975
  var actionVerbKey = (action) => action.startsWith("update_") ? "genui.evalManage.verb.update" : "genui.evalManage.verb.create";
39744
39976
  var ProjectLiveCard = ({ data, result }) => {
39745
39977
  const openSideApp = useSideAppOpener();
39746
- const { styles } = useStyles49();
39978
+ const { styles } = useStyles50();
39747
39979
  const t = useT();
39748
39980
  const args = data?.args ?? {};
39749
39981
  const projectId = args.projectId ?? result.data?.id ?? "";
@@ -39751,7 +39983,7 @@ var ProjectLiveCard = ({ data, result }) => {
39751
39983
  const verb = t(actionVerbKey(args.action ?? ""));
39752
39984
  const { suites } = useEvalSuites(projectId);
39753
39985
  const { runs } = useEvalRuns(projectId);
39754
- const stats = useMemo44(() => {
39986
+ const stats = useMemo45(() => {
39755
39987
  const totalCases = suites.reduce((s, x) => s + (x.caseCount ?? 0), 0);
39756
39988
  const latest = runs[0];
39757
39989
  const passRate = latest?.totalCases > 0 ? Math.round(latest.passedCases / latest.totalCases * 100) : null;
@@ -39763,29 +39995,29 @@ var ProjectLiveCard = ({ data, result }) => {
39763
39995
  data: { initial: { projectId, page: "dashboard" } }
39764
39996
  });
39765
39997
  };
39766
- return /* @__PURE__ */ jsx158(
39998
+ return /* @__PURE__ */ jsx159(
39767
39999
  EntityCard,
39768
40000
  {
39769
40001
  item: data,
39770
40002
  className: styles.liveCard,
39771
40003
  onClick: handleClick,
39772
- renderIcon: () => /* @__PURE__ */ jsx158(FlaskConical5, { size: 20 }),
39773
- renderPrimary: () => /* @__PURE__ */ jsxs116(Fragment47, { children: [
39774
- /* @__PURE__ */ jsx158(Text44, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.projectTitle", { verb }) }),
39775
- /* @__PURE__ */ jsx158("div", { children: /* @__PURE__ */ jsx158(Text44, { strong: true, style: { fontSize: 14 }, children: projectName }) })
40004
+ renderIcon: () => /* @__PURE__ */ jsx159(FlaskConical6, { size: 20 }),
40005
+ renderPrimary: () => /* @__PURE__ */ jsxs117(Fragment47, { children: [
40006
+ /* @__PURE__ */ jsx159(Text45, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.projectTitle", { verb }) }),
40007
+ /* @__PURE__ */ jsx159("div", { children: /* @__PURE__ */ jsx159(Text45, { strong: true, style: { fontSize: 14 }, children: projectName }) })
39776
40008
  ] }),
39777
- renderHeaderActions: () => /* @__PURE__ */ jsxs116("div", { style: { display: "flex", gap: 14 }, children: [
39778
- /* @__PURE__ */ jsx158(StatCell, { value: stats.totalCases, label: t("genui.evalManage.stat.cases") }),
39779
- /* @__PURE__ */ jsx158(StatCell, { value: stats.suiteCount, label: t("genui.evalManage.stat.suites") }),
39780
- /* @__PURE__ */ jsx158(StatCell, { value: stats.runCount, label: t("genui.evalManage.stat.runs") }),
39781
- /* @__PURE__ */ jsx158(StatCell, { value: stats.passRate !== null ? `${stats.passRate}%` : "\u2014", label: t("genui.evalManage.stat.passRate") })
40009
+ renderHeaderActions: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", gap: 14 }, children: [
40010
+ /* @__PURE__ */ jsx159(StatCell, { value: stats.totalCases, label: t("genui.evalManage.stat.cases") }),
40011
+ /* @__PURE__ */ jsx159(StatCell, { value: stats.suiteCount, label: t("genui.evalManage.stat.suites") }),
40012
+ /* @__PURE__ */ jsx159(StatCell, { value: stats.runCount, label: t("genui.evalManage.stat.runs") }),
40013
+ /* @__PURE__ */ jsx159(StatCell, { value: stats.passRate !== null ? `${stats.passRate}%` : "\u2014", label: t("genui.evalManage.stat.passRate") })
39782
40014
  ] })
39783
40015
  }
39784
40016
  );
39785
40017
  };
39786
40018
  var SuiteLiveCard = ({ data, result }) => {
39787
40019
  const openSideApp = useSideAppOpener();
39788
- const { styles } = useStyles49();
40020
+ const { styles } = useStyles50();
39789
40021
  const t = useT();
39790
40022
  const args = data?.args ?? {};
39791
40023
  const projectId = args.projectId ?? result.data?.projectId ?? "";
@@ -39804,24 +40036,24 @@ var SuiteLiveCard = ({ data, result }) => {
39804
40036
  data: { initial: { projectId, page: "suite", suiteId } }
39805
40037
  });
39806
40038
  };
39807
- return /* @__PURE__ */ jsx158(
40039
+ return /* @__PURE__ */ jsx159(
39808
40040
  EntityCard,
39809
40041
  {
39810
40042
  item: data,
39811
40043
  className: styles.liveCard,
39812
40044
  onClick: handleClick,
39813
- renderIcon: () => /* @__PURE__ */ jsx158(TestTube27, { size: 20 }),
39814
- renderPrimary: () => /* @__PURE__ */ jsxs116(Fragment47, { children: [
39815
- /* @__PURE__ */ jsx158(Text44, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.suiteTitle", { verb }) }),
39816
- /* @__PURE__ */ jsx158("div", { children: /* @__PURE__ */ jsx158(Text44, { strong: true, style: { fontSize: 14 }, children: suiteName }) })
40045
+ renderIcon: () => /* @__PURE__ */ jsx159(TestTube27, { size: 20 }),
40046
+ renderPrimary: () => /* @__PURE__ */ jsxs117(Fragment47, { children: [
40047
+ /* @__PURE__ */ jsx159(Text45, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.suiteTitle", { verb }) }),
40048
+ /* @__PURE__ */ jsx159("div", { children: /* @__PURE__ */ jsx159(Text45, { strong: true, style: { fontSize: 14 }, children: suiteName }) })
39817
40049
  ] }),
39818
- renderHeaderActions: () => /* @__PURE__ */ jsxs116("div", { style: { display: "flex", gap: 14 }, children: [
39819
- /* @__PURE__ */ jsx158(StatCell, { value: caseCount, label: t("genui.evalManage.stat.cases") }),
39820
- /* @__PURE__ */ jsx158(StatCell, { value: passRate !== null ? `${passRate}%` : "\u2014", label: t("genui.evalManage.stat.latestPass") }),
39821
- /* @__PURE__ */ jsx158(
40050
+ renderHeaderActions: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", gap: 14 }, children: [
40051
+ /* @__PURE__ */ jsx159(StatCell, { value: caseCount, label: t("genui.evalManage.stat.cases") }),
40052
+ /* @__PURE__ */ jsx159(StatCell, { value: passRate !== null ? `${passRate}%` : "\u2014", label: t("genui.evalManage.stat.latestPass") }),
40053
+ /* @__PURE__ */ jsx159(
39822
40054
  StatCell,
39823
40055
  {
39824
- value: /* @__PURE__ */ jsx158(
40056
+ value: /* @__PURE__ */ jsx159(
39825
40057
  "span",
39826
40058
  {
39827
40059
  style: {
@@ -39839,7 +40071,7 @@ var SuiteLiveCard = ({ data, result }) => {
39839
40071
  };
39840
40072
  var CaseLiveCard = ({ data, result }) => {
39841
40073
  const openSideApp = useSideAppOpener();
39842
- const { styles } = useStyles49();
40074
+ const { styles } = useStyles50();
39843
40075
  const t = useT();
39844
40076
  const args = data?.args ?? {};
39845
40077
  const suiteId = args.suiteId ?? result.data?.suiteId ?? "";
@@ -39854,28 +40086,28 @@ var CaseLiveCard = ({ data, result }) => {
39854
40086
  data: { initial: { suiteId, page: "suite" } }
39855
40087
  });
39856
40088
  };
39857
- return /* @__PURE__ */ jsx158(
40089
+ return /* @__PURE__ */ jsx159(
39858
40090
  EntityCard,
39859
40091
  {
39860
40092
  item: data,
39861
40093
  className: styles.liveCard,
39862
40094
  onClick: handleClick,
39863
- renderIcon: () => /* @__PURE__ */ jsx158(FileText3, { size: 20 }),
39864
- renderPrimary: () => /* @__PURE__ */ jsx158(Text44, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.caseTitle", { verb }) }),
39865
- renderHeaderActions: () => /* @__PURE__ */ jsxs116("div", { style: { display: "flex", gap: 12 }, children: [
39866
- /* @__PURE__ */ jsx158("span", { style: metaStyle, children: t("genui.evalManage.stepCount", { count: steps.length, s: steps.length === 1 ? "" : "s" }) }),
39867
- /* @__PURE__ */ jsx158("span", { style: metaStyle, children: t("genui.evalManage.rubricCount", { count: rubrics, s: rubrics === 1 ? "" : "s" }) })
40095
+ renderIcon: () => /* @__PURE__ */ jsx159(FileText3, { size: 20 }),
40096
+ renderPrimary: () => /* @__PURE__ */ jsx159(Text45, { strong: true, style: actionTitleStyle, children: t("genui.evalManage.caseTitle", { verb }) }),
40097
+ renderHeaderActions: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", gap: 12 }, children: [
40098
+ /* @__PURE__ */ jsx159("span", { style: metaStyle, children: t("genui.evalManage.stepCount", { count: steps.length, s: steps.length === 1 ? "" : "s" }) }),
40099
+ /* @__PURE__ */ jsx159("span", { style: metaStyle, children: t("genui.evalManage.rubricCount", { count: rubrics, s: rubrics === 1 ? "" : "s" }) })
39868
40100
  ] }),
39869
- renderDetails: () => /* @__PURE__ */ jsxs116(Fragment47, { children: [
39870
- /* @__PURE__ */ jsx158(Text44, { style: { fontSize: 13 }, children: inputMessage }),
39871
- /* @__PURE__ */ jsx158("div", { children: /* @__PURE__ */ jsx158(Text44, { type: "secondary", style: { fontSize: 12 }, children: contentAssertion }) })
40101
+ renderDetails: () => /* @__PURE__ */ jsxs117(Fragment47, { children: [
40102
+ /* @__PURE__ */ jsx159(Text45, { style: { fontSize: 13 }, children: inputMessage }),
40103
+ /* @__PURE__ */ jsx159("div", { children: /* @__PURE__ */ jsx159(Text45, { type: "secondary", style: { fontSize: 12 }, children: contentAssertion }) })
39872
40104
  ] })
39873
40105
  }
39874
40106
  );
39875
40107
  };
39876
40108
  var DeleteResultCard = ({ data }) => {
39877
40109
  const openSideApp = useSideAppOpener();
39878
- const { styles } = useStyles49();
40110
+ const { styles } = useStyles50();
39879
40111
  const t = useT();
39880
40112
  const args = data?.args ?? {};
39881
40113
  const action = args.action ?? "";
@@ -39891,20 +40123,20 @@ var DeleteResultCard = ({ data }) => {
39891
40123
  });
39892
40124
  };
39893
40125
  const labelKey = entityType === "case" ? "genui.evalManage.deletedCase" : entityType === "suite" ? "genui.evalManage.deletedSuite" : "genui.evalManage.deletedProject";
39894
- return /* @__PURE__ */ jsx158(
40126
+ return /* @__PURE__ */ jsx159(
39895
40127
  EntityCard,
39896
40128
  {
39897
40129
  item: data,
39898
40130
  className: styles.liveCard,
39899
40131
  onClick: handleClick,
39900
- renderIcon: () => /* @__PURE__ */ jsx158(Trash221, { size: 20 }),
39901
- renderPrimary: () => /* @__PURE__ */ jsxs116(Fragment47, { children: [
39902
- /* @__PURE__ */ jsxs116(Text44, { strong: true, style: actionTitleStyle, children: [
39903
- /* @__PURE__ */ jsx158("span", { style: { color: "#ef4444" }, children: "\u2713" }),
40132
+ renderIcon: () => /* @__PURE__ */ jsx159(Trash221, { size: 20 }),
40133
+ renderPrimary: () => /* @__PURE__ */ jsxs117(Fragment47, { children: [
40134
+ /* @__PURE__ */ jsxs117(Text45, { strong: true, style: actionTitleStyle, children: [
40135
+ /* @__PURE__ */ jsx159("span", { style: { color: "#ef4444" }, children: "\u2713" }),
39904
40136
  " ",
39905
40137
  t(labelKey)
39906
40138
  ] }),
39907
- name && /* @__PURE__ */ jsx158("div", { children: /* @__PURE__ */ jsx158(Text44, { type: "secondary", style: { fontSize: 12 }, children: name }) })
40139
+ name && /* @__PURE__ */ jsx159("div", { children: /* @__PURE__ */ jsx159(Text45, { type: "secondary", style: { fontSize: 12 }, children: name }) })
39908
40140
  ] })
39909
40141
  }
39910
40142
  );
@@ -39915,32 +40147,32 @@ var EvalManageCard = ({ data }) => {
39915
40147
  const action = typeof args.action === "string" ? args.action : "";
39916
40148
  const result = parseManageEvalResponse(data?.response);
39917
40149
  if (!result.success) {
39918
- return /* @__PURE__ */ jsx158(ErrorCard, { message: result.error ?? t("genui.evalManage.failed") });
40150
+ return /* @__PURE__ */ jsx159(ErrorCard, { message: result.error ?? t("genui.evalManage.failed") });
39919
40151
  }
39920
40152
  if (action.startsWith("delete_")) {
39921
- return /* @__PURE__ */ jsx158(DeleteResultCard, { data });
40153
+ return /* @__PURE__ */ jsx159(DeleteResultCard, { data });
39922
40154
  }
39923
40155
  switch (action) {
39924
40156
  case "create_project":
39925
40157
  case "update_project":
39926
- return /* @__PURE__ */ jsx158(ProjectLiveCard, { data, result });
40158
+ return /* @__PURE__ */ jsx159(ProjectLiveCard, { data, result });
39927
40159
  case "create_suite":
39928
40160
  case "update_suite":
39929
- return /* @__PURE__ */ jsx158(SuiteLiveCard, { data, result });
40161
+ return /* @__PURE__ */ jsx159(SuiteLiveCard, { data, result });
39930
40162
  case "create_case":
39931
40163
  case "update_case":
39932
- return /* @__PURE__ */ jsx158(CaseLiveCard, { data, result });
40164
+ return /* @__PURE__ */ jsx159(CaseLiveCard, { data, result });
39933
40165
  default:
39934
40166
  return null;
39935
40167
  }
39936
40168
  };
39937
40169
 
39938
40170
  // src/components/GenUI/elements/eval_detail_side_app.tsx
39939
- import { useEffect as useEffect91, useState as useState119 } from "react";
39940
- import { jsx as jsx159 } from "react/jsx-runtime";
40171
+ import { useEffect as useEffect91, useState as useState120 } from "react";
40172
+ import { jsx as jsx160 } from "react/jsx-runtime";
39941
40173
  var EvalDetailSideApp = ({ data }) => {
39942
40174
  const rawInitial = data?.initial ?? {};
39943
- const [resolved, setResolved] = useState119(rawInitial);
40175
+ const [resolved, setResolved] = useState120(rawInitial);
39944
40176
  const { get } = useApi();
39945
40177
  useEffect91(() => {
39946
40178
  if (rawInitial?.projectId || !rawInitial?.suiteId) {
@@ -39969,16 +40201,16 @@ var EvalDetailSideApp = ({ data }) => {
39969
40201
  cancelled = true;
39970
40202
  };
39971
40203
  }, [rawInitial?.projectId, rawInitial?.suiteId, get]);
39972
- return /* @__PURE__ */ jsx159(EvalPanel, { initial: resolved });
40204
+ return /* @__PURE__ */ jsx160(EvalPanel, { initial: resolved });
39973
40205
  };
39974
40206
 
39975
40207
  // src/components/GenUI/elements/run_eval_card.tsx
39976
- import { Typography as Typography56, Progress as Progress5 } from "antd";
39977
- import { createStyles as createStyles67 } from "antd-style";
40208
+ import { Typography as Typography57, Progress as Progress5 } from "antd";
40209
+ import { createStyles as createStyles68 } from "antd-style";
39978
40210
  import { Play as Play5, Ban as Ban3, RefreshCw as RefreshCw5, Link2 as Link23 } from "lucide-react";
39979
- import { Fragment as Fragment48, jsx as jsx160, jsxs as jsxs117 } from "react/jsx-runtime";
39980
- var { Text: Text45 } = Typography56;
39981
- var useStyles50 = createStyles67(({ css }) => ({
40211
+ import { Fragment as Fragment48, jsx as jsx161, jsxs as jsxs118 } from "react/jsx-runtime";
40212
+ var { Text: Text46 } = Typography57;
40213
+ var useStyles51 = createStyles68(({ css }) => ({
39982
40214
  liveCard: css`
39983
40215
  display: inline-block;
39984
40216
  max-width: 100%;
@@ -40004,9 +40236,9 @@ var actionTitleStyle2 = {
40004
40236
  };
40005
40237
  var runTitleKey = (action) => action === "resume" ? "genui.evalRun.title.resume" : action === "status" ? "genui.evalRun.title.status" : "genui.evalRun.title.start";
40006
40238
  var runIcon = (action, size = 20) => {
40007
- if (action === "resume") return /* @__PURE__ */ jsx160(Link23, { size });
40008
- if (action === "status") return /* @__PURE__ */ jsx160(RefreshCw5, { size });
40009
- return /* @__PURE__ */ jsx160(Play5, { size });
40239
+ if (action === "resume") return /* @__PURE__ */ jsx161(Link23, { size });
40240
+ if (action === "status") return /* @__PURE__ */ jsx161(RefreshCw5, { size });
40241
+ return /* @__PURE__ */ jsx161(Play5, { size });
40010
40242
  };
40011
40243
  var TERMINAL_STATUSES = ["completed", "failed", "aborted"];
40012
40244
  var isRecord4 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
@@ -40015,7 +40247,7 @@ var runStatus = (value) => typeof value === "string" && ["pending", "running", "
40015
40247
  var nonnegativeNumber = (value) => typeof value === "number" && Number.isFinite(value) && value >= 0 ? value : void 0;
40016
40248
  var RunLiveCard = ({ data, result, compact = false }) => {
40017
40249
  const openSideApp = useSideAppOpener();
40018
- const { styles } = useStyles50();
40250
+ const { styles } = useStyles51();
40019
40251
  const t = useT();
40020
40252
  const args = data?.args ?? {};
40021
40253
  const resultData = isRecord4(result.data) ? result.data : {};
@@ -40041,17 +40273,17 @@ var RunLiveCard = ({ data, result, compact = false }) => {
40041
40273
  });
40042
40274
  };
40043
40275
  if (compact) {
40044
- return /* @__PURE__ */ jsx160(
40276
+ return /* @__PURE__ */ jsx161(
40045
40277
  EntityCard,
40046
40278
  {
40047
40279
  item: data,
40048
40280
  dense: true,
40049
40281
  className: styles.compactLiveCard,
40050
40282
  onClick: handleClick,
40051
- renderPrimary: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", alignItems: "center", gap: 8, flexWrap: "wrap" }, children: [
40283
+ renderPrimary: () => /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "center", gap: 8, flexWrap: "wrap" }, children: [
40052
40284
  runIcon(action, 14),
40053
- /* @__PURE__ */ jsx160(Text45, { strong: true, style: actionTitleStyle2, children: t(runTitleKey(action)) }),
40054
- /* @__PURE__ */ jsx160(
40285
+ /* @__PURE__ */ jsx161(Text46, { strong: true, style: actionTitleStyle2, children: t(runTitleKey(action)) }),
40286
+ /* @__PURE__ */ jsx161(
40055
40287
  "span",
40056
40288
  {
40057
40289
  style: {
@@ -40064,28 +40296,28 @@ var RunLiveCard = ({ data, result, compact = false }) => {
40064
40296
  }
40065
40297
  }
40066
40298
  ),
40067
- action === "start" ? /* @__PURE__ */ jsx160(Text45, { style: { fontSize: 12 }, children: terminal ? t("genui.evalRun.syncCall") : t("genui.evalRun.asyncTask") }) : /* @__PURE__ */ jsxs117(Fragment48, { children: [
40068
- /* @__PURE__ */ jsx160(Text45, { style: { fontSize: 12 }, children: passRate !== null ? t("genui.evalRun.passRateInline", { rate: passRate }) : "\u2014" }),
40069
- /* @__PURE__ */ jsx160(Text45, { style: { fontSize: 12, color: "#22c55e" }, children: t("genui.evalRun.passedCount", { count: passed }) }),
40070
- /* @__PURE__ */ jsx160(Text45, { style: { fontSize: 12, color: "#ef4444" }, children: t("genui.evalRun.failedCount", { count: failed }) }),
40071
- done && avgScore !== void 0 && /* @__PURE__ */ jsx160(Text45, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.avgInline", { score: avgScore }) }),
40072
- !done && total > 0 && /* @__PURE__ */ jsx160(Text45, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.casesProgress", { completed, total }) })
40299
+ action === "start" ? /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 12 }, children: terminal ? t("genui.evalRun.syncCall") : t("genui.evalRun.asyncTask") }) : /* @__PURE__ */ jsxs118(Fragment48, { children: [
40300
+ /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 12 }, children: passRate !== null ? t("genui.evalRun.passRateInline", { rate: passRate }) : "\u2014" }),
40301
+ /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 12, color: "#22c55e" }, children: t("genui.evalRun.passedCount", { count: passed }) }),
40302
+ /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 12, color: "#ef4444" }, children: t("genui.evalRun.failedCount", { count: failed }) }),
40303
+ done && avgScore !== void 0 && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.avgInline", { score: avgScore }) }),
40304
+ !done && total > 0 && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.casesProgress", { completed, total }) })
40073
40305
  ] })
40074
40306
  ] })
40075
40307
  }
40076
40308
  );
40077
40309
  }
40078
- return /* @__PURE__ */ jsx160(
40310
+ return /* @__PURE__ */ jsx161(
40079
40311
  EntityCard,
40080
40312
  {
40081
40313
  item: data,
40082
40314
  className: styles.liveCard,
40083
40315
  onClick: handleClick,
40084
40316
  renderIcon: () => runIcon(action),
40085
- renderPrimary: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40086
- /* @__PURE__ */ jsx160(Text45, { strong: true, style: actionTitleStyle2, children: t(runTitleKey(action)) }),
40087
- /* @__PURE__ */ jsxs117("span", { style: { display: "inline-flex", alignItems: "center", gap: 4 }, children: [
40088
- /* @__PURE__ */ jsx160(
40317
+ renderPrimary: () => /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40318
+ /* @__PURE__ */ jsx161(Text46, { strong: true, style: actionTitleStyle2, children: t(runTitleKey(action)) }),
40319
+ /* @__PURE__ */ jsxs118("span", { style: { display: "inline-flex", alignItems: "center", gap: 4 }, children: [
40320
+ /* @__PURE__ */ jsx161(
40089
40321
  "span",
40090
40322
  {
40091
40323
  style: {
@@ -40098,23 +40330,23 @@ var RunLiveCard = ({ data, result, compact = false }) => {
40098
40330
  }
40099
40331
  }
40100
40332
  ),
40101
- /* @__PURE__ */ jsx160("span", { className: "lattice-stat-label", style: { fontSize: 12, color: "rgba(0, 0, 0, 0.65)" }, children: effectiveStatus })
40333
+ /* @__PURE__ */ jsx161("span", { className: "lattice-stat-label", style: { fontSize: 12, color: "rgba(0, 0, 0, 0.65)" }, children: effectiveStatus })
40102
40334
  ] })
40103
40335
  ] }),
40104
- renderHeaderActions: () => /* @__PURE__ */ jsxs117("div", { style: { display: "flex", gap: 14 }, children: [
40105
- /* @__PURE__ */ jsx160(StatCell, { value: passRate !== null ? `${passRate}%` : "\u2014", label: t("genui.evalRun.stat.passRate") }),
40106
- /* @__PURE__ */ jsx160(StatCell, { value: /* @__PURE__ */ jsx160("span", { style: { color: "#22c55e" }, children: passed }), label: t("genui.evalRun.stat.passed") }),
40107
- /* @__PURE__ */ jsx160(StatCell, { value: /* @__PURE__ */ jsx160("span", { style: { color: "#ef4444" }, children: failed }), label: t("genui.evalRun.stat.failed") })
40336
+ renderHeaderActions: () => /* @__PURE__ */ jsxs118("div", { style: { display: "flex", gap: 14 }, children: [
40337
+ /* @__PURE__ */ jsx161(StatCell, { value: passRate !== null ? `${passRate}%` : "\u2014", label: t("genui.evalRun.stat.passRate") }),
40338
+ /* @__PURE__ */ jsx161(StatCell, { value: /* @__PURE__ */ jsx161("span", { style: { color: "#22c55e" }, children: passed }), label: t("genui.evalRun.stat.passed") }),
40339
+ /* @__PURE__ */ jsx161(StatCell, { value: /* @__PURE__ */ jsx161("span", { style: { color: "#ef4444" }, children: failed }), label: t("genui.evalRun.stat.failed") })
40108
40340
  ] }),
40109
- renderDetails: () => done ? avgScore !== void 0 ? /* @__PURE__ */ jsxs117("div", { style: { display: "flex", alignItems: "baseline", gap: 8 }, children: [
40110
- /* @__PURE__ */ jsx160(Text45, { strong: true, style: { fontSize: 24, lineHeight: 1.2, color: statusColor2 }, children: avgScore }),
40111
- /* @__PURE__ */ jsx160(Text45, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.stat.avgScore") })
40112
- ] }) : null : /* @__PURE__ */ jsxs117(Fragment48, { children: [
40113
- /* @__PURE__ */ jsxs117("div", { style: { display: "flex", alignItems: "baseline", gap: 8 }, children: [
40114
- /* @__PURE__ */ jsx160(Text45, { style: { fontSize: 13, color: statusColor2 }, children: effectiveStatus }),
40115
- !done && /* @__PURE__ */ jsx160(Text45, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.casesProgress", { completed, total }) })
40341
+ renderDetails: () => done ? avgScore !== void 0 ? /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "baseline", gap: 8 }, children: [
40342
+ /* @__PURE__ */ jsx161(Text46, { strong: true, style: { fontSize: 24, lineHeight: 1.2, color: statusColor2 }, children: avgScore }),
40343
+ /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.stat.avgScore") })
40344
+ ] }) : null : /* @__PURE__ */ jsxs118(Fragment48, { children: [
40345
+ /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "baseline", gap: 8 }, children: [
40346
+ /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 13, color: statusColor2 }, children: effectiveStatus }),
40347
+ !done && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalRun.casesProgress", { completed, total }) })
40116
40348
  ] }),
40117
- effectiveStatus === "running" && total > 0 && /* @__PURE__ */ jsx160(
40349
+ effectiveStatus === "running" && total > 0 && /* @__PURE__ */ jsx161(
40118
40350
  Progress5,
40119
40351
  {
40120
40352
  percent: Math.round(completed / total * 100),
@@ -40128,7 +40360,7 @@ var RunLiveCard = ({ data, result, compact = false }) => {
40128
40360
  };
40129
40361
  var AbortResultCard = ({ data, result }) => {
40130
40362
  const openSideApp = useSideAppOpener();
40131
- const { styles } = useStyles50();
40363
+ const { styles } = useStyles51();
40132
40364
  const t = useT();
40133
40365
  const args = data?.args ?? {};
40134
40366
  const resultData = isRecord4(result.data) ? result.data : {};
@@ -40141,16 +40373,16 @@ var AbortResultCard = ({ data, result }) => {
40141
40373
  data: { initial: { page: "run", runId } }
40142
40374
  });
40143
40375
  };
40144
- return /* @__PURE__ */ jsx160(
40376
+ return /* @__PURE__ */ jsx161(
40145
40377
  EntityCard,
40146
40378
  {
40147
40379
  item: data,
40148
40380
  className: styles.liveCard,
40149
40381
  onClick: handleClick,
40150
- renderIcon: () => /* @__PURE__ */ jsx160(Ban3, { size: 20 }),
40151
- renderPrimary: () => /* @__PURE__ */ jsxs117(Fragment48, { children: [
40152
- /* @__PURE__ */ jsx160(Text45, { strong: true, style: actionTitleStyle2, children: t("genui.evalRun.title.abort") }),
40153
- /* @__PURE__ */ jsx160("div", { children: /* @__PURE__ */ jsx160(Text45, { strong: true, style: { fontSize: 14 }, children: aborted ? t("genui.evalRun.aborted") : t("genui.evalRun.abortFailed") }) })
40382
+ renderIcon: () => /* @__PURE__ */ jsx161(Ban3, { size: 20 }),
40383
+ renderPrimary: () => /* @__PURE__ */ jsxs118(Fragment48, { children: [
40384
+ /* @__PURE__ */ jsx161(Text46, { strong: true, style: actionTitleStyle2, children: t("genui.evalRun.title.abort") }),
40385
+ /* @__PURE__ */ jsx161("div", { children: /* @__PURE__ */ jsx161(Text46, { strong: true, style: { fontSize: 14 }, children: aborted ? t("genui.evalRun.aborted") : t("genui.evalRun.abortFailed") }) })
40154
40386
  ] })
40155
40387
  }
40156
40388
  );
@@ -40161,30 +40393,30 @@ var RunEvalCard = ({ data }) => {
40161
40393
  const action = typeof args.action === "string" ? args.action : "";
40162
40394
  const result = parseManageEvalResponse(data?.response);
40163
40395
  if (!result.success) {
40164
- return /* @__PURE__ */ jsx160(ErrorCard, { message: result.error ?? t("genui.evalRun.failed") });
40396
+ return /* @__PURE__ */ jsx161(ErrorCard, { message: result.error ?? t("genui.evalRun.failed") });
40165
40397
  }
40166
40398
  if (action === "abort") {
40167
- return /* @__PURE__ */ jsx160(AbortResultCard, { data, result });
40399
+ return /* @__PURE__ */ jsx161(AbortResultCard, { data, result });
40168
40400
  }
40169
40401
  switch (action) {
40170
40402
  case "start":
40171
40403
  case "status":
40172
- return /* @__PURE__ */ jsx160(RunLiveCard, { data, result, compact: true });
40404
+ return /* @__PURE__ */ jsx161(RunLiveCard, { data, result, compact: true });
40173
40405
  case "resume":
40174
- return /* @__PURE__ */ jsx160(RunLiveCard, { data, result });
40406
+ return /* @__PURE__ */ jsx161(RunLiveCard, { data, result });
40175
40407
  default:
40176
40408
  return null;
40177
40409
  }
40178
40410
  };
40179
40411
 
40180
40412
  // src/components/GenUI/elements/read_eval_card.tsx
40181
- import { useMemo as useMemo45 } from "react";
40182
- import { Collapse as Collapse6, Tooltip as Tooltip27, Typography as Typography57 } from "antd";
40183
- import { createStyles as createStyles68 } from "antd-style";
40413
+ import { useMemo as useMemo46 } from "react";
40414
+ import { Collapse as Collapse6, Tooltip as Tooltip27, Typography as Typography58 } from "antd";
40415
+ import { createStyles as createStyles69 } from "antd-style";
40184
40416
  import { ClipboardList } from "lucide-react";
40185
- import { Fragment as Fragment49, jsx as jsx161, jsxs as jsxs118 } from "react/jsx-runtime";
40186
- var { Text: Text46 } = Typography57;
40187
- var useStyles51 = createStyles68(({ css }) => ({
40417
+ import { Fragment as Fragment49, jsx as jsx162, jsxs as jsxs119 } from "react/jsx-runtime";
40418
+ var { Text: Text47 } = Typography58;
40419
+ var useStyles52 = createStyles69(({ css }) => ({
40188
40420
  liveCard: css`
40189
40421
  display: inline-block;
40190
40422
  max-width: 100%;
@@ -40260,7 +40492,7 @@ var aggregateDimensions = (rows) => {
40260
40492
  };
40261
40493
  var RunResultsCard = ({ data, result }) => {
40262
40494
  const openSideApp = useSideAppOpener();
40263
- const { styles } = useStyles51();
40495
+ const { styles } = useStyles52();
40264
40496
  const t = useT();
40265
40497
  const args = data?.args ?? {};
40266
40498
  const runId = args.runId ?? "";
@@ -40268,7 +40500,7 @@ var RunResultsCard = ({ data, result }) => {
40268
40500
  const compact = isCompactSummary(raw) ? raw : null;
40269
40501
  const holdout = !Array.isArray(raw) && raw?.holdout === true;
40270
40502
  const rows = Array.isArray(raw) ? raw : [];
40271
- const stats = useMemo45(() => {
40503
+ const stats = useMemo46(() => {
40272
40504
  const passed = rows.filter((r) => r.pass && !r.interrupted).length;
40273
40505
  const failed = rows.filter((r) => !r.pass && !r.interrupted).length;
40274
40506
  const interrupted = rows.filter((r) => r.interrupted).length;
@@ -40281,8 +40513,8 @@ var RunResultsCard = ({ data, result }) => {
40281
40513
  passRate: judged > 0 ? Math.round(passed / judged * 100) : null
40282
40514
  };
40283
40515
  }, [rows]);
40284
- const suites = useMemo45(() => aggregateBySuite(rows, t("genui.evalCard.unknownSuite")), [rows, t]);
40285
- const dimensions = useMemo45(() => aggregateDimensions(rows), [rows]);
40516
+ const suites = useMemo46(() => aggregateBySuite(rows, t("genui.evalCard.unknownSuite")), [rows, t]);
40517
+ const dimensions = useMemo46(() => aggregateDimensions(rows), [rows]);
40286
40518
  const avgScore = rows.length > 0 ? rows.reduce((s, r) => s + r.score, 0) / rows.length : null;
40287
40519
  const compactPassRate = compact && compact.passedCases + compact.failedCases > 0 ? Math.round(compact.passedCases / (compact.passedCases + compact.failedCases) * 100) : null;
40288
40520
  const passRateDisplay = compact ? compactPassRate !== null ? `${compactPassRate}%` : "\u2014" : holdout ? `${Math.round((raw.passRate ?? 0) * 100)}%` : stats.passRate !== null ? `${stats.passRate}%` : "\u2014";
@@ -40296,37 +40528,37 @@ var RunResultsCard = ({ data, result }) => {
40296
40528
  data: { initial: { page: "run", runId } }
40297
40529
  });
40298
40530
  };
40299
- return /* @__PURE__ */ jsx161(
40531
+ return /* @__PURE__ */ jsx162(
40300
40532
  EntityCard,
40301
40533
  {
40302
40534
  item: data,
40303
40535
  className: styles.liveCard,
40304
40536
  onClick: handleClick,
40305
- renderIcon: () => /* @__PURE__ */ jsx161(ClipboardList, { size: 20 }),
40306
- renderPrimary: () => /* @__PURE__ */ jsx161(Text46, { strong: true, style: actionTitleStyle3, children: t("genui.evalCard.report") }),
40307
- renderHeaderActions: () => /* @__PURE__ */ jsxs118("div", { style: { display: "flex", gap: 14 }, children: [
40308
- /* @__PURE__ */ jsx161(
40537
+ renderIcon: () => /* @__PURE__ */ jsx162(ClipboardList, { size: 20 }),
40538
+ renderPrimary: () => /* @__PURE__ */ jsx162(Text47, { strong: true, style: actionTitleStyle3, children: t("genui.evalCard.report") }),
40539
+ renderHeaderActions: () => /* @__PURE__ */ jsxs119("div", { style: { display: "flex", gap: 14 }, children: [
40540
+ /* @__PURE__ */ jsx162(
40309
40541
  StatCell,
40310
40542
  {
40311
40543
  value: passRateDisplay,
40312
40544
  label: t("genui.evalCard.passRate")
40313
40545
  }
40314
40546
  ),
40315
- /* @__PURE__ */ jsx161(
40547
+ /* @__PURE__ */ jsx162(
40316
40548
  StatCell,
40317
40549
  {
40318
- value: /* @__PURE__ */ jsx161("span", { style: { color: "#22c55e" }, children: passedDisplay }),
40550
+ value: /* @__PURE__ */ jsx162("span", { style: { color: "#22c55e" }, children: passedDisplay }),
40319
40551
  label: t("genui.evalCard.passed")
40320
40552
  }
40321
40553
  ),
40322
- /* @__PURE__ */ jsx161(
40554
+ /* @__PURE__ */ jsx162(
40323
40555
  StatCell,
40324
40556
  {
40325
- value: /* @__PURE__ */ jsx161("span", { style: { color: "#ef4444" }, children: failedDisplay }),
40557
+ value: /* @__PURE__ */ jsx162("span", { style: { color: "#ef4444" }, children: failedDisplay }),
40326
40558
  label: t("genui.evalCard.failed")
40327
40559
  }
40328
40560
  ),
40329
- /* @__PURE__ */ jsx161(
40561
+ /* @__PURE__ */ jsx162(
40330
40562
  StatCell,
40331
40563
  {
40332
40564
  value: avgScoreDisplay,
@@ -40334,13 +40566,13 @@ var RunResultsCard = ({ data, result }) => {
40334
40566
  }
40335
40567
  )
40336
40568
  ] }),
40337
- renderDetails: () => compact ? /* @__PURE__ */ jsxs118("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
40338
- compact.failures.length === 0 ? /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 13 }, children: t("genui.evalCard.noFailingCases") }) : compact.failures.map((failure, index) => /* @__PURE__ */ jsxs118(
40569
+ renderDetails: () => compact ? /* @__PURE__ */ jsxs119("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
40570
+ compact.failures.length === 0 ? /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 13 }, children: t("genui.evalCard.noFailingCases") }) : compact.failures.map((failure, index) => /* @__PURE__ */ jsxs119(
40339
40571
  "div",
40340
40572
  {
40341
40573
  style: { display: "flex", alignItems: "flex-start", gap: 8 },
40342
40574
  children: [
40343
- /* @__PURE__ */ jsx161(
40575
+ /* @__PURE__ */ jsx162(
40344
40576
  "span",
40345
40577
  {
40346
40578
  style: {
@@ -40354,25 +40586,25 @@ var RunResultsCard = ({ data, result }) => {
40354
40586
  }
40355
40587
  }
40356
40588
  ),
40357
- /* @__PURE__ */ jsxs118("div", { style: { display: "flex", flexDirection: "column" }, children: [
40358
- /* @__PURE__ */ jsxs118(Text46, { style: { fontSize: 13 }, children: [
40589
+ /* @__PURE__ */ jsxs119("div", { style: { display: "flex", flexDirection: "column" }, children: [
40590
+ /* @__PURE__ */ jsxs119(Text47, { style: { fontSize: 13 }, children: [
40359
40591
  failure.suiteName ? `${failure.suiteName} \xB7 ` : "",
40360
40592
  failure.caseId ?? t("genui.evalCard.unknownCase")
40361
40593
  ] }),
40362
- failure.summary && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: failure.summary })
40594
+ failure.summary && /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 12 }, children: failure.summary })
40363
40595
  ] })
40364
40596
  ]
40365
40597
  },
40366
40598
  failure.caseId ?? `failure-${index}`
40367
40599
  )),
40368
- (compact.interruptedCases ?? 0) > 0 && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalCard.interrupted", { count: compact.interruptedCases ?? 0 }) })
40369
- ] }) : holdout ? /* @__PURE__ */ jsxs118(Fragment49, { children: [
40370
- /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12, display: "block" }, children: t("genui.evalCard.holdoutNotice") }),
40371
- raw.interruptedCases > 0 && /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 12, display: "block" }, children: t("genui.evalCard.interrupted", { count: raw.interruptedCases }) })
40372
- ] }) : suites.length === 0 ? /* @__PURE__ */ jsx161(Text46, { type: "secondary", style: { fontSize: 13 }, children: t("genui.evalCard.noResults") }) : /* @__PURE__ */ jsxs118("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
40373
- /* @__PURE__ */ jsx161("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: suites.map((s) => {
40374
- const row = /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40375
- /* @__PURE__ */ jsx161(
40600
+ (compact.interruptedCases ?? 0) > 0 && /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 12 }, children: t("genui.evalCard.interrupted", { count: compact.interruptedCases ?? 0 }) })
40601
+ ] }) : holdout ? /* @__PURE__ */ jsxs119(Fragment49, { children: [
40602
+ /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 12, display: "block" }, children: t("genui.evalCard.holdoutNotice") }),
40603
+ raw.interruptedCases > 0 && /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 12, display: "block" }, children: t("genui.evalCard.interrupted", { count: raw.interruptedCases }) })
40604
+ ] }) : suites.length === 0 ? /* @__PURE__ */ jsx162(Text47, { type: "secondary", style: { fontSize: 13 }, children: t("genui.evalCard.noResults") }) : /* @__PURE__ */ jsxs119("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
40605
+ /* @__PURE__ */ jsx162("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: suites.map((s) => {
40606
+ const row = /* @__PURE__ */ jsxs119("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40607
+ /* @__PURE__ */ jsx162(
40376
40608
  "span",
40377
40609
  {
40378
40610
  style: {
@@ -40385,8 +40617,8 @@ var RunResultsCard = ({ data, result }) => {
40385
40617
  }
40386
40618
  }
40387
40619
  ),
40388
- /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 13, flex: 1 }, children: s.suiteName }),
40389
- /* @__PURE__ */ jsxs118(Text46, { style: { fontSize: 13, color: s.failed > 0 ? "#ef4444" : "rgba(0, 0, 0, 0.65)" }, children: [
40620
+ /* @__PURE__ */ jsx162(Text47, { style: { fontSize: 13, flex: 1 }, children: s.suiteName }),
40621
+ /* @__PURE__ */ jsxs119(Text47, { style: { fontSize: 13, color: s.failed > 0 ? "#ef4444" : "rgba(0, 0, 0, 0.65)" }, children: [
40390
40622
  s.passRate !== null ? `${s.passRate}%` : "\u2014",
40391
40623
  " (",
40392
40624
  s.passed,
@@ -40394,9 +40626,9 @@ var RunResultsCard = ({ data, result }) => {
40394
40626
  s.total,
40395
40627
  ")"
40396
40628
  ] }),
40397
- s.interrupted > 0 && /* @__PURE__ */ jsx161("span", { style: metaStyle2, children: t("genui.evalCard.interrupted", { count: s.interrupted }) })
40629
+ s.interrupted > 0 && /* @__PURE__ */ jsx162("span", { style: metaStyle2, children: t("genui.evalCard.interrupted", { count: s.interrupted }) })
40398
40630
  ] });
40399
- return s.failedSummaries.length > 0 ? /* @__PURE__ */ jsx161(
40631
+ return s.failedSummaries.length > 0 ? /* @__PURE__ */ jsx162(
40400
40632
  Tooltip27,
40401
40633
  {
40402
40634
  title: s.failedSummaries.slice(0, 3).join("\n"),
@@ -40404,13 +40636,13 @@ var RunResultsCard = ({ data, result }) => {
40404
40636
  children: row
40405
40637
  },
40406
40638
  s.suiteName
40407
- ) : /* @__PURE__ */ jsx161("div", { children: row }, s.suiteName);
40639
+ ) : /* @__PURE__ */ jsx162("div", { children: row }, s.suiteName);
40408
40640
  }) }),
40409
- dimensions.length > 0 && /* @__PURE__ */ jsx161("div", { style: { borderTop: "1px solid rgba(0, 0, 0, 0.06)", paddingTop: 8 }, children: /* @__PURE__ */ jsx161("div", { style: { display: "grid", gridTemplateColumns: "1fr 1fr", gap: "6px 16px" }, children: dimensions.map((d) => {
40641
+ dimensions.length > 0 && /* @__PURE__ */ jsx162("div", { style: { borderTop: "1px solid rgba(0, 0, 0, 0.06)", paddingTop: 8 }, children: /* @__PURE__ */ jsx162("div", { style: { display: "grid", gridTemplateColumns: "1fr 1fr", gap: "6px 16px" }, children: dimensions.map((d) => {
40410
40642
  const raw2 = d.score <= 1 ? d.score * 100 : d.score;
40411
40643
  const score = Math.round(raw2);
40412
- return /* @__PURE__ */ jsxs118("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40413
- /* @__PURE__ */ jsx161(
40644
+ return /* @__PURE__ */ jsxs119("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40645
+ /* @__PURE__ */ jsx162(
40414
40646
  "span",
40415
40647
  {
40416
40648
  style: {
@@ -40423,8 +40655,8 @@ var RunResultsCard = ({ data, result }) => {
40423
40655
  }
40424
40656
  }
40425
40657
  ),
40426
- /* @__PURE__ */ jsx161(Text46, { style: { fontSize: 13, flex: 1, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: d.name }),
40427
- /* @__PURE__ */ jsx161(Text46, { strong: true, style: { fontSize: 13, color: score >= 80 ? "rgba(0, 0, 0, 0.65)" : score >= 60 ? "#f59e0b" : "#ef4444" }, children: score })
40658
+ /* @__PURE__ */ jsx162(Text47, { style: { fontSize: 13, flex: 1, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: d.name }),
40659
+ /* @__PURE__ */ jsx162(Text47, { strong: true, style: { fontSize: 13, color: score >= 80 ? "rgba(0, 0, 0, 0.65)" : score >= 60 ? "#f59e0b" : "#ef4444" }, children: score })
40428
40660
  ] }, d.name);
40429
40661
  }) }) })
40430
40662
  ] })
@@ -40432,7 +40664,7 @@ var RunResultsCard = ({ data, result }) => {
40432
40664
  );
40433
40665
  };
40434
40666
  var GenericEvalCard = ({ data }) => {
40435
- return /* @__PURE__ */ jsx161(
40667
+ return /* @__PURE__ */ jsx162(
40436
40668
  Collapse6,
40437
40669
  {
40438
40670
  size: "small",
@@ -40441,12 +40673,12 @@ var GenericEvalCard = ({ data }) => {
40441
40673
  items: [
40442
40674
  {
40443
40675
  key: data.id,
40444
- label: /* @__PURE__ */ jsxs118(Text46, { strong: true, style: { fontSize: 12 }, children: [
40676
+ label: /* @__PURE__ */ jsxs119(Text47, { strong: true, style: { fontSize: 12 }, children: [
40445
40677
  data.name,
40446
40678
  " \xB7 ",
40447
40679
  data.args?.action
40448
40680
  ] }),
40449
- children: /* @__PURE__ */ jsx161("pre", { style: { fontSize: 12, whiteSpace: "pre-wrap", margin: 0 }, children: data.response })
40681
+ children: /* @__PURE__ */ jsx162("pre", { style: { fontSize: 12, whiteSpace: "pre-wrap", margin: 0 }, children: data.response })
40450
40682
  }
40451
40683
  ]
40452
40684
  }
@@ -40458,46 +40690,46 @@ var ReadEvalCard = ({ data }) => {
40458
40690
  const action = typeof args.action === "string" ? args.action : "";
40459
40691
  const result = parseManageEvalResponse(data?.response);
40460
40692
  if (!result.success) {
40461
- return /* @__PURE__ */ jsx161(ErrorCard, { message: result.error ?? t("genui.evalCard.readFailed") });
40693
+ return /* @__PURE__ */ jsx162(ErrorCard, { message: result.error ?? t("genui.evalCard.readFailed") });
40462
40694
  }
40463
40695
  if (action === "get_run_results") {
40464
- return /* @__PURE__ */ jsx161(RunResultsCard, { data, result });
40696
+ return /* @__PURE__ */ jsx162(RunResultsCard, { data, result });
40465
40697
  }
40466
- return /* @__PURE__ */ jsx161(GenericEvalCard, { data });
40698
+ return /* @__PURE__ */ jsx162(GenericEvalCard, { data });
40467
40699
  };
40468
40700
 
40469
40701
  // src/components/GenUI/elements/task_manage_card.tsx
40470
- import { Typography as Typography58 } from "antd";
40471
- import { createStyles as createStyles70 } from "antd-style";
40702
+ import { Typography as Typography59 } from "antd";
40703
+ import { createStyles as createStyles71 } from "antd-style";
40472
40704
  import { ListTodo, ListChecks as ListChecks4 } from "lucide-react";
40473
40705
 
40474
40706
  // src/components/GenUI/elements/HoverReveal.tsx
40475
40707
  import { Popover as Popover5 } from "antd";
40476
- import { createStyles as createStyles69 } from "antd-style";
40477
- import { jsx as jsx162 } from "react/jsx-runtime";
40478
- var useStyles52 = createStyles69(({ css }) => ({
40708
+ import { createStyles as createStyles70 } from "antd-style";
40709
+ import { jsx as jsx163 } from "react/jsx-runtime";
40710
+ var useStyles53 = createStyles70(({ css }) => ({
40479
40711
  compactChip: css`
40480
40712
  display: inline-block;
40481
40713
  max-width: 100%;
40482
40714
  `
40483
40715
  }));
40484
40716
  var HoverReveal = ({ chip, detail, onClick, testId = "manage-task-chip", contentStyle }) => {
40485
- const { styles } = useStyles52();
40486
- const trigger = /* @__PURE__ */ jsx162("span", { "data-testid": testId, style: { display: "inline-block", maxWidth: "100%" }, children: /* @__PURE__ */ jsx162(
40717
+ const { styles } = useStyles53();
40718
+ const trigger = /* @__PURE__ */ jsx163("span", { "data-testid": testId, style: { display: "inline-block", maxWidth: "100%" }, children: /* @__PURE__ */ jsx163(
40487
40719
  EntityCard,
40488
40720
  {
40489
40721
  item: null,
40490
40722
  dense: true,
40491
40723
  className: styles.compactChip,
40492
40724
  onClick: onClick ? () => onClick() : void 0,
40493
- renderPrimary: () => /* @__PURE__ */ jsx162("div", { style: { display: "flex", alignItems: "center", gap: 8, minWidth: 0 }, children: chip })
40725
+ renderPrimary: () => /* @__PURE__ */ jsx163("div", { style: { display: "flex", alignItems: "center", gap: 8, minWidth: 0 }, children: chip })
40494
40726
  }
40495
40727
  ) });
40496
40728
  if (!detail) return trigger;
40497
- return /* @__PURE__ */ jsx162(
40729
+ return /* @__PURE__ */ jsx163(
40498
40730
  Popover5,
40499
40731
  {
40500
- content: /* @__PURE__ */ jsx162("div", { style: { maxWidth: 420, ...contentStyle }, children: detail }),
40732
+ content: /* @__PURE__ */ jsx163("div", { style: { maxWidth: 420, ...contentStyle }, children: detail }),
40501
40733
  trigger: "hover",
40502
40734
  placement: "top",
40503
40735
  mouseEnterDelay: 0.15,
@@ -40508,9 +40740,9 @@ var HoverReveal = ({ chip, detail, onClick, testId = "manage-task-chip", content
40508
40740
  };
40509
40741
 
40510
40742
  // src/components/GenUI/elements/task_manage_card.tsx
40511
- import { Fragment as Fragment50, jsx as jsx163, jsxs as jsxs119 } from "react/jsx-runtime";
40512
- var { Text: Text47 } = Typography58;
40513
- var useStyles53 = createStyles70(({ css }) => ({
40743
+ import { Fragment as Fragment50, jsx as jsx164, jsxs as jsxs120 } from "react/jsx-runtime";
40744
+ var { Text: Text48 } = Typography59;
40745
+ var useStyles54 = createStyles71(({ css }) => ({
40514
40746
  liveCard: css`
40515
40747
  display: inline-block;
40516
40748
  max-width: 100%;
@@ -40549,7 +40781,7 @@ var priorityColor = {
40549
40781
  medium: "#f59e0b",
40550
40782
  low: "#9ca3af"
40551
40783
  };
40552
- var StatusDot = ({ status }) => /* @__PURE__ */ jsx163(
40784
+ var StatusDot = ({ status }) => /* @__PURE__ */ jsx164(
40553
40785
  "span",
40554
40786
  {
40555
40787
  style: {
@@ -40611,7 +40843,7 @@ var resolveActivityView = (data, result, task) => {
40611
40843
  var TaskLiveCard = ({ data, result, task }) => {
40612
40844
  const openSideApp = useSideAppOpener();
40613
40845
  const t = useT();
40614
- const { styles } = useStyles53();
40846
+ const { styles } = useStyles54();
40615
40847
  const { verbKey, title, status, description, priority, dependencies, reviewerAction } = resolveLiveView(data, result, task);
40616
40848
  const item = task ?? result.data ?? {};
40617
40849
  const handleClick = () => {
@@ -40621,28 +40853,28 @@ var TaskLiveCard = ({ data, result, task }) => {
40621
40853
  }
40622
40854
  openSideApp({ component_key: "manage_task", data: {} });
40623
40855
  };
40624
- return /* @__PURE__ */ jsx163(
40856
+ return /* @__PURE__ */ jsx164(
40625
40857
  EntityCard,
40626
40858
  {
40627
40859
  item: data,
40628
40860
  className: styles.liveCard,
40629
40861
  onClick: handleClick,
40630
- renderIcon: () => /* @__PURE__ */ jsx163(ListTodo, { size: 20 }),
40631
- renderPrimary: () => /* @__PURE__ */ jsxs119(Fragment50, { children: [
40632
- /* @__PURE__ */ jsxs119("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40633
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t(verbKey) }),
40634
- /* @__PURE__ */ jsx163(StatusDot, { status })
40862
+ renderIcon: () => /* @__PURE__ */ jsx164(ListTodo, { size: 20 }),
40863
+ renderPrimary: () => /* @__PURE__ */ jsxs120(Fragment50, { children: [
40864
+ /* @__PURE__ */ jsxs120("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40865
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t(verbKey) }),
40866
+ /* @__PURE__ */ jsx164(StatusDot, { status })
40635
40867
  ] }),
40636
- /* @__PURE__ */ jsx163("div", { children: /* @__PURE__ */ jsx163(Text47, { strong: true, style: { fontSize: 14 }, children: title }) })
40868
+ /* @__PURE__ */ jsx164("div", { children: /* @__PURE__ */ jsx164(Text48, { strong: true, style: { fontSize: 14 }, children: title }) })
40637
40869
  ] }),
40638
- renderHeaderActions: () => /* @__PURE__ */ jsxs119("div", { style: { display: "flex", gap: 14 }, children: [
40639
- /* @__PURE__ */ jsx163(StatCell, { value: /* @__PURE__ */ jsx163("span", { style: { color: priorityColor[priority] ?? void 0 }, children: priority }), label: t("genui.taskManage.stat.priority") }),
40640
- /* @__PURE__ */ jsx163(StatCell, { value: status, label: t("genui.taskManage.stat.status") }),
40641
- dependencies.length > 0 && /* @__PURE__ */ jsx163(StatCell, { value: dependencies.length, label: t("genui.taskManage.stat.deps") })
40870
+ renderHeaderActions: () => /* @__PURE__ */ jsxs120("div", { style: { display: "flex", gap: 14 }, children: [
40871
+ /* @__PURE__ */ jsx164(StatCell, { value: /* @__PURE__ */ jsx164("span", { style: { color: priorityColor[priority] ?? void 0 }, children: priority }), label: t("genui.taskManage.stat.priority") }),
40872
+ /* @__PURE__ */ jsx164(StatCell, { value: status, label: t("genui.taskManage.stat.status") }),
40873
+ dependencies.length > 0 && /* @__PURE__ */ jsx164(StatCell, { value: dependencies.length, label: t("genui.taskManage.stat.deps") })
40642
40874
  ] }),
40643
- renderDetails: () => /* @__PURE__ */ jsxs119(Fragment50, { children: [
40644
- description && /* @__PURE__ */ jsx163(Text47, { style: { fontSize: 13 }, children: truncate2(description) }),
40645
- reviewerAction && /* @__PURE__ */ jsx163("div", { style: { marginTop: 6 }, children: /* @__PURE__ */ jsx163(Text47, { style: { fontSize: 12, color: reviewerAction === "approved" ? "#22c55e" : "#ef4444" }, children: t("genui.taskManage.review", { action: reviewerAction }) }) })
40875
+ renderDetails: () => /* @__PURE__ */ jsxs120(Fragment50, { children: [
40876
+ description && /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 13 }, children: truncate2(description) }),
40877
+ reviewerAction && /* @__PURE__ */ jsx164("div", { style: { marginTop: 6 }, children: /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 12, color: reviewerAction === "approved" ? "#22c55e" : "#ef4444" }, children: t("genui.taskManage.review", { action: reviewerAction }) }) })
40646
40878
  ] })
40647
40879
  }
40648
40880
  );
@@ -40659,15 +40891,15 @@ var TaskLiveHoverCard = ({ data, result, task }) => {
40659
40891
  }
40660
40892
  openSideApp({ component_key: "manage_task", data: {} });
40661
40893
  };
40662
- return /* @__PURE__ */ jsx163(
40894
+ return /* @__PURE__ */ jsx164(
40663
40895
  HoverReveal,
40664
40896
  {
40665
40897
  onClick: handleClick,
40666
- detail: /* @__PURE__ */ jsx163(TaskLiveCard, { data, result, task }),
40667
- chip: /* @__PURE__ */ jsxs119(Fragment50, { children: [
40668
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t(verbKey) }),
40669
- /* @__PURE__ */ jsx163(
40670
- Text47,
40898
+ detail: /* @__PURE__ */ jsx164(TaskLiveCard, { data, result, task }),
40899
+ chip: /* @__PURE__ */ jsxs120(Fragment50, { children: [
40900
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t(verbKey) }),
40901
+ /* @__PURE__ */ jsx164(
40902
+ Text48,
40671
40903
  {
40672
40904
  style: {
40673
40905
  fontSize: 13,
@@ -40680,7 +40912,7 @@ var TaskLiveHoverCard = ({ data, result, task }) => {
40680
40912
  children: title
40681
40913
  }
40682
40914
  ),
40683
- action === "set_status" ? /* @__PURE__ */ jsx163(Text47, { style: { fontSize: 12, flexShrink: 0, color: statusColor[status] ?? "#9ca3af" }, children: status }) : /* @__PURE__ */ jsx163(StatusDot, { status })
40915
+ action === "set_status" ? /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 12, flexShrink: 0, color: statusColor[status] ?? "#9ca3af" }, children: status }) : /* @__PURE__ */ jsx164(StatusDot, { status })
40684
40916
  ] })
40685
40917
  }
40686
40918
  );
@@ -40688,24 +40920,24 @@ var TaskLiveHoverCard = ({ data, result, task }) => {
40688
40920
  var TaskListCard = ({ data, result }) => {
40689
40921
  const openSideApp = useSideAppOpener();
40690
40922
  const t = useT();
40691
- const { styles } = useStyles53();
40923
+ const { styles } = useStyles54();
40692
40924
  const { items, count, inProgress, completed } = resolveListStats(result);
40693
40925
  const handleClick = () => openSideApp({ component_key: "manage_task", data: {} });
40694
- return /* @__PURE__ */ jsx163(
40926
+ return /* @__PURE__ */ jsx164(
40695
40927
  EntityCard,
40696
40928
  {
40697
40929
  item: data,
40698
40930
  className: styles.liveCard,
40699
40931
  onClick: handleClick,
40700
- renderIcon: () => /* @__PURE__ */ jsx163(ListChecks4, { size: 20 }),
40701
- renderPrimary: () => /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.listTitle") }),
40702
- renderHeaderActions: () => /* @__PURE__ */ jsxs119("div", { style: { display: "flex", gap: 14 }, children: [
40703
- /* @__PURE__ */ jsx163(StatCell, { value: count, label: t("genui.taskManage.stat.tasks") }),
40704
- /* @__PURE__ */ jsx163(StatCell, { value: /* @__PURE__ */ jsx163("span", { style: { color: "#3b82f6" }, children: inProgress }), label: t("genui.taskManage.stat.inProgress") }),
40705
- /* @__PURE__ */ jsx163(StatCell, { value: /* @__PURE__ */ jsx163("span", { style: { color: "#22c55e" }, children: completed }), label: t("genui.taskManage.stat.completed") })
40932
+ renderIcon: () => /* @__PURE__ */ jsx164(ListChecks4, { size: 20 }),
40933
+ renderPrimary: () => /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.listTitle") }),
40934
+ renderHeaderActions: () => /* @__PURE__ */ jsxs120("div", { style: { display: "flex", gap: 14 }, children: [
40935
+ /* @__PURE__ */ jsx164(StatCell, { value: count, label: t("genui.taskManage.stat.tasks") }),
40936
+ /* @__PURE__ */ jsx164(StatCell, { value: /* @__PURE__ */ jsx164("span", { style: { color: "#3b82f6" }, children: inProgress }), label: t("genui.taskManage.stat.inProgress") }),
40937
+ /* @__PURE__ */ jsx164(StatCell, { value: /* @__PURE__ */ jsx164("span", { style: { color: "#22c55e" }, children: completed }), label: t("genui.taskManage.stat.completed") })
40706
40938
  ] }),
40707
- renderDetails: () => /* @__PURE__ */ jsxs119("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
40708
- items.slice(0, 3).map((t2) => /* @__PURE__ */ jsxs119(
40939
+ renderDetails: () => /* @__PURE__ */ jsxs120("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
40940
+ items.slice(0, 3).map((t2) => /* @__PURE__ */ jsxs120(
40709
40941
  "div",
40710
40942
  {
40711
40943
  style: { display: "flex", alignItems: "center", gap: 8, cursor: t2.id ? "pointer" : void 0 },
@@ -40715,7 +40947,7 @@ var TaskListCard = ({ data, result }) => {
40715
40947
  openSideApp({ component_key: "manage_task", data: { task: t2 } });
40716
40948
  },
40717
40949
  children: [
40718
- /* @__PURE__ */ jsx163(
40950
+ /* @__PURE__ */ jsx164(
40719
40951
  "span",
40720
40952
  {
40721
40953
  style: {
@@ -40728,13 +40960,13 @@ var TaskListCard = ({ data, result }) => {
40728
40960
  }
40729
40961
  }
40730
40962
  ),
40731
- /* @__PURE__ */ jsx163(Text47, { style: { fontSize: 13, flex: 1, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: t2.title }),
40732
- /* @__PURE__ */ jsx163(Text47, { style: { fontSize: 12, color: priorityColor[t2.priority] ?? void 0 }, children: t2.priority })
40963
+ /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 13, flex: 1, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: t2.title }),
40964
+ /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 12, color: priorityColor[t2.priority] ?? void 0 }, children: t2.priority })
40733
40965
  ]
40734
40966
  },
40735
40967
  t2.id
40736
40968
  )),
40737
- items.length > 3 && /* @__PURE__ */ jsx163(Text47, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskManage.more", { count: items.length - 3 }) })
40969
+ items.length > 3 && /* @__PURE__ */ jsx164(Text48, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskManage.more", { count: items.length - 3 }) })
40738
40970
  ] })
40739
40971
  }
40740
40972
  );
@@ -40743,19 +40975,19 @@ var TaskListHoverCard = ({ data, result }) => {
40743
40975
  const openSideApp = useSideAppOpener();
40744
40976
  const t = useT();
40745
40977
  const { count, inProgress, completed } = resolveListStats(result);
40746
- return /* @__PURE__ */ jsx163(
40978
+ return /* @__PURE__ */ jsx164(
40747
40979
  HoverReveal,
40748
40980
  {
40749
40981
  onClick: () => openSideApp({ component_key: "manage_task", data: {} }),
40750
- detail: /* @__PURE__ */ jsx163(TaskListCard, { data, result }),
40751
- chip: /* @__PURE__ */ jsxs119(Fragment50, { children: [
40752
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.listTitle") }),
40753
- /* @__PURE__ */ jsxs119(Text47, { style: { fontSize: 13 }, children: [
40982
+ detail: /* @__PURE__ */ jsx164(TaskListCard, { data, result }),
40983
+ chip: /* @__PURE__ */ jsxs120(Fragment50, { children: [
40984
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.listTitle") }),
40985
+ /* @__PURE__ */ jsxs120(Text48, { style: { fontSize: 13 }, children: [
40754
40986
  count,
40755
40987
  " ",
40756
40988
  count === 1 ? t("genui.taskManage.countOne") : t("genui.taskManage.countOther")
40757
40989
  ] }),
40758
- /* @__PURE__ */ jsx163(Text47, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskManage.inProgressCompleted", { inProgress, completed }) })
40990
+ /* @__PURE__ */ jsx164(Text48, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskManage.inProgressCompleted", { inProgress, completed }) })
40759
40991
  ] })
40760
40992
  }
40761
40993
  );
@@ -40763,26 +40995,26 @@ var TaskListHoverCard = ({ data, result }) => {
40763
40995
  var TaskActivityCard = ({ data, result, task }) => {
40764
40996
  const openSideApp = useSideAppOpener();
40765
40997
  const t = useT();
40766
- const { styles } = useStyles53();
40998
+ const { styles } = useStyles54();
40767
40999
  const { markdown, title, status } = resolveActivityView(data, result, task);
40768
41000
  const handleClick = () => {
40769
41001
  openSideApp({ component_key: "manage_task", data: task?.id ? { task } : {} });
40770
41002
  };
40771
- return /* @__PURE__ */ jsx163(
41003
+ return /* @__PURE__ */ jsx164(
40772
41004
  EntityCard,
40773
41005
  {
40774
41006
  item: data,
40775
41007
  className: styles.liveCard,
40776
41008
  onClick: handleClick,
40777
- renderIcon: () => /* @__PURE__ */ jsx163(ListChecks4, { size: 20 }),
40778
- renderPrimary: () => /* @__PURE__ */ jsxs119(Fragment50, { children: [
40779
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.activity") }),
40780
- /* @__PURE__ */ jsxs119("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
40781
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: { fontSize: 14 }, children: title || t("genui.taskCard.untitled") }),
40782
- /* @__PURE__ */ jsx163(StatusDot, { status })
41009
+ renderIcon: () => /* @__PURE__ */ jsx164(ListChecks4, { size: 20 }),
41010
+ renderPrimary: () => /* @__PURE__ */ jsxs120(Fragment50, { children: [
41011
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.activity") }),
41012
+ /* @__PURE__ */ jsxs120("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
41013
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: { fontSize: 14 }, children: title || t("genui.taskCard.untitled") }),
41014
+ /* @__PURE__ */ jsx164(StatusDot, { status })
40783
41015
  ] })
40784
41016
  ] }),
40785
- renderDetails: () => /* @__PURE__ */ jsx163(MDResponse, { content: markdown })
41017
+ renderDetails: () => /* @__PURE__ */ jsx164(MDResponse, { content: markdown })
40786
41018
  }
40787
41019
  );
40788
41020
  };
@@ -40797,15 +41029,15 @@ var TaskActivityHoverCard = ({ data, result, task }) => {
40797
41029
  }
40798
41030
  openSideApp({ component_key: "manage_task", data: {} });
40799
41031
  };
40800
- return /* @__PURE__ */ jsx163(
41032
+ return /* @__PURE__ */ jsx164(
40801
41033
  HoverReveal,
40802
41034
  {
40803
41035
  onClick: handleClick,
40804
- detail: /* @__PURE__ */ jsx163(TaskActivityCard, { data, result, task }),
40805
- chip: /* @__PURE__ */ jsxs119(Fragment50, { children: [
40806
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.activity") }),
40807
- /* @__PURE__ */ jsx163(
40808
- Text47,
41036
+ detail: /* @__PURE__ */ jsx164(TaskActivityCard, { data, result, task }),
41037
+ chip: /* @__PURE__ */ jsxs120(Fragment50, { children: [
41038
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t("genui.taskManage.activity") }),
41039
+ /* @__PURE__ */ jsx164(
41040
+ Text48,
40809
41041
  {
40810
41042
  style: {
40811
41043
  fontSize: 13,
@@ -40818,8 +41050,8 @@ var TaskActivityHoverCard = ({ data, result, task }) => {
40818
41050
  children: summary
40819
41051
  }
40820
41052
  ),
40821
- title && /* @__PURE__ */ jsxs119(
40822
- Text47,
41053
+ title && /* @__PURE__ */ jsxs120(
41054
+ Text48,
40823
41055
  {
40824
41056
  type: "secondary",
40825
41057
  style: {
@@ -40841,20 +41073,20 @@ var TaskActivityHoverCard = ({ data, result, task }) => {
40841
41073
  var TaskDeleteDetailCard = ({ title, id }) => {
40842
41074
  const openSideApp = useSideAppOpener();
40843
41075
  const t = useT();
40844
- const { styles } = useStyles53();
40845
- return /* @__PURE__ */ jsx163(
41076
+ const { styles } = useStyles54();
41077
+ return /* @__PURE__ */ jsx164(
40846
41078
  EntityCard,
40847
41079
  {
40848
41080
  item: null,
40849
41081
  className: styles.liveCard,
40850
41082
  onClick: () => openSideApp({ component_key: "manage_task", data: {} }),
40851
- renderPrimary: () => /* @__PURE__ */ jsxs119(Fragment50, { children: [
40852
- /* @__PURE__ */ jsxs119(Text47, { strong: true, style: actionTitleStyle4, children: [
40853
- /* @__PURE__ */ jsx163("span", { style: { color: "#ef4444" }, children: "\u2713" }),
41083
+ renderPrimary: () => /* @__PURE__ */ jsxs120(Fragment50, { children: [
41084
+ /* @__PURE__ */ jsxs120(Text48, { strong: true, style: actionTitleStyle4, children: [
41085
+ /* @__PURE__ */ jsx164("span", { style: { color: "#ef4444" }, children: "\u2713" }),
40854
41086
  " ",
40855
41087
  t("genui.taskManage.deleted")
40856
41088
  ] }),
40857
- /* @__PURE__ */ jsx163("div", { children: /* @__PURE__ */ jsx163(Text47, { strong: true, style: { fontSize: 14 }, children: title || id }) })
41089
+ /* @__PURE__ */ jsx164("div", { children: /* @__PURE__ */ jsx164(Text48, { strong: true, style: { fontSize: 14 }, children: title || id }) })
40858
41090
  ] })
40859
41091
  }
40860
41092
  );
@@ -40865,18 +41097,18 @@ var TaskDeleteHoverCard = ({ data }) => {
40865
41097
  const args = data?.args ?? {};
40866
41098
  const title = args.title ?? "";
40867
41099
  const id = args.id ?? "";
40868
- return /* @__PURE__ */ jsx163(
41100
+ return /* @__PURE__ */ jsx164(
40869
41101
  HoverReveal,
40870
41102
  {
40871
41103
  onClick: () => openSideApp({ component_key: "manage_task", data: {} }),
40872
- detail: /* @__PURE__ */ jsx163(TaskDeleteDetailCard, { title, id }),
40873
- chip: /* @__PURE__ */ jsxs119(Fragment50, { children: [
40874
- /* @__PURE__ */ jsxs119(Text47, { strong: true, style: actionTitleStyle4, children: [
40875
- /* @__PURE__ */ jsx163("span", { style: { color: "#ef4444" }, children: "\u2713" }),
41104
+ detail: /* @__PURE__ */ jsx164(TaskDeleteDetailCard, { title, id }),
41105
+ chip: /* @__PURE__ */ jsxs120(Fragment50, { children: [
41106
+ /* @__PURE__ */ jsxs120(Text48, { strong: true, style: actionTitleStyle4, children: [
41107
+ /* @__PURE__ */ jsx164("span", { style: { color: "#ef4444" }, children: "\u2713" }),
40876
41108
  " ",
40877
41109
  t("genui.taskManage.deleted")
40878
41110
  ] }),
40879
- title && /* @__PURE__ */ jsx163(Text47, { type: "secondary", style: { fontSize: 12 }, children: title })
41111
+ title && /* @__PURE__ */ jsx164(Text48, { type: "secondary", style: { fontSize: 12 }, children: title })
40880
41112
  ] })
40881
41113
  }
40882
41114
  );
@@ -40892,7 +41124,7 @@ var failureActionLabelKey = {
40892
41124
  };
40893
41125
  var TaskFailureCard = ({ action, message: message36 }) => {
40894
41126
  const t = useT();
40895
- return /* @__PURE__ */ jsxs119(
41127
+ return /* @__PURE__ */ jsxs120(
40896
41128
  "div",
40897
41129
  {
40898
41130
  style: {
@@ -40907,10 +41139,10 @@ var TaskFailureCard = ({ action, message: message36 }) => {
40907
41139
  fontSize: 13
40908
41140
  },
40909
41141
  children: [
40910
- /* @__PURE__ */ jsx163("span", { children: "\u2715" }),
40911
- /* @__PURE__ */ jsxs119("div", { style: { display: "flex", flexDirection: "column", gap: 2, minWidth: 0 }, children: [
40912
- /* @__PURE__ */ jsx163(Text47, { strong: true, style: actionTitleStyle4, children: t(failureActionLabelKey[action] ?? "genui.taskManage.verb.fallback") }),
40913
- /* @__PURE__ */ jsx163("span", { children: truncate2(message36) })
41142
+ /* @__PURE__ */ jsx164("span", { children: "\u2715" }),
41143
+ /* @__PURE__ */ jsxs120("div", { style: { display: "flex", flexDirection: "column", gap: 2, minWidth: 0 }, children: [
41144
+ /* @__PURE__ */ jsx164(Text48, { strong: true, style: actionTitleStyle4, children: t(failureActionLabelKey[action] ?? "genui.taskManage.verb.fallback") }),
41145
+ /* @__PURE__ */ jsx164("span", { children: truncate2(message36) })
40914
41146
  ] })
40915
41147
  ]
40916
41148
  }
@@ -40930,7 +41162,7 @@ var TaskManageCard = ({ data }) => {
40930
41162
  const action = typeof args.action === "string" ? args.action : "";
40931
41163
  const result = parseManageEvalResponse(data?.response);
40932
41164
  if (!result.success) {
40933
- return /* @__PURE__ */ jsx163(TaskFailureCard, { action, message: result.error ?? t("genui.taskManage.failed") });
41165
+ return /* @__PURE__ */ jsx164(TaskFailureCard, { action, message: result.error ?? t("genui.taskManage.failed") });
40934
41166
  }
40935
41167
  const task = extractTask(action, result);
40936
41168
  switch (action) {
@@ -40938,13 +41170,13 @@ var TaskManageCard = ({ data }) => {
40938
41170
  case "update":
40939
41171
  case "set_status":
40940
41172
  case "get":
40941
- return /* @__PURE__ */ jsx163(TaskLiveHoverCard, { data, result, task: task ?? {} });
41173
+ return /* @__PURE__ */ jsx164(TaskLiveHoverCard, { data, result, task: task ?? {} });
40942
41174
  case "list":
40943
- return /* @__PURE__ */ jsx163(TaskListHoverCard, { data, result });
41175
+ return /* @__PURE__ */ jsx164(TaskListHoverCard, { data, result });
40944
41176
  case "add_activity":
40945
- return /* @__PURE__ */ jsx163(TaskActivityHoverCard, { data, result, task });
41177
+ return /* @__PURE__ */ jsx164(TaskActivityHoverCard, { data, result, task });
40946
41178
  case "delete":
40947
- return /* @__PURE__ */ jsx163(TaskDeleteHoverCard, { data });
41179
+ return /* @__PURE__ */ jsx164(TaskDeleteHoverCard, { data });
40948
41180
  default:
40949
41181
  return null;
40950
41182
  }
@@ -40955,10 +41187,10 @@ import { lazy as lazy4, Suspense as Suspense5 } from "react";
40955
41187
  import { Spin as Spin34 } from "antd";
40956
41188
 
40957
41189
  // src/components/GenUI/elements/WriteTodos.tsx
40958
- import { Space as Space40, Collapse as Collapse7, Typography as Typography59 } from "antd";
41190
+ import { Space as Space40, Collapse as Collapse7, Typography as Typography60 } from "antd";
40959
41191
  import { UnorderedListOutlined as UnorderedListOutlined2 } from "@ant-design/icons";
40960
- import { jsx as jsx164, jsxs as jsxs120 } from "react/jsx-runtime";
40961
- var { Text: Text48 } = Typography59;
41192
+ import { jsx as jsx165, jsxs as jsxs121 } from "react/jsx-runtime";
41193
+ var { Text: Text49 } = Typography60;
40962
41194
  var { Panel: CollapsePanel3 } = Collapse7;
40963
41195
  var WriteTodos = ({
40964
41196
  data,
@@ -40973,28 +41205,28 @@ var WriteTodos = ({
40973
41205
  (item) => item.status === "completed"
40974
41206
  ).length;
40975
41207
  const expandIcon = () => {
40976
- return /* @__PURE__ */ jsx164(UnorderedListOutlined2, {});
41208
+ return /* @__PURE__ */ jsx165(UnorderedListOutlined2, {});
40977
41209
  };
40978
- const header = /* @__PURE__ */ jsxs120(Space40, { children: [
40979
- /* @__PURE__ */ jsx164(Text48, { strong: true, children: t("genui.todos.title") }),
40980
- /* @__PURE__ */ jsx164(Text48, { style: { fontSize: 12 }, type: "secondary", children: t("genui.todos.done", { completed: completedCount, total: totalCount }) })
41210
+ const header = /* @__PURE__ */ jsxs121(Space40, { children: [
41211
+ /* @__PURE__ */ jsx165(Text49, { strong: true, children: t("genui.todos.title") }),
41212
+ /* @__PURE__ */ jsx165(Text49, { style: { fontSize: 12 }, type: "secondary", children: t("genui.todos.done", { completed: completedCount, total: totalCount }) })
40981
41213
  ] });
40982
41214
  if (!toolCallData) {
40983
41215
  return null;
40984
41216
  }
40985
- return /* @__PURE__ */ jsx164(
41217
+ return /* @__PURE__ */ jsx165(
40986
41218
  Collapse7,
40987
41219
  {
40988
41220
  size: "small",
40989
41221
  bordered: false,
40990
41222
  defaultActiveKey: [toolCallData.id],
40991
41223
  expandIcon,
40992
- children: /* @__PURE__ */ jsx164(
41224
+ children: /* @__PURE__ */ jsx165(
40993
41225
  CollapsePanel3,
40994
41226
  {
40995
41227
  header,
40996
41228
  style: { minWidth: 400 },
40997
- children: /* @__PURE__ */ jsx164(
41229
+ children: /* @__PURE__ */ jsx165(
40998
41230
  Todo,
40999
41231
  {
41000
41232
  data: data.args.todos,
@@ -41011,15 +41243,15 @@ var WriteTodos = ({
41011
41243
  };
41012
41244
 
41013
41245
  // src/components/GenUI/FileExplorer.tsx
41014
- import { useState as useState120, useEffect as useEffect92, useMemo as useMemo46 } from "react";
41246
+ import { useState as useState121, useEffect as useEffect92, useMemo as useMemo47 } from "react";
41015
41247
  import { Splitter, Tree, Empty as Empty19 } from "antd";
41016
41248
  import {
41017
41249
  FolderOutlined as FolderOutlined3,
41018
41250
  FolderOpenOutlined
41019
41251
  } from "@ant-design/icons";
41020
- import { createStyles as createStyles71 } from "antd-style";
41021
- import { jsx as jsx165, jsxs as jsxs121 } from "react/jsx-runtime";
41022
- var useStyles54 = createStyles71(({ token, css }) => ({
41252
+ import { createStyles as createStyles72 } from "antd-style";
41253
+ import { jsx as jsx166, jsxs as jsxs122 } from "react/jsx-runtime";
41254
+ var useStyles55 = createStyles72(({ token, css }) => ({
41023
41255
  container: css`
41024
41256
  height: 100%;
41025
41257
  background: ${token.colorBgContainer};
@@ -41129,7 +41361,7 @@ var getFolderIcon = (expanded) => {
41129
41361
  color: "#dcb67a",
41130
41362
  verticalAlign: "middle"
41131
41363
  };
41132
- return expanded ? /* @__PURE__ */ jsx165(FolderOpenOutlined, { style: iconStyle }) : /* @__PURE__ */ jsx165(FolderOutlined3, { style: iconStyle });
41364
+ return expanded ? /* @__PURE__ */ jsx166(FolderOpenOutlined, { style: iconStyle }) : /* @__PURE__ */ jsx166(FolderOutlined3, { style: iconStyle });
41133
41365
  };
41134
41366
  var sortTreeNodes = (nodes) => {
41135
41367
  return nodes.sort((a, b) => {
@@ -41154,7 +41386,7 @@ var buildTreeData = (files, expandedKeys, t) => {
41154
41386
  const key = parts.slice(0, index + 1).join("/");
41155
41387
  let existingNode = currentLevel.find((node) => node.key === key);
41156
41388
  if (!existingNode) {
41157
- const title = part === "" && index === 0 ? /* @__PURE__ */ jsx165(
41389
+ const title = part === "" && index === 0 ? /* @__PURE__ */ jsx166(
41158
41390
  "span",
41159
41391
  {
41160
41392
  style: {
@@ -41188,11 +41420,11 @@ var FileExplorer = ({
41188
41420
  default_open_in_side_app = true
41189
41421
  }) => {
41190
41422
  const { files } = data ?? {};
41191
- const { styles, cx } = useStyles54();
41423
+ const { styles, cx } = useStyles55();
41192
41424
  const t = useT();
41193
- const [fileList, setFileList] = useState120([]);
41194
- const [selectedKey, setSelectedKey] = useState120("");
41195
- const [expandedKeys, setExpandedKeys] = useState120([]);
41425
+ const [fileList, setFileList] = useState121([]);
41426
+ const [selectedKey, setSelectedKey] = useState121("");
41427
+ const [expandedKeys, setExpandedKeys] = useState121([]);
41196
41428
  useEffect92(() => {
41197
41429
  let list = [];
41198
41430
  if (Array.isArray(files)) {
@@ -41209,7 +41441,7 @@ var FileExplorer = ({
41209
41441
  setSelectedKey(list[0].name);
41210
41442
  }
41211
41443
  }, [files]);
41212
- const treeData = useMemo46(
41444
+ const treeData = useMemo47(
41213
41445
  () => buildTreeData(fileList, expandedKeys, t),
41214
41446
  [fileList, expandedKeys, t]
41215
41447
  );
@@ -41230,12 +41462,12 @@ var FileExplorer = ({
41230
41462
  setExpandedKeys(getAllKeys(treeData));
41231
41463
  }
41232
41464
  }, [treeData.length]);
41233
- const selectedFile = useMemo46(() => {
41465
+ const selectedFile = useMemo47(() => {
41234
41466
  return fileList.find((f) => f.name === selectedKey);
41235
41467
  }, [fileList, selectedKey]);
41236
41468
  const renderContent = () => {
41237
41469
  if (!selectedFile) {
41238
- return /* @__PURE__ */ jsx165("div", { className: styles.emptyState, children: /* @__PURE__ */ jsx165(
41470
+ return /* @__PURE__ */ jsx166("div", { className: styles.emptyState, children: /* @__PURE__ */ jsx166(
41239
41471
  Empty19,
41240
41472
  {
41241
41473
  description: t("genui.fileExplorer.selectToPreview"),
@@ -41244,7 +41476,7 @@ var FileExplorer = ({
41244
41476
  ) });
41245
41477
  }
41246
41478
  const content = Array.isArray(selectedFile.content) ? selectedFile.content.join("\n") : selectedFile.content;
41247
- return /* @__PURE__ */ jsx165(
41479
+ return /* @__PURE__ */ jsx166(
41248
41480
  MarkdownViewer,
41249
41481
  {
41250
41482
  content,
@@ -41252,8 +41484,8 @@ var FileExplorer = ({
41252
41484
  }
41253
41485
  );
41254
41486
  };
41255
- return /* @__PURE__ */ jsx165("div", { className: styles.container, children: /* @__PURE__ */ jsxs121(Splitter, { className: styles.splitter, children: [
41256
- /* @__PURE__ */ jsx165(Splitter.Panel, { defaultSize: "25%", min: "15%", max: "40%", children: /* @__PURE__ */ jsx165("div", { className: styles.leftPanel, children: /* @__PURE__ */ jsx165(
41487
+ return /* @__PURE__ */ jsx166("div", { className: styles.container, children: /* @__PURE__ */ jsxs122(Splitter, { className: styles.splitter, children: [
41488
+ /* @__PURE__ */ jsx166(Splitter.Panel, { defaultSize: "25%", min: "15%", max: "40%", children: /* @__PURE__ */ jsx166("div", { className: styles.leftPanel, children: /* @__PURE__ */ jsx166(
41257
41489
  Tree,
41258
41490
  {
41259
41491
  showIcon: true,
@@ -41291,7 +41523,7 @@ var FileExplorer = ({
41291
41523
  }
41292
41524
  }
41293
41525
  ) }) }),
41294
- /* @__PURE__ */ jsx165(Splitter.Panel, { children: /* @__PURE__ */ jsx165("div", { className: styles.rightPanel, children: renderContent() }) })
41526
+ /* @__PURE__ */ jsx166(Splitter.Panel, { children: /* @__PURE__ */ jsx166("div", { className: styles.rightPanel, children: renderContent() }) })
41295
41527
  ] }) });
41296
41528
  };
41297
41529
 
@@ -41301,14 +41533,14 @@ import {
41301
41533
  Card as Card15,
41302
41534
  Flex as Flex4,
41303
41535
  Space as Space41,
41304
- Typography as Typography60,
41536
+ Typography as Typography61,
41305
41537
  Row as Row4,
41306
41538
  Col as Col4,
41307
41539
  Button as Button77
41308
41540
  } from "antd";
41309
- import { useContext as useContext13, useState as useState121 } from "react";
41541
+ import { useContext as useContext13, useState as useState122 } from "react";
41310
41542
  import dayjs from "dayjs";
41311
- import { jsx as jsx166, jsxs as jsxs122 } from "react/jsx-runtime";
41543
+ import { jsx as jsx167, jsxs as jsxs123 } from "react/jsx-runtime";
41312
41544
  var AttachmentsCard = ({
41313
41545
  data,
41314
41546
  component_key,
@@ -41343,8 +41575,8 @@ var AttachmentsCard = ({
41343
41575
  }
41344
41576
  return getSandboxFileUrl(item.id);
41345
41577
  };
41346
- const { Text: Text62 } = Typography60;
41347
- const [showAll, setShowAll] = useState121(false);
41578
+ const { Text: Text63 } = Typography61;
41579
+ const [showAll, setShowAll] = useState122(false);
41348
41580
  const openSideApp = useSideAppOpener();
41349
41581
  const getStyles = () => {
41350
41582
  switch (size) {
@@ -41412,7 +41644,7 @@ var AttachmentsCard = ({
41412
41644
  };
41413
41645
  const DownloadButton = ({ item }) => {
41414
41646
  if (!showDownloadButton) return null;
41415
- return /* @__PURE__ */ jsx166(
41647
+ return /* @__PURE__ */ jsx167(
41416
41648
  "div",
41417
41649
  {
41418
41650
  style: {
@@ -41426,8 +41658,8 @@ var AttachmentsCard = ({
41426
41658
  }
41427
41659
  );
41428
41660
  };
41429
- const renderFileDescription = (item) => /* @__PURE__ */ jsx166(Space41, { direction: "vertical", size: size === "small" ? 2 : 4, children: /* @__PURE__ */ jsx166(Space41, { children: /* @__PURE__ */ jsx166(
41430
- Text62,
41661
+ const renderFileDescription = (item) => /* @__PURE__ */ jsx167(Space41, { direction: "vertical", size: size === "small" ? 2 : 4, children: /* @__PURE__ */ jsx167(Space41, { children: /* @__PURE__ */ jsx167(
41662
+ Text63,
41431
41663
  {
41432
41664
  type: "secondary",
41433
41665
  style: {
@@ -41440,17 +41672,17 @@ var AttachmentsCard = ({
41440
41672
  const displayData2 = data || [];
41441
41673
  const shouldShowViewMore2 = displayData2.length > 4;
41442
41674
  const visibleData2 = showAll ? displayData2 : displayData2.slice(0, 4);
41443
- return /* @__PURE__ */ jsxs122(Flex4, { vertical: true, gap: "small", children: [
41444
- /* @__PURE__ */ jsx166(Row4, { gutter: [8, 8], children: visibleData2.map((item) => /* @__PURE__ */ jsx166(Col4, { span: 24 / columns, children: /* @__PURE__ */ jsx166(
41675
+ return /* @__PURE__ */ jsxs123(Flex4, { vertical: true, gap: "small", children: [
41676
+ /* @__PURE__ */ jsx167(Row4, { gutter: [8, 8], children: visibleData2.map((item) => /* @__PURE__ */ jsx167(Col4, { span: 24 / columns, children: /* @__PURE__ */ jsx167(
41445
41677
  "div",
41446
41678
  {
41447
41679
  onClick: (evt) => {
41448
41680
  evt.stopPropagation();
41449
41681
  handleItemClick(item);
41450
41682
  },
41451
- children: /* @__PURE__ */ jsxs122(Card15, { size: styles.cardSize, style: getCardStyle(item), children: [
41452
- /* @__PURE__ */ jsx166(DownloadButton, { item }),
41453
- /* @__PURE__ */ jsx166(
41683
+ children: /* @__PURE__ */ jsxs123(Card15, { size: styles.cardSize, style: getCardStyle(item), children: [
41684
+ /* @__PURE__ */ jsx167(DownloadButton, { item }),
41685
+ /* @__PURE__ */ jsx167(
41454
41686
  FileCard,
41455
41687
  {
41456
41688
  style: getFileCardStyle(item),
@@ -41460,7 +41692,7 @@ var AttachmentsCard = ({
41460
41692
  description: renderFileDescription(item)
41461
41693
  }
41462
41694
  ),
41463
- item.files && /* @__PURE__ */ jsx166(
41695
+ item.files && /* @__PURE__ */ jsx167(
41464
41696
  AttachmentsCard,
41465
41697
  {
41466
41698
  data: item.files,
@@ -41473,7 +41705,7 @@ var AttachmentsCard = ({
41473
41705
  ] })
41474
41706
  }
41475
41707
  ) }, item.id)) }),
41476
- shouldShowViewMore2 && /* @__PURE__ */ jsx166(
41708
+ shouldShowViewMore2 && /* @__PURE__ */ jsx167(
41477
41709
  Button77,
41478
41710
  {
41479
41711
  type: "link",
@@ -41487,10 +41719,10 @@ var AttachmentsCard = ({
41487
41719
  const displayData = data || [];
41488
41720
  const shouldShowViewMore = displayData.length > 4;
41489
41721
  const visibleData = showAll ? displayData : displayData.slice(0, 4);
41490
- return /* @__PURE__ */ jsxs122(Flex4, { vertical: true, gap: size === "small" ? "small" : "middle", children: [
41491
- visibleData.map((item) => /* @__PURE__ */ jsx166("div", { onClick: () => handleItemClick(item), children: /* @__PURE__ */ jsxs122(Card15, { size: styles.cardSize, style: getCardStyle(item), children: [
41492
- /* @__PURE__ */ jsx166(DownloadButton, { item }),
41493
- /* @__PURE__ */ jsx166(
41722
+ return /* @__PURE__ */ jsxs123(Flex4, { vertical: true, gap: size === "small" ? "small" : "middle", children: [
41723
+ visibleData.map((item) => /* @__PURE__ */ jsx167("div", { onClick: () => handleItemClick(item), children: /* @__PURE__ */ jsxs123(Card15, { size: styles.cardSize, style: getCardStyle(item), children: [
41724
+ /* @__PURE__ */ jsx167(DownloadButton, { item }),
41725
+ /* @__PURE__ */ jsx167(
41494
41726
  FileCard,
41495
41727
  {
41496
41728
  style: getFileCardStyle(item),
@@ -41500,9 +41732,9 @@ var AttachmentsCard = ({
41500
41732
  description: renderFileDescription(item)
41501
41733
  }
41502
41734
  ),
41503
- item.files && /* @__PURE__ */ jsxs122("div", { style: { paddingLeft: "12px" }, children: [
41504
- /* @__PURE__ */ jsx166(Text62, { type: "secondary", style: { fontSize: "12px" }, children: t("genui.attachment.containsFiles", { count: item.files.length }) }),
41505
- /* @__PURE__ */ jsx166(
41735
+ item.files && /* @__PURE__ */ jsxs123("div", { style: { paddingLeft: "12px" }, children: [
41736
+ /* @__PURE__ */ jsx167(Text63, { type: "secondary", style: { fontSize: "12px" }, children: t("genui.attachment.containsFiles", { count: item.files.length }) }),
41737
+ /* @__PURE__ */ jsx167(
41506
41738
  AttachmentsCard,
41507
41739
  {
41508
41740
  data: item.files,
@@ -41514,7 +41746,7 @@ var AttachmentsCard = ({
41514
41746
  )
41515
41747
  ] })
41516
41748
  ] }) }, item.id)),
41517
- shouldShowViewMore && /* @__PURE__ */ jsx166(
41749
+ shouldShowViewMore && /* @__PURE__ */ jsx167(
41518
41750
  Button77,
41519
41751
  {
41520
41752
  type: "link",
@@ -41532,16 +41764,16 @@ var AttachmentsCard = ({
41532
41764
 
41533
41765
  // src/components/GenUI/elements/attachments_viewer_side_app.tsx
41534
41766
  import { Button as Button78, Empty as Empty20, Skeleton, Space as Space42 } from "antd";
41535
- import { useEffect as useEffect93, useState as useState122 } from "react";
41767
+ import { useEffect as useEffect93, useState as useState123 } from "react";
41536
41768
 
41537
41769
  // src/components/GenUI/RenderMDFromURL.tsx
41538
- import { jsx as jsx167 } from "react/jsx-runtime";
41770
+ import { jsx as jsx168 } from "react/jsx-runtime";
41539
41771
  var RenderMDFromURL = ({
41540
41772
  url,
41541
41773
  file_id,
41542
41774
  downloadUrl
41543
41775
  }) => {
41544
- return /* @__PURE__ */ jsx167(
41776
+ return /* @__PURE__ */ jsx168(
41545
41777
  FileRenderer,
41546
41778
  {
41547
41779
  fileUrl: url,
@@ -41554,16 +41786,16 @@ var RenderMDFromURL = ({
41554
41786
 
41555
41787
  // src/components/GenUI/elements/attachments_viewer_side_app.tsx
41556
41788
  import { LinkOutlined as LinkOutlined3, DownloadOutlined as DownloadOutlined3 } from "@ant-design/icons";
41557
- import { Fragment as Fragment51, jsx as jsx168, jsxs as jsxs123 } from "react/jsx-runtime";
41789
+ import { Fragment as Fragment51, jsx as jsx169, jsxs as jsxs124 } from "react/jsx-runtime";
41558
41790
  function AttachmentsViewerSideApp({
41559
41791
  data,
41560
41792
  component_key
41561
41793
  }) {
41562
41794
  const t = useT();
41563
- const [loading, setLoading] = useState122(false);
41564
- const [shareOpen, setShareOpen] = useState122(false);
41795
+ const [loading, setLoading] = useState123(false);
41796
+ const [shareOpen, setShareOpen] = useState123(false);
41565
41797
  const { file_id, url, full_url, download_url } = data ?? {};
41566
- const [fileUri, setFileUri] = useState122({
41798
+ const [fileUri, setFileUri] = useState123({
41567
41799
  url: full_url || "",
41568
41800
  fileName: extractFileName(file_id || "")
41569
41801
  });
@@ -41574,7 +41806,7 @@ function AttachmentsViewerSideApp({
41574
41806
  });
41575
41807
  }, [file_id, full_url]);
41576
41808
  if (loading) {
41577
- return /* @__PURE__ */ jsx168(Skeleton, { active: true });
41809
+ return /* @__PURE__ */ jsx169(Skeleton, { active: true });
41578
41810
  }
41579
41811
  const fileUrl = fileUri?.url || url;
41580
41812
  const downloadUrl = download_url || fileUrl || "";
@@ -41584,7 +41816,7 @@ function AttachmentsViewerSideApp({
41584
41816
  const isDir = !!fileName && !fileName.includes(".");
41585
41817
  let content;
41586
41818
  if (isText && fileUrl) {
41587
- content = /* @__PURE__ */ jsx168(
41819
+ content = /* @__PURE__ */ jsx169(
41588
41820
  RenderMDFromURL,
41589
41821
  {
41590
41822
  url: fileUrl,
@@ -41593,7 +41825,7 @@ function AttachmentsViewerSideApp({
41593
41825
  }
41594
41826
  );
41595
41827
  } else if (isPreviewable || url || isDir) {
41596
- content = /* @__PURE__ */ jsx168(
41828
+ content = /* @__PURE__ */ jsx169(
41597
41829
  "iframe",
41598
41830
  {
41599
41831
  style: { width: "100%", height: "100%", border: 0 },
@@ -41601,43 +41833,43 @@ function AttachmentsViewerSideApp({
41601
41833
  }
41602
41834
  );
41603
41835
  } else {
41604
- content = /* @__PURE__ */ jsx168(
41836
+ content = /* @__PURE__ */ jsx169(
41605
41837
  Empty20,
41606
41838
  {
41607
- description: /* @__PURE__ */ jsxs123(Fragment51, { children: [
41608
- /* @__PURE__ */ jsx168("div", { children: t("genui.attachment.previewUnsupported") }),
41609
- downloadUrl ? /* @__PURE__ */ jsx168(Button78, { type: "link", href: downloadUrl, download: fileName, children: t("genui.attachment.downloadNamed", { name: fileName }) }) : null
41839
+ description: /* @__PURE__ */ jsxs124(Fragment51, { children: [
41840
+ /* @__PURE__ */ jsx169("div", { children: t("genui.attachment.previewUnsupported") }),
41841
+ downloadUrl ? /* @__PURE__ */ jsx169(Button78, { type: "link", href: downloadUrl, download: fileName, children: t("genui.attachment.downloadNamed", { name: fileName }) }) : null
41610
41842
  ] }),
41611
41843
  image: Empty20.PRESENTED_IMAGE_DEFAULT
41612
41844
  }
41613
41845
  );
41614
41846
  }
41615
- return /* @__PURE__ */ jsxs123("div", { style: { display: "flex", flexDirection: "column", height: "100%" }, children: [
41616
- /* @__PURE__ */ jsxs123(Space42, { style: { padding: "8px 12px", borderBottom: "1px solid #f0f0f0", width: "100%" }, children: [
41617
- downloadUrl ? /* @__PURE__ */ jsx168(
41847
+ return /* @__PURE__ */ jsxs124("div", { style: { display: "flex", flexDirection: "column", height: "100%" }, children: [
41848
+ /* @__PURE__ */ jsxs124(Space42, { style: { padding: "8px 12px", borderBottom: "1px solid #f0f0f0", width: "100%" }, children: [
41849
+ downloadUrl ? /* @__PURE__ */ jsx169(
41618
41850
  Button78,
41619
41851
  {
41620
41852
  type: "text",
41621
41853
  size: "small",
41622
- icon: /* @__PURE__ */ jsx168(DownloadOutlined3, {}),
41854
+ icon: /* @__PURE__ */ jsx169(DownloadOutlined3, {}),
41623
41855
  href: downloadUrl,
41624
41856
  download: fileName,
41625
41857
  children: t("genui.attachment.download")
41626
41858
  }
41627
41859
  ) : null,
41628
- /* @__PURE__ */ jsx168(
41860
+ /* @__PURE__ */ jsx169(
41629
41861
  Button78,
41630
41862
  {
41631
41863
  type: "text",
41632
41864
  size: "small",
41633
- icon: /* @__PURE__ */ jsx168(LinkOutlined3, {}),
41865
+ icon: /* @__PURE__ */ jsx169(LinkOutlined3, {}),
41634
41866
  onClick: () => setShareOpen(true),
41635
41867
  children: t("genui.share.action")
41636
41868
  }
41637
41869
  )
41638
41870
  ] }),
41639
41871
  content,
41640
- shareOpen && /* @__PURE__ */ jsx168(
41872
+ shareOpen && /* @__PURE__ */ jsx169(
41641
41873
  ShareModal,
41642
41874
  {
41643
41875
  open: shareOpen,
@@ -41650,18 +41882,18 @@ function AttachmentsViewerSideApp({
41650
41882
  }
41651
41883
 
41652
41884
  // src/components/GenUI/elements/WriteFile.tsx
41653
- import { Button as Button79, Space as Space43, Typography as Typography61 } from "antd";
41885
+ import { Button as Button79, Space as Space43, Typography as Typography62 } from "antd";
41654
41886
 
41655
41887
  // src/components/GenUI/elements/ContentPreviewCollapse.tsx
41656
- import { useRef as useRef56, useState as useState123, useEffect as useEffect94, useCallback as useCallback72 } from "react";
41888
+ import { useRef as useRef56, useState as useState124, useEffect as useEffect94, useCallback as useCallback72 } from "react";
41657
41889
  import { Collapse as Collapse9 } from "antd";
41658
- import { createStyles as createStyles72 } from "antd-style";
41890
+ import { createStyles as createStyles73 } from "antd-style";
41659
41891
  import { DownOutlined as DownOutlined4, UpOutlined as UpOutlined2 } from "@ant-design/icons";
41660
- import { Fragment as Fragment52, jsx as jsx169, jsxs as jsxs124 } from "react/jsx-runtime";
41892
+ import { Fragment as Fragment52, jsx as jsx170, jsxs as jsxs125 } from "react/jsx-runtime";
41661
41893
  var { Panel: CollapsePanel4 } = Collapse9;
41662
41894
  var DEFAULT_COLLAPSED_MAX_HEIGHT = 180;
41663
41895
  var DEFAULT_EXPANDED_MAX_HEIGHT = 500;
41664
- var useStyle12 = createStyles72(
41896
+ var useStyle12 = createStyles73(
41665
41897
  ({ css }, { showShadow }) => ({
41666
41898
  collapse: css`
41667
41899
  .ant-collapse-header {
@@ -41724,8 +41956,8 @@ var ContentPreviewCollapse = ({
41724
41956
  showLessText
41725
41957
  }) => {
41726
41958
  const t = useT();
41727
- const [showFullContent, setShowFullContent] = useState123(false);
41728
- const [isOverflowing, setIsOverflowing] = useState123(false);
41959
+ const [showFullContent, setShowFullContent] = useState124(false);
41960
+ const [isOverflowing, setIsOverflowing] = useState124(false);
41729
41961
  const contentRef = useRef56(null);
41730
41962
  const showShadow = isOverflowing && !showFullContent;
41731
41963
  const { styles, cx } = useStyle12({ showShadow });
@@ -41751,7 +41983,7 @@ var ContentPreviewCollapse = ({
41751
41983
  e.stopPropagation();
41752
41984
  setShowFullContent(!showFullContent);
41753
41985
  };
41754
- return /* @__PURE__ */ jsx169(
41986
+ return /* @__PURE__ */ jsx170(
41755
41987
  Collapse9,
41756
41988
  {
41757
41989
  className: styles.collapse,
@@ -41759,29 +41991,29 @@ var ContentPreviewCollapse = ({
41759
41991
  bordered: false,
41760
41992
  defaultActiveKey: defaultExpanded ? [panelKey] : [],
41761
41993
  expandIcon,
41762
- children: /* @__PURE__ */ jsxs124(
41994
+ children: /* @__PURE__ */ jsxs125(
41763
41995
  CollapsePanel4,
41764
41996
  {
41765
41997
  header,
41766
41998
  extra,
41767
41999
  style: { minWidth },
41768
42000
  children: [
41769
- /* @__PURE__ */ jsx169(
42001
+ /* @__PURE__ */ jsx170(
41770
42002
  "div",
41771
42003
  {
41772
42004
  className: cx(styles.contentContainer, showFullContent && "expanded"),
41773
42005
  style: {
41774
42006
  maxHeight: showFullContent ? expandedMaxHeight : collapsedMaxHeight
41775
42007
  },
41776
- children: /* @__PURE__ */ jsx169("div", { ref: contentRef, className: styles.content, children })
42008
+ children: /* @__PURE__ */ jsx170("div", { ref: contentRef, className: styles.content, children })
41777
42009
  }
41778
42010
  ),
41779
- isOverflowing && /* @__PURE__ */ jsx169("div", { className: styles.toggleButton, onClick: handleToggleContent, children: showFullContent ? /* @__PURE__ */ jsxs124(Fragment52, { children: [
41780
- /* @__PURE__ */ jsx169(UpOutlined2, { style: { fontSize: 10 } }),
41781
- /* @__PURE__ */ jsx169("span", { children: showLessText ?? t("genui.contentPreview.showLess") })
41782
- ] }) : /* @__PURE__ */ jsxs124(Fragment52, { children: [
41783
- /* @__PURE__ */ jsx169(DownOutlined4, { style: { fontSize: 10 } }),
41784
- /* @__PURE__ */ jsx169("span", { children: showAllText ?? t("genui.contentPreview.showAll") })
42011
+ isOverflowing && /* @__PURE__ */ jsx170("div", { className: styles.toggleButton, onClick: handleToggleContent, children: showFullContent ? /* @__PURE__ */ jsxs125(Fragment52, { children: [
42012
+ /* @__PURE__ */ jsx170(UpOutlined2, { style: { fontSize: 10 } }),
42013
+ /* @__PURE__ */ jsx170("span", { children: showLessText ?? t("genui.contentPreview.showLess") })
42014
+ ] }) : /* @__PURE__ */ jsxs125(Fragment52, { children: [
42015
+ /* @__PURE__ */ jsx170(DownOutlined4, { style: { fontSize: 10 } }),
42016
+ /* @__PURE__ */ jsx170("span", { children: showAllText ?? t("genui.contentPreview.showAll") })
41785
42017
  ] }) })
41786
42018
  ]
41787
42019
  },
@@ -41792,8 +42024,8 @@ var ContentPreviewCollapse = ({
41792
42024
  };
41793
42025
 
41794
42026
  // src/components/GenUI/elements/WriteFile.tsx
41795
- import { jsx as jsx170, jsxs as jsxs125 } from "react/jsx-runtime";
41796
- var { Text: Text49 } = Typography61;
42027
+ import { jsx as jsx171, jsxs as jsxs126 } from "react/jsx-runtime";
42028
+ var { Text: Text50 } = Typography62;
41797
42029
  var WriteFile = ({
41798
42030
  data,
41799
42031
  component_key,
@@ -41807,9 +42039,9 @@ var WriteFile = ({
41807
42039
  return null;
41808
42040
  }
41809
42041
  const expandIcon = () => getFileIcon(file_path);
41810
- const header = /* @__PURE__ */ jsxs125(Space43, { children: [
41811
- /* @__PURE__ */ jsx170(Text49, { strong: true, children: t("genui.writeFile.title") }),
41812
- /* @__PURE__ */ jsx170(Text49, { title: file_path, children: file_path?.split("/")?.pop() || "" })
42042
+ const header = /* @__PURE__ */ jsxs126(Space43, { children: [
42043
+ /* @__PURE__ */ jsx171(Text50, { strong: true, children: t("genui.writeFile.title") }),
42044
+ /* @__PURE__ */ jsx171(Text50, { title: file_path, children: file_path?.split("/")?.pop() || "" })
41813
42045
  ] });
41814
42046
  const handleItemClick = (toolCallData2) => {
41815
42047
  openSideApp({
@@ -41821,13 +42053,13 @@ var WriteFile = ({
41821
42053
  }
41822
42054
  });
41823
42055
  };
41824
- return /* @__PURE__ */ jsx170(
42056
+ return /* @__PURE__ */ jsx171(
41825
42057
  ContentPreviewCollapse,
41826
42058
  {
41827
42059
  panelKey: toolCallData.id,
41828
42060
  header,
41829
42061
  expandIcon,
41830
- extra: /* @__PURE__ */ jsx170(
42062
+ extra: /* @__PURE__ */ jsx171(
41831
42063
  Button79,
41832
42064
  {
41833
42065
  type: "link",
@@ -41839,14 +42071,14 @@ var WriteFile = ({
41839
42071
  children: t("genui.writeFile.diffView")
41840
42072
  }
41841
42073
  ),
41842
- children: /* @__PURE__ */ jsx170(MDResponse, { content })
42074
+ children: /* @__PURE__ */ jsx171(MDResponse, { content })
41843
42075
  }
41844
42076
  );
41845
42077
  };
41846
42078
 
41847
42079
  // ../../node_modules/.pnpm/@alexbruf+react-diff-viewer@3.1.5_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@alexbruf/react-diff-viewer/dist/esm/index.js
41848
- import * as React119 from "react";
41849
- import { useState as useState124, useCallback as useCallback73 } from "react";
42080
+ import * as React120 from "react";
42081
+ import { useState as useState125, useCallback as useCallback73 } from "react";
41850
42082
  var __create = Object.create;
41851
42083
  var __getProtoOf = Object.getPrototypeOf;
41852
42084
  var __defProp = Object.defineProperty;
@@ -43480,7 +43712,7 @@ var DiffViewer = ({
43480
43712
  leftTitle,
43481
43713
  rightTitle
43482
43714
  }) => {
43483
- const [expandedBlocks, setExpandedBlocks] = useState124([]);
43715
+ const [expandedBlocks, setExpandedBlocks] = useState125([]);
43484
43716
  const onBlockExpand = useCallback73((id) => {
43485
43717
  setExpandedBlocks((prevState) => [...prevState, id]);
43486
43718
  }, [setExpandedBlocks]);
@@ -43491,7 +43723,7 @@ var DiffViewer = ({
43491
43723
  }, [onLineNumberClick]);
43492
43724
  const renderWordDiff = useCallback73((diffArray, renderer) => {
43493
43725
  return diffArray.map((wordDiff, i) => {
43494
- return /* @__PURE__ */ React119.createElement("span", {
43726
+ return /* @__PURE__ */ React120.createElement("span", {
43495
43727
  key: i,
43496
43728
  className: import_classnames.default("word-diff", {
43497
43729
  "word-added": wordDiff.type === 1,
@@ -43515,8 +43747,8 @@ var DiffViewer = ({
43515
43747
  } else {
43516
43748
  content = value;
43517
43749
  }
43518
- content = content ?? /* @__PURE__ */ React119.createElement(React119.Fragment, null);
43519
- return /* @__PURE__ */ React119.createElement(React119.Fragment, null, !hideLineNumbers && /* @__PURE__ */ React119.createElement("td", {
43750
+ content = content ?? /* @__PURE__ */ React120.createElement(React120.Fragment, null);
43751
+ return /* @__PURE__ */ React120.createElement(React120.Fragment, null, !hideLineNumbers && /* @__PURE__ */ React120.createElement("td", {
43520
43752
  onClick: lineNumber !== null ? onLineNumberClickProxy(lineNumberTemplate) : void 0,
43521
43753
  className: import_classnames.default("gutter", {
43522
43754
  "empty-gutter": !lineNumber,
@@ -43524,9 +43756,9 @@ var DiffViewer = ({
43524
43756
  "diff-removed": removed,
43525
43757
  "highlighted-gutter": highlightLine
43526
43758
  })
43527
- }, /* @__PURE__ */ React119.createElement("pre", {
43759
+ }, /* @__PURE__ */ React120.createElement("pre", {
43528
43760
  className: "line-number"
43529
- }, lineNumber)), !splitView && !hideLineNumbers && /* @__PURE__ */ React119.createElement("td", {
43761
+ }, lineNumber)), !splitView && !hideLineNumbers && /* @__PURE__ */ React120.createElement("td", {
43530
43762
  onClick: additionalLineNumber !== null ? onLineNumberClickProxy(additionalLineNumberTemplate) : void 0,
43531
43763
  className: import_classnames.default("gutter", {
43532
43764
  "empty-gutter": !additionalLineNumber,
@@ -43534,23 +43766,23 @@ var DiffViewer = ({
43534
43766
  "diff-removed": removed,
43535
43767
  "highlighted-gutter": highlightLine
43536
43768
  })
43537
- }, /* @__PURE__ */ React119.createElement("pre", {
43769
+ }, /* @__PURE__ */ React120.createElement("pre", {
43538
43770
  className: "line-number"
43539
- }, additionalLineNumber)), /* @__PURE__ */ React119.createElement("td", {
43771
+ }, additionalLineNumber)), /* @__PURE__ */ React120.createElement("td", {
43540
43772
  className: import_classnames.default("marker", {
43541
43773
  "empty-line": !content,
43542
43774
  "diff-added": added,
43543
43775
  "diff-removed": removed,
43544
43776
  "highlighted-line": highlightLine
43545
43777
  })
43546
- }, /* @__PURE__ */ React119.createElement("pre", null, added && "+", removed && "-")), /* @__PURE__ */ React119.createElement("td", {
43778
+ }, /* @__PURE__ */ React120.createElement("pre", null, added && "+", removed && "-")), /* @__PURE__ */ React120.createElement("td", {
43547
43779
  className: import_classnames.default("content", {
43548
43780
  "empty-line": !content,
43549
43781
  "diff-added": added,
43550
43782
  "diff-removed": removed,
43551
43783
  "highlighted-line": highlightLine
43552
43784
  })
43553
- }, /* @__PURE__ */ React119.createElement("pre", {
43785
+ }, /* @__PURE__ */ React120.createElement("pre", {
43554
43786
  className: "content-text"
43555
43787
  }, content)));
43556
43788
  }, [
@@ -43562,7 +43794,7 @@ var DiffViewer = ({
43562
43794
  onLineNumberClickProxy
43563
43795
  ]);
43564
43796
  const renderSplitView = useCallback73(({ left, right }, index) => {
43565
- return /* @__PURE__ */ React119.createElement("tr", {
43797
+ return /* @__PURE__ */ React120.createElement("tr", {
43566
43798
  key: index,
43567
43799
  className: "line"
43568
43800
  }, renderLine(left.lineNumber, left.type, "L", left.value), renderLine(right.lineNumber, right.type, "R", right.value));
@@ -43570,11 +43802,11 @@ var DiffViewer = ({
43570
43802
  const renderInlineView = useCallback73(({ left, right }, index) => {
43571
43803
  let content;
43572
43804
  if (left.type === 2 && right.type === 1) {
43573
- return /* @__PURE__ */ React119.createElement(React119.Fragment, {
43805
+ return /* @__PURE__ */ React120.createElement(React120.Fragment, {
43574
43806
  key: index
43575
- }, /* @__PURE__ */ React119.createElement("tr", {
43807
+ }, /* @__PURE__ */ React120.createElement("tr", {
43576
43808
  className: "line"
43577
- }, renderLine(left.lineNumber, left.type, "L", left.value, null)), /* @__PURE__ */ React119.createElement("tr", {
43809
+ }, renderLine(left.lineNumber, left.type, "L", left.value, null)), /* @__PURE__ */ React120.createElement("tr", {
43578
43810
  className: "line"
43579
43811
  }, renderLine(null, right.type, "R", right.value, right.lineNumber)));
43580
43812
  }
@@ -43595,31 +43827,31 @@ var DiffViewer = ({
43595
43827
  if (right.type === 1) {
43596
43828
  content = renderLine(null, right.type, "R", right.value, right.lineNumber);
43597
43829
  }
43598
- return /* @__PURE__ */ React119.createElement("tr", {
43830
+ return /* @__PURE__ */ React120.createElement("tr", {
43599
43831
  key: index,
43600
43832
  className: "line"
43601
43833
  }, content);
43602
43834
  }, [renderLine]);
43603
43835
  const onBlockClickProxy = useCallback73((id) => () => onBlockExpand(id), [onBlockExpand]);
43604
43836
  const renderSkippedLineIndicator = useCallback73((num, blockNumber, leftBlockLineNumber, rightBlockLineNumber) => {
43605
- const message36 = codeFoldMessageRenderer ? codeFoldMessageRenderer(num, leftBlockLineNumber, rightBlockLineNumber) : /* @__PURE__ */ React119.createElement("pre", {
43837
+ const message36 = codeFoldMessageRenderer ? codeFoldMessageRenderer(num, leftBlockLineNumber, rightBlockLineNumber) : /* @__PURE__ */ React120.createElement("pre", {
43606
43838
  className: "code-fold-content"
43607
43839
  }, "Expand ", num, " lines ...");
43608
- const content = /* @__PURE__ */ React119.createElement("td", null, /* @__PURE__ */ React119.createElement("a", {
43840
+ const content = /* @__PURE__ */ React120.createElement("td", null, /* @__PURE__ */ React120.createElement("a", {
43609
43841
  onClick: onBlockClickProxy(blockNumber),
43610
43842
  tabIndex: 0
43611
43843
  }, message36));
43612
43844
  const isUnifiedViewWithoutLineNumbers = !splitView && !hideLineNumbers;
43613
- return /* @__PURE__ */ React119.createElement("tr", {
43845
+ return /* @__PURE__ */ React120.createElement("tr", {
43614
43846
  key: `${leftBlockLineNumber}-${rightBlockLineNumber}`,
43615
43847
  className: "code-fold"
43616
- }, !hideLineNumbers && /* @__PURE__ */ React119.createElement("td", {
43848
+ }, !hideLineNumbers && /* @__PURE__ */ React120.createElement("td", {
43617
43849
  className: "code-fold-gutter"
43618
- }), /* @__PURE__ */ React119.createElement("td", {
43850
+ }), /* @__PURE__ */ React120.createElement("td", {
43619
43851
  className: import_classnames.default({
43620
43852
  "code-fold-gutter": isUnifiedViewWithoutLineNumbers
43621
43853
  })
43622
- }), isUnifiedViewWithoutLineNumbers ? /* @__PURE__ */ React119.createElement(React119.Fragment, null, /* @__PURE__ */ React119.createElement("td", null), content) : /* @__PURE__ */ React119.createElement(React119.Fragment, null, content, /* @__PURE__ */ React119.createElement("td", null)), /* @__PURE__ */ React119.createElement("td", null), /* @__PURE__ */ React119.createElement("td", null));
43854
+ }), isUnifiedViewWithoutLineNumbers ? /* @__PURE__ */ React120.createElement(React120.Fragment, null, /* @__PURE__ */ React120.createElement("td", null), content) : /* @__PURE__ */ React120.createElement(React120.Fragment, null, content, /* @__PURE__ */ React120.createElement("td", null)), /* @__PURE__ */ React120.createElement("td", null), /* @__PURE__ */ React120.createElement("td", null));
43623
43855
  }, [
43624
43856
  hideLineNumbers,
43625
43857
  splitView,
@@ -43656,7 +43888,7 @@ var DiffViewer = ({
43656
43888
  skippedLines = [];
43657
43889
  const indicator = renderSkippedLineIndicator(numSkipped, currentDiffBlockStart, leftNum, rightNum);
43658
43890
  const nodes = splitView ? renderSplitView(line, i) : renderInlineView(line, i);
43659
- return /* @__PURE__ */ React119.createElement(React119.Fragment, {
43891
+ return /* @__PURE__ */ React120.createElement(React120.Fragment, {
43660
43892
  key: i
43661
43893
  }, indicator, nodes);
43662
43894
  }
@@ -43682,28 +43914,28 @@ var DiffViewer = ({
43682
43914
  renderInlineView
43683
43915
  ]);
43684
43916
  const diffNodes = renderDiff();
43685
- const title = (leftTitle || rightTitle) && /* @__PURE__ */ React119.createElement("tr", null, !hideLineNumbers && /* @__PURE__ */ React119.createElement("td", {
43917
+ const title = (leftTitle || rightTitle) && /* @__PURE__ */ React120.createElement("tr", null, !hideLineNumbers && /* @__PURE__ */ React120.createElement("td", {
43686
43918
  className: "title-block"
43687
- }), /* @__PURE__ */ React119.createElement("td", {
43919
+ }), /* @__PURE__ */ React120.createElement("td", {
43688
43920
  colSpan: hideLineNumbers || !splitView ? 1 : 2,
43689
43921
  className: "title-block"
43690
- }, /* @__PURE__ */ React119.createElement("pre", {
43922
+ }, /* @__PURE__ */ React120.createElement("pre", {
43691
43923
  className: "content-text"
43692
- }, leftTitle)), splitView && /* @__PURE__ */ React119.createElement(React119.Fragment, null, !hideLineNumbers && /* @__PURE__ */ React119.createElement("td", {
43924
+ }, leftTitle)), splitView && /* @__PURE__ */ React120.createElement(React120.Fragment, null, !hideLineNumbers && /* @__PURE__ */ React120.createElement("td", {
43693
43925
  className: "title-block"
43694
- }), /* @__PURE__ */ React119.createElement("td", {
43926
+ }), /* @__PURE__ */ React120.createElement("td", {
43695
43927
  colSpan: hideLineNumbers ? 1 : 2,
43696
43928
  className: "title-block"
43697
- }, /* @__PURE__ */ React119.createElement("pre", {
43929
+ }, /* @__PURE__ */ React120.createElement("pre", {
43698
43930
  className: "content-text"
43699
43931
  }, rightTitle))));
43700
- return /* @__PURE__ */ React119.createElement("table", {
43932
+ return /* @__PURE__ */ React120.createElement("table", {
43701
43933
  className: import_classnames.default("diff-container", {
43702
43934
  "split-view": splitView,
43703
43935
  "light-theme": !useDarkTheme,
43704
43936
  "dark-theme": useDarkTheme
43705
43937
  })
43706
- }, title, /* @__PURE__ */ React119.createElement("tbody", null, diffNodes));
43938
+ }, title, /* @__PURE__ */ React120.createElement("tbody", null, diffNodes));
43707
43939
  };
43708
43940
  DiffViewer.defaultProps = {
43709
43941
  splitView: true,
@@ -43719,10 +43951,10 @@ DiffViewer.defaultProps = {
43719
43951
  var src_default = DiffViewer;
43720
43952
 
43721
43953
  // src/components/GenUI/elements/file_content_diff_view.tsx
43722
- import { jsx as jsx171 } from "react/jsx-runtime";
43954
+ import { jsx as jsx172 } from "react/jsx-runtime";
43723
43955
  var FileContentDiffView = ({ data, interactive = true, default_open_in_side_app = true }) => {
43724
43956
  const { old_code, new_code } = data;
43725
- return /* @__PURE__ */ jsx171(
43957
+ return /* @__PURE__ */ jsx172(
43726
43958
  src_default,
43727
43959
  {
43728
43960
  oldValue: old_code,
@@ -43733,9 +43965,9 @@ var FileContentDiffView = ({ data, interactive = true, default_open_in_side_app
43733
43965
  };
43734
43966
 
43735
43967
  // src/components/GenUI/elements/EditFile.tsx
43736
- import { Button as Button80, Space as Space44, Typography as Typography62 } from "antd";
43737
- import { jsx as jsx172, jsxs as jsxs126 } from "react/jsx-runtime";
43738
- var { Text: Text50 } = Typography62;
43968
+ import { Button as Button80, Space as Space44, Typography as Typography63 } from "antd";
43969
+ import { jsx as jsx173, jsxs as jsxs127 } from "react/jsx-runtime";
43970
+ var { Text: Text51 } = Typography63;
43739
43971
  var EditFile = ({
43740
43972
  data,
43741
43973
  component_key,
@@ -43749,9 +43981,9 @@ var EditFile = ({
43749
43981
  return null;
43750
43982
  }
43751
43983
  const expandIcon = () => getFileIcon(file_path);
43752
- const header = /* @__PURE__ */ jsxs126(Space44, { children: [
43753
- /* @__PURE__ */ jsx172(Text50, { strong: true, children: t("genui.editFile.title") }),
43754
- /* @__PURE__ */ jsx172(Text50, { title: file_path, children: file_path?.split("/")?.pop() || "" })
43984
+ const header = /* @__PURE__ */ jsxs127(Space44, { children: [
43985
+ /* @__PURE__ */ jsx173(Text51, { strong: true, children: t("genui.editFile.title") }),
43986
+ /* @__PURE__ */ jsx173(Text51, { title: file_path, children: file_path?.split("/")?.pop() || "" })
43755
43987
  ] });
43756
43988
  const handleItemClick = (toolCallData2) => {
43757
43989
  openSideApp({
@@ -43763,13 +43995,13 @@ var EditFile = ({
43763
43995
  }
43764
43996
  });
43765
43997
  };
43766
- return /* @__PURE__ */ jsx172(
43998
+ return /* @__PURE__ */ jsx173(
43767
43999
  ContentPreviewCollapse,
43768
44000
  {
43769
44001
  panelKey: toolCallData.id,
43770
44002
  header,
43771
44003
  expandIcon,
43772
- extra: /* @__PURE__ */ jsx172(
44004
+ extra: /* @__PURE__ */ jsx173(
43773
44005
  Button80,
43774
44006
  {
43775
44007
  type: "link",
@@ -43781,24 +44013,24 @@ var EditFile = ({
43781
44013
  children: t("genui.editFile.diffView")
43782
44014
  }
43783
44015
  ),
43784
- children: /* @__PURE__ */ jsx172(MDResponse, { content: new_string })
44016
+ children: /* @__PURE__ */ jsx173(MDResponse, { content: new_string })
43785
44017
  }
43786
44018
  );
43787
44019
  };
43788
44020
 
43789
44021
  // src/components/GenUI/elements/task_card.tsx
43790
- import { useEffect as useEffect95, useState as useState125 } from "react";
43791
- import { Typography as Typography63, Avatar as Avatar9, Tag as Tag35, theme as theme16 } from "antd";
43792
- import { createStyles as createStyles73 } from "antd-style";
44022
+ import { useEffect as useEffect95, useState as useState126 } from "react";
44023
+ import { Typography as Typography64, Avatar as Avatar9, Tag as Tag35, theme as theme16 } from "antd";
44024
+ import { createStyles as createStyles74 } from "antd-style";
43793
44025
  import {
43794
44026
  CheckCircleOutlined as CheckCircleOutlined4,
43795
44027
  LoadingOutlined as LoadingOutlined3,
43796
44028
  CloseCircleOutlined,
43797
44029
  UserOutlined as UserOutlined2
43798
44030
  } from "@ant-design/icons";
43799
- import { Fragment as Fragment54, jsx as jsx173, jsxs as jsxs127 } from "react/jsx-runtime";
43800
- var { Text: Text51 } = Typography63;
43801
- var useStyle13 = createStyles73(({ token, css }) => ({
44031
+ import { Fragment as Fragment54, jsx as jsx174, jsxs as jsxs128 } from "react/jsx-runtime";
44032
+ var { Text: Text52 } = Typography64;
44033
+ var useStyle13 = createStyles74(({ token, css }) => ({
43802
44034
  mention: css`
43803
44035
  color: ${token.colorPrimary};
43804
44036
  background: ${token.colorPrimaryBg};
@@ -43902,19 +44134,19 @@ async function resolveExecutionThreadId(client, taskId, response, contextThreadI
43902
44134
  }
43903
44135
  var STATUS_CONFIG = {
43904
44136
  success: {
43905
- icon: /* @__PURE__ */ jsx173(CheckCircleOutlined4, { style: { fontSize: 16 } }),
44137
+ icon: /* @__PURE__ */ jsx174(CheckCircleOutlined4, { style: { fontSize: 16 } }),
43906
44138
  tokenKey: "colorSuccess",
43907
44139
  textKey: "genui.taskStatus.completed",
43908
44140
  testId: "task-status-success"
43909
44141
  },
43910
44142
  error: {
43911
- icon: /* @__PURE__ */ jsx173(CloseCircleOutlined, { style: { fontSize: 16 } }),
44143
+ icon: /* @__PURE__ */ jsx174(CloseCircleOutlined, { style: { fontSize: 16 } }),
43912
44144
  tokenKey: "colorError",
43913
44145
  textKey: "genui.taskStatus.failed",
43914
44146
  testId: "task-status-error"
43915
44147
  },
43916
44148
  pending: {
43917
- icon: /* @__PURE__ */ jsx173(LoadingOutlined3, { spin: true, style: { fontSize: 16 } }),
44149
+ icon: /* @__PURE__ */ jsx174(LoadingOutlined3, { spin: true, style: { fontSize: 16 } }),
43918
44150
  tokenKey: "colorPrimary",
43919
44151
  textKey: "genui.taskStatus.inProgress",
43920
44152
  testId: "task-status-pending"
@@ -43935,7 +44167,7 @@ var TaskCard = ({
43935
44167
  const dispatchTaskId = typeof toolCallData?.args?.taskId === "string" && toolCallData.args.taskId.length > 0 ? toolCallData.args.taskId : void 0;
43936
44168
  const dispatchAgentId = typeof toolCallData?.args?.agentId === "string" && toolCallData.args.agentId.length > 0 ? toolCallData.args.agentId : void 0;
43937
44169
  const isDispatch = dispatchTaskId !== void 0 && dispatchAgentId !== void 0;
43938
- const [resolvedTask, setResolvedTask] = useState125(null);
44170
+ const [resolvedTask, setResolvedTask] = useState126(null);
43939
44171
  const { threadId, assistantId } = useAgentChat();
43940
44172
  useEffect95(() => {
43941
44173
  if (!isDispatch || !dispatchTaskId) return;
@@ -44005,13 +44237,13 @@ var TaskCard = ({
44005
44237
  }
44006
44238
  });
44007
44239
  };
44008
- const chip = /* @__PURE__ */ jsxs127(Fragment54, { children: [
44009
- displayName && /* @__PURE__ */ jsxs127("span", { className: styles.mention, children: [
44240
+ const chip = /* @__PURE__ */ jsxs128(Fragment54, { children: [
44241
+ displayName && /* @__PURE__ */ jsxs128("span", { className: styles.mention, children: [
44010
44242
  "@",
44011
44243
  displayName
44012
44244
  ] }),
44013
- /* @__PURE__ */ jsx173(
44014
- Text51,
44245
+ /* @__PURE__ */ jsx174(
44246
+ Text52,
44015
44247
  {
44016
44248
  style: {
44017
44249
  fontSize: 13,
@@ -44024,7 +44256,7 @@ var TaskCard = ({
44024
44256
  children: title
44025
44257
  }
44026
44258
  ),
44027
- /* @__PURE__ */ jsx173(
44259
+ /* @__PURE__ */ jsx174(
44028
44260
  "span",
44029
44261
  {
44030
44262
  "data-testid": statusConfig.testId,
@@ -44037,16 +44269,16 @@ var TaskCard = ({
44037
44269
  }
44038
44270
  )
44039
44271
  ] });
44040
- const detail = /* @__PURE__ */ jsx173("div", { "data-testid": "task-detail", children: /* @__PURE__ */ jsx173(
44272
+ const detail = /* @__PURE__ */ jsx174("div", { "data-testid": "task-detail", children: /* @__PURE__ */ jsx174(
44041
44273
  EntityCard,
44042
44274
  {
44043
44275
  item: toolCallData,
44044
44276
  dense: true,
44045
44277
  className: styles.detailCard,
44046
44278
  onClick: interactive ? handleCardClick : void 0,
44047
- renderPrimary: () => /* @__PURE__ */ jsxs127(Fragment54, { children: [
44048
- /* @__PURE__ */ jsxs127("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
44049
- /* @__PURE__ */ jsx173(
44279
+ renderPrimary: () => /* @__PURE__ */ jsxs128(Fragment54, { children: [
44280
+ /* @__PURE__ */ jsxs128("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
44281
+ /* @__PURE__ */ jsx174(
44050
44282
  "div",
44051
44283
  {
44052
44284
  style: {
@@ -44056,10 +44288,10 @@ var TaskCard = ({
44056
44288
  textOverflow: "ellipsis",
44057
44289
  whiteSpace: "nowrap"
44058
44290
  },
44059
- children: /* @__PURE__ */ jsx173(Text51, { strong: true, style: { fontSize: 14 }, children: title })
44291
+ children: /* @__PURE__ */ jsx174(Text52, { strong: true, style: { fontSize: 14 }, children: title })
44060
44292
  }
44061
44293
  ),
44062
- /* @__PURE__ */ jsx173(
44294
+ /* @__PURE__ */ jsx174(
44063
44295
  "span",
44064
44296
  {
44065
44297
  "aria-label": t(statusConfig.textKey),
@@ -44073,30 +44305,30 @@ var TaskCard = ({
44073
44305
  }
44074
44306
  )
44075
44307
  ] }),
44076
- displayName && /* @__PURE__ */ jsx173("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: /* @__PURE__ */ jsxs127("span", { className: styles.mention, children: [
44308
+ displayName && /* @__PURE__ */ jsx174("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: /* @__PURE__ */ jsxs128("span", { className: styles.mention, children: [
44077
44309
  "@",
44078
44310
  displayName
44079
44311
  ] }) })
44080
44312
  ] }),
44081
- renderDetails: () => /* @__PURE__ */ jsxs127(Fragment54, { children: [
44082
- isDispatch ? /* @__PURE__ */ jsxs127(Fragment54, { children: [
44083
- resultState.kind === "completed" && resultState.output && /* @__PURE__ */ jsx173("div", { className: styles.responseScroll, "data-testid": "task-response-scroll", children: /* @__PURE__ */ jsx173(MDResponse, { content: resultState.output }) }),
44084
- resultState.kind === "failed" && /* @__PURE__ */ jsxs127("div", { "data-testid": "task-failure", style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
44085
- /* @__PURE__ */ jsx173(Text51, { style: { fontSize: 13, color: token.colorError }, children: resultState.error }),
44086
- resultState.code && /* @__PURE__ */ jsx173("div", { children: /* @__PURE__ */ jsx173(Tag35, { "data-testid": "task-failure-code", color: "error", style: { margin: 0, fontSize: 11 }, children: resultState.code }) })
44313
+ renderDetails: () => /* @__PURE__ */ jsxs128(Fragment54, { children: [
44314
+ isDispatch ? /* @__PURE__ */ jsxs128(Fragment54, { children: [
44315
+ resultState.kind === "completed" && resultState.output && /* @__PURE__ */ jsx174("div", { className: styles.responseScroll, "data-testid": "task-response-scroll", children: /* @__PURE__ */ jsx174(MDResponse, { content: resultState.output }) }),
44316
+ resultState.kind === "failed" && /* @__PURE__ */ jsxs128("div", { "data-testid": "task-failure", style: { display: "flex", flexDirection: "column", gap: 6 }, children: [
44317
+ /* @__PURE__ */ jsx174(Text52, { style: { fontSize: 13, color: token.colorError }, children: resultState.error }),
44318
+ resultState.code && /* @__PURE__ */ jsx174("div", { children: /* @__PURE__ */ jsx174(Tag35, { "data-testid": "task-failure-code", color: "error", style: { margin: 0, fontSize: 11 }, children: resultState.code }) })
44087
44319
  ] }),
44088
- resultState.kind === "managed" && /* @__PURE__ */ jsx173(Text51, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskCard.dispatched") }),
44089
- resultState.kind === "none" && (detailDescription ? /* @__PURE__ */ jsx173("div", { className: styles.responseScroll, "data-testid": "task-description", children: /* @__PURE__ */ jsx173(MDResponse, { content: detailDescription }) }) : /* @__PURE__ */ jsx173(Text51, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskCard.running") })),
44090
- resultState.kind === "raw" && /* @__PURE__ */ jsx173("div", { className: styles.responseScroll, "data-testid": "task-response-scroll", children: /* @__PURE__ */ jsx173(MDResponse, { content: resultState.text }) })
44091
- ] }) : detailDescription && /* @__PURE__ */ jsx173(Text51, { style: { fontSize: 13 }, children: detailDescription }),
44092
- assignee && /* @__PURE__ */ jsxs127("div", { className: styles.assignee, children: [
44093
- /* @__PURE__ */ jsx173(Avatar9, { size: 20, icon: /* @__PURE__ */ jsx173(UserOutlined2, {}) }),
44094
- /* @__PURE__ */ jsx173(Text51, { style: { fontSize: 12 }, children: assignee })
44320
+ resultState.kind === "managed" && /* @__PURE__ */ jsx174(Text52, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskCard.dispatched") }),
44321
+ resultState.kind === "none" && (detailDescription ? /* @__PURE__ */ jsx174("div", { className: styles.responseScroll, "data-testid": "task-description", children: /* @__PURE__ */ jsx174(MDResponse, { content: detailDescription }) }) : /* @__PURE__ */ jsx174(Text52, { type: "secondary", style: { fontSize: 12 }, children: t("genui.taskCard.running") })),
44322
+ resultState.kind === "raw" && /* @__PURE__ */ jsx174("div", { className: styles.responseScroll, "data-testid": "task-response-scroll", children: /* @__PURE__ */ jsx174(MDResponse, { content: resultState.text }) })
44323
+ ] }) : detailDescription && /* @__PURE__ */ jsx174(Text52, { style: { fontSize: 13 }, children: detailDescription }),
44324
+ assignee && /* @__PURE__ */ jsxs128("div", { className: styles.assignee, children: [
44325
+ /* @__PURE__ */ jsx174(Avatar9, { size: 20, icon: /* @__PURE__ */ jsx174(UserOutlined2, {}) }),
44326
+ /* @__PURE__ */ jsx174(Text52, { style: { fontSize: 12 }, children: assignee })
44095
44327
  ] })
44096
44328
  ] })
44097
44329
  }
44098
44330
  ) });
44099
- return /* @__PURE__ */ jsx173(
44331
+ return /* @__PURE__ */ jsx174(
44100
44332
  HoverReveal,
44101
44333
  {
44102
44334
  testId: "task-tool-chip",
@@ -44109,13 +44341,13 @@ var TaskCard = ({
44109
44341
  };
44110
44342
 
44111
44343
  // src/components/GenUI/elements/task_detail.tsx
44112
- import { Typography as Typography64 } from "antd";
44113
- import { jsx as jsx174 } from "react/jsx-runtime";
44114
- var { Text: Text52 } = Typography64;
44344
+ import { Typography as Typography65 } from "antd";
44345
+ import { jsx as jsx175 } from "react/jsx-runtime";
44346
+ var { Text: Text53 } = Typography65;
44115
44347
  var TaskDetail = ({ data, component_key, interactive = true }) => {
44116
44348
  const { description, subagent_type, thread_id, display_name } = data || {};
44117
44349
  const name = display_name ?? subagent_type;
44118
- return /* @__PURE__ */ jsx174(
44350
+ return /* @__PURE__ */ jsx175(
44119
44351
  AgentThreadProvider,
44120
44352
  {
44121
44353
  threadId: thread_id,
@@ -44125,7 +44357,7 @@ var TaskDetail = ({ data, component_key, interactive = true }) => {
44125
44357
  enableReturnStateWhenStreamCompleted: true,
44126
44358
  enableResumeStream: true
44127
44359
  },
44128
- children: /* @__PURE__ */ jsx174("div", { style: { overflow: "hidden" }, children: /* @__PURE__ */ jsx174(
44360
+ children: /* @__PURE__ */ jsx175("div", { style: { overflow: "hidden" }, children: /* @__PURE__ */ jsx175(
44129
44361
  Chating,
44130
44362
  {
44131
44363
  showRefreshButton: true,
@@ -44140,14 +44372,14 @@ var TaskDetail = ({ data, component_key, interactive = true }) => {
44140
44372
  };
44141
44373
 
44142
44374
  // src/components/GenUI/elements/internet_search_card.tsx
44143
- import { Avatar as Avatar10, Button as Button81, List as List14, Space as Space45, Typography as Typography65 } from "antd";
44375
+ import { Avatar as Avatar10, Button as Button81, List as List14, Space as Space45, Typography as Typography66 } from "antd";
44144
44376
  import {
44145
44377
  SearchOutlined as SearchOutlined2
44146
44378
  } from "@ant-design/icons";
44147
- import { createStyles as createStyles74 } from "antd-style";
44148
- import { jsx as jsx175, jsxs as jsxs128 } from "react/jsx-runtime";
44149
- var { Text: Text53 } = Typography65;
44150
- var useStyle14 = createStyles74(({ token, css }) => ({
44379
+ import { createStyles as createStyles75 } from "antd-style";
44380
+ import { jsx as jsx176, jsxs as jsxs129 } from "react/jsx-runtime";
44381
+ var { Text: Text54 } = Typography66;
44382
+ var useStyle14 = createStyles75(({ token, css }) => ({
44151
44383
  listContainer: css`
44152
44384
  background: ${token.colorBgContainer};
44153
44385
  border-radius: ${token.borderRadius}px;
@@ -44261,17 +44493,17 @@ var InternetSearchCard = ({
44261
44493
  if (!toolCallData) {
44262
44494
  return null;
44263
44495
  }
44264
- const header = /* @__PURE__ */ jsxs128(Space45, { children: [
44265
- /* @__PURE__ */ jsx175(Text53, { strong: true, children: t("genui.internetSearch.title") }),
44266
- /* @__PURE__ */ jsx175(Text53, { title: query, children: query })
44496
+ const header = /* @__PURE__ */ jsxs129(Space45, { children: [
44497
+ /* @__PURE__ */ jsx176(Text54, { strong: true, children: t("genui.internetSearch.title") }),
44498
+ /* @__PURE__ */ jsx176(Text54, { title: query, children: query })
44267
44499
  ] });
44268
- return /* @__PURE__ */ jsx175(
44500
+ return /* @__PURE__ */ jsx176(
44269
44501
  ContentPreviewCollapse,
44270
44502
  {
44271
44503
  panelKey: toolCallData.id,
44272
44504
  header,
44273
- expandIcon: () => /* @__PURE__ */ jsx175(SearchOutlined2, {}),
44274
- children: /* @__PURE__ */ jsx175(
44505
+ expandIcon: () => /* @__PURE__ */ jsx176(SearchOutlined2, {}),
44506
+ children: /* @__PURE__ */ jsx176(
44275
44507
  List14,
44276
44508
  {
44277
44509
  size: "small",
@@ -44281,10 +44513,10 @@ var InternetSearchCard = ({
44281
44513
  const domain = getDomainFromUrl(url);
44282
44514
  const iconText = getIconText(domain);
44283
44515
  const iconColor = getIconColor(domain);
44284
- return /* @__PURE__ */ jsx175(List14.Item, { extra: /* @__PURE__ */ jsx175(Text53, { className: styles.source, children: domain }), children: /* @__PURE__ */ jsxs128(Space45, { style: { width: "100%" }, children: [
44285
- /* @__PURE__ */ jsx175(Avatar10, { style: { background: iconColor }, children: iconText }),
44516
+ return /* @__PURE__ */ jsx176(List14.Item, { extra: /* @__PURE__ */ jsx176(Text54, { className: styles.source, children: domain }), children: /* @__PURE__ */ jsxs129(Space45, { style: { width: "100%" }, children: [
44517
+ /* @__PURE__ */ jsx176(Avatar10, { style: { background: iconColor }, children: iconText }),
44286
44518
  " ",
44287
- /* @__PURE__ */ jsx175(
44519
+ /* @__PURE__ */ jsx176(
44288
44520
  Button81,
44289
44521
  {
44290
44522
  type: "text",
@@ -44307,13 +44539,13 @@ var InternetSearchCard = ({
44307
44539
  };
44308
44540
 
44309
44541
  // src/components/GenUI/elements/schedule_viewer.tsx
44310
- import { useState as useState126, useEffect as useEffect96, useCallback as useCallback74 } from "react";
44542
+ import { useState as useState127, useEffect as useEffect96, useCallback as useCallback74 } from "react";
44311
44543
  import {
44312
44544
  Tag as Tag36,
44313
44545
  Button as Button82,
44314
44546
  Empty as Empty21,
44315
44547
  Spin as Spin33,
44316
- Typography as Typography66,
44548
+ Typography as Typography67,
44317
44549
  Space as Space46,
44318
44550
  Tooltip as Tooltip29,
44319
44551
  Popconfirm as Popconfirm10,
@@ -44332,17 +44564,17 @@ import {
44332
44564
  SyncOutlined as SyncOutlined2,
44333
44565
  FieldTimeOutlined
44334
44566
  } from "@ant-design/icons";
44335
- import { createStyles as createStyles75 } from "antd-style";
44567
+ import { createStyles as createStyles76 } from "antd-style";
44336
44568
  import dayjs2 from "dayjs";
44337
44569
  import relativeTime from "dayjs/plugin/relativeTime.js";
44338
44570
  import {
44339
44571
  ScheduledTaskStatus as ScheduledTaskStatus2,
44340
44572
  ScheduleExecutionType
44341
44573
  } from "@axiom-lattice/client-sdk";
44342
- import { jsx as jsx176, jsxs as jsxs129 } from "react/jsx-runtime";
44574
+ import { jsx as jsx177, jsxs as jsxs130 } from "react/jsx-runtime";
44343
44575
  dayjs2.extend(relativeTime);
44344
- var { Text: Text54, Title: Title10 } = Typography66;
44345
- var useStyles55 = createStyles75(({ token, css }) => ({
44576
+ var { Text: Text55, Title: Title10 } = Typography67;
44577
+ var useStyles56 = createStyles76(({ token, css }) => ({
44346
44578
  container: css`
44347
44579
  height: 100%;
44348
44580
  padding: 16px;
@@ -44444,19 +44676,19 @@ var getStatusColor = (status) => {
44444
44676
  var getStatusIcon2 = (status) => {
44445
44677
  switch (status) {
44446
44678
  case ScheduledTaskStatus2.PENDING:
44447
- return /* @__PURE__ */ jsx176(ClockCircleOutlined3, {});
44679
+ return /* @__PURE__ */ jsx177(ClockCircleOutlined3, {});
44448
44680
  case ScheduledTaskStatus2.RUNNING:
44449
- return /* @__PURE__ */ jsx176(SyncOutlined2, { spin: true });
44681
+ return /* @__PURE__ */ jsx177(SyncOutlined2, { spin: true });
44450
44682
  case ScheduledTaskStatus2.COMPLETED:
44451
- return /* @__PURE__ */ jsx176(CheckCircleOutlined5, {});
44683
+ return /* @__PURE__ */ jsx177(CheckCircleOutlined5, {});
44452
44684
  case ScheduledTaskStatus2.FAILED:
44453
- return /* @__PURE__ */ jsx176(CloseCircleOutlined2, {});
44685
+ return /* @__PURE__ */ jsx177(CloseCircleOutlined2, {});
44454
44686
  case ScheduledTaskStatus2.CANCELLED:
44455
- return /* @__PURE__ */ jsx176(StopOutlined3, {});
44687
+ return /* @__PURE__ */ jsx177(StopOutlined3, {});
44456
44688
  case ScheduledTaskStatus2.PAUSED:
44457
- return /* @__PURE__ */ jsx176(PauseCircleOutlined, {});
44689
+ return /* @__PURE__ */ jsx177(PauseCircleOutlined, {});
44458
44690
  default:
44459
- return /* @__PURE__ */ jsx176(ClockCircleOutlined3, {});
44691
+ return /* @__PURE__ */ jsx177(ClockCircleOutlined3, {});
44460
44692
  }
44461
44693
  };
44462
44694
  var formatTime3 = (timestamp) => {
@@ -44468,13 +44700,13 @@ var getRelativeTime = (timestamp) => {
44468
44700
  return dayjs2(timestamp).fromNow();
44469
44701
  };
44470
44702
  var ScheduleViewer = ({ data }) => {
44471
- const { styles } = useStyles55();
44703
+ const { styles } = useStyles56();
44472
44704
  const t = useT();
44473
44705
  const { threadId, assistantId, tasks: initialTasks, onRefresh } = data ?? {};
44474
44706
  const client = useClient(assistantId || "");
44475
- const [tasks, setTasks] = useState126(initialTasks || []);
44476
- const [loading, setLoading] = useState126(false);
44477
- const [actionLoading, setActionLoading] = useState126(null);
44707
+ const [tasks, setTasks] = useState127(initialTasks || []);
44708
+ const [loading, setLoading] = useState127(false);
44709
+ const [actionLoading, setActionLoading] = useState127(null);
44478
44710
  const handleRefresh = useCallback74(async () => {
44479
44711
  if (!threadId) return;
44480
44712
  setLoading(true);
@@ -44552,28 +44784,28 @@ var ScheduleViewer = ({ data }) => {
44552
44784
  const isPending = task.status === ScheduledTaskStatus2.PENDING;
44553
44785
  const isPaused = task.status === ScheduledTaskStatus2.PAUSED;
44554
44786
  const isCron = task.executionType === ScheduleExecutionType.CRON;
44555
- return /* @__PURE__ */ jsxs129(Space46, { className: styles.actions, children: [
44556
- isPending && isCron && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.pause"), children: /* @__PURE__ */ jsx176(
44787
+ return /* @__PURE__ */ jsxs130(Space46, { className: styles.actions, children: [
44788
+ isPending && isCron && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.pause"), children: /* @__PURE__ */ jsx177(
44557
44789
  Button82,
44558
44790
  {
44559
44791
  type: "text",
44560
44792
  size: "small",
44561
- icon: /* @__PURE__ */ jsx176(PauseCircleOutlined, {}),
44793
+ icon: /* @__PURE__ */ jsx177(PauseCircleOutlined, {}),
44562
44794
  onClick: () => handlePause(task.taskId),
44563
44795
  loading: isLoading
44564
44796
  }
44565
44797
  ) }),
44566
- isPaused && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.resume"), children: /* @__PURE__ */ jsx176(
44798
+ isPaused && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.resume"), children: /* @__PURE__ */ jsx177(
44567
44799
  Button82,
44568
44800
  {
44569
44801
  type: "text",
44570
44802
  size: "small",
44571
- icon: /* @__PURE__ */ jsx176(PlayCircleOutlined, {}),
44803
+ icon: /* @__PURE__ */ jsx177(PlayCircleOutlined, {}),
44572
44804
  onClick: () => handleResume(task.taskId),
44573
44805
  loading: isLoading
44574
44806
  }
44575
44807
  ) }),
44576
- (isPending || isPaused) && /* @__PURE__ */ jsx176(
44808
+ (isPending || isPaused) && /* @__PURE__ */ jsx177(
44577
44809
  Popconfirm10,
44578
44810
  {
44579
44811
  title: t("genui.schedule.cancelConfirm"),
@@ -44581,13 +44813,13 @@ var ScheduleViewer = ({ data }) => {
44581
44813
  onConfirm: () => handleCancel(task.taskId),
44582
44814
  okText: t("common.yes"),
44583
44815
  cancelText: t("common.no"),
44584
- children: /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.cancel"), children: /* @__PURE__ */ jsx176(
44816
+ children: /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.cancel"), children: /* @__PURE__ */ jsx177(
44585
44817
  Button82,
44586
44818
  {
44587
44819
  type: "text",
44588
44820
  size: "small",
44589
44821
  danger: true,
44590
- icon: /* @__PURE__ */ jsx176(StopOutlined3, {}),
44822
+ icon: /* @__PURE__ */ jsx177(StopOutlined3, {}),
44591
44823
  loading: isLoading
44592
44824
  }
44593
44825
  ) })
@@ -44597,48 +44829,48 @@ var ScheduleViewer = ({ data }) => {
44597
44829
  };
44598
44830
  const renderTask = (task) => {
44599
44831
  const isActive = task.status === ScheduledTaskStatus2.PENDING || task.status === ScheduledTaskStatus2.PAUSED;
44600
- return /* @__PURE__ */ jsxs129(
44832
+ return /* @__PURE__ */ jsxs130(
44601
44833
  Card16,
44602
44834
  {
44603
44835
  className: styles.taskCard,
44604
44836
  size: "small",
44605
44837
  bordered: true,
44606
44838
  children: [
44607
- /* @__PURE__ */ jsxs129("div", { className: styles.taskHeader, children: [
44608
- /* @__PURE__ */ jsxs129("div", { children: [
44609
- /* @__PURE__ */ jsx176("div", { className: styles.taskType, children: task.taskType }),
44610
- /* @__PURE__ */ jsx176("div", { className: styles.taskId, children: task.taskId }),
44611
- task.payload?.message?.content && /* @__PURE__ */ jsx176("div", { className: styles.messageContent, children: /* @__PURE__ */ jsx176(Text54, { type: "secondary", style: { fontSize: 12 }, children: task.payload.message.content }) })
44839
+ /* @__PURE__ */ jsxs130("div", { className: styles.taskHeader, children: [
44840
+ /* @__PURE__ */ jsxs130("div", { children: [
44841
+ /* @__PURE__ */ jsx177("div", { className: styles.taskType, children: task.taskType }),
44842
+ /* @__PURE__ */ jsx177("div", { className: styles.taskId, children: task.taskId }),
44843
+ task.payload?.message?.content && /* @__PURE__ */ jsx177("div", { className: styles.messageContent, children: /* @__PURE__ */ jsx177(Text55, { type: "secondary", style: { fontSize: 12 }, children: task.payload.message.content }) })
44612
44844
  ] }),
44613
- /* @__PURE__ */ jsx176(Tag36, { color: getStatusColor(task.status), icon: getStatusIcon2(task.status), children: task.status.toUpperCase() })
44845
+ /* @__PURE__ */ jsx177(Tag36, { color: getStatusColor(task.status), icon: getStatusIcon2(task.status), children: task.status.toUpperCase() })
44614
44846
  ] }),
44615
- /* @__PURE__ */ jsxs129("div", { className: styles.metaRow, children: [
44616
- /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.executionType"), children: /* @__PURE__ */ jsxs129("div", { className: styles.metaItem, children: [
44617
- /* @__PURE__ */ jsx176(FieldTimeOutlined, {}),
44618
- /* @__PURE__ */ jsx176("span", { children: task.executionType === ScheduleExecutionType.CRON ? t("genui.schedule.recurring") : t("genui.schedule.oneTime") })
44847
+ /* @__PURE__ */ jsxs130("div", { className: styles.metaRow, children: [
44848
+ /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.executionType"), children: /* @__PURE__ */ jsxs130("div", { className: styles.metaItem, children: [
44849
+ /* @__PURE__ */ jsx177(FieldTimeOutlined, {}),
44850
+ /* @__PURE__ */ jsx177("span", { children: task.executionType === ScheduleExecutionType.CRON ? t("genui.schedule.recurring") : t("genui.schedule.oneTime") })
44619
44851
  ] }) }),
44620
- task.cronExpression && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.cronExpression"), children: /* @__PURE__ */ jsxs129("div", { className: styles.metaItem, children: [
44621
- /* @__PURE__ */ jsx176(ClockCircleOutlined3, {}),
44622
- /* @__PURE__ */ jsx176("code", { className: styles.cronExpression, children: task.cronExpression })
44852
+ task.cronExpression && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.cronExpression"), children: /* @__PURE__ */ jsxs130("div", { className: styles.metaItem, children: [
44853
+ /* @__PURE__ */ jsx177(ClockCircleOutlined3, {}),
44854
+ /* @__PURE__ */ jsx177("code", { className: styles.cronExpression, children: task.cronExpression })
44623
44855
  ] }) }),
44624
- task.nextRunAt && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.nextRunTooltip", { time: formatTime3(task.nextRunAt) }), children: /* @__PURE__ */ jsxs129("div", { className: styles.metaItem, children: [
44625
- /* @__PURE__ */ jsx176(ClockCircleOutlined3, {}),
44626
- /* @__PURE__ */ jsx176("span", { children: t("genui.schedule.nextRun", { time: getRelativeTime(task.nextRunAt) }) })
44856
+ task.nextRunAt && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.nextRunTooltip", { time: formatTime3(task.nextRunAt) }), children: /* @__PURE__ */ jsxs130("div", { className: styles.metaItem, children: [
44857
+ /* @__PURE__ */ jsx177(ClockCircleOutlined3, {}),
44858
+ /* @__PURE__ */ jsx177("span", { children: t("genui.schedule.nextRun", { time: getRelativeTime(task.nextRunAt) }) })
44627
44859
  ] }) }),
44628
- task.executeAt && !task.cronExpression && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.executeAtTooltip", { time: formatTime3(task.executeAt) }), children: /* @__PURE__ */ jsxs129("div", { className: styles.metaItem, children: [
44629
- /* @__PURE__ */ jsx176(ClockCircleOutlined3, {}),
44630
- /* @__PURE__ */ jsx176("span", { children: t("genui.schedule.executeAt", { time: getRelativeTime(task.executeAt) }) })
44860
+ task.executeAt && !task.cronExpression && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.executeAtTooltip", { time: formatTime3(task.executeAt) }), children: /* @__PURE__ */ jsxs130("div", { className: styles.metaItem, children: [
44861
+ /* @__PURE__ */ jsx177(ClockCircleOutlined3, {}),
44862
+ /* @__PURE__ */ jsx177("span", { children: t("genui.schedule.executeAt", { time: getRelativeTime(task.executeAt) }) })
44631
44863
  ] }) }),
44632
- task.runCount > 0 && /* @__PURE__ */ jsx176(Tooltip29, { title: t("genui.schedule.runCount"), children: /* @__PURE__ */ jsxs129("div", { className: styles.metaItem, children: [
44633
- /* @__PURE__ */ jsx176(SyncOutlined2, {}),
44634
- /* @__PURE__ */ jsxs129("span", { children: [
44864
+ task.runCount > 0 && /* @__PURE__ */ jsx177(Tooltip29, { title: t("genui.schedule.runCount"), children: /* @__PURE__ */ jsxs130("div", { className: styles.metaItem, children: [
44865
+ /* @__PURE__ */ jsx177(SyncOutlined2, {}),
44866
+ /* @__PURE__ */ jsxs130("span", { children: [
44635
44867
  t("genui.schedule.runs", { count: task.runCount }),
44636
44868
  task.maxRuns ? ` / ${task.maxRuns}` : ""
44637
44869
  ] })
44638
44870
  ] }) })
44639
44871
  ] }),
44640
- task.lastError && /* @__PURE__ */ jsx176("div", { style: { marginTop: 8 }, children: /* @__PURE__ */ jsxs129(Text54, { type: "danger", style: { fontSize: 12 }, children: [
44641
- /* @__PURE__ */ jsx176(ExclamationCircleOutlined, { style: { marginRight: 4 } }),
44872
+ task.lastError && /* @__PURE__ */ jsx177("div", { style: { marginTop: 8 }, children: /* @__PURE__ */ jsxs130(Text55, { type: "danger", style: { fontSize: 12 }, children: [
44873
+ /* @__PURE__ */ jsx177(ExclamationCircleOutlined, { style: { marginRight: 4 } }),
44642
44874
  task.lastError
44643
44875
  ] }) }),
44644
44876
  isActive && renderActions(task)
@@ -44647,37 +44879,37 @@ var ScheduleViewer = ({ data }) => {
44647
44879
  task.taskId
44648
44880
  );
44649
44881
  };
44650
- return /* @__PURE__ */ jsxs129("div", { className: styles.container, children: [
44651
- /* @__PURE__ */ jsxs129("div", { className: styles.header, children: [
44652
- /* @__PURE__ */ jsx176(Title10, { level: 5, style: { margin: 0 }, children: t("genui.schedule.title") }),
44653
- /* @__PURE__ */ jsx176(Tooltip29, { title: t("common.refresh"), children: /* @__PURE__ */ jsx176(
44882
+ return /* @__PURE__ */ jsxs130("div", { className: styles.container, children: [
44883
+ /* @__PURE__ */ jsxs130("div", { className: styles.header, children: [
44884
+ /* @__PURE__ */ jsx177(Title10, { level: 5, style: { margin: 0 }, children: t("genui.schedule.title") }),
44885
+ /* @__PURE__ */ jsx177(Tooltip29, { title: t("common.refresh"), children: /* @__PURE__ */ jsx177(
44654
44886
  Button82,
44655
44887
  {
44656
44888
  type: "text",
44657
- icon: /* @__PURE__ */ jsx176(ReloadOutlined4, { spin: loading }),
44889
+ icon: /* @__PURE__ */ jsx177(ReloadOutlined4, { spin: loading }),
44658
44890
  onClick: handleRefresh,
44659
44891
  loading
44660
44892
  }
44661
44893
  ) })
44662
44894
  ] }),
44663
- loading && tasks.length === 0 ? /* @__PURE__ */ jsxs129("div", { className: styles.emptyContainer, children: [
44664
- /* @__PURE__ */ jsx176(Spin33, { size: "large" }),
44665
- /* @__PURE__ */ jsx176(Text54, { type: "secondary", style: { marginTop: 16 }, children: t("genui.schedule.loading") })
44666
- ] }) : tasks.length === 0 ? /* @__PURE__ */ jsx176("div", { className: styles.emptyContainer, children: /* @__PURE__ */ jsx176(
44895
+ loading && tasks.length === 0 ? /* @__PURE__ */ jsxs130("div", { className: styles.emptyContainer, children: [
44896
+ /* @__PURE__ */ jsx177(Spin33, { size: "large" }),
44897
+ /* @__PURE__ */ jsx177(Text55, { type: "secondary", style: { marginTop: 16 }, children: t("genui.schedule.loading") })
44898
+ ] }) : tasks.length === 0 ? /* @__PURE__ */ jsx177("div", { className: styles.emptyContainer, children: /* @__PURE__ */ jsx177(
44667
44899
  Empty21,
44668
44900
  {
44669
44901
  image: Empty21.PRESENTED_IMAGE_SIMPLE,
44670
44902
  description: t("genui.schedule.empty")
44671
44903
  }
44672
- ) }) : /* @__PURE__ */ jsx176("div", { children: tasks.map(renderTask) })
44904
+ ) }) : /* @__PURE__ */ jsx177("div", { children: tasks.map(renderTask) })
44673
44905
  ] });
44674
44906
  };
44675
44907
 
44676
44908
  // src/components/GenUI/elements/browser_view_card.tsx
44677
- import { Button as Button83, Flex as Flex6, Typography as Typography67 } from "antd";
44909
+ import { Button as Button83, Flex as Flex6, Typography as Typography68 } from "antd";
44678
44910
  import { CheckCircleOutlined as CheckCircleOutlined6, InfoCircleOutlined as InfoCircleOutlined3, LoadingOutlined as LoadingOutlined4 } from "@ant-design/icons";
44679
- import { jsx as jsx177, jsxs as jsxs130 } from "react/jsx-runtime";
44680
- var { Text: Text55 } = Typography67;
44911
+ import { jsx as jsx178, jsxs as jsxs131 } from "react/jsx-runtime";
44912
+ var { Text: Text56 } = Typography68;
44681
44913
  var BrowserViewer = ({
44682
44914
  data,
44683
44915
  component_key,
@@ -44695,11 +44927,11 @@ var BrowserViewer = ({
44695
44927
  function getStatusIcon3(status) {
44696
44928
  switch (status) {
44697
44929
  case "success":
44698
- return /* @__PURE__ */ jsx177(CheckCircleOutlined6, { style: { color: "#52c41a" } });
44930
+ return /* @__PURE__ */ jsx178(CheckCircleOutlined6, { style: { color: "#52c41a" } });
44699
44931
  case "error":
44700
- return /* @__PURE__ */ jsx177(InfoCircleOutlined3, { style: { color: "#ff4d4f" } });
44932
+ return /* @__PURE__ */ jsx178(InfoCircleOutlined3, { style: { color: "#ff4d4f" } });
44701
44933
  default:
44702
- return /* @__PURE__ */ jsx177(LoadingOutlined4, { style: { color: "#1890ff" } });
44934
+ return /* @__PURE__ */ jsx178(LoadingOutlined4, { style: { color: "#1890ff" } });
44703
44935
  }
44704
44936
  }
44705
44937
  const formatToolName2 = (name) => {
@@ -44720,10 +44952,10 @@ var BrowserViewer = ({
44720
44952
  return t("genui.toolCall.parseArgsFailed");
44721
44953
  }
44722
44954
  };
44723
- const header = /* @__PURE__ */ jsxs130(Flex6, { align: "center", wrap: "wrap", children: [
44724
- /* @__PURE__ */ jsx177(Typography67.Text, { strong: true, children: formatToolName2(toolCallData.name) }),
44725
- /* @__PURE__ */ jsx177(
44726
- Typography67.Text,
44955
+ const header = /* @__PURE__ */ jsxs131(Flex6, { align: "center", wrap: "wrap", children: [
44956
+ /* @__PURE__ */ jsx178(Typography68.Text, { strong: true, children: formatToolName2(toolCallData.name) }),
44957
+ /* @__PURE__ */ jsx178(
44958
+ Typography68.Text,
44727
44959
  {
44728
44960
  type: "secondary",
44729
44961
  style: { fontSize: "12px", marginLeft: "8px" },
@@ -44744,13 +44976,13 @@ var BrowserViewer = ({
44744
44976
  }
44745
44977
  });
44746
44978
  };
44747
- return /* @__PURE__ */ jsx177(
44979
+ return /* @__PURE__ */ jsx178(
44748
44980
  ContentPreviewCollapse,
44749
44981
  {
44750
44982
  panelKey: toolCallData.id,
44751
44983
  header,
44752
44984
  expandIcon: () => getStatusIcon3(toolCallData.status),
44753
- extra: /* @__PURE__ */ jsx177(
44985
+ extra: /* @__PURE__ */ jsx178(
44754
44986
  Button83,
44755
44987
  {
44756
44988
  type: "link",
@@ -44762,15 +44994,15 @@ var BrowserViewer = ({
44762
44994
  children: t("genui.browserView.viewBrowser")
44763
44995
  }
44764
44996
  ),
44765
- children: /* @__PURE__ */ jsx177(MDResponse, { content: toolCallData.response || "" })
44997
+ children: /* @__PURE__ */ jsx178(MDResponse, { content: toolCallData.response || "" })
44766
44998
  }
44767
44999
  );
44768
45000
  };
44769
45001
 
44770
45002
  // src/components/GenUI/elements/execute_code.tsx
44771
- import { Button as Button84, Space as Space48, Typography as Typography68 } from "antd";
44772
- import { jsx as jsx178, jsxs as jsxs131 } from "react/jsx-runtime";
44773
- var { Text: Text56 } = Typography68;
45003
+ import { Button as Button84, Space as Space48, Typography as Typography69 } from "antd";
45004
+ import { jsx as jsx179, jsxs as jsxs132 } from "react/jsx-runtime";
45005
+ var { Text: Text57 } = Typography69;
44774
45006
  var ExecuteCode = ({
44775
45007
  data,
44776
45008
  component_key,
@@ -44783,7 +45015,7 @@ var ExecuteCode = ({
44783
45015
  if (!toolCallData) {
44784
45016
  return null;
44785
45017
  }
44786
- const header = /* @__PURE__ */ jsx178(Space48, { children: /* @__PURE__ */ jsx178(Text56, { strong: true, children: t("genui.executeCode.title") }) });
45018
+ const header = /* @__PURE__ */ jsx179(Space48, { children: /* @__PURE__ */ jsx179(Text57, { strong: true, children: t("genui.executeCode.title") }) });
44787
45019
  const handleItemClick = (toolCallData2) => {
44788
45020
  openSideApp({
44789
45021
  component_key: "file_content_diff_view",
@@ -44797,13 +45029,13 @@ var ExecuteCode = ({
44797
45029
  const content = `\`\`\`${language}
44798
45030
  ${code}
44799
45031
  \`\`\``;
44800
- return /* @__PURE__ */ jsxs131(
45032
+ return /* @__PURE__ */ jsxs132(
44801
45033
  ContentPreviewCollapse,
44802
45034
  {
44803
45035
  panelKey: toolCallData.id,
44804
45036
  header,
44805
45037
  expandIcon: () => getStatusIcon(toolCallData.status),
44806
- extra: /* @__PURE__ */ jsx178(
45038
+ extra: /* @__PURE__ */ jsx179(
44807
45039
  Button84,
44808
45040
  {
44809
45041
  type: "link",
@@ -44816,19 +45048,19 @@ ${code}
44816
45048
  }
44817
45049
  ),
44818
45050
  children: [
44819
- /* @__PURE__ */ jsx178(MDResponse, { content }),
44820
- toolCallData.response && /* @__PURE__ */ jsx178(MDResponse, { content: toolCallData.response || "" })
45051
+ /* @__PURE__ */ jsx179(MDResponse, { content }),
45052
+ toolCallData.response && /* @__PURE__ */ jsx179(MDResponse, { content: toolCallData.response || "" })
44821
45053
  ]
44822
45054
  }
44823
45055
  );
44824
45056
  };
44825
45057
 
44826
45058
  // src/components/GenUI/elements/TeamGraph.tsx
44827
- import { Card as Card17, Typography as Typography69, Avatar as Avatar11, Tag as Tag37, List as List16, Space as Space49, Button as Button85, Skeleton as Skeleton2 } from "antd";
45059
+ import { Card as Card17, Typography as Typography70, Avatar as Avatar11, Tag as Tag37, List as List16, Space as Space49, Button as Button85, Skeleton as Skeleton2 } from "antd";
44828
45060
  import { UserOutlined as UserOutlined4, TeamOutlined as TeamOutlined2 } from "@ant-design/icons";
44829
45061
  import { Monitor } from "lucide-react";
44830
- import { jsx as jsx179, jsxs as jsxs132 } from "react/jsx-runtime";
44831
- var { Text: Text57 } = Typography69;
45062
+ import { jsx as jsx180, jsxs as jsxs133 } from "react/jsx-runtime";
45063
+ var { Text: Text58 } = Typography70;
44832
45064
  var extractTeamInfo = (response) => {
44833
45065
  if (!response) return null;
44834
45066
  const jsonMatch = response.match(/```json\n([\s\S]*?)\n```/);
@@ -44922,38 +45154,38 @@ var TeamGraph = ({ data }) => {
44922
45154
  };
44923
45155
  const showWorkbench = !!teamId && teammates.length > 0;
44924
45156
  if (teammates.length === 0) {
44925
- return /* @__PURE__ */ jsx179(Card17, { style: { width: "100%" }, bodyStyle: { padding: 12 }, children: /* @__PURE__ */ jsx179(Skeleton2, { active: true }) });
45157
+ return /* @__PURE__ */ jsx180(Card17, { style: { width: "100%" }, bodyStyle: { padding: 12 }, children: /* @__PURE__ */ jsx180(Skeleton2, { active: true }) });
44926
45158
  }
44927
- return /* @__PURE__ */ jsxs132(
45159
+ return /* @__PURE__ */ jsxs133(
44928
45160
  Card17,
44929
45161
  {
44930
45162
  style: { width: "100%" },
44931
45163
  bodyStyle: { padding: 12 },
44932
- title: /* @__PURE__ */ jsxs132(Space49, { children: [
44933
- /* @__PURE__ */ jsx179(TeamOutlined2, {}),
44934
- /* @__PURE__ */ jsx179("span", { children: t("genui.teamChat.teamMembers") })
45164
+ title: /* @__PURE__ */ jsxs133(Space49, { children: [
45165
+ /* @__PURE__ */ jsx180(TeamOutlined2, {}),
45166
+ /* @__PURE__ */ jsx180("span", { children: t("genui.teamChat.teamMembers") })
44935
45167
  ] }),
44936
- extra: showWorkbench ? /* @__PURE__ */ jsx179(
45168
+ extra: showWorkbench ? /* @__PURE__ */ jsx180(
44937
45169
  Button85,
44938
45170
  {
44939
45171
  type: "text",
44940
- icon: /* @__PURE__ */ jsx179(Monitor, { size: 16 }),
45172
+ icon: /* @__PURE__ */ jsx180(Monitor, { size: 16 }),
44941
45173
  onClick: handleOpenWorkspace,
44942
45174
  children: t("genui.teamGraph.workbench")
44943
45175
  }
44944
45176
  ) : null,
44945
45177
  children: [
44946
- /* @__PURE__ */ jsx179(
45178
+ /* @__PURE__ */ jsx180(
44947
45179
  List16,
44948
45180
  {
44949
45181
  dataSource: teammates,
44950
- renderItem: (teammate) => /* @__PURE__ */ jsxs132(List16.Item, { style: { display: "block" }, children: [
44951
- /* @__PURE__ */ jsxs132(Space49, { align: "center", size: 12, children: [
44952
- /* @__PURE__ */ jsx179(
45182
+ renderItem: (teammate) => /* @__PURE__ */ jsxs133(List16.Item, { style: { display: "block" }, children: [
45183
+ /* @__PURE__ */ jsxs133(Space49, { align: "center", size: 12, children: [
45184
+ /* @__PURE__ */ jsx180(
44953
45185
  Avatar11,
44954
45186
  {
44955
45187
  size: 40,
44956
- icon: /* @__PURE__ */ jsx179(UserOutlined4, {}),
45188
+ icon: /* @__PURE__ */ jsx180(UserOutlined4, {}),
44957
45189
  src: teammate?.avatar,
44958
45190
  style: {
44959
45191
  backgroundColor: getBadgeColor(teammate?.name || ""),
@@ -44964,9 +45196,9 @@ var TeamGraph = ({ data }) => {
44964
45196
  children: getInitials4(teammate?.name || "")
44965
45197
  }
44966
45198
  ),
44967
- /* @__PURE__ */ jsxs132("div", { style: { flex: 1 }, children: [
44968
- /* @__PURE__ */ jsx179(Text57, { strong: true, style: { display: "block" }, children: teammate?.name || t("genui.teamGraph.unnamed") }),
44969
- /* @__PURE__ */ jsx179(
45199
+ /* @__PURE__ */ jsxs133("div", { style: { flex: 1 }, children: [
45200
+ /* @__PURE__ */ jsx180(Text58, { strong: true, style: { display: "block" }, children: teammate?.name || t("genui.teamGraph.unnamed") }),
45201
+ /* @__PURE__ */ jsx180(
44970
45202
  Tag37,
44971
45203
  {
44972
45204
  color: "blue",
@@ -44976,21 +45208,21 @@ var TeamGraph = ({ data }) => {
44976
45208
  )
44977
45209
  ] })
44978
45210
  ] }),
44979
- teammate?.description && /* @__PURE__ */ jsx179(Text57, { type: "secondary", style: { display: "block", marginTop: 8, fontSize: 12, marginLeft: 52 }, children: teammate.description })
45211
+ teammate?.description && /* @__PURE__ */ jsx180(Text58, { type: "secondary", style: { display: "block", marginTop: 8, fontSize: 12, marginLeft: 52 }, children: teammate.description })
44980
45212
  ] })
44981
45213
  }
44982
45214
  ),
44983
- tasks.length > 0 && /* @__PURE__ */ jsxs132("div", { style: { marginTop: 16, paddingTop: 16, borderTop: "1px solid #f0f0f0" }, children: [
44984
- /* @__PURE__ */ jsx179(Text57, { strong: true, style: { display: "block", marginBottom: 8 }, children: t("genui.teamGraph.pendingTasks", { count: tasks.filter((task) => task.status === "pending").length }) }),
44985
- /* @__PURE__ */ jsx179(
45215
+ tasks.length > 0 && /* @__PURE__ */ jsxs133("div", { style: { marginTop: 16, paddingTop: 16, borderTop: "1px solid #f0f0f0" }, children: [
45216
+ /* @__PURE__ */ jsx180(Text58, { strong: true, style: { display: "block", marginBottom: 8 }, children: t("genui.teamGraph.pendingTasks", { count: tasks.filter((task) => task.status === "pending").length }) }),
45217
+ /* @__PURE__ */ jsx180(
44986
45218
  List16,
44987
45219
  {
44988
45220
  size: "small",
44989
45221
  dataSource: tasks.filter((t2) => t2.status === "pending"),
44990
- renderItem: (task) => /* @__PURE__ */ jsx179(List16.Item, { style: { padding: "8px 0" }, children: /* @__PURE__ */ jsxs132("div", { children: [
44991
- /* @__PURE__ */ jsx179(Text57, { style: { fontSize: 12, color: "#7A7A7A" }, children: task.id }),
44992
- /* @__PURE__ */ jsx179(Text57, { strong: true, style: { display: "block", fontSize: 13 }, children: task.title }),
44993
- task.description && /* @__PURE__ */ jsx179(Text57, { type: "secondary", style: { fontSize: 11 }, children: task.description.length > 100 ? task.description.slice(0, 100) + "..." : task.description })
45222
+ renderItem: (task) => /* @__PURE__ */ jsx180(List16.Item, { style: { padding: "8px 0" }, children: /* @__PURE__ */ jsxs133("div", { children: [
45223
+ /* @__PURE__ */ jsx180(Text58, { style: { fontSize: 12, color: "#7A7A7A" }, children: task.id }),
45224
+ /* @__PURE__ */ jsx180(Text58, { strong: true, style: { display: "block", fontSize: 13 }, children: task.title }),
45225
+ task.description && /* @__PURE__ */ jsx180(Text58, { type: "secondary", style: { fontSize: 11 }, children: task.description.length > 100 ? task.description.slice(0, 100) + "..." : task.description })
44994
45226
  ] }) })
44995
45227
  }
44996
45228
  )
@@ -45002,10 +45234,10 @@ var TeamGraph = ({ data }) => {
45002
45234
  var TeamGraph_default = TeamGraph;
45003
45235
 
45004
45236
  // src/components/GenUI/elements/TaskBoard.tsx
45005
- import { useMemo as useMemo47 } from "react";
45237
+ import { useMemo as useMemo48 } from "react";
45006
45238
 
45007
45239
  // src/components/GenUI/elements/TaskBoardCard.tsx
45008
- import { jsx as jsx180, jsxs as jsxs133 } from "react/jsx-runtime";
45240
+ import { jsx as jsx181, jsxs as jsxs134 } from "react/jsx-runtime";
45009
45241
  var useStyle15 = (status, isCompleted) => {
45010
45242
  return {
45011
45243
  card: {
@@ -45103,8 +45335,8 @@ var useStyle15 = (status, isCompleted) => {
45103
45335
  }
45104
45336
  };
45105
45337
  };
45106
- var CheckIcon = () => /* @__PURE__ */ jsx180("svg", { width: "10", height: "10", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "3", children: /* @__PURE__ */ jsx180("polyline", { points: "20 6 9 17 4 12" }) });
45107
- var CircleIcon = () => /* @__PURE__ */ jsx180("svg", { width: "8", height: "8", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx180("circle", { cx: "12", cy: "12", r: "10" }) });
45338
+ var CheckIcon = () => /* @__PURE__ */ jsx181("svg", { width: "10", height: "10", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "3", children: /* @__PURE__ */ jsx181("polyline", { points: "20 6 9 17 4 12" }) });
45339
+ var CircleIcon = () => /* @__PURE__ */ jsx181("svg", { width: "8", height: "8", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx181("circle", { cx: "12", cy: "12", r: "10" }) });
45108
45340
  var TaskBoardCard = ({
45109
45341
  task,
45110
45342
  allTaskIds,
@@ -45115,7 +45347,7 @@ var TaskBoardCard = ({
45115
45347
  const t = useT();
45116
45348
  const renderDependencyBadges = () => {
45117
45349
  if (!task.dependencies || task.dependencies.length === 0) {
45118
- return /* @__PURE__ */ jsx180("span", { style: { ...styles.depLabel, color: "#7A7A7A" }, children: t("genui.taskBoardCard.none") });
45350
+ return /* @__PURE__ */ jsx181("span", { style: { ...styles.depLabel, color: "#7A7A7A" }, children: t("genui.taskBoardCard.none") });
45119
45351
  }
45120
45352
  return task.dependencies.map((depId) => {
45121
45353
  const isValidDep = allTaskIds.has(depId);
@@ -45126,7 +45358,7 @@ var TaskBoardCard = ({
45126
45358
  } else if (isDepCompleted) {
45127
45359
  badgeStyle = styles.depBadgeCompleted;
45128
45360
  }
45129
- return /* @__PURE__ */ jsxs133(
45361
+ return /* @__PURE__ */ jsxs134(
45130
45362
  "span",
45131
45363
  {
45132
45364
  style: {
@@ -45135,7 +45367,7 @@ var TaskBoardCard = ({
45135
45367
  marginRight: "4px"
45136
45368
  },
45137
45369
  children: [
45138
- /* @__PURE__ */ jsx180("span", { style: styles.checkIcon, children: isValidDep && isDepCompleted ? /* @__PURE__ */ jsx180(CheckIcon, {}) : isValidDep ? /* @__PURE__ */ jsx180(CircleIcon, {}) : null }),
45370
+ /* @__PURE__ */ jsx181("span", { style: styles.checkIcon, children: isValidDep && isDepCompleted ? /* @__PURE__ */ jsx181(CheckIcon, {}) : isValidDep ? /* @__PURE__ */ jsx181(CircleIcon, {}) : null }),
45139
45371
  depId
45140
45372
  ]
45141
45373
  },
@@ -45143,25 +45375,25 @@ var TaskBoardCard = ({
45143
45375
  );
45144
45376
  });
45145
45377
  };
45146
- return /* @__PURE__ */ jsxs133("div", { style: styles.card, children: [
45147
- /* @__PURE__ */ jsxs133("div", { style: styles.header, children: [
45148
- /* @__PURE__ */ jsx180("span", { style: styles.taskId, children: task.id }),
45149
- task.assignee && /* @__PURE__ */ jsxs133("span", { style: styles.assignee, children: [
45378
+ return /* @__PURE__ */ jsxs134("div", { style: styles.card, children: [
45379
+ /* @__PURE__ */ jsxs134("div", { style: styles.header, children: [
45380
+ /* @__PURE__ */ jsx181("span", { style: styles.taskId, children: task.id }),
45381
+ task.assignee && /* @__PURE__ */ jsxs134("span", { style: styles.assignee, children: [
45150
45382
  "@",
45151
45383
  task.assignee
45152
45384
  ] })
45153
45385
  ] }),
45154
- /* @__PURE__ */ jsx180("h3", { style: styles.title, children: task.title }),
45155
- task.description && /* @__PURE__ */ jsx180("p", { style: styles.description, children: task.description }),
45156
- /* @__PURE__ */ jsxs133("div", { style: styles.depRow, children: [
45157
- /* @__PURE__ */ jsx180("span", { style: styles.depLabel, children: t("genui.taskBoardCard.deps") }),
45386
+ /* @__PURE__ */ jsx181("h3", { style: styles.title, children: task.title }),
45387
+ task.description && /* @__PURE__ */ jsx181("p", { style: styles.description, children: task.description }),
45388
+ /* @__PURE__ */ jsxs134("div", { style: styles.depRow, children: [
45389
+ /* @__PURE__ */ jsx181("span", { style: styles.depLabel, children: t("genui.taskBoardCard.deps") }),
45158
45390
  renderDependencyBadges()
45159
45391
  ] })
45160
45392
  ] });
45161
45393
  };
45162
45394
 
45163
45395
  // src/components/GenUI/elements/TaskBoard.tsx
45164
- import { jsx as jsx181, jsxs as jsxs134 } from "react/jsx-runtime";
45396
+ import { jsx as jsx182, jsxs as jsxs135 } from "react/jsx-runtime";
45165
45397
  var COLUMNS = [
45166
45398
  { id: "pending", titleKey: "genui.taskStatus.pending", color: "#7A7A7A" },
45167
45399
  { id: "in_progress", titleKey: "genui.taskStatus.inProgress", color: "#E42313" },
@@ -45283,7 +45515,7 @@ var TaskBoard = ({
45283
45515
  const { tasks: contextTasks } = useAgentChat();
45284
45516
  const { tasks: propTasks, onAddTask, teammates } = data || {};
45285
45517
  const tasks = contextTasks || propTasks || [];
45286
- const tasksByStatus = useMemo47(() => {
45518
+ const tasksByStatus = useMemo48(() => {
45287
45519
  const grouped = {
45288
45520
  pending: [],
45289
45521
  in_progress: [],
@@ -45310,31 +45542,31 @@ var TaskBoard = ({
45310
45542
  onAddTask();
45311
45543
  }
45312
45544
  };
45313
- return /* @__PURE__ */ jsxs134("div", { style: styles.container, children: [
45314
- /* @__PURE__ */ jsxs134("div", { style: styles.header, children: [
45315
- /* @__PURE__ */ jsxs134("div", { style: styles.titleSection, children: [
45316
- /* @__PURE__ */ jsx181("h1", { style: styles.pageTitle, children: t("genui.taskBoard.title") }),
45317
- /* @__PURE__ */ jsx181("p", { style: styles.pageSubtitle, children: t("genui.taskBoard.subtitle") })
45545
+ return /* @__PURE__ */ jsxs135("div", { style: styles.container, children: [
45546
+ /* @__PURE__ */ jsxs135("div", { style: styles.header, children: [
45547
+ /* @__PURE__ */ jsxs135("div", { style: styles.titleSection, children: [
45548
+ /* @__PURE__ */ jsx182("h1", { style: styles.pageTitle, children: t("genui.taskBoard.title") }),
45549
+ /* @__PURE__ */ jsx182("p", { style: styles.pageSubtitle, children: t("genui.taskBoard.subtitle") })
45318
45550
  ] }),
45319
- /* @__PURE__ */ jsx181("div", { style: styles.actions, children: /* @__PURE__ */ jsxs134("button", { style: styles.addButton, onClick: handleAddTask, children: [
45320
- /* @__PURE__ */ jsxs134("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [
45321
- /* @__PURE__ */ jsx181("line", { x1: "12", y1: "5", x2: "12", y2: "19" }),
45322
- /* @__PURE__ */ jsx181("line", { x1: "5", y1: "12", x2: "19", y2: "12" })
45551
+ /* @__PURE__ */ jsx182("div", { style: styles.actions, children: /* @__PURE__ */ jsxs135("button", { style: styles.addButton, onClick: handleAddTask, children: [
45552
+ /* @__PURE__ */ jsxs135("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [
45553
+ /* @__PURE__ */ jsx182("line", { x1: "12", y1: "5", x2: "12", y2: "19" }),
45554
+ /* @__PURE__ */ jsx182("line", { x1: "5", y1: "12", x2: "19", y2: "12" })
45323
45555
  ] }),
45324
45556
  t("genui.taskBoard.addTask")
45325
45557
  ] }) })
45326
45558
  ] }),
45327
- /* @__PURE__ */ jsx181("div", { style: styles.boardContainer, children: COLUMNS.map((column) => {
45559
+ /* @__PURE__ */ jsx182("div", { style: styles.boardContainer, children: COLUMNS.map((column) => {
45328
45560
  const columnTasks = tasksByStatus[column.id] || [];
45329
- return /* @__PURE__ */ jsxs134("div", { style: styles.column, children: [
45330
- /* @__PURE__ */ jsxs134("div", { style: styles.columnHeader, children: [
45331
- /* @__PURE__ */ jsxs134("div", { style: styles.columnTitle, children: [
45332
- /* @__PURE__ */ jsx181("div", { style: { ...styles.statusDot, background: column.color } }),
45333
- /* @__PURE__ */ jsx181("span", { style: styles.columnLabel, children: t(column.titleKey) })
45561
+ return /* @__PURE__ */ jsxs135("div", { style: styles.column, children: [
45562
+ /* @__PURE__ */ jsxs135("div", { style: styles.columnHeader, children: [
45563
+ /* @__PURE__ */ jsxs135("div", { style: styles.columnTitle, children: [
45564
+ /* @__PURE__ */ jsx182("div", { style: { ...styles.statusDot, background: column.color } }),
45565
+ /* @__PURE__ */ jsx182("span", { style: styles.columnLabel, children: t(column.titleKey) })
45334
45566
  ] }),
45335
- /* @__PURE__ */ jsx181("span", { style: styles.columnCount, children: columnTasks.length })
45567
+ /* @__PURE__ */ jsx182("span", { style: styles.columnCount, children: columnTasks.length })
45336
45568
  ] }),
45337
- columnTasks.length > 0 ? columnTasks.map((task) => /* @__PURE__ */ jsx181(
45569
+ columnTasks.length > 0 ? columnTasks.map((task) => /* @__PURE__ */ jsx182(
45338
45570
  TaskBoardCard,
45339
45571
  {
45340
45572
  task,
@@ -45342,15 +45574,15 @@ var TaskBoard = ({
45342
45574
  getDependencyStatus
45343
45575
  },
45344
45576
  task.id
45345
- )) : /* @__PURE__ */ jsx181("div", { style: styles.emptyColumn, children: t("genui.taskBoard.emptyColumn") })
45577
+ )) : /* @__PURE__ */ jsx182("div", { style: styles.emptyColumn, children: t("genui.taskBoard.emptyColumn") })
45346
45578
  ] }, column.id);
45347
45579
  }) })
45348
45580
  ] });
45349
45581
  };
45350
45582
 
45351
45583
  // src/components/GenUI/elements/Mailbox.tsx
45352
- import { useState as useState127, useMemo as useMemo48, useRef as useRef57, useEffect as useEffect97 } from "react";
45353
- import { jsx as jsx182, jsxs as jsxs135 } from "react/jsx-runtime";
45584
+ import { useState as useState128, useMemo as useMemo49, useRef as useRef57, useEffect as useEffect97 } from "react";
45585
+ import { jsx as jsx183, jsxs as jsxs136 } from "react/jsx-runtime";
45354
45586
  var useStyle17 = () => {
45355
45587
  return {
45356
45588
  container: {
@@ -45608,7 +45840,7 @@ var formatTime4 = (date) => {
45608
45840
  };
45609
45841
  var renderMessageWithMentions = (content, mentions, styles) => {
45610
45842
  if (mentions.length === 0) {
45611
- return /* @__PURE__ */ jsx182("span", { style: styles.messageText, children: content });
45843
+ return /* @__PURE__ */ jsx183("span", { style: styles.messageText, children: content });
45612
45844
  }
45613
45845
  const parts = [];
45614
45846
  let lastIndex = 0;
@@ -45619,7 +45851,7 @@ var renderMessageWithMentions = (content, mentions, styles) => {
45619
45851
  parts.push(content.slice(lastIndex, index));
45620
45852
  }
45621
45853
  parts.push(
45622
- /* @__PURE__ */ jsxs135("span", { style: styles.mention, children: [
45854
+ /* @__PURE__ */ jsxs136("span", { style: styles.mention, children: [
45623
45855
  "@",
45624
45856
  mention
45625
45857
  ] }, mention)
@@ -45630,20 +45862,20 @@ var renderMessageWithMentions = (content, mentions, styles) => {
45630
45862
  if (lastIndex < content.length) {
45631
45863
  parts.push(content.slice(lastIndex));
45632
45864
  }
45633
- return /* @__PURE__ */ jsx182("span", { style: styles.messageText, children: parts });
45865
+ return /* @__PURE__ */ jsx183("span", { style: styles.messageText, children: parts });
45634
45866
  };
45635
45867
  var TeamChat = ({ data }) => {
45636
45868
  const styles = useStyle17();
45637
45869
  const { teamName, currentUser, teammates, messages, onSendMessage } = data || {};
45638
45870
  const t = useT();
45639
- const [inputValue, setInputValue] = useState127("");
45871
+ const [inputValue, setInputValue] = useState128("");
45640
45872
  const messagesEndRef = useRef57(null);
45641
- const sortedMessages = useMemo48(() => {
45873
+ const sortedMessages = useMemo49(() => {
45642
45874
  return [...messages || []].sort(
45643
45875
  (a, b) => new Date(a.timestamp).getTime() - new Date(b.timestamp).getTime()
45644
45876
  );
45645
45877
  }, [messages]);
45646
- const mentions = useMemo48(() => {
45878
+ const mentions = useMemo49(() => {
45647
45879
  return teammates?.map((t2) => t2.name) || [];
45648
45880
  }, [teammates]);
45649
45881
  useEffect97(() => {
@@ -45664,36 +45896,36 @@ var TeamChat = ({ data }) => {
45664
45896
  const getStatusColor2 = (status) => {
45665
45897
  return STATUS_COLORS3[status] || STATUS_COLORS3.offline;
45666
45898
  };
45667
- return /* @__PURE__ */ jsxs135("div", { style: styles.container, children: [
45668
- /* @__PURE__ */ jsx182("div", { style: styles.header, children: /* @__PURE__ */ jsxs135("div", { style: styles.titleSection, children: [
45669
- /* @__PURE__ */ jsx182("h2", { style: styles.teamName, children: teamName || t("genui.teamChat.defaultName") }),
45670
- /* @__PURE__ */ jsx182("p", { style: styles.teamDesc, children: t("genui.teamChat.memberCount", {
45899
+ return /* @__PURE__ */ jsxs136("div", { style: styles.container, children: [
45900
+ /* @__PURE__ */ jsx183("div", { style: styles.header, children: /* @__PURE__ */ jsxs136("div", { style: styles.titleSection, children: [
45901
+ /* @__PURE__ */ jsx183("h2", { style: styles.teamName, children: teamName || t("genui.teamChat.defaultName") }),
45902
+ /* @__PURE__ */ jsx183("p", { style: styles.teamDesc, children: t("genui.teamChat.memberCount", {
45671
45903
  count: teammates?.length || 0,
45672
45904
  s: teammates?.length !== 1 ? "s" : ""
45673
45905
  }) })
45674
45906
  ] }) }),
45675
- /* @__PURE__ */ jsxs135("div", { style: styles.mainContainer, children: [
45676
- /* @__PURE__ */ jsxs135("div", { style: styles.sidebar, children: [
45677
- /* @__PURE__ */ jsx182("div", { style: styles.sidebarHeader, children: /* @__PURE__ */ jsx182("p", { style: styles.sidebarTitle, children: t("genui.teamChat.teamMembers") }) }),
45678
- teammates?.map((member) => /* @__PURE__ */ jsxs135("div", { style: styles.member, children: [
45679
- /* @__PURE__ */ jsx182(
45907
+ /* @__PURE__ */ jsxs136("div", { style: styles.mainContainer, children: [
45908
+ /* @__PURE__ */ jsxs136("div", { style: styles.sidebar, children: [
45909
+ /* @__PURE__ */ jsx183("div", { style: styles.sidebarHeader, children: /* @__PURE__ */ jsx183("p", { style: styles.sidebarTitle, children: t("genui.teamChat.teamMembers") }) }),
45910
+ teammates?.map((member) => /* @__PURE__ */ jsxs136("div", { style: styles.member, children: [
45911
+ /* @__PURE__ */ jsx183(
45680
45912
  "div",
45681
45913
  {
45682
45914
  style: {
45683
45915
  ...styles.avatar,
45684
45916
  background: getAvatarColor(member.name)
45685
45917
  },
45686
- children: /* @__PURE__ */ jsx182("span", { style: styles.avatarText, children: getInitials(member.name) })
45918
+ children: /* @__PURE__ */ jsx183("span", { style: styles.avatarText, children: getInitials(member.name) })
45687
45919
  }
45688
45920
  ),
45689
- /* @__PURE__ */ jsxs135("div", { style: styles.memberInfo, children: [
45690
- /* @__PURE__ */ jsxs135("p", { style: styles.memberName, children: [
45921
+ /* @__PURE__ */ jsxs136("div", { style: styles.memberInfo, children: [
45922
+ /* @__PURE__ */ jsxs136("p", { style: styles.memberName, children: [
45691
45923
  member.name,
45692
45924
  member.name === currentUser && ` ${t("genui.teamChat.youSuffix")}`
45693
45925
  ] }),
45694
- /* @__PURE__ */ jsx182("p", { style: styles.memberRole, children: member.role })
45926
+ /* @__PURE__ */ jsx183("p", { style: styles.memberRole, children: member.role })
45695
45927
  ] }),
45696
- /* @__PURE__ */ jsx182(
45928
+ /* @__PURE__ */ jsx183(
45697
45929
  "div",
45698
45930
  {
45699
45931
  style: {
@@ -45704,11 +45936,11 @@ var TeamChat = ({ data }) => {
45704
45936
  )
45705
45937
  ] }, member.name))
45706
45938
  ] }),
45707
- /* @__PURE__ */ jsxs135("div", { style: styles.chatArea, children: [
45708
- /* @__PURE__ */ jsxs135("div", { style: styles.messages, children: [
45939
+ /* @__PURE__ */ jsxs136("div", { style: styles.chatArea, children: [
45940
+ /* @__PURE__ */ jsxs136("div", { style: styles.messages, children: [
45709
45941
  sortedMessages.map((msg) => {
45710
45942
  const isSelf = msg.from === currentUser;
45711
- return /* @__PURE__ */ jsxs135(
45943
+ return /* @__PURE__ */ jsxs136(
45712
45944
  "div",
45713
45945
  {
45714
45946
  style: {
@@ -45716,17 +45948,17 @@ var TeamChat = ({ data }) => {
45716
45948
  ...isSelf ? styles.messageSelf : {}
45717
45949
  },
45718
45950
  children: [
45719
- !isSelf && /* @__PURE__ */ jsx182(
45951
+ !isSelf && /* @__PURE__ */ jsx183(
45720
45952
  "div",
45721
45953
  {
45722
45954
  style: {
45723
45955
  ...styles.avatar,
45724
45956
  background: getAvatarColor(msg.from)
45725
45957
  },
45726
- children: /* @__PURE__ */ jsx182("span", { style: styles.avatarText, children: getInitials(msg.from) })
45958
+ children: /* @__PURE__ */ jsx183("span", { style: styles.avatarText, children: getInitials(msg.from) })
45727
45959
  }
45728
45960
  ),
45729
- /* @__PURE__ */ jsxs135(
45961
+ /* @__PURE__ */ jsxs136(
45730
45962
  "div",
45731
45963
  {
45732
45964
  style: {
@@ -45734,8 +45966,8 @@ var TeamChat = ({ data }) => {
45734
45966
  ...isSelf ? { alignItems: "flex-end" } : {}
45735
45967
  },
45736
45968
  children: [
45737
- /* @__PURE__ */ jsxs135("div", { style: styles.messageHeader, children: [
45738
- /* @__PURE__ */ jsx182(
45969
+ /* @__PURE__ */ jsxs136("div", { style: styles.messageHeader, children: [
45970
+ /* @__PURE__ */ jsx183(
45739
45971
  "span",
45740
45972
  {
45741
45973
  style: {
@@ -45745,7 +45977,7 @@ var TeamChat = ({ data }) => {
45745
45977
  children: isSelf ? t("genui.teamChat.you") : msg.from
45746
45978
  }
45747
45979
  ),
45748
- /* @__PURE__ */ jsx182(
45980
+ /* @__PURE__ */ jsx183(
45749
45981
  "span",
45750
45982
  {
45751
45983
  style: {
@@ -45756,7 +45988,7 @@ var TeamChat = ({ data }) => {
45756
45988
  }
45757
45989
  )
45758
45990
  ] }),
45759
- isSelf ? /* @__PURE__ */ jsx182(
45991
+ isSelf ? /* @__PURE__ */ jsx183(
45760
45992
  "div",
45761
45993
  {
45762
45994
  style: {
@@ -45775,10 +46007,10 @@ var TeamChat = ({ data }) => {
45775
46007
  msg.id
45776
46008
  );
45777
46009
  }),
45778
- /* @__PURE__ */ jsx182("div", { ref: messagesEndRef })
46010
+ /* @__PURE__ */ jsx183("div", { ref: messagesEndRef })
45779
46011
  ] }),
45780
- /* @__PURE__ */ jsxs135("div", { style: styles.inputArea, children: [
45781
- /* @__PURE__ */ jsx182("div", { style: styles.input, children: /* @__PURE__ */ jsx182(
46012
+ /* @__PURE__ */ jsxs136("div", { style: styles.inputArea, children: [
46013
+ /* @__PURE__ */ jsx183("div", { style: styles.input, children: /* @__PURE__ */ jsx183(
45782
46014
  "input",
45783
46015
  {
45784
46016
  type: "text",
@@ -45789,8 +46021,8 @@ var TeamChat = ({ data }) => {
45789
46021
  style: styles.inputText
45790
46022
  }
45791
46023
  ) }),
45792
- /* @__PURE__ */ jsxs135("button", { style: styles.sendButton, onClick: handleSend, children: [
45793
- /* @__PURE__ */ jsxs135(
46024
+ /* @__PURE__ */ jsxs136("button", { style: styles.sendButton, onClick: handleSend, children: [
46025
+ /* @__PURE__ */ jsxs136(
45794
46026
  "svg",
45795
46027
  {
45796
46028
  width: "16",
@@ -45800,12 +46032,12 @@ var TeamChat = ({ data }) => {
45800
46032
  stroke: "currentColor",
45801
46033
  strokeWidth: "2",
45802
46034
  children: [
45803
- /* @__PURE__ */ jsx182("line", { x1: "22", y1: "2", x2: "11", y2: "13" }),
45804
- /* @__PURE__ */ jsx182("polygon", { points: "22 2 15 22 11 13 2 9 22 2" })
46035
+ /* @__PURE__ */ jsx183("line", { x1: "22", y1: "2", x2: "11", y2: "13" }),
46036
+ /* @__PURE__ */ jsx183("polygon", { points: "22 2 15 22 11 13 2 9 22 2" })
45805
46037
  ]
45806
46038
  }
45807
46039
  ),
45808
- /* @__PURE__ */ jsx182("span", { style: styles.sendText, children: t("genui.teamChat.send") })
46040
+ /* @__PURE__ */ jsx183("span", { style: styles.sendText, children: t("genui.teamChat.send") })
45809
46041
  ] })
45810
46042
  ] })
45811
46043
  ] })
@@ -45814,9 +46046,9 @@ var TeamChat = ({ data }) => {
45814
46046
  };
45815
46047
 
45816
46048
  // src/components/GenUI/elements/MailboxPanel.tsx
45817
- import { useState as useState128, useMemo as useMemo49 } from "react";
45818
- import { Typography as Typography71, Empty as Empty22 } from "antd";
45819
- import { createStyles as createStyles77 } from "antd-style";
46049
+ import { useState as useState129, useMemo as useMemo50 } from "react";
46050
+ import { Typography as Typography72, Empty as Empty22 } from "antd";
46051
+ import { createStyles as createStyles78 } from "antd-style";
45820
46052
  import {
45821
46053
  ChevronDown as ChevronDown7,
45822
46054
  ChevronRight as ChevronRight7,
@@ -45825,12 +46057,12 @@ import {
45825
46057
  } from "lucide-react";
45826
46058
 
45827
46059
  // src/components/GenUI/elements/MailboxDetailModal.tsx
45828
- import { Modal as Modal39, Typography as Typography70, Tag as Tag38, Divider as Divider3 } from "antd";
45829
- import { createStyles as createStyles76 } from "antd-style";
46060
+ import { Modal as Modal39, Typography as Typography71, Tag as Tag38, Divider as Divider3 } from "antd";
46061
+ import { createStyles as createStyles77 } from "antd-style";
45830
46062
  import { Mail, Calendar as Calendar2 } from "lucide-react";
45831
- import { jsx as jsx183, jsxs as jsxs136 } from "react/jsx-runtime";
45832
- var { Title: Title11, Text: Text58, Paragraph: Paragraph6 } = Typography70;
45833
- var useStyles56 = createStyles76(({ token, css }) => ({
46063
+ import { jsx as jsx184, jsxs as jsxs137 } from "react/jsx-runtime";
46064
+ var { Title: Title11, Text: Text59, Paragraph: Paragraph6 } = Typography71;
46065
+ var useStyles57 = createStyles77(({ token, css }) => ({
45834
46066
  modalContent: css`
45835
46067
  padding: 0;
45836
46068
  `,
@@ -45963,10 +46195,10 @@ var MailboxDetailModal = ({
45963
46195
  visible,
45964
46196
  onClose
45965
46197
  }) => {
45966
- const { styles } = useStyles56();
46198
+ const { styles } = useStyles57();
45967
46199
  const t = useT();
45968
46200
  if (!message36) return null;
45969
- return /* @__PURE__ */ jsx183(
46201
+ return /* @__PURE__ */ jsx184(
45970
46202
  Modal39,
45971
46203
  {
45972
46204
  title: null,
@@ -45985,18 +46217,18 @@ var MailboxDetailModal = ({
45985
46217
  padding: 24
45986
46218
  }
45987
46219
  },
45988
- children: /* @__PURE__ */ jsxs136("div", { className: styles.modalContent, children: [
45989
- /* @__PURE__ */ jsxs136("div", { className: styles.header, children: [
45990
- /* @__PURE__ */ jsx183("div", { className: styles.messageIcon, children: /* @__PURE__ */ jsx183(Mail, { size: 20 }) }),
45991
- /* @__PURE__ */ jsx183(Text58, { className: styles.messageId, children: message36.id }),
45992
- !message36.read && /* @__PURE__ */ jsx183(Tag38, { color: "red", children: t("genui.mailbox.unread") })
46220
+ children: /* @__PURE__ */ jsxs137("div", { className: styles.modalContent, children: [
46221
+ /* @__PURE__ */ jsxs137("div", { className: styles.header, children: [
46222
+ /* @__PURE__ */ jsx184("div", { className: styles.messageIcon, children: /* @__PURE__ */ jsx184(Mail, { size: 20 }) }),
46223
+ /* @__PURE__ */ jsx184(Text59, { className: styles.messageId, children: message36.id }),
46224
+ !message36.read && /* @__PURE__ */ jsx184(Tag38, { color: "red", children: t("genui.mailbox.unread") })
45993
46225
  ] }),
45994
- /* @__PURE__ */ jsx183(Title11, { level: 4, className: styles.title, children: t("genui.mailbox.messageFrom", { from: message36.from }) }),
45995
- /* @__PURE__ */ jsxs136("div", { className: styles.metaSection, children: [
45996
- /* @__PURE__ */ jsxs136("div", { className: styles.metaItem, children: [
45997
- /* @__PURE__ */ jsx183(Text58, { className: styles.metaLabel, children: t("genui.mailbox.field.from") }),
45998
- /* @__PURE__ */ jsxs136("div", { className: styles.metaValue, children: [
45999
- /* @__PURE__ */ jsx183(
46226
+ /* @__PURE__ */ jsx184(Title11, { level: 4, className: styles.title, children: t("genui.mailbox.messageFrom", { from: message36.from }) }),
46227
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaSection, children: [
46228
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaItem, children: [
46229
+ /* @__PURE__ */ jsx184(Text59, { className: styles.metaLabel, children: t("genui.mailbox.field.from") }),
46230
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaValue, children: [
46231
+ /* @__PURE__ */ jsx184(
46000
46232
  "div",
46001
46233
  {
46002
46234
  className: styles.avatar,
@@ -46004,13 +46236,13 @@ var MailboxDetailModal = ({
46004
46236
  children: getInitials2(message36.from)
46005
46237
  }
46006
46238
  ),
46007
- /* @__PURE__ */ jsx183("span", { children: message36.from })
46239
+ /* @__PURE__ */ jsx184("span", { children: message36.from })
46008
46240
  ] })
46009
46241
  ] }),
46010
- /* @__PURE__ */ jsxs136("div", { className: styles.metaItem, children: [
46011
- /* @__PURE__ */ jsx183(Text58, { className: styles.metaLabel, children: t("genui.mailbox.field.to") }),
46012
- /* @__PURE__ */ jsxs136("div", { className: styles.metaValue, children: [
46013
- /* @__PURE__ */ jsx183(
46242
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaItem, children: [
46243
+ /* @__PURE__ */ jsx184(Text59, { className: styles.metaLabel, children: t("genui.mailbox.field.to") }),
46244
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaValue, children: [
46245
+ /* @__PURE__ */ jsx184(
46014
46246
  "div",
46015
46247
  {
46016
46248
  className: styles.avatar,
@@ -46018,25 +46250,25 @@ var MailboxDetailModal = ({
46018
46250
  children: getInitials2(message36.to)
46019
46251
  }
46020
46252
  ),
46021
- /* @__PURE__ */ jsx183("span", { children: message36.to })
46253
+ /* @__PURE__ */ jsx184("span", { children: message36.to })
46022
46254
  ] })
46023
46255
  ] }),
46024
- /* @__PURE__ */ jsxs136("div", { className: styles.metaItem, children: [
46025
- /* @__PURE__ */ jsx183(Text58, { className: styles.metaLabel, children: t("genui.mailbox.field.time") }),
46026
- /* @__PURE__ */ jsxs136("div", { className: styles.metaValue, children: [
46027
- /* @__PURE__ */ jsx183(Calendar2, { size: 14 }),
46028
- /* @__PURE__ */ jsx183("span", { children: formatDate3(message36.timestamp, t.locale) })
46256
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaItem, children: [
46257
+ /* @__PURE__ */ jsx184(Text59, { className: styles.metaLabel, children: t("genui.mailbox.field.time") }),
46258
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaValue, children: [
46259
+ /* @__PURE__ */ jsx184(Calendar2, { size: 14 }),
46260
+ /* @__PURE__ */ jsx184("span", { children: formatDate3(message36.timestamp, t.locale) })
46029
46261
  ] })
46030
46262
  ] }),
46031
- /* @__PURE__ */ jsxs136("div", { className: styles.metaItem, children: [
46032
- /* @__PURE__ */ jsx183(Text58, { className: styles.metaLabel, children: t("genui.mailbox.field.type") }),
46033
- /* @__PURE__ */ jsx183("div", { className: styles.metaValue, children: /* @__PURE__ */ jsx183(Tag38, { color: message36.type === "broadcast" ? "blue" : "default", children: message36.type }) })
46263
+ /* @__PURE__ */ jsxs137("div", { className: styles.metaItem, children: [
46264
+ /* @__PURE__ */ jsx184(Text59, { className: styles.metaLabel, children: t("genui.mailbox.field.type") }),
46265
+ /* @__PURE__ */ jsx184("div", { className: styles.metaValue, children: /* @__PURE__ */ jsx184(Tag38, { color: message36.type === "broadcast" ? "blue" : "default", children: message36.type }) })
46034
46266
  ] })
46035
46267
  ] }),
46036
- /* @__PURE__ */ jsx183(Divider3, {}),
46037
- /* @__PURE__ */ jsxs136("div", { className: styles.contentSection, children: [
46038
- /* @__PURE__ */ jsx183(Text58, { className: styles.contentLabel, children: t("genui.mailbox.messageContent") }),
46039
- /* @__PURE__ */ jsx183("div", { className: styles.contentBox, children: /* @__PURE__ */ jsx183(Paragraph6, { className: styles.messageContent, children: message36.content }) })
46268
+ /* @__PURE__ */ jsx184(Divider3, {}),
46269
+ /* @__PURE__ */ jsxs137("div", { className: styles.contentSection, children: [
46270
+ /* @__PURE__ */ jsx184(Text59, { className: styles.contentLabel, children: t("genui.mailbox.messageContent") }),
46271
+ /* @__PURE__ */ jsx184("div", { className: styles.contentBox, children: /* @__PURE__ */ jsx184(Paragraph6, { className: styles.messageContent, children: message36.content }) })
46040
46272
  ] })
46041
46273
  ] })
46042
46274
  }
@@ -46044,9 +46276,9 @@ var MailboxDetailModal = ({
46044
46276
  };
46045
46277
 
46046
46278
  // src/components/GenUI/elements/MailboxPanel.tsx
46047
- import { jsx as jsx184, jsxs as jsxs137 } from "react/jsx-runtime";
46048
- var { Title: Title12, Text: Text59 } = Typography71;
46049
- var useStyles57 = createStyles77(({ token, css }) => ({
46279
+ import { jsx as jsx185, jsxs as jsxs138 } from "react/jsx-runtime";
46280
+ var { Title: Title12, Text: Text60 } = Typography72;
46281
+ var useStyles58 = createStyles78(({ token, css }) => ({
46050
46282
  container: css`
46051
46283
  padding: ${token.paddingLG}px;
46052
46284
  height: 100%;
@@ -46235,17 +46467,17 @@ var getMessagePreview = (content) => {
46235
46467
  return firstLine2.length > 80 ? firstLine2.slice(0, 80) + "..." : firstLine2;
46236
46468
  };
46237
46469
  var MessageGroupComponent = ({ group, styles, defaultExpanded = true, onMessageClick }) => {
46238
- const [isExpanded, setIsExpanded] = useState128(defaultExpanded);
46470
+ const [isExpanded, setIsExpanded] = useState129(defaultExpanded);
46239
46471
  const t = useT();
46240
- return /* @__PURE__ */ jsxs137("div", { className: styles.listGroup, children: [
46241
- /* @__PURE__ */ jsxs137(
46472
+ return /* @__PURE__ */ jsxs138("div", { className: styles.listGroup, children: [
46473
+ /* @__PURE__ */ jsxs138(
46242
46474
  "div",
46243
46475
  {
46244
46476
  className: styles.listGroupHeader,
46245
46477
  onClick: () => setIsExpanded(!isExpanded),
46246
46478
  children: [
46247
- isExpanded ? /* @__PURE__ */ jsx184(ChevronDown7, { size: 16 }) : /* @__PURE__ */ jsx184(ChevronRight7, { size: 16 }),
46248
- /* @__PURE__ */ jsx184(
46479
+ isExpanded ? /* @__PURE__ */ jsx185(ChevronDown7, { size: 16 }) : /* @__PURE__ */ jsx185(ChevronRight7, { size: 16 }),
46480
+ /* @__PURE__ */ jsx185(
46249
46481
  "div",
46250
46482
  {
46251
46483
  className: styles.listGroupAvatar,
@@ -46253,26 +46485,26 @@ var MessageGroupComponent = ({ group, styles, defaultExpanded = true, onMessageC
46253
46485
  children: getInitials3(group.sender)
46254
46486
  }
46255
46487
  ),
46256
- /* @__PURE__ */ jsx184("span", { className: styles.listGroupTitle, children: group.sender }),
46257
- /* @__PURE__ */ jsxs137("span", { className: styles.listGroupCount, children: [
46488
+ /* @__PURE__ */ jsx185("span", { className: styles.listGroupTitle, children: group.sender }),
46489
+ /* @__PURE__ */ jsxs138("span", { className: styles.listGroupCount, children: [
46258
46490
  t("genui.mailbox.messageCount", { count: group.messages.length }),
46259
- group.unreadCount > 0 && /* @__PURE__ */ jsx184("span", { style: { color: "#ff4d4f", marginLeft: 8 }, children: t("genui.mailbox.unreadCount", { count: group.unreadCount }) })
46491
+ group.unreadCount > 0 && /* @__PURE__ */ jsx185("span", { style: { color: "#ff4d4f", marginLeft: 8 }, children: t("genui.mailbox.unreadCount", { count: group.unreadCount }) })
46260
46492
  ] })
46261
46493
  ]
46262
46494
  }
46263
46495
  ),
46264
- isExpanded && /* @__PURE__ */ jsx184("div", { className: styles.listGroupContent, children: group.messages.map((message36) => /* @__PURE__ */ jsxs137(
46496
+ isExpanded && /* @__PURE__ */ jsx185("div", { className: styles.listGroupContent, children: group.messages.map((message36) => /* @__PURE__ */ jsxs138(
46265
46497
  "div",
46266
46498
  {
46267
46499
  className: `${styles.listItem} ${!message36.read ? styles.listItemUnread : ""}`,
46268
46500
  onClick: () => onMessageClick(message36),
46269
46501
  children: [
46270
- /* @__PURE__ */ jsx184("div", { className: styles.listItemIcon, children: !message36.read ? /* @__PURE__ */ jsx184("div", { className: styles.unreadBadge }) : /* @__PURE__ */ jsx184(Circle, { size: 8, style: { color: "#d9d9d9" } }) }),
46271
- /* @__PURE__ */ jsxs137("div", { className: styles.listItemContent, children: [
46272
- /* @__PURE__ */ jsx184("span", { className: styles.listItemPreview, children: getMessagePreview(message36.content) }),
46273
- /* @__PURE__ */ jsx184("span", { className: styles.listItemMeta, children: t("genui.mailbox.toLine", { to: message36.to, type: message36.type }) })
46502
+ /* @__PURE__ */ jsx185("div", { className: styles.listItemIcon, children: !message36.read ? /* @__PURE__ */ jsx185("div", { className: styles.unreadBadge }) : /* @__PURE__ */ jsx185(Circle, { size: 8, style: { color: "#d9d9d9" } }) }),
46503
+ /* @__PURE__ */ jsxs138("div", { className: styles.listItemContent, children: [
46504
+ /* @__PURE__ */ jsx185("span", { className: styles.listItemPreview, children: getMessagePreview(message36.content) }),
46505
+ /* @__PURE__ */ jsx185("span", { className: styles.listItemMeta, children: t("genui.mailbox.toLine", { to: message36.to, type: message36.type }) })
46274
46506
  ] }),
46275
- /* @__PURE__ */ jsx184("div", { className: styles.listItemRight, children: /* @__PURE__ */ jsx184("span", { className: styles.listItemDate, children: formatDate4(message36.timestamp, t("genui.date.yesterday")) }) })
46507
+ /* @__PURE__ */ jsx185("div", { className: styles.listItemRight, children: /* @__PURE__ */ jsx185("span", { className: styles.listItemDate, children: formatDate4(message36.timestamp, t("genui.date.yesterday")) }) })
46276
46508
  ]
46277
46509
  },
46278
46510
  message36.id
@@ -46280,12 +46512,12 @@ var MessageGroupComponent = ({ group, styles, defaultExpanded = true, onMessageC
46280
46512
  ] });
46281
46513
  };
46282
46514
  var MailboxPanel = ({ data }) => {
46283
- const { styles } = useStyles57();
46515
+ const { styles } = useStyles58();
46284
46516
  const t = useT();
46285
- const [selectedMessage, setSelectedMessage] = useState128(null);
46286
- const [modalVisible, setModalVisible] = useState128(false);
46517
+ const [selectedMessage, setSelectedMessage] = useState129(null);
46518
+ const [modalVisible, setModalVisible] = useState129(false);
46287
46519
  const { teamMailbox = [] } = data || {};
46288
- const messageGroups = useMemo49(() => {
46520
+ const messageGroups = useMemo50(() => {
46289
46521
  const groupsMap = /* @__PURE__ */ new Map();
46290
46522
  teamMailbox.forEach((message36) => {
46291
46523
  const sender = message36.from;
@@ -46317,18 +46549,18 @@ var MailboxPanel = ({ data }) => {
46317
46549
  setModalVisible(false);
46318
46550
  setSelectedMessage(null);
46319
46551
  };
46320
- return /* @__PURE__ */ jsxs137("div", { className: styles.container, children: [
46321
- /* @__PURE__ */ jsx184("div", { className: styles.header, children: /* @__PURE__ */ jsxs137("div", { children: [
46322
- /* @__PURE__ */ jsxs137(Title12, { level: 3, className: styles.title, children: [
46323
- /* @__PURE__ */ jsx184(Mail2, { size: 20, style: { marginRight: 8, verticalAlign: "middle" } }),
46552
+ return /* @__PURE__ */ jsxs138("div", { className: styles.container, children: [
46553
+ /* @__PURE__ */ jsx185("div", { className: styles.header, children: /* @__PURE__ */ jsxs138("div", { children: [
46554
+ /* @__PURE__ */ jsxs138(Title12, { level: 3, className: styles.title, children: [
46555
+ /* @__PURE__ */ jsx185(Mail2, { size: 20, style: { marginRight: 8, verticalAlign: "middle" } }),
46324
46556
  t("genui.mailbox.title")
46325
46557
  ] }),
46326
- /* @__PURE__ */ jsxs137(Text59, { type: "secondary", children: [
46558
+ /* @__PURE__ */ jsxs138(Text60, { type: "secondary", children: [
46327
46559
  t("genui.mailbox.summary", { messages: teamMailbox.length, senders: messageGroups.length }),
46328
46560
  totalUnread > 0 && t("genui.mailbox.unreadSuffix", { count: totalUnread })
46329
46561
  ] })
46330
46562
  ] }) }),
46331
- /* @__PURE__ */ jsx184("div", { className: styles.content, children: teamMailbox.length === 0 ? /* @__PURE__ */ jsx184("div", { className: styles.emptyState, children: /* @__PURE__ */ jsx184(Empty22, { description: t("genui.mailbox.empty") }) }) : /* @__PURE__ */ jsx184("div", { className: styles.listContainer, children: messageGroups.map((group) => /* @__PURE__ */ jsx184(
46563
+ /* @__PURE__ */ jsx185("div", { className: styles.content, children: teamMailbox.length === 0 ? /* @__PURE__ */ jsx185("div", { className: styles.emptyState, children: /* @__PURE__ */ jsx185(Empty22, { description: t("genui.mailbox.empty") }) }) : /* @__PURE__ */ jsx185("div", { className: styles.listContainer, children: messageGroups.map((group) => /* @__PURE__ */ jsx185(
46332
46564
  MessageGroupComponent,
46333
46565
  {
46334
46566
  group,
@@ -46338,7 +46570,7 @@ var MailboxPanel = ({ data }) => {
46338
46570
  },
46339
46571
  group.sender
46340
46572
  )) }) }),
46341
- /* @__PURE__ */ jsx184(
46573
+ /* @__PURE__ */ jsx185(
46342
46574
  MailboxDetailModal,
46343
46575
  {
46344
46576
  message: selectedMessage,
@@ -46351,11 +46583,11 @@ var MailboxPanel = ({ data }) => {
46351
46583
 
46352
46584
  // src/components/GenUI/elements/ShowWidget.tsx
46353
46585
  import { useCallback as useCallback76 } from "react";
46354
- import { Button as Button86, Typography as Typography72 } from "antd";
46586
+ import { Button as Button86, Typography as Typography73 } from "antd";
46355
46587
  import { ExpandOutlined as ExpandOutlined2 } from "@ant-design/icons";
46356
46588
 
46357
46589
  // src/streaming-html/StreamingHTMLRenderer.tsx
46358
- import React125, { useEffect as useEffect98, useRef as useRef58, useCallback as useCallback75, useState as useState129 } from "react";
46590
+ import React126, { useEffect as useEffect98, useRef as useRef58, useCallback as useCallback75, useState as useState130 } from "react";
46359
46591
 
46360
46592
  // src/streaming-html/show-widget-css-generator.ts
46361
46593
  function generateShowWidgetCSS(tokens) {
@@ -47036,7 +47268,7 @@ svg { height:100%}
47036
47268
  }
47037
47269
 
47038
47270
  // src/streaming-html/StreamingHTMLRenderer.tsx
47039
- import { jsx as jsx185, jsxs as jsxs138 } from "react/jsx-runtime";
47271
+ import { jsx as jsx186, jsxs as jsxs139 } from "react/jsx-runtime";
47040
47272
  var StreamingHTMLRenderer = ({
47041
47273
  html,
47042
47274
  className = "",
@@ -47056,10 +47288,10 @@ var StreamingHTMLRenderer = ({
47056
47288
  const pendingChunksRef = useRef58([]);
47057
47289
  const isCompleteRef = useRef58(isComplete);
47058
47290
  const isScriptExecuted = useRef58(false);
47059
- const [iframeHeight, setIframeHeight] = React125.useState(0);
47060
- const [iframeWidth, setIframeWidth] = React125.useState(void 0);
47061
- const [currentMessageIndex, setCurrentMessageIndex] = useState129(0);
47062
- const [showLoading, setShowLoading] = useState129(true);
47291
+ const [iframeHeight, setIframeHeight] = React126.useState(0);
47292
+ const [iframeWidth, setIframeWidth] = React126.useState(void 0);
47293
+ const [currentMessageIndex, setCurrentMessageIndex] = useState130(0);
47294
+ const [showLoading, setShowLoading] = useState130(true);
47063
47295
  useEffect98(() => {
47064
47296
  isCompleteRef.current = isComplete;
47065
47297
  }, [isComplete]);
@@ -47242,14 +47474,14 @@ var StreamingHTMLRenderer = ({
47242
47474
  prevHTMLRef.current = "";
47243
47475
  };
47244
47476
  }, []);
47245
- return /* @__PURE__ */ jsxs138(
47477
+ return /* @__PURE__ */ jsxs139(
47246
47478
  "div",
47247
47479
  {
47248
47480
  ref: containerRef,
47249
47481
  className: `streaming-html-renderer ${className}`,
47250
47482
  style: { minHeight: "100px", position: "relative" },
47251
47483
  children: [
47252
- showLoading && /* @__PURE__ */ jsxs138(
47484
+ showLoading && /* @__PURE__ */ jsxs139(
47253
47485
  "div",
47254
47486
  {
47255
47487
  style: {
@@ -47268,13 +47500,13 @@ var StreamingHTMLRenderer = ({
47268
47500
  zIndex: 10
47269
47501
  },
47270
47502
  children: [
47271
- /* @__PURE__ */ jsx185("style", { children: `
47503
+ /* @__PURE__ */ jsx186("style", { children: `
47272
47504
  @keyframes shimmer {
47273
47505
  0% { background-position: -200% 0; }
47274
47506
  100% { background-position: 200% 0; }
47275
47507
  }
47276
47508
  ` }),
47277
- /* @__PURE__ */ jsx185(
47509
+ /* @__PURE__ */ jsx186(
47278
47510
  "span",
47279
47511
  {
47280
47512
  style: {
@@ -47289,7 +47521,7 @@ var StreamingHTMLRenderer = ({
47289
47521
  ]
47290
47522
  }
47291
47523
  ),
47292
- /* @__PURE__ */ jsx185(
47524
+ /* @__PURE__ */ jsx186(
47293
47525
  "iframe",
47294
47526
  {
47295
47527
  ref: iframeRef,
@@ -47312,7 +47544,7 @@ var StreamingHTMLRenderer = ({
47312
47544
  var StreamingHTMLRenderer_default = StreamingHTMLRenderer;
47313
47545
 
47314
47546
  // src/components/GenUI/elements/ShowWidget.tsx
47315
- import { jsx as jsx186, jsxs as jsxs139 } from "react/jsx-runtime";
47547
+ import { jsx as jsx187, jsxs as jsxs140 } from "react/jsx-runtime";
47316
47548
  var ShowWidget = ({
47317
47549
  data,
47318
47550
  component_key,
@@ -47356,13 +47588,13 @@ var ShowWidget = ({
47356
47588
  message: title || t("genui.showWidget.defaultTitle")
47357
47589
  });
47358
47590
  }, [openSideApp, finalHTML, title, t]);
47359
- return /* @__PURE__ */ jsxs139("div", { style: {
47591
+ return /* @__PURE__ */ jsxs140("div", { style: {
47360
47592
  display: "flex",
47361
47593
  flexDirection: "column",
47362
47594
  borderRadius: radius.lg,
47363
47595
  overflow: "hidden"
47364
47596
  }, children: [
47365
- isComplete && /* @__PURE__ */ jsxs139(
47597
+ isComplete && /* @__PURE__ */ jsxs140(
47366
47598
  "div",
47367
47599
  {
47368
47600
  style: {
@@ -47373,8 +47605,8 @@ var ShowWidget = ({
47373
47605
  position: "relative"
47374
47606
  },
47375
47607
  children: [
47376
- /* @__PURE__ */ jsx186(
47377
- Typography72.Text,
47608
+ /* @__PURE__ */ jsx187(
47609
+ Typography73.Text,
47378
47610
  {
47379
47611
  strong: true,
47380
47612
  style: {
@@ -47384,12 +47616,12 @@ var ShowWidget = ({
47384
47616
  children: title || t("genui.showWidget.defaultTitle")
47385
47617
  }
47386
47618
  ),
47387
- /* @__PURE__ */ jsx186(
47619
+ /* @__PURE__ */ jsx187(
47388
47620
  Button86,
47389
47621
  {
47390
47622
  type: "text",
47391
47623
  size: "small",
47392
- icon: /* @__PURE__ */ jsx186(ExpandOutlined2, {}),
47624
+ icon: /* @__PURE__ */ jsx187(ExpandOutlined2, {}),
47393
47625
  onClick: handleOpenInSideApp,
47394
47626
  style: {
47395
47627
  position: "absolute",
@@ -47401,7 +47633,7 @@ var ShowWidget = ({
47401
47633
  ]
47402
47634
  }
47403
47635
  ),
47404
- /* @__PURE__ */ jsx186("div", { style: { position: "relative", flex: 1 }, children: /* @__PURE__ */ jsx186(
47636
+ /* @__PURE__ */ jsx187("div", { style: { position: "relative", flex: 1 }, children: /* @__PURE__ */ jsx187(
47405
47637
  StreamingHTMLRenderer_default,
47406
47638
  {
47407
47639
  html: finalHTML,
@@ -47416,7 +47648,7 @@ var ShowWidget = ({
47416
47648
 
47417
47649
  // src/components/GenUI/elements/ShowWidgetApp.tsx
47418
47650
  import { useCallback as useCallback77 } from "react";
47419
- import { jsx as jsx187 } from "react/jsx-runtime";
47651
+ import { jsx as jsx188 } from "react/jsx-runtime";
47420
47652
  var ShowWidgetApp = ({
47421
47653
  data
47422
47654
  }) => {
@@ -47435,7 +47667,7 @@ var ShowWidgetApp = ({
47435
47667
  if (!widget_code) {
47436
47668
  return null;
47437
47669
  }
47438
- return /* @__PURE__ */ jsx187("div", { style: { padding: 24 }, children: /* @__PURE__ */ jsx187(
47670
+ return /* @__PURE__ */ jsx188("div", { style: { padding: 24 }, children: /* @__PURE__ */ jsx188(
47439
47671
  StreamingHTMLRenderer_default,
47440
47672
  {
47441
47673
  html: widget_code,
@@ -47447,11 +47679,11 @@ var ShowWidgetApp = ({
47447
47679
  };
47448
47680
 
47449
47681
  // src/components/GenUI/elements/search_collection_result.tsx
47450
- import { Card as Card18, Typography as Typography73, Tag as Tag39, Space as Space51 } from "antd";
47451
- import { createStyles as createStyles78 } from "antd-style";
47452
- import { jsx as jsx188, jsxs as jsxs140 } from "react/jsx-runtime";
47453
- var { Text: Text60, Paragraph: Paragraph7 } = Typography73;
47454
- var useStyles58 = createStyles78(({ token, css }) => ({
47682
+ import { Card as Card18, Typography as Typography74, Tag as Tag39, Space as Space51 } from "antd";
47683
+ import { createStyles as createStyles79 } from "antd-style";
47684
+ import { jsx as jsx189, jsxs as jsxs141 } from "react/jsx-runtime";
47685
+ var { Text: Text61, Paragraph: Paragraph7 } = Typography74;
47686
+ var useStyles59 = createStyles79(({ token, css }) => ({
47455
47687
  container: css`
47456
47688
  margin-bottom: ${token.marginMD}px;
47457
47689
  `,
@@ -47470,16 +47702,16 @@ var useStyles58 = createStyles78(({ token, css }) => ({
47470
47702
  var SearchCollectionResult = ({
47471
47703
  data
47472
47704
  }) => {
47473
- const { styles } = useStyles58();
47705
+ const { styles } = useStyles59();
47474
47706
  const t = useT();
47475
47707
  const { query, collection, results } = data ?? {};
47476
47708
  if (!results || results.length === 0) {
47477
47709
  return null;
47478
47710
  }
47479
- return /* @__PURE__ */ jsx188("div", { className: styles.container, children: /* @__PURE__ */ jsxs140(Card18, { size: "small", title: t("genui.search.query", { query: query || "" }), children: [
47480
- collection && /* @__PURE__ */ jsx188(Text60, { type: "secondary", style: { fontSize: 12 }, children: t("genui.search.collection", { collection }) }),
47481
- results.map((item, index) => /* @__PURE__ */ jsxs140(Card18, { size: "small", className: styles.resultCard, children: [
47482
- /* @__PURE__ */ jsx188(
47711
+ return /* @__PURE__ */ jsx189("div", { className: styles.container, children: /* @__PURE__ */ jsxs141(Card18, { size: "small", title: t("genui.search.query", { query: query || "" }), children: [
47712
+ collection && /* @__PURE__ */ jsx189(Text61, { type: "secondary", style: { fontSize: 12 }, children: t("genui.search.collection", { collection }) }),
47713
+ results.map((item, index) => /* @__PURE__ */ jsxs141(Card18, { size: "small", className: styles.resultCard, children: [
47714
+ /* @__PURE__ */ jsx189(
47483
47715
  Paragraph7,
47484
47716
  {
47485
47717
  ellipsis: { rows: 3, expandable: true, symbol: t("genui.search.more") },
@@ -47487,9 +47719,9 @@ var SearchCollectionResult = ({
47487
47719
  children: item.content
47488
47720
  }
47489
47721
  ),
47490
- /* @__PURE__ */ jsxs140(Space51, { wrap: true, className: styles.metadata, children: [
47491
- item.score !== void 0 && /* @__PURE__ */ jsx188(Text60, { className: styles.score, children: t("genui.search.score", { score: item.score.toFixed(4) }) }),
47492
- item.metadata && Object.entries(item.metadata).filter(([k]) => !k.startsWith("_")).map(([k, v]) => /* @__PURE__ */ jsxs140(Tag39, { children: [
47722
+ /* @__PURE__ */ jsxs141(Space51, { wrap: true, className: styles.metadata, children: [
47723
+ item.score !== void 0 && /* @__PURE__ */ jsx189(Text61, { className: styles.score, children: t("genui.search.score", { score: item.score.toFixed(4) }) }),
47724
+ item.metadata && Object.entries(item.metadata).filter(([k]) => !k.startsWith("_")).map(([k, v]) => /* @__PURE__ */ jsxs141(Tag39, { children: [
47493
47725
  k,
47494
47726
  ": ",
47495
47727
  String(v)
@@ -47501,33 +47733,33 @@ var SearchCollectionResult = ({
47501
47733
 
47502
47734
  // src/components/McpApp/McpAppCard.tsx
47503
47735
  import { parseMcpUiRef as parseMcpUiRef3 } from "@axiom-lattice/protocols";
47504
- import { jsx as jsx189, jsxs as jsxs141 } from "react/jsx-runtime";
47505
- var asRecord3 = (value) => typeof value === "object" && value !== null && !Array.isArray(value) ? value : void 0;
47736
+ import { jsx as jsx190, jsxs as jsxs142 } from "react/jsx-runtime";
47737
+ var asRecord4 = (value) => typeof value === "object" && value !== null && !Array.isArray(value) ? value : void 0;
47506
47738
  var McpAppCard = ({ data, component_key }) => {
47507
47739
  const uiRef = parseMcpUiRef3(data);
47508
47740
  if (!uiRef) return null;
47509
- const record = asRecord3(data);
47510
- return /* @__PURE__ */ jsxs141("div", { children: [
47511
- /* @__PURE__ */ jsx189(
47741
+ const record = asRecord4(data);
47742
+ return /* @__PURE__ */ jsxs142("div", { children: [
47743
+ /* @__PURE__ */ jsx190(
47512
47744
  McpAppToolbar,
47513
47745
  {
47514
47746
  uiRef,
47515
- ui: asRecord3(record?.ui),
47516
- toolInput: asRecord3(record?.toolInput),
47747
+ ui: asRecord4(record?.ui),
47748
+ toolInput: asRecord4(record?.toolInput),
47517
47749
  toolResult: record?.toolResult
47518
47750
  }
47519
47751
  ),
47520
- /* @__PURE__ */ jsx189(McpAppFullscreen, { data, component_key })
47752
+ /* @__PURE__ */ jsx190(McpAppFullscreen, { data, component_key })
47521
47753
  ] });
47522
47754
  };
47523
47755
 
47524
47756
  // src/components/GenUI/elements/builtIns.tsx
47525
- import { jsx as jsx190 } from "react/jsx-runtime";
47757
+ import { jsx as jsx191 } from "react/jsx-runtime";
47526
47758
  var TasksSideApp3 = lazy4(
47527
- () => import("./TasksSideApp-F2ZZTWGN.mjs").then((m) => ({ default: m.TasksSideApp }))
47759
+ () => import("./TasksSideApp-5UTBVBIW.mjs").then((m) => ({ default: m.TasksSideApp }))
47528
47760
  );
47529
47761
  var TeamWorkspace = lazy4(
47530
- () => import("./TeamWorkspace-AQOUI5EN.mjs").then((m) => ({ default: m.TeamWorkspace }))
47762
+ () => import("./TeamWorkspace-WZ7EHM3X.mjs").then((m) => ({ default: m.TeamWorkspace }))
47531
47763
  );
47532
47764
  var elements = {
47533
47765
  action_show_attachments_uploader: {
@@ -47566,7 +47798,7 @@ var elements = {
47566
47798
  },
47567
47799
  manage_task: {
47568
47800
  card_view: TaskManageCard,
47569
- side_app_view: ({ data }) => /* @__PURE__ */ jsx190(Suspense5, { fallback: /* @__PURE__ */ jsx190(Spin34, { style: { display: "block", margin: "auto" } }), children: /* @__PURE__ */ jsx190(TasksSideApp3, { initialTask: data?.task }) })
47801
+ side_app_view: ({ data }) => /* @__PURE__ */ jsx191(Suspense5, { fallback: /* @__PURE__ */ jsx191(Spin34, { style: { display: "block", margin: "auto" } }), children: /* @__PURE__ */ jsx191(TasksSideApp3, { initialTask: data?.task }) })
47570
47802
  },
47571
47803
  tool_card: {
47572
47804
  card_view: ToolCard
@@ -47618,7 +47850,7 @@ var elements = {
47618
47850
  },
47619
47851
  team_workspace: {
47620
47852
  card_view: () => null,
47621
- side_app_view: (props) => /* @__PURE__ */ jsx190(Suspense5, { fallback: /* @__PURE__ */ jsx190(Spin34, { style: { display: "block", margin: "auto" } }), children: /* @__PURE__ */ jsx190(TeamWorkspace, { ...props }) })
47853
+ side_app_view: (props) => /* @__PURE__ */ jsx191(Suspense5, { fallback: /* @__PURE__ */ jsx191(Spin34, { style: { display: "block", margin: "auto" } }), children: /* @__PURE__ */ jsx191(TeamWorkspace, { ...props }) })
47622
47854
  },
47623
47855
  task_board: {
47624
47856
  card_view: TaskBoard,
@@ -47658,9 +47890,9 @@ var regsiterElement = (language, ElementMeta) => {
47658
47890
  import { CodeHighlighter } from "@ant-design/x";
47659
47891
 
47660
47892
  // src/components/GenUI/Embed.tsx
47661
- import { useMemo as useMemo50, useState as useState130 } from "react";
47893
+ import { useMemo as useMemo51, useState as useState131 } from "react";
47662
47894
  import { Collapse as Collapse10, Button as Button87 } from "antd";
47663
- import { createStyles as createStyles79 } from "antd-style";
47895
+ import { createStyles as createStyles80 } from "antd-style";
47664
47896
  import {
47665
47897
  FileTextOutlined as FileTextOutlined8,
47666
47898
  FileImageOutlined as FileImageOutlined5,
@@ -47674,8 +47906,8 @@ import {
47674
47906
  LinkOutlined as LinkOutlined4
47675
47907
  } from "@ant-design/icons";
47676
47908
  import { Alert as Alert24 } from "antd";
47677
- import { jsx as jsx191, jsxs as jsxs142 } from "react/jsx-runtime";
47678
- var useStyles59 = createStyles79(({ token, css }) => ({
47909
+ import { jsx as jsx192, jsxs as jsxs143 } from "react/jsx-runtime";
47910
+ var useStyles60 = createStyles80(({ token, css }) => ({
47679
47911
  container: css`
47680
47912
  margin: 16px 0;
47681
47913
  border: 1px solid ${token.colorBorderSecondary};
@@ -47737,37 +47969,37 @@ function getFileIcon2(fileName) {
47737
47969
  switch (category) {
47738
47970
  case "markdown":
47739
47971
  case "text":
47740
- return /* @__PURE__ */ jsx191(FileTextOutlined8, {});
47972
+ return /* @__PURE__ */ jsx192(FileTextOutlined8, {});
47741
47973
  case "image":
47742
- return /* @__PURE__ */ jsx191(FileImageOutlined5, {});
47974
+ return /* @__PURE__ */ jsx192(FileImageOutlined5, {});
47743
47975
  case "pdf":
47744
- return /* @__PURE__ */ jsx191(FilePdfOutlined5, {});
47976
+ return /* @__PURE__ */ jsx192(FilePdfOutlined5, {});
47745
47977
  case "audio":
47746
- return /* @__PURE__ */ jsx191(SoundOutlined, {});
47978
+ return /* @__PURE__ */ jsx192(SoundOutlined, {});
47747
47979
  case "video":
47748
- return /* @__PURE__ */ jsx191(PlayCircleOutlined2, {});
47980
+ return /* @__PURE__ */ jsx192(PlayCircleOutlined2, {});
47749
47981
  default: {
47750
47982
  const ext = fileName.split(".").pop()?.toLowerCase();
47751
- if (["doc", "docx"].includes(ext || "")) return /* @__PURE__ */ jsx191(FileWordOutlined3, {});
47752
- if (["xls", "xlsx", "csv"].includes(ext || "")) return /* @__PURE__ */ jsx191(FileExcelOutlined3, {});
47753
- if (["zip", "rar", "7z", "tar", "gz"].includes(ext || "")) return /* @__PURE__ */ jsx191(FileZipOutlined3, {});
47754
- return /* @__PURE__ */ jsx191(FileUnknownOutlined5, {});
47983
+ if (["doc", "docx"].includes(ext || "")) return /* @__PURE__ */ jsx192(FileWordOutlined3, {});
47984
+ if (["xls", "xlsx", "csv"].includes(ext || "")) return /* @__PURE__ */ jsx192(FileExcelOutlined3, {});
47985
+ if (["zip", "rar", "7z", "tar", "gz"].includes(ext || "")) return /* @__PURE__ */ jsx192(FileZipOutlined3, {});
47986
+ return /* @__PURE__ */ jsx192(FileUnknownOutlined5, {});
47755
47987
  }
47756
47988
  }
47757
47989
  }
47758
47990
  var Embed = ({ children }) => {
47759
- const { styles } = useStyles59();
47991
+ const { styles } = useStyles60();
47760
47992
  const { config } = useLatticeChatShellContext();
47761
47993
  const { threadId, assistantId } = useOptionalConversationContext() ?? {};
47762
47994
  const t = useT();
47763
- const [shareOpen, setShareOpen] = useState130(false);
47764
- const embedConfig = useMemo50(() => parseEmbedContent(children), [children]);
47765
- const fileUrl = useMemo50(() => {
47995
+ const [shareOpen, setShareOpen] = useState131(false);
47996
+ const embedConfig = useMemo51(() => parseEmbedContent(children), [children]);
47997
+ const fileUrl = useMemo51(() => {
47766
47998
  if (embedConfig.url) return embedConfig.url;
47767
47999
  if (!embedConfig.path || !config?.baseURL || !assistantId || !threadId) return null;
47768
48000
  return `${config.baseURL}/api/assistants/${assistantId}/threads/${threadId}/sandbox/downloadfile?path=${encodeURIComponent(embedConfig.path)}`;
47769
48001
  }, [embedConfig, config?.baseURL, assistantId, threadId]);
47770
- const displayTitle = useMemo50(() => {
48002
+ const displayTitle = useMemo51(() => {
47771
48003
  if (embedConfig.title) return embedConfig.title;
47772
48004
  if (embedConfig.path) return embedConfig.path.split("/").pop() || embedConfig.path;
47773
48005
  if (embedConfig.url) {
@@ -47779,12 +48011,12 @@ var Embed = ({ children }) => {
47779
48011
  }
47780
48012
  return t("genui.embed.defaultTitle");
47781
48013
  }, [embedConfig, t]);
47782
- const fileIcon = useMemo50(() => {
48014
+ const fileIcon = useMemo51(() => {
47783
48015
  const fileName = embedConfig.path || embedConfig.url || "";
47784
48016
  return getFileIcon2(fileName);
47785
48017
  }, [embedConfig]);
47786
48018
  if (!fileUrl) {
47787
- return /* @__PURE__ */ jsx191("div", { className: styles.error, children: /* @__PURE__ */ jsx191(
48019
+ return /* @__PURE__ */ jsx192("div", { className: styles.error, children: /* @__PURE__ */ jsx192(
47788
48020
  Alert24,
47789
48021
  {
47790
48022
  message: t("genui.embed.invalidConfig"),
@@ -47794,9 +48026,9 @@ var Embed = ({ children }) => {
47794
48026
  }
47795
48027
  ) });
47796
48028
  }
47797
- const contentElement = /* @__PURE__ */ jsx191("div", { className: styles.content, children: /* @__PURE__ */ jsx191(FileRenderer, { fileUrl, fileName: displayTitle }) });
48029
+ const contentElement = /* @__PURE__ */ jsx192("div", { className: styles.content, children: /* @__PURE__ */ jsx192(FileRenderer, { fileUrl, fileName: displayTitle }) });
47798
48030
  if (embedConfig.collapsed) {
47799
- return /* @__PURE__ */ jsx191(
48031
+ return /* @__PURE__ */ jsx192(
47800
48032
  Collapse10,
47801
48033
  {
47802
48034
  size: "small",
@@ -47804,9 +48036,9 @@ var Embed = ({ children }) => {
47804
48036
  items: [
47805
48037
  {
47806
48038
  key: "1",
47807
- label: /* @__PURE__ */ jsxs142("span", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
47808
- /* @__PURE__ */ jsx191("span", { children: fileIcon }),
47809
- /* @__PURE__ */ jsx191("span", { children: displayTitle })
48039
+ label: /* @__PURE__ */ jsxs143("span", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
48040
+ /* @__PURE__ */ jsx192("span", { children: fileIcon }),
48041
+ /* @__PURE__ */ jsx192("span", { children: displayTitle })
47810
48042
  ] }),
47811
48043
  children: contentElement
47812
48044
  }
@@ -47814,23 +48046,23 @@ var Embed = ({ children }) => {
47814
48046
  }
47815
48047
  );
47816
48048
  }
47817
- return /* @__PURE__ */ jsxs142("div", { className: styles.container, children: [
47818
- /* @__PURE__ */ jsxs142("div", { className: styles.header, children: [
47819
- /* @__PURE__ */ jsx191("span", { className: styles.headerIcon, children: fileIcon }),
47820
- /* @__PURE__ */ jsx191("span", { className: styles.headerTitle, children: displayTitle }),
47821
- /* @__PURE__ */ jsx191(
48049
+ return /* @__PURE__ */ jsxs143("div", { className: styles.container, children: [
48050
+ /* @__PURE__ */ jsxs143("div", { className: styles.header, children: [
48051
+ /* @__PURE__ */ jsx192("span", { className: styles.headerIcon, children: fileIcon }),
48052
+ /* @__PURE__ */ jsx192("span", { className: styles.headerTitle, children: displayTitle }),
48053
+ /* @__PURE__ */ jsx192(
47822
48054
  Button87,
47823
48055
  {
47824
48056
  type: "text",
47825
48057
  size: "small",
47826
- icon: /* @__PURE__ */ jsx191(LinkOutlined4, {}),
48058
+ icon: /* @__PURE__ */ jsx192(LinkOutlined4, {}),
47827
48059
  onClick: () => setShareOpen(true),
47828
48060
  children: t("genui.share.action")
47829
48061
  }
47830
48062
  )
47831
48063
  ] }),
47832
48064
  contentElement,
47833
- shareOpen && /* @__PURE__ */ jsx191(
48065
+ shareOpen && /* @__PURE__ */ jsx192(
47834
48066
  ShareModal,
47835
48067
  {
47836
48068
  open: shareOpen,
@@ -47844,17 +48076,17 @@ var Embed = ({ children }) => {
47844
48076
  };
47845
48077
 
47846
48078
  // src/components/GenUI/Code.tsx
47847
- import { jsx as jsx192 } from "react/jsx-runtime";
48079
+ import { jsx as jsx193 } from "react/jsx-runtime";
47848
48080
  var LazyMermaid = lazy5(() => import("@ant-design/x/es/mermaid"));
47849
48081
  var LazyReactInfographic = lazy5(
47850
48082
  () => import("./ReactInfographic-P7JL7DME.mjs").then((m) => ({ default: m.ReactInfographic }))
47851
48083
  );
47852
48084
  var LazyReactChart = lazy5(
47853
- () => import("./ReactChart-FHVYPC7S.mjs").then((m) => ({ default: m.ReactChart }))
48085
+ () => import("./ReactChart-IW27RELF.mjs").then((m) => ({ default: m.ReactChart }))
47854
48086
  );
47855
48087
  function BlockLoading() {
47856
48088
  const t = useT();
47857
- return /* @__PURE__ */ jsx192(
48089
+ return /* @__PURE__ */ jsx193(
47858
48090
  "div",
47859
48091
  {
47860
48092
  style: {
@@ -47888,28 +48120,28 @@ var Code = (props) => {
47888
48120
  } catch (error) {
47889
48121
  }
47890
48122
  if (language === "task_review") {
47891
- return /* @__PURE__ */ jsx192(Element, { component_key: language, data: childrenData, interactive: false });
48123
+ return /* @__PURE__ */ jsx193(Element, { component_key: language, data: childrenData, interactive: false });
47892
48124
  }
47893
- return /* @__PURE__ */ jsx192(Element, { component_key: language, data: childrenData });
48125
+ return /* @__PURE__ */ jsx193(Element, { component_key: language, data: childrenData });
47894
48126
  }
47895
48127
  switch (language) {
47896
48128
  case "infographic":
47897
- return /* @__PURE__ */ jsx192(Suspense6, { fallback: /* @__PURE__ */ jsx192(BlockLoading, {}), children: /* @__PURE__ */ jsx192(LazyReactInfographic, { children }) });
48129
+ return /* @__PURE__ */ jsx193(Suspense6, { fallback: /* @__PURE__ */ jsx193(BlockLoading, {}), children: /* @__PURE__ */ jsx193(LazyReactInfographic, { children }) });
47898
48130
  case "mermaid":
47899
- return /* @__PURE__ */ jsx192(Suspense6, { fallback: /* @__PURE__ */ jsx192(BlockLoading, {}), children: /* @__PURE__ */ jsx192(LazyMermaid, { children }) });
48131
+ return /* @__PURE__ */ jsx193(Suspense6, { fallback: /* @__PURE__ */ jsx193(BlockLoading, {}), children: /* @__PURE__ */ jsx193(LazyMermaid, { children }) });
47900
48132
  case "chart":
47901
- return /* @__PURE__ */ jsx192(Suspense6, { fallback: /* @__PURE__ */ jsx192(BlockLoading, {}), children: /* @__PURE__ */ jsx192(LazyReactChart, { children }) });
48133
+ return /* @__PURE__ */ jsx193(Suspense6, { fallback: /* @__PURE__ */ jsx193(BlockLoading, {}), children: /* @__PURE__ */ jsx193(LazyReactChart, { children }) });
47902
48134
  case "embed":
47903
- return /* @__PURE__ */ jsx192(Embed, { children });
48135
+ return /* @__PURE__ */ jsx193(Embed, { children });
47904
48136
  default:
47905
- return /* @__PURE__ */ jsx192(Suspense6, { fallback: /* @__PURE__ */ jsx192(BlockLoading, {}), children: /* @__PURE__ */ jsx192(CodeHighlighter, { lang: language, children }) });
48137
+ return /* @__PURE__ */ jsx193(Suspense6, { fallback: /* @__PURE__ */ jsx193(BlockLoading, {}), children: /* @__PURE__ */ jsx193(CodeHighlighter, { lang: language, children }) });
47906
48138
  }
47907
48139
  }
47908
- return /* @__PURE__ */ jsx192(Suspense6, { fallback: /* @__PURE__ */ jsx192(BlockLoading, {}), children: /* @__PURE__ */ jsx192(CodeHighlighter, { lang: language, children }) });
48140
+ return /* @__PURE__ */ jsx193(Suspense6, { fallback: /* @__PURE__ */ jsx193(BlockLoading, {}), children: /* @__PURE__ */ jsx193(CodeHighlighter, { lang: language, children }) });
47909
48141
  };
47910
48142
 
47911
48143
  // src/components/GenUI/MDComponentWrap.tsx
47912
- import { jsx as jsx193 } from "react/jsx-runtime";
48144
+ import { jsx as jsx194 } from "react/jsx-runtime";
47913
48145
  var MDComponentWrap = (Element) => {
47914
48146
  return (props) => {
47915
48147
  if (!props) {
@@ -47923,7 +48155,7 @@ var MDComponentWrap = (Element) => {
47923
48155
  childrenStr = children.join("");
47924
48156
  }
47925
48157
  if (!childrenStr) {
47926
- return /* @__PURE__ */ jsx193(Element, { component_key: className, data: void 0 });
48158
+ return /* @__PURE__ */ jsx194(Element, { component_key: className, data: void 0 });
47927
48159
  }
47928
48160
  let data;
47929
48161
  try {
@@ -47931,26 +48163,26 @@ var MDComponentWrap = (Element) => {
47931
48163
  } catch (error) {
47932
48164
  data = childrenStr;
47933
48165
  }
47934
- return /* @__PURE__ */ jsx193(Element, { component_key: className, data });
48166
+ return /* @__PURE__ */ jsx194(Element, { component_key: className, data });
47935
48167
  };
47936
48168
  };
47937
48169
 
47938
48170
  // src/components/GenUI/elements/file_link.tsx
47939
48171
  import { Button as Button88 } from "antd";
47940
- import { useMemo as useMemo51, useCallback as useCallback78 } from "react";
47941
- import { Fragment as Fragment55, jsx as jsx194 } from "react/jsx-runtime";
48172
+ import { useMemo as useMemo52, useCallback as useCallback78 } from "react";
48173
+ import { Fragment as Fragment55, jsx as jsx195 } from "react/jsx-runtime";
47942
48174
  var FileLink = ({ data }) => {
47943
48175
  if (!data) {
47944
48176
  return null;
47945
48177
  }
47946
48178
  if (!isFileName(data)) {
47947
- return /* @__PURE__ */ jsx194(Fragment55, { children: data });
48179
+ return /* @__PURE__ */ jsx195(Fragment55, { children: data });
47948
48180
  }
47949
48181
  const openSideApp = useSideAppOpener();
47950
48182
  const { threadId, assistantId } = useOptionalConversationContext() ?? {};
47951
48183
  const { config } = useLatticeChatShellContext();
47952
48184
  const t = useT();
47953
- const fileEndpoint = useMemo51(() => {
48185
+ const fileEndpoint = useMemo52(() => {
47954
48186
  if (!config?.baseURL || !assistantId || !threadId) {
47955
48187
  return null;
47956
48188
  }
@@ -47974,15 +48206,15 @@ var FileLink = ({ data }) => {
47974
48206
  });
47975
48207
  }, [fileEndpoint, openSideApp, t]);
47976
48208
  if (!fileEndpoint) {
47977
- return /* @__PURE__ */ jsx194("span", { children: data });
48209
+ return /* @__PURE__ */ jsx195("span", { children: data });
47978
48210
  }
47979
- return /* @__PURE__ */ jsx194(Button88, { type: "link", size: "small", onClick: () => handleItemClick(data), children: data });
48211
+ return /* @__PURE__ */ jsx195(Button88, { type: "link", size: "small", onClick: () => handleItemClick(data), children: data });
47980
48212
  };
47981
48213
 
47982
48214
  // src/components/GenUI/elements/file_path_link.tsx
47983
- import { useCallback as useCallback79, useContext as useContext14, useMemo as useMemo52 } from "react";
48215
+ import { useCallback as useCallback79, useContext as useContext14, useMemo as useMemo53 } from "react";
47984
48216
  import { Button as Button89 } from "antd";
47985
- import { jsx as jsx195 } from "react/jsx-runtime";
48217
+ import { jsx as jsx196 } from "react/jsx-runtime";
47986
48218
  var WEB_APP_RUNTIME_BASE_RE = /\/api\/web-apps\/[^/]+\/runtime$/;
47987
48219
  var FilePathLink = ({ data }) => {
47988
48220
  if (data === void 0 || data === null) {
@@ -47997,7 +48229,7 @@ var FilePathLink = ({ data }) => {
47997
48229
  const { config } = useLatticeChatShellContext();
47998
48230
  const workspaceCtx = useContext14(WorkspaceContext);
47999
48231
  const t = useT();
48000
- const urls = useMemo52(() => {
48232
+ const urls = useMemo53(() => {
48001
48233
  if (workspaceCtx?.workspaceId && workspaceCtx?.projectId) {
48002
48234
  const view = workspaceCtx.getFileViewUrl(path, assistantId || void 0);
48003
48235
  const download = workspaceCtx.getFileDownloadUrl(path, assistantId || void 0);
@@ -48039,14 +48271,14 @@ var FilePathLink = ({ data }) => {
48039
48271
  });
48040
48272
  }, [urls, path, openSideApp, t]);
48041
48273
  if (!urls) {
48042
- return /* @__PURE__ */ jsx195("span", { children: path });
48274
+ return /* @__PURE__ */ jsx196("span", { children: path });
48043
48275
  }
48044
- return /* @__PURE__ */ jsx195(Button89, { type: "link", size: "small", onClick: handleClick, children: path });
48276
+ return /* @__PURE__ */ jsx196(Button89, { type: "link", size: "small", onClick: handleClick, children: path });
48045
48277
  };
48046
48278
 
48047
48279
  // src/components/GenUI/elements/MarkdownTable.tsx
48048
- import { useMemo as useMemo53 } from "react";
48049
- import { jsx as jsx196 } from "react/jsx-runtime";
48280
+ import { useMemo as useMemo54 } from "react";
48281
+ import { jsx as jsx197 } from "react/jsx-runtime";
48050
48282
  var extractTableData = (domNode) => {
48051
48283
  if (!domNode || !domNode.children) {
48052
48284
  return null;
@@ -48112,13 +48344,13 @@ var extractTableData = (domNode) => {
48112
48344
  };
48113
48345
  var MarkdownTable = (props) => {
48114
48346
  const { domNode } = props;
48115
- const tableData = useMemo53(() => {
48347
+ const tableData = useMemo54(() => {
48116
48348
  return extractTableData(domNode);
48117
48349
  }, [domNode]);
48118
48350
  if (!tableData || tableData.dataSource.length === 0) {
48119
48351
  return null;
48120
48352
  }
48121
- return /* @__PURE__ */ jsx196(
48353
+ return /* @__PURE__ */ jsx197(
48122
48354
  GenericDataTable,
48123
48355
  {
48124
48356
  component_key: "markdown_table",
@@ -48263,9 +48495,9 @@ function linkifySandboxPaths(src, options) {
48263
48495
  }
48264
48496
 
48265
48497
  // src/components/GenUI/MDResponse.tsx
48266
- import { jsx as jsx197 } from "react/jsx-runtime";
48498
+ import { jsx as jsx198 } from "react/jsx-runtime";
48267
48499
  var memoizedMdComponents = mdComponents;
48268
- var useStyles60 = createStyles80(({ token, css }) => ({
48500
+ var useStyles61 = createStyles81(({ token, css }) => ({
48269
48501
  markdownContainer: css`
48270
48502
  white-space: normal;
48271
48503
 
@@ -48326,7 +48558,7 @@ var useStyles60 = createStyles80(({ token, css }) => ({
48326
48558
  }
48327
48559
  `
48328
48560
  }));
48329
- var MarkdownErrorBoundary = class extends React133.Component {
48561
+ var MarkdownErrorBoundary = class extends React134.Component {
48330
48562
  constructor(props) {
48331
48563
  super(props);
48332
48564
  this.state = { hasError: false };
@@ -48344,13 +48576,13 @@ var MarkdownErrorBoundary = class extends React133.Component {
48344
48576
  return this.props.children;
48345
48577
  }
48346
48578
  };
48347
- var SafeXMarkdown = React133.memo(({ content, components, className }) => {
48579
+ var SafeXMarkdown = React134.memo(({ content, components, className }) => {
48348
48580
  const deferredContent = useDeferredValue3(content);
48349
48581
  if (typeof deferredContent !== "string") {
48350
48582
  console.warn("[MDResponse] Content is not a string:", typeof deferredContent, deferredContent);
48351
48583
  }
48352
48584
  const safeContent = typeof deferredContent === "string" ? deferredContent : String(deferredContent ?? "");
48353
- return /* @__PURE__ */ jsx197("div", { className, children: /* @__PURE__ */ jsx197(
48585
+ return /* @__PURE__ */ jsx198("div", { className, children: /* @__PURE__ */ jsx198(
48354
48586
  XMarkdown_default,
48355
48587
  {
48356
48588
  components,
@@ -48369,15 +48601,15 @@ var MDResponseInner = ({
48369
48601
  noGenUI,
48370
48602
  disableFilePathLinks = false
48371
48603
  }) => {
48372
- const { styles } = useStyles60();
48373
- const linkifiedContent = useMemo54(() => {
48604
+ const { styles } = useStyles61();
48605
+ const linkifiedContent = useMemo55(() => {
48374
48606
  if (disableFilePathLinks) {
48375
48607
  return content;
48376
48608
  }
48377
48609
  return linkifySandboxPaths(content);
48378
48610
  }, [content, disableFilePathLinks]);
48379
- const fallbackContent = useMemo54(() => /* @__PURE__ */ jsx197("div", { className: styles.markdownContainer, children: /* @__PURE__ */ jsx197("pre", { style: { whiteSpace: "pre-wrap", wordBreak: "break-word" }, children: content }) }), [content, styles.markdownContainer]);
48380
- return /* @__PURE__ */ jsx197(MarkdownErrorBoundary, { fallback: fallbackContent, children: /* @__PURE__ */ jsx197(
48611
+ const fallbackContent = useMemo55(() => /* @__PURE__ */ jsx198("div", { className: styles.markdownContainer, children: /* @__PURE__ */ jsx198("pre", { style: { whiteSpace: "pre-wrap", wordBreak: "break-word" }, children: content }) }), [content, styles.markdownContainer]);
48612
+ return /* @__PURE__ */ jsx198(MarkdownErrorBoundary, { fallback: fallbackContent, children: /* @__PURE__ */ jsx198(
48381
48613
  SafeXMarkdown,
48382
48614
  {
48383
48615
  content: linkifiedContent,
@@ -48386,20 +48618,20 @@ var MDResponseInner = ({
48386
48618
  }
48387
48619
  ) });
48388
48620
  };
48389
- var MDResponse = React133.memo(MDResponseInner);
48621
+ var MDResponse = React134.memo(MDResponseInner);
48390
48622
  MDResponse.displayName = "MDResponse";
48391
48623
  var MDViewFormItem = ({ value }) => {
48392
- return /* @__PURE__ */ jsx197(MDResponse, { content: value || "" });
48624
+ return /* @__PURE__ */ jsx198(MDResponse, { content: value || "" });
48393
48625
  };
48394
48626
 
48395
48627
  // src/components/GenUI/elements/generic_data_table.tsx
48396
- import { useState as useState132 } from "react";
48628
+ import { useState as useState133 } from "react";
48397
48629
  import { DownloadOutlined as DownloadOutlined4, ExpandAltOutlined } from "@ant-design/icons";
48398
- import { jsx as jsx198, jsxs as jsxs143 } from "react/jsx-runtime";
48399
- var { Text: Text61 } = Typography74;
48630
+ import { jsx as jsx199, jsxs as jsxs144 } from "react/jsx-runtime";
48631
+ var { Text: Text62 } = Typography75;
48400
48632
  var GenericDataTable = ({ data, interactive = true, default_open_in_side_app = true }) => {
48401
48633
  const { dataSource, message: message36 } = data ?? {};
48402
- const [expandedRowKeys, setExpandedRowKeys] = useState132([]);
48634
+ const [expandedRowKeys, setExpandedRowKeys] = useState133([]);
48403
48635
  const openSideApp = useSideAppOpener();
48404
48636
  const t = useT();
48405
48637
  const processedData = dataSource?.map((item, index) => ({
@@ -48437,9 +48669,9 @@ var GenericDataTable = ({ data, interactive = true, default_open_in_side_app = t
48437
48669
  return "-";
48438
48670
  }
48439
48671
  if (typeof value === "object") {
48440
- return /* @__PURE__ */ jsx198("span", { style: { whiteSpace: "normal", wordBreak: "break-word" }, children: JSON.stringify(value) });
48672
+ return /* @__PURE__ */ jsx199("span", { style: { whiteSpace: "normal", wordBreak: "break-word" }, children: JSON.stringify(value) });
48441
48673
  }
48442
- return /* @__PURE__ */ jsx198("span", { style: { whiteSpace: "normal", wordBreak: "break-word" }, children: String(value) });
48674
+ return /* @__PURE__ */ jsx199("span", { style: { whiteSpace: "normal", wordBreak: "break-word" }, children: String(value) });
48443
48675
  }
48444
48676
  }));
48445
48677
  };
@@ -48452,14 +48684,14 @@ var GenericDataTable = ({ data, interactive = true, default_open_in_side_app = t
48452
48684
  if (!expandItem) {
48453
48685
  return null;
48454
48686
  }
48455
- return /* @__PURE__ */ jsxs143("div", { style: { padding: "16px" }, children: [
48456
- expandItem.content && /* @__PURE__ */ jsxs143("div", { style: { marginBottom: "16px" }, children: [
48457
- /* @__PURE__ */ jsx198(Text61, { strong: true, style: { display: "block", marginBottom: "8px" }, children: t("genui.dataTable.details") }),
48458
- /* @__PURE__ */ jsx198(MDResponse, { content: expandItem.content })
48687
+ return /* @__PURE__ */ jsxs144("div", { style: { padding: "16px" }, children: [
48688
+ expandItem.content && /* @__PURE__ */ jsxs144("div", { style: { marginBottom: "16px" }, children: [
48689
+ /* @__PURE__ */ jsx199(Text62, { strong: true, style: { display: "block", marginBottom: "8px" }, children: t("genui.dataTable.details") }),
48690
+ /* @__PURE__ */ jsx199(MDResponse, { content: expandItem.content })
48459
48691
  ] }),
48460
- expandItem.dataSource && expandItem.dataSource.length > 0 && /* @__PURE__ */ jsxs143("div", { children: [
48461
- /* @__PURE__ */ jsx198(Text61, { strong: true, style: { display: "block", marginBottom: "8px" }, children: t("genui.dataTable.subTableData") }),
48462
- /* @__PURE__ */ jsx198(
48692
+ expandItem.dataSource && expandItem.dataSource.length > 0 && /* @__PURE__ */ jsxs144("div", { children: [
48693
+ /* @__PURE__ */ jsx199(Text62, { strong: true, style: { display: "block", marginBottom: "8px" }, children: t("genui.dataTable.subTableData") }),
48694
+ /* @__PURE__ */ jsx199(
48463
48695
  GenericDataTable,
48464
48696
  {
48465
48697
  component_key: `nested_${record.key}`,
@@ -48507,32 +48739,32 @@ var GenericDataTable = ({ data, interactive = true, default_open_in_side_app = t
48507
48739
  URL.revokeObjectURL(link.href);
48508
48740
  };
48509
48741
  const hasExpandableRows = processedData.some((item) => item.expandItem);
48510
- return /* @__PURE__ */ jsx198(
48742
+ return /* @__PURE__ */ jsx199(
48511
48743
  "div",
48512
48744
  {
48513
48745
  className: "generic-data-table-wrapper",
48514
48746
  style: { width: "100%", display: "block" },
48515
- children: /* @__PURE__ */ jsx198(
48747
+ children: /* @__PURE__ */ jsx199(
48516
48748
  Table6,
48517
48749
  {
48518
48750
  size: "small",
48519
48751
  tableLayout: "fixed",
48520
48752
  style: { width: "100% !important" },
48521
- title: () => /* @__PURE__ */ jsxs143(Flex7, { justify: "space-between", align: "center", children: [
48522
- /* @__PURE__ */ jsx198(Space52, { children: /* @__PURE__ */ jsx198(Text61, { strong: true, style: { fontSize: 16 }, children: message36 || "" }) }),
48523
- /* @__PURE__ */ jsxs143(Space52, { children: [
48524
- /* @__PURE__ */ jsx198(
48753
+ title: () => /* @__PURE__ */ jsxs144(Flex7, { justify: "space-between", align: "center", children: [
48754
+ /* @__PURE__ */ jsx199(Space52, { children: /* @__PURE__ */ jsx199(Text62, { strong: true, style: { fontSize: 16 }, children: message36 || "" }) }),
48755
+ /* @__PURE__ */ jsxs144(Space52, { children: [
48756
+ /* @__PURE__ */ jsx199(
48525
48757
  Button90,
48526
48758
  {
48527
48759
  title: t("genui.dataTable.exportCsv"),
48528
48760
  type: "text",
48529
48761
  size: "small",
48530
- icon: /* @__PURE__ */ jsx198(DownloadOutlined4, {}),
48762
+ icon: /* @__PURE__ */ jsx199(DownloadOutlined4, {}),
48531
48763
  onClick: exportToCSV,
48532
48764
  disabled: !processedData || processedData.length === 0
48533
48765
  }
48534
48766
  ),
48535
- default_open_in_side_app && /* @__PURE__ */ jsx198(
48767
+ default_open_in_side_app && /* @__PURE__ */ jsx199(
48536
48768
  Button90,
48537
48769
  {
48538
48770
  title: t("genui.dataTable.expand"),
@@ -48545,7 +48777,7 @@ var GenericDataTable = ({ data, interactive = true, default_open_in_side_app = t
48545
48777
  data: { dataSource, message: message36 }
48546
48778
  });
48547
48779
  },
48548
- children: /* @__PURE__ */ jsx198(ExpandAltOutlined, {})
48780
+ children: /* @__PURE__ */ jsx199(ExpandAltOutlined, {})
48549
48781
  }
48550
48782
  )
48551
48783
  ] })
@@ -48670,6 +48902,7 @@ export {
48670
48902
  extractUiRef,
48671
48903
  McpAppRenderer,
48672
48904
  ToolResultMedia,
48905
+ SegmentedToggle,
48673
48906
  StatCell,
48674
48907
  EvalSuiteCardList,
48675
48908
  FilterSelect,
@@ -48683,7 +48916,6 @@ export {
48683
48916
  buildTraceGraph,
48684
48917
  collapseOlderPhases,
48685
48918
  ScheduleButton,
48686
- SegmentedToggle,
48687
48919
  ModelSelector,
48688
48920
  SkillCategoryPrompts_default,
48689
48921
  VoiceInputButton,
@@ -48770,4 +49002,4 @@ export {
48770
49002
  http://jedwatson.github.io/classnames
48771
49003
  *)
48772
49004
  */
48773
- //# sourceMappingURL=chunk-JBDRDPL5.mjs.map
49005
+ //# sourceMappingURL=chunk-QLFWQ4HR.mjs.map