@arbidocs/blocks 0.5.50 → 0.5.51

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 (75) hide show
  1. package/README.md +22 -0
  2. package/dist/{ConnectedCallDock-5OLBZED2.js → ConnectedCallDock-7NYH6DKB.js} +6 -6
  3. package/dist/{ConnectedCallDock-5OLBZED2.js.map → ConnectedCallDock-7NYH6DKB.js.map} +1 -1
  4. package/dist/{ConnectedCallDock-GHJTVUSQ.cjs → ConnectedCallDock-NBEAQYTJ.cjs} +7 -7
  5. package/dist/{ConnectedCallDock-GHJTVUSQ.cjs.map → ConnectedCallDock-NBEAQYTJ.cjs.map} +1 -1
  6. package/dist/{ConnectedCallRoom-SSSKBQA7.js → ConnectedCallRoom-CUV5VWGU.js} +6 -6
  7. package/dist/{ConnectedCallRoom-SSSKBQA7.js.map → ConnectedCallRoom-CUV5VWGU.js.map} +1 -1
  8. package/dist/{ConnectedCallRoom-GVNZ3S6R.cjs → ConnectedCallRoom-WRWKPC7R.cjs} +7 -7
  9. package/dist/{ConnectedCallRoom-GVNZ3S6R.cjs.map → ConnectedCallRoom-WRWKPC7R.cjs.map} +1 -1
  10. package/dist/agents/index.cjs +355 -343
  11. package/dist/agents/index.js +3 -3
  12. package/dist/agents/tasks/WorkflowThreadStrip.d.ts +2 -1
  13. package/dist/agents/workflows/ProgressChevron.d.ts +37 -0
  14. package/dist/agents/workflows/StepBarFrame.d.ts +5 -2
  15. package/dist/agents/workflows/index.d.ts +1 -0
  16. package/dist/agents/workflows/stepWindow.d.ts +9 -0
  17. package/dist/calls/index.cjs +2 -2
  18. package/dist/calls/index.js +2 -2
  19. package/dist/chat/index.cjs +80 -80
  20. package/dist/chat/index.js +3 -3
  21. package/dist/{chunk-JGFBC66V.js → chunk-2J34E5AH.js} +3 -3
  22. package/dist/{chunk-JGFBC66V.js.map → chunk-2J34E5AH.js.map} +1 -1
  23. package/dist/{chunk-RTS3B2W7.cjs → chunk-2QV2SCEB.cjs} +5 -5
  24. package/dist/{chunk-RTS3B2W7.cjs.map → chunk-2QV2SCEB.cjs.map} +1 -1
  25. package/dist/{chunk-YRORPDIY.js → chunk-3YJZGYSL.js} +3 -3
  26. package/dist/{chunk-YRORPDIY.js.map → chunk-3YJZGYSL.js.map} +1 -1
  27. package/dist/{chunk-IQ3VDTR7.js → chunk-42UKJPIQ.js} +3 -3
  28. package/dist/{chunk-IQ3VDTR7.js.map → chunk-42UKJPIQ.js.map} +1 -1
  29. package/dist/{chunk-TQYEHARI.cjs → chunk-AAHLGSSR.cjs} +5 -5
  30. package/dist/{chunk-TQYEHARI.cjs.map → chunk-AAHLGSSR.cjs.map} +1 -1
  31. package/dist/{chunk-IOPGY3IP.cjs → chunk-AEG44LPK.cjs} +23 -23
  32. package/dist/{chunk-IOPGY3IP.cjs.map → chunk-AEG44LPK.cjs.map} +1 -1
  33. package/dist/{chunk-THNTNAYI.js → chunk-CHEU7XI5.js} +3 -2
  34. package/dist/chunk-CHEU7XI5.js.map +1 -0
  35. package/dist/{chunk-O4LORAFC.js → chunk-EIJHL6ZX.js} +135 -100
  36. package/dist/chunk-EIJHL6ZX.js.map +1 -0
  37. package/dist/{chunk-7G4N2HP7.js → chunk-EJVM5IVT.js} +4 -4
  38. package/dist/{chunk-7G4N2HP7.js.map → chunk-EJVM5IVT.js.map} +1 -1
  39. package/dist/{chunk-7QJNWQ7O.js → chunk-GXNHLM5R.js} +3 -3
  40. package/dist/{chunk-7QJNWQ7O.js.map → chunk-GXNHLM5R.js.map} +1 -1
  41. package/dist/{chunk-EZLZ3MDU.cjs → chunk-JWYWP5EE.cjs} +3 -2
  42. package/dist/chunk-JWYWP5EE.cjs.map +1 -0
  43. package/dist/{chunk-JYR55F3P.cjs → chunk-K6T255ST.cjs} +211 -173
  44. package/dist/chunk-K6T255ST.cjs.map +1 -0
  45. package/dist/{chunk-4FIYA764.cjs → chunk-KKAKZSCR.cjs} +9 -9
  46. package/dist/{chunk-4FIYA764.cjs.map → chunk-KKAKZSCR.cjs.map} +1 -1
  47. package/dist/{chunk-MBGV6JHG.cjs → chunk-KYOVVXAS.cjs} +4 -4
  48. package/dist/{chunk-MBGV6JHG.cjs.map → chunk-KYOVVXAS.cjs.map} +1 -1
  49. package/dist/{chunk-PP3LWBIH.js → chunk-TFF3NMPV.js} +3 -3
  50. package/dist/{chunk-PP3LWBIH.js.map → chunk-TFF3NMPV.js.map} +1 -1
  51. package/dist/{chunk-226ILMHW.cjs → chunk-W3AYIOK2.cjs} +11 -11
  52. package/dist/{chunk-226ILMHW.cjs.map → chunk-W3AYIOK2.cjs.map} +1 -1
  53. package/dist/connect/index.cjs +351 -294
  54. package/dist/connect/index.cjs.map +1 -1
  55. package/dist/connect/index.js +66 -9
  56. package/dist/connect/index.js.map +1 -1
  57. package/dist/connection/files/upload/ConnectedUpload.d.ts +3 -1
  58. package/dist/connection/files/upload/ProcessingSettingsFooter.d.ts +31 -0
  59. package/dist/index.cjs +486 -474
  60. package/dist/index.js +6 -6
  61. package/dist/studio/index.cjs +4 -4
  62. package/dist/studio/index.js +3 -3
  63. package/dist/workflow-canvas/WorkflowCanvas.d.ts +2 -0
  64. package/dist/workflow-canvas/index.cjs +54 -52
  65. package/dist/workflow-canvas/index.cjs.map +1 -1
  66. package/dist/workflow-canvas/index.js +5 -3
  67. package/dist/workflow-canvas/index.js.map +1 -1
  68. package/node_modules/@arbidocs/coedit/package.json +1 -1
  69. package/package.json +5 -5
  70. package/src/blocks.css +143 -0
  71. package/src/workflow-canvas/canvas.css +46 -27
  72. package/dist/chunk-EZLZ3MDU.cjs.map +0 -1
  73. package/dist/chunk-JYR55F3P.cjs.map +0 -1
  74. package/dist/chunk-O4LORAFC.js.map +0 -1
  75. package/dist/chunk-THNTNAYI.js.map +0 -1
@@ -12,7 +12,7 @@ var chunkOU3RGQFX_cjs = require('../chunk-OU3RGQFX.cjs');
12
12
  require('../chunk-REH7PX3N.cjs');
13
13
  require('../chunk-H32DV7XS.cjs');
14
14
  var chunkFEVJA4BP_cjs = require('../chunk-FEVJA4BP.cjs');
15
- var chunkMBGV6JHG_cjs = require('../chunk-MBGV6JHG.cjs');
15
+ var chunkKYOVVXAS_cjs = require('../chunk-KYOVVXAS.cjs');
16
16
  var chunkFYL7IGK2_cjs = require('../chunk-FYL7IGK2.cjs');
17
17
  var chunkBB4PMCU6_cjs = require('../chunk-BB4PMCU6.cjs');
18
18
  var chunk5YX3R6CK_cjs = require('../chunk-5YX3R6CK.cjs');
@@ -26,7 +26,7 @@ require('../chunk-464YPRAE.cjs');
26
26
  require('../chunk-PICGTGEB.cjs');
27
27
  var chunk5FYU7ZIU_cjs = require('../chunk-5FYU7ZIU.cjs');
28
28
  require('../chunk-ZESMRGDV.cjs');
29
- var chunkRTS3B2W7_cjs = require('../chunk-RTS3B2W7.cjs');
29
+ var chunk2QV2SCEB_cjs = require('../chunk-2QV2SCEB.cjs');
30
30
  var chunkNUQ3RY7M_cjs = require('../chunk-NUQ3RY7M.cjs');
31
31
  var chunkC2ECYOPP_cjs = require('../chunk-C2ECYOPP.cjs');
32
32
  var chunkGOWXP5KT_cjs = require('../chunk-GOWXP5KT.cjs');
@@ -47,7 +47,7 @@ require('../chunk-VLCY46K6.cjs');
47
47
  require('../chunk-D54JXTPG.cjs');
48
48
  var chunkJIOHDVWH_cjs = require('../chunk-JIOHDVWH.cjs');
49
49
  var chunkRC25WMVB_cjs = require('../chunk-RC25WMVB.cjs');
50
- var chunkJYR55F3P_cjs = require('../chunk-JYR55F3P.cjs');
50
+ var chunkK6T255ST_cjs = require('../chunk-K6T255ST.cjs');
51
51
  var chunkRFIBUWLF_cjs = require('../chunk-RFIBUWLF.cjs');
52
52
  var chunkZXHGPTAZ_cjs = require('../chunk-ZXHGPTAZ.cjs');
53
53
  var chunk5WV7HI7Y_cjs = require('../chunk-5WV7HI7Y.cjs');
@@ -74,10 +74,10 @@ var chunkG2BKHCI2_cjs = require('../chunk-G2BKHCI2.cjs');
74
74
  var chunkMEMWZ72Y_cjs = require('../chunk-MEMWZ72Y.cjs');
75
75
  var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
76
76
  var chunkQK3SHV3F_cjs = require('../chunk-QK3SHV3F.cjs');
77
- var chunk226ILMHW_cjs = require('../chunk-226ILMHW.cjs');
77
+ var chunkW3AYIOK2_cjs = require('../chunk-W3AYIOK2.cjs');
78
78
  var chunkZ2XZ2D4N_cjs = require('../chunk-Z2XZ2D4N.cjs');
79
79
  var chunkB6MVQCXW_cjs = require('../chunk-B6MVQCXW.cjs');
80
- var chunkEZLZ3MDU_cjs = require('../chunk-EZLZ3MDU.cjs');
80
+ var chunkJWYWP5EE_cjs = require('../chunk-JWYWP5EE.cjs');
81
81
  var chunk76L6LOP3_cjs = require('../chunk-76L6LOP3.cjs');
82
82
  require('../chunk-32HW2Q33.cjs');
83
83
  var chunkUFEXJIEY_cjs = require('../chunk-UFEXJIEY.cjs');
@@ -390,7 +390,7 @@ function ConnectedWorkspaceActivity({
390
390
  [feed.data]
391
391
  );
392
392
  return /* @__PURE__ */ jsxRuntime.jsx(
393
- chunkRTS3B2W7_cjs.WorkspaceActivityList,
393
+ chunk2QV2SCEB_cjs.WorkspaceActivityList,
394
394
  {
395
395
  ...listProps,
396
396
  items,
@@ -1435,7 +1435,7 @@ function ConnectedWorkspaceNotificationMenu({
1435
1435
  }, [error, notify18]);
1436
1436
  if (!workspaceId) return null;
1437
1437
  return /* @__PURE__ */ jsxRuntime.jsx(
1438
- chunkRTS3B2W7_cjs.WorkspaceNotificationMenu,
1438
+ chunk2QV2SCEB_cjs.WorkspaceNotificationMenu,
1439
1439
  {
1440
1440
  ...menuProps,
1441
1441
  level,
@@ -1454,7 +1454,7 @@ function ConnectedThreadFollow({
1454
1454
  enabled: live
1455
1455
  });
1456
1456
  if (!conversationId) return null;
1457
- const Control = as === "menu-item" ? chunkRTS3B2W7_cjs.ThreadFollowMenuItem : chunkRTS3B2W7_cjs.ThreadFollowButton;
1457
+ const Control = as === "menu-item" ? chunk2QV2SCEB_cjs.ThreadFollowMenuItem : chunk2QV2SCEB_cjs.ThreadFollowButton;
1458
1458
  return /* @__PURE__ */ jsxRuntime.jsx(
1459
1459
  Control,
1460
1460
  {
@@ -1527,7 +1527,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1527
1527
  onChange: (e) => {
1528
1528
  const file = e.target.files?.[0];
1529
1529
  e.target.value = "";
1530
- if (file) void add(() => chunkJYR55F3P_cjs.importSkillFile(file));
1530
+ if (file) void add(() => chunkK6T255ST_cjs.importSkillFile(file));
1531
1531
  }
1532
1532
  }
1533
1533
  ),
@@ -1552,7 +1552,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1552
1552
  className: "space-y-2",
1553
1553
  onSubmit: (e) => {
1554
1554
  e.preventDefault();
1555
- if (url.trim()) void add(() => chunkJYR55F3P_cjs.importSkillFromUrl(url));
1555
+ if (url.trim()) void add(() => chunkK6T255ST_cjs.importSkillFromUrl(url));
1556
1556
  },
1557
1557
  children: [
1558
1558
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "skills-add-url", children: l.fromLink }),
@@ -1615,9 +1615,9 @@ function ConnectedSkillsLibrary({
1615
1615
  const [type, setType] = React9.useState("all");
1616
1616
  const [view, setView] = React9.useState("gallery");
1617
1617
  const [isBusy, setIsBusy] = React9.useState(false);
1618
- const all = React9.useMemo(() => chunkJYR55F3P_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1618
+ const all = React9.useMemo(() => chunkK6T255ST_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1619
1619
  const shown = React9.useMemo(
1620
- () => chunkJYR55F3P_cjs.filterLibrarySkills(all, { query, source, type }),
1620
+ () => chunkK6T255ST_cjs.filterLibrarySkills(all, { query, source, type }),
1621
1621
  [all, query, source, type]
1622
1622
  );
1623
1623
  const current = all.find((s) => s.slug === selected) ?? null;
@@ -1628,21 +1628,21 @@ function ConnectedSkillsLibrary({
1628
1628
  const count2 = (s) => all.filter((x) => x.source === s).length;
1629
1629
  const sourceOptions = [
1630
1630
  { id: "all", label: "All", count: all.length },
1631
- { id: "builtin", label: chunkJYR55F3P_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1632
- { id: "mine", label: chunkJYR55F3P_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1633
- { id: "shared", label: chunkJYR55F3P_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1631
+ { id: "builtin", label: chunkK6T255ST_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1632
+ { id: "mine", label: chunkK6T255ST_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1633
+ { id: "shared", label: chunkK6T255ST_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1634
1634
  ];
1635
1635
  const types = [...new Set(all.map((s) => s.type))];
1636
1636
  const typeOptions = [
1637
1637
  { id: "all", label: "Any kind" },
1638
- ...types.map((t) => ({ id: t, label: chunkJYR55F3P_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1638
+ ...types.map((t) => ({ id: t, label: chunkK6T255ST_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1639
1639
  ];
1640
1640
  const pick = (slug) => {
1641
1641
  setSelected(slug);
1642
1642
  setMode("detail");
1643
1643
  };
1644
1644
  const markdownOf = async (skill) => {
1645
- if (!skill.docExtId) return chunkJYR55F3P_cjs.workflowToSkillMarkdown(skill.workflow);
1645
+ if (!skill.docExtId) return chunkK6T255ST_cjs.workflowToSkillMarkdown(skill.workflow);
1646
1646
  const response = await arbi.documents.download(skill.docExtId);
1647
1647
  if (!response.ok) throw new Error(`Could not read the skill (${response.status})`);
1648
1648
  return response.text();
@@ -1706,7 +1706,7 @@ function ConnectedSkillsLibrary({
1706
1706
  try {
1707
1707
  documentTools.downloadBlob(
1708
1708
  new Blob([await markdownOf(skill)], { type: "text/markdown" }),
1709
- chunkJYR55F3P_cjs.SKILL_MAIN_FILENAME
1709
+ chunkK6T255ST_cjs.SKILL_MAIN_FILENAME
1710
1710
  );
1711
1711
  } catch (error) {
1712
1712
  notify18(errorText(error, "Could not export the skill"), "error");
@@ -1747,10 +1747,10 @@ function ConnectedSkillsLibrary({
1747
1747
  }
1748
1748
  )
1749
1749
  ] }),
1750
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.SkillViewToggle, { value: view, onChange: setView })
1750
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.SkillViewToggle, { value: view, onChange: setView })
1751
1751
  ] }),
1752
1752
  /* @__PURE__ */ jsxRuntime.jsx(
1753
- chunkJYR55F3P_cjs.SkillFilterChips,
1753
+ chunkK6T255ST_cjs.SkillFilterChips,
1754
1754
  {
1755
1755
  label: "Show",
1756
1756
  value: source,
@@ -1759,7 +1759,7 @@ function ConnectedSkillsLibrary({
1759
1759
  }
1760
1760
  ),
1761
1761
  types.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
1762
- chunkJYR55F3P_cjs.SkillFilterChips,
1762
+ chunkK6T255ST_cjs.SkillFilterChips,
1763
1763
  {
1764
1764
  label: "Kind",
1765
1765
  value: type,
@@ -1806,12 +1806,12 @@ function ConnectedSkillsLibrary({
1806
1806
  view === "gallery" ? "grid grid-cols-[repeat(auto-fill,minmax(9.5rem,1fr))]" : "flex flex-col"
1807
1807
  ),
1808
1808
  children: shown.map((skill) => /* @__PURE__ */ jsxRuntime.jsx(
1809
- chunkJYR55F3P_cjs.SkillTile,
1809
+ chunkK6T255ST_cjs.SkillTile,
1810
1810
  {
1811
1811
  name: skill.title,
1812
1812
  testId: `skill-tile-${skill.slug}`,
1813
1813
  description: skill.description,
1814
- sourceLabel: skill.isShared ? `${chunkJYR55F3P_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkJYR55F3P_cjs.SKILL_SOURCE_LABELS[skill.source],
1814
+ sourceLabel: skill.isShared ? `${chunkK6T255ST_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkK6T255ST_cjs.SKILL_SOURCE_LABELS[skill.source],
1815
1815
  type: skill.type,
1816
1816
  icon,
1817
1817
  layout: view,
@@ -1846,7 +1846,7 @@ function ConnectedSkillsLibrary({
1846
1846
  }
1847
1847
  ),
1848
1848
  mode === "new" && /* @__PURE__ */ jsxRuntime.jsx(
1849
- chunkJYR55F3P_cjs.SkillGenerateForm,
1849
+ chunkK6T255ST_cjs.SkillGenerateForm,
1850
1850
  {
1851
1851
  icon,
1852
1852
  onGenerate: (desc) => {
@@ -1873,11 +1873,11 @@ function ConnectedSkillsLibrary({
1873
1873
  ),
1874
1874
  mode === "add" && /* @__PURE__ */ jsxRuntime.jsx(ConnectedSkillUpload, { onDone: done }),
1875
1875
  mode === "detail" && current && /* @__PURE__ */ jsxRuntime.jsx(
1876
- chunkJYR55F3P_cjs.SkillLibraryDetail,
1876
+ chunkK6T255ST_cjs.SkillLibraryDetail,
1877
1877
  {
1878
1878
  skill: current,
1879
1879
  icon,
1880
- instructions: current.docExtId ? currentText ? chunkJYR55F3P_cjs.parseSkillFrontmatter(currentText, chunkJYR55F3P_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1880
+ instructions: current.docExtId ? currentText ? chunkK6T255ST_cjs.parseSkillFrontmatter(currentText, chunkK6T255ST_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1881
1881
  isLoading: !!current.docExtId && textLoading,
1882
1882
  actions: {
1883
1883
  onRun: () => onRun(current.slug),
@@ -1912,7 +1912,7 @@ function SkillEditor({
1912
1912
  const [seeded, setSeeded] = React9.useState(!isEditing);
1913
1913
  const [nameError, setNameError] = React9.useState(null);
1914
1914
  if (isEditing && !seeded && text2 !== void 0) {
1915
- const parsed = chunkJYR55F3P_cjs.parseSkillFrontmatter(text2, chunkJYR55F3P_cjs.SKILL_MAIN_FILENAME);
1915
+ const parsed = chunkK6T255ST_cjs.parseSkillFrontmatter(text2, chunkK6T255ST_cjs.SKILL_MAIN_FILENAME);
1916
1916
  setDescription(parsed.description ?? "");
1917
1917
  setBody(parsed.content ?? "");
1918
1918
  setSeeded(true);
@@ -1926,15 +1926,15 @@ function SkillEditor({
1926
1926
  notify18("Add a short description.", "error");
1927
1927
  return;
1928
1928
  }
1929
- const slug = chunkJYR55F3P_cjs.skillSlug(name);
1929
+ const slug = chunkK6T255ST_cjs.skillSlug(name);
1930
1930
  try {
1931
- await onSave(slug, chunkJYR55F3P_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1931
+ await onSave(slug, chunkK6T255ST_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1932
1932
  } catch (err) {
1933
1933
  notify18(errorText(err, "Could not save the skill"), "error");
1934
1934
  }
1935
1935
  };
1936
1936
  return /* @__PURE__ */ jsxRuntime.jsx(
1937
- chunkJYR55F3P_cjs.SkillEditForm,
1937
+ chunkK6T255ST_cjs.SkillEditForm,
1938
1938
  {
1939
1939
  name,
1940
1940
  onNameChange: setName,
@@ -1970,9 +1970,9 @@ function ConnectedAgentCreator({
1970
1970
  agent,
1971
1971
  initialName,
1972
1972
  onSaved,
1973
- capabilities = chunkJYR55F3P_cjs.DEFAULT_AGENT_CAPABILITIES,
1974
- templates = chunkJYR55F3P_cjs.DEFAULT_AGENT_TEMPLATES,
1975
- types = chunkJYR55F3P_cjs.DEFAULT_AGENT_TYPES,
1973
+ capabilities = chunkK6T255ST_cjs.DEFAULT_AGENT_CAPABILITIES,
1974
+ templates = chunkK6T255ST_cjs.DEFAULT_AGENT_TEMPLATES,
1975
+ types = chunkK6T255ST_cjs.DEFAULT_AGENT_TYPES,
1976
1976
  canRevokeWorkspaces = false,
1977
1977
  labels
1978
1978
  }) {
@@ -2014,7 +2014,7 @@ function ConnectedAgentCreator({
2014
2014
  const initialValues = React9.useMemo(
2015
2015
  () => ({
2016
2016
  name: agent?.given_name ?? initialName ?? "",
2017
- persona: isEdit ? chunkJYR55F3P_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2017
+ persona: isEdit ? chunkK6T255ST_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2018
2018
  modelName: String(agents.AGENT_MODEL_NAME ?? ""),
2019
2019
  capabilities: Object.fromEntries(capabilities.map(({ key }) => [key, Boolean(agents[key])])),
2020
2020
  type: "builtin",
@@ -2033,7 +2033,7 @@ function ConnectedAgentCreator({
2033
2033
  try {
2034
2034
  let agentExtId = agent?.external_id ?? early?.id ?? "";
2035
2035
  if (!agentExtId) {
2036
- if (!chunkJYR55F3P_cjs.isValidAgentName(values.name)) {
2036
+ if (!chunkK6T255ST_cjs.isValidAgentName(values.name)) {
2037
2037
  notify18("Give the agent a name first.", "error");
2038
2038
  return;
2039
2039
  }
@@ -2069,7 +2069,7 @@ function ConnectedAgentCreator({
2069
2069
  title: `agent-${name}`,
2070
2070
  sections: {
2071
2071
  Agents: {
2072
- PERSONA: chunkJYR55F3P_cjs.composePersona(name, values.persona),
2072
+ PERSONA: chunkK6T255ST_cjs.composePersona(name, values.persona),
2073
2073
  ...values.modelName ? { AGENT_MODEL_NAME: values.modelName } : {},
2074
2074
  ...Object.fromEntries(capabilities.map(({ key }) => [key, !!values.capabilities[key]])),
2075
2075
  ENABLED_SKILLS: values.capabilities.SKILLS_ENABLED && skills.length ? skills : null,
@@ -2092,7 +2092,7 @@ function ConnectedAgentCreator({
2092
2092
  };
2093
2093
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2094
2094
  /* @__PURE__ */ jsxRuntime.jsx(
2095
- chunkJYR55F3P_cjs.AgentCreator,
2095
+ chunkK6T255ST_cjs.AgentCreator,
2096
2096
  {
2097
2097
  open: ready,
2098
2098
  onOpenChange,
@@ -2108,11 +2108,11 @@ function ConnectedAgentCreator({
2108
2108
  ) : void 0,
2109
2109
  revokingWorkspaceId: revokeAccess.isPending ? revokeAccess.variables?.workspaceId : void 0,
2110
2110
  avatar: (values) => /* @__PURE__ */ jsxRuntime.jsx(
2111
- chunkJYR55F3P_cjs.AgentAvatarField,
2111
+ chunkK6T255ST_cjs.AgentAvatarField,
2112
2112
  {
2113
2113
  picture,
2114
2114
  isBusy: avatarBusy,
2115
- canGenerate: isEdit || chunkJYR55F3P_cjs.isValidAgentName(values.name),
2115
+ canGenerate: isEdit || chunkK6T255ST_cjs.isValidAgentName(values.name),
2116
2116
  onGenerate: () => handleGenerateAvatar(values)
2117
2117
  }
2118
2118
  ),
@@ -2164,7 +2164,7 @@ function ConnectedAgentCreator({
2164
2164
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogTitle, { children: "Connect your agent" }),
2165
2165
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { children: "This key is shown once. Run the script on the machine that will host the agent." })
2166
2166
  ] }),
2167
- connect && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2167
+ connect && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2168
2168
  ]
2169
2169
  }
2170
2170
  ) })
@@ -2271,7 +2271,7 @@ function ConnectedWorkflowHistory({
2271
2271
  const { openConversation } = chunkI72IYIO2_cjs.useBlocksEnvironment();
2272
2272
  const { data: runs = [], isLoading } = react.useWorkflowRuns(workflow?.external_id);
2273
2273
  return /* @__PURE__ */ jsxRuntime.jsx(
2274
- chunkJYR55F3P_cjs.TaskRunsDialog,
2274
+ chunkK6T255ST_cjs.TaskRunsDialog,
2275
2275
  {
2276
2276
  inline,
2277
2277
  hideHeader,
@@ -2323,7 +2323,7 @@ function ConnectedTaskActivityDialog({
2323
2323
  [agents]
2324
2324
  );
2325
2325
  return /* @__PURE__ */ jsxRuntime.jsx(
2326
- chunkJYR55F3P_cjs.TaskActivityDialog,
2326
+ chunkK6T255ST_cjs.TaskActivityDialog,
2327
2327
  {
2328
2328
  open: true,
2329
2329
  onOpenChange: (open) => !open && onClose(),
@@ -2411,7 +2411,7 @@ function StreamedArtifact({
2411
2411
  }
2412
2412
  var STARTING = /* @__PURE__ */ new Set(["pending", "running"]);
2413
2413
  function formValues(step, inputs) {
2414
- const fields = chunkEZLZ3MDU_cjs.stepFields(step);
2414
+ const fields = chunkJWYWP5EE_cjs.stepFields(step);
2415
2415
  if (!fields.length) return void 0;
2416
2416
  if (step.kind === "form")
2417
2417
  return Object.fromEntries(fields.map((f) => [f.name, inputs[f.name] ?? ""]));
@@ -2449,7 +2449,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2449
2449
  const wsId = workspaceId ?? void 0;
2450
2450
  const [threadId, setThreadId] = React9.useState(options2.conversationId);
2451
2451
  const [localInputs, setLocalInputs] = React9.useState(
2452
- () => chunkEZLZ3MDU_cjs.initialRunInputs(workflow, options2.initialInputs)
2452
+ () => chunkJWYWP5EE_cjs.initialRunInputs(workflow, options2.initialInputs)
2453
2453
  );
2454
2454
  const [edits, setEdits] = React9.useState({});
2455
2455
  const [localStates, setLocalStates] = React9.useState({});
@@ -2469,12 +2469,12 @@ function useWorkflowThread(workflow, options2 = {}) {
2469
2469
  );
2470
2470
  const conversation = conversations.data?.find((c) => c.external_id === threadId);
2471
2471
  const steps = React9.useMemo(
2472
- () => chunkEZLZ3MDU_cjs.workflowSteps(workflow).length > 0 ? chunkEZLZ3MDU_cjs.workflowSteps(workflow) : chunkJYR55F3P_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
2472
+ () => chunkJWYWP5EE_cjs.workflowSteps(workflow).length > 0 ? chunkJWYWP5EE_cjs.workflowSteps(workflow) : chunkK6T255ST_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
2473
2473
  [workflow, conversation?.plan?.steps]
2474
2474
  );
2475
2475
  const activity = react.useConversationActivity(threadId, { live: !!threadId });
2476
2476
  const serverStates = React9.useMemo(
2477
- () => chunkEZLZ3MDU_cjs.stepStatesFromActivity(activity.data ?? []),
2477
+ () => chunkJWYWP5EE_cjs.stepStatesFromActivity(activity.data ?? []),
2478
2478
  [activity.data]
2479
2479
  );
2480
2480
  const working = steps.some(
@@ -2517,7 +2517,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2517
2517
  async (values, done) => {
2518
2518
  await ensureWorkspaceOpen();
2519
2519
  const created = await createWork.mutateAsync({
2520
- title: chunkEZLZ3MDU_cjs.runThreadTitle(workflow, values).slice(0, 60),
2520
+ title: chunkJWYWP5EE_cjs.runThreadTitle(workflow, values).slice(0, 60),
2521
2521
  description: workflow.description || null,
2522
2522
  prompt: null,
2523
2523
  skill_ref: null,
@@ -2529,7 +2529,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2529
2529
  criteria: [],
2530
2530
  max_passes: 3,
2531
2531
  documents: [],
2532
- steps: chunkJYR55F3P_cjs.toPlanSteps(workflow, {
2532
+ steps: chunkK6T255ST_cjs.toPlanSteps(workflow, {
2533
2533
  inputs: values,
2534
2534
  resolveWorkflow: options2.resolveWorkflow,
2535
2535
  compose: options2.compose
@@ -2616,7 +2616,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2616
2616
  const anyRunning = Object.values(states).some((s) => s.status === "running");
2617
2617
  const needsStart = !threadId || idle && !anyRunning;
2618
2618
  const runError = idle ? conversation?.last_error ?? null : null;
2619
- const view = chunkJYR55F3P_cjs.useWorkflowView({
2619
+ const view = chunkK6T255ST_cjs.useWorkflowView({
2620
2620
  steps,
2621
2621
  states,
2622
2622
  inputs,
@@ -2657,7 +2657,7 @@ function RunThread({
2657
2657
  }) {
2658
2658
  const chat = react.useConversation({ workspaceId });
2659
2659
  return /* @__PURE__ */ jsxRuntime.jsx(
2660
- chunk226ILMHW_cjs.ChatPage,
2660
+ chunkW3AYIOK2_cjs.ChatPage,
2661
2661
  {
2662
2662
  chat: { ...chat, threads: chat.threads.filter((t) => t.id === conversationId) },
2663
2663
  singleThread: true,
@@ -2695,7 +2695,7 @@ function WorkflowSignDialog({
2695
2695
  const arbi = react.useArbi();
2696
2696
  const { user, ensureWorkspaceOpen } = chunkDLHAKRU2_cjs.useConnectedWorkspace();
2697
2697
  const tools = documentTools.useOptionalDocumentTools();
2698
- const { id, version: stepVersion } = chunkEZLZ3MDU_cjs.splitDocRef(docRef);
2698
+ const { id, version: stepVersion } = chunkJWYWP5EE_cjs.splitDocRef(docRef);
2699
2699
  const [version, setVersion] = React9.useState(stepVersion);
2700
2700
  const [pdf, setPdf] = React9.useState(null);
2701
2701
  const [preparing, setPreparing] = React9.useState(false);
@@ -2773,7 +2773,7 @@ function WorkflowWordDialog({
2773
2773
  onClose,
2774
2774
  labels
2775
2775
  }) {
2776
- const { id } = chunkEZLZ3MDU_cjs.splitDocRef(docRef);
2776
+ const { id } = chunkJWYWP5EE_cjs.splitDocRef(docRef);
2777
2777
  return /* @__PURE__ */ jsxRuntime.jsx(
2778
2778
  chunkULWRNGGE_cjs.ModalScaffold,
2779
2779
  {
@@ -2958,7 +2958,7 @@ function ConnectedWorkflowRunner({
2958
2958
  () => ({
2959
2959
  me: userId,
2960
2960
  openDocument: onOpenDocument && ((ref) => {
2961
- const { id, version } = chunkEZLZ3MDU_cjs.splitDocRef(ref);
2961
+ const { id, version } = chunkJWYWP5EE_cjs.splitDocRef(ref);
2962
2962
  onOpenDocument(id, version);
2963
2963
  }),
2964
2964
  openDraft: onOpenDraft && ((draftId) => onOpenDraft(draftId)),
@@ -2968,7 +2968,7 @@ function ConnectedWorkflowRunner({
2968
2968
  const w = state.waiting;
2969
2969
  if (w?.doc_ext_id) setDialog({ kind: "sign", docRef: w.doc_ext_id });
2970
2970
  }),
2971
- openRedline: hostActions?.openRedline ?? ((ref) => setDialog({ kind: "word", docRef: ref, title: nameOfDoc(chunkEZLZ3MDU_cjs.splitDocRef(ref).id) ?? "" })),
2971
+ openRedline: hostActions?.openRedline ?? ((ref) => setDialog({ kind: "word", docRef: ref, title: nameOfDoc(chunkJWYWP5EE_cjs.splitDocRef(ref).id) ?? "" })),
2972
2972
  openReview: hostActions?.openReview ?? ((tags, documents) => setDialog({ kind: "review", tags, documents }))
2973
2973
  }),
2974
2974
  [userId, onOpenDocument, onOpenDraft, onOpenMessage, hostActions, nameOfDoc, inThread]
@@ -3104,7 +3104,7 @@ function ConnectedWorkflowRunner({
3104
3104
  );
3105
3105
  };
3106
3106
  const runner = (compact) => /* @__PURE__ */ jsxRuntime.jsx(
3107
- chunkJYR55F3P_cjs.WorkflowRunner,
3107
+ chunkK6T255ST_cjs.WorkflowRunner,
3108
3108
  {
3109
3109
  people,
3110
3110
  ...runnerProps,
@@ -3150,10 +3150,10 @@ function ConnectedWorkflowRunner({
3150
3150
  ) }),
3151
3151
  inThread && conversationId ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3152
3152
  /* @__PURE__ */ jsxRuntime.jsx(
3153
- chunkJYR55F3P_cjs.WorkflowStepBar,
3153
+ chunkK6T255ST_cjs.WorkflowStepBar,
3154
3154
  {
3155
3155
  run: view,
3156
- levels: chunkEZLZ3MDU_cjs.stepLevels(view.steps),
3156
+ levels: chunkJWYWP5EE_cjs.stepLevels(view.steps),
3157
3157
  doneTitle: (workflow.run.kind === "steps" ? workflow.run.completion?.title : void 0) ?? runnerProps.labels?.complete ?? "Done",
3158
3158
  icon: (key) => key && runnerProps.renderIcon ? runnerProps.renderIcon(key) : void 0,
3159
3159
  tid: (suffix) => `${testIdPrefix}-${suffix}`
@@ -3173,13 +3173,13 @@ function ConnectedWorkflowRunner({
3173
3173
  return state ? [[s.id, state]] : [];
3174
3174
  })
3175
3175
  );
3176
- const ref = chunkEZLZ3MDU_cjs.stepDocuments(view.steps, states, id).at(-1);
3176
+ const ref = chunkJWYWP5EE_cjs.stepDocuments(view.steps, states, id).at(-1);
3177
3177
  const open = actions.openDocument ?? actions.openRedline;
3178
3178
  return {
3179
3179
  title: step.title,
3180
- kind: chunkEZLZ3MDU_cjs.stepKindOf(step),
3180
+ kind: chunkJWYWP5EE_cjs.stepKindOf(step),
3181
3181
  phase: view.phaseOf(id),
3182
- document: ref && open ? { name: nameOfDoc(chunkEZLZ3MDU_cjs.splitDocRef(ref).id) ?? ref, onOpen: () => open(ref) } : void 0
3182
+ document: ref && open ? { name: nameOfDoc(chunkJWYWP5EE_cjs.splitDocRef(ref).id) ?? ref, onOpen: () => open(ref) } : void 0
3183
3183
  };
3184
3184
  },
3185
3185
  targetMessageId: target,
@@ -3441,7 +3441,7 @@ function ConnectedTagTable({
3441
3441
  const fail2 = (fallback) => (e) => notify18(browser.refusalReason(e, fallback), "error");
3442
3442
  const snapshot2 = (data) => {
3443
3443
  const title = exportTitle ?? ui.tagKindTitle(kind, { plural: true });
3444
- const bytes = chunkRTS3B2W7_cjs.tagTableDocx(data, {
3444
+ const bytes = chunk2QV2SCEB_cjs.tagTableDocx(data, {
3445
3445
  title,
3446
3446
  nameOf: (id) => people.find((p) => p.value === id)?.label
3447
3447
  });
@@ -3450,7 +3450,7 @@ function ConnectedTagTable({
3450
3450
  return { blob: new Blob([bytes], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }), name };
3451
3451
  };
3452
3452
  return /* @__PURE__ */ jsxRuntime.jsx(
3453
- chunkRTS3B2W7_cjs.TagTable,
3453
+ chunk2QV2SCEB_cjs.TagTable,
3454
3454
  {
3455
3455
  ...props,
3456
3456
  table,
@@ -3588,9 +3588,9 @@ function GlossaryExport({ labelId, nameOf }) {
3588
3588
  const narrowed = agreements.find((a) => a.id === narrowTo);
3589
3589
  const title = narrowed ? `Glossary - ${narrowed.name}` : "Glossary";
3590
3590
  const download = (format) => {
3591
- const entries = chunkRTS3B2W7_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3592
- const blob = format === "docx" ? new Blob([chunkRTS3B2W7_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunkRTS3B2W7_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3593
- documentTools.downloadBlob(blob, chunkRTS3B2W7_cjs.glossaryFileName(title, format));
3591
+ const entries = chunk2QV2SCEB_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3592
+ const blob = format === "docx" ? new Blob([chunk2QV2SCEB_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunk2QV2SCEB_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3593
+ documentTools.downloadBlob(blob, chunk2QV2SCEB_cjs.glossaryFileName(title, format));
3594
3594
  };
3595
3595
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", "data-testid": "tags-glossary", children: [
3596
3596
  agreements.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4135,7 +4135,7 @@ function KindSection({
4135
4135
  {
4136
4136
  testId: `tags-kind-${kind}`,
4137
4137
  title: ui.tagKindTitle(kind, { plural: true }),
4138
- description: chunkRTS3B2W7_cjs.tagKindDescription(kind),
4138
+ description: chunk2QV2SCEB_cjs.tagKindDescription(kind),
4139
4139
  actions: picker,
4140
4140
  children: [
4141
4141
  browser.isEntityTag({ kind }) && extractingCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4146,9 +4146,9 @@ function KindSection({
4146
4146
  children: [
4147
4147
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "size-4 animate-spin" }),
4148
4148
  "Extracting ",
4149
- chunkRTS3B2W7_cjs.entitiesPhrase().toLowerCase(),
4149
+ chunk2QV2SCEB_cjs.entitiesPhrase().toLowerCase(),
4150
4150
  " from ",
4151
- chunkRTS3B2W7_cjs.documentCount(extractingCount),
4151
+ chunk2QV2SCEB_cjs.documentCount(extractingCount),
4152
4152
  "\u2026"
4153
4153
  ]
4154
4154
  }
@@ -4166,7 +4166,7 @@ function KindSection({
4166
4166
  onOpenDocument: (id) => openDocument(id),
4167
4167
  onOpenFact: ctx.onOpenFact,
4168
4168
  onOpenThread: (id) => openConversation(id),
4169
- labels: chunkRTS3B2W7_cjs.tagTableLabels(kind),
4169
+ labels: chunk2QV2SCEB_cjs.tagTableLabels(kind),
4170
4170
  testId: `tags-table-${kind}`
4171
4171
  }
4172
4172
  )
@@ -4268,12 +4268,12 @@ function TagSection({
4268
4268
  onOpenDocument: (id) => openDocument(id),
4269
4269
  onOpenFact: ctx.onOpenFact,
4270
4270
  onOpenThread: (id) => openConversation(id),
4271
- labels: chunkRTS3B2W7_cjs.tagTableLabels(tag.kind),
4271
+ labels: chunk2QV2SCEB_cjs.tagTableLabels(tag.kind),
4272
4272
  testId: "tags-rows"
4273
4273
  }
4274
4274
  ),
4275
4275
  /* @__PURE__ */ jsxRuntime.jsx(
4276
- chunkRTS3B2W7_cjs.TagDetail,
4276
+ chunk2QV2SCEB_cjs.TagDetail,
4277
4277
  {
4278
4278
  row: detailRow && narrowTagRow(detailRow, ctx.filter.matches),
4279
4279
  fields: schema.data?.fields ?? [],
@@ -4285,10 +4285,10 @@ function TagSection({
4285
4285
  onOpenDocument: (id) => openDocument(id),
4286
4286
  onOpenFact: ctx.onOpenFact,
4287
4287
  onOpenThread: (id) => openConversation(id),
4288
- noteLabel: chunkRTS3B2W7_cjs.tagNoteLabel(tag.kind),
4288
+ noteLabel: chunk2QV2SCEB_cjs.tagNoteLabel(tag.kind),
4289
4289
  noteIsValue: tag.kind === "annotation",
4290
4290
  renderPassages: (d, label) => renderPassages(d.doc_ext_id, label),
4291
- labels: chunkRTS3B2W7_cjs.tagDetailLabels(),
4291
+ labels: chunk2QV2SCEB_cjs.tagDetailLabels(),
4292
4292
  testId: "tags-detail"
4293
4293
  }
4294
4294
  )
@@ -4376,7 +4376,7 @@ function ConnectedTagsPage({
4376
4376
  const onDelete = async (t) => {
4377
4377
  const nested = browser.getChildTags([...tags], t.external_id);
4378
4378
  const uses = browser.tagUseCount(t);
4379
- const n2 = chunkRTS3B2W7_cjs.tagsPageNouns();
4379
+ const n2 = chunk2QV2SCEB_cjs.tagsPageNouns();
4380
4380
  const tagNoun = (count2) => (count2 === 1 ? n2.tag : n2.tags).toLowerCase();
4381
4381
  const carriers = uses === 1 ? `${n2.document}, ${n2.fact} or ${n2.thread}` : `${n2.documents}, ${n2.facts} and ${n2.threads}`;
4382
4382
  const message = `Delete ${ui.tagKindNouns(t.kind).singular} "${t.name}"?` + (uses > 0 ? `
@@ -4397,16 +4397,16 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4397
4397
  try {
4398
4398
  await extract.mutateAsync(docIds);
4399
4399
  notify18(
4400
- `Extracting ${chunkRTS3B2W7_cjs.entitiesPhrase().toLowerCase()} from ${chunkRTS3B2W7_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4400
+ `Extracting ${chunk2QV2SCEB_cjs.entitiesPhrase().toLowerCase()} from ${chunk2QV2SCEB_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4401
4401
  "info"
4402
4402
  );
4403
4403
  } catch (error) {
4404
- notify18(browser.refusalReason(error, `Could not extract ${chunkRTS3B2W7_cjs.entitiesPhrase().toLowerCase()}`), "error");
4404
+ notify18(browser.refusalReason(error, `Could not extract ${chunk2QV2SCEB_cjs.entitiesPhrase().toLowerCase()}`), "error");
4405
4405
  throw error;
4406
4406
  }
4407
4407
  };
4408
4408
  const picker = /* @__PURE__ */ jsxRuntime.jsx(
4409
- chunkRTS3B2W7_cjs.TagPicker,
4409
+ chunk2QV2SCEB_cjs.TagPicker,
4410
4410
  {
4411
4411
  tags: viewTags,
4412
4412
  selectedId: tag?.external_id,
@@ -4420,10 +4420,10 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4420
4420
  onOpenTag: openTag,
4421
4421
  onOpenFact
4422
4422
  };
4423
- const n = chunkRTS3B2W7_cjs.tagsPageNouns();
4423
+ const n = chunk2QV2SCEB_cjs.tagsPageNouns();
4424
4424
  const action = view === "person" || view === "organisation" ? {
4425
4425
  label: "Extract",
4426
- title: `Extract ${chunkRTS3B2W7_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4426
+ title: `Extract ${chunk2QV2SCEB_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4427
4427
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "h-4 w-4" }),
4428
4428
  run: () => setExtracting(true),
4429
4429
  testId: "tags-extract-entities"
@@ -4573,7 +4573,7 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4573
4573
  }
4574
4574
  ),
4575
4575
  /* @__PURE__ */ jsxRuntime.jsx(
4576
- chunkRTS3B2W7_cjs.ExtractEntitiesDialog,
4576
+ chunk2QV2SCEB_cjs.ExtractEntitiesDialog,
4577
4577
  {
4578
4578
  open: extracting,
4579
4579
  onOpenChange: setExtracting,
@@ -6576,7 +6576,7 @@ function ConnectedFactsPage({
6576
6576
  onNewFact: composing && !editingId ? () => void 0 : composer.startNewFact,
6577
6577
  navSlotRef: setNavSlot,
6578
6578
  navigator: view === "table" ? /* @__PURE__ */ jsxRuntime.jsx(
6579
- chunkRTS3B2W7_cjs.GridRowNavigator,
6579
+ chunk2QV2SCEB_cjs.GridRowNavigator,
6580
6580
  {
6581
6581
  gridApi,
6582
6582
  selectedId: editingId,
@@ -9759,13 +9759,13 @@ function ConnectedWorkspaceSettings({
9759
9759
  const [membersExpanded, setMembersExpanded] = React9.useState(false);
9760
9760
  const [shareOpen, setShareOpen] = React9.useState(false);
9761
9761
  if (!workspace) {
9762
- return /* @__PURE__ */ jsxRuntime.jsx(chunkQLY22ZZW_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkRTS3B2W7_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9762
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQLY22ZZW_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunk2QV2SCEB_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9763
9763
  }
9764
9764
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9765
9765
  /* @__PURE__ */ jsxRuntime.jsxs(chunkQLY22ZZW_cjs.WorkspacePageFrame, { testId, children: [
9766
9766
  /* @__PURE__ */ jsxRuntime.jsxs(chunkQLY22ZZW_cjs.WorkspaceIdentityPanel, { children: [
9767
9767
  /* @__PURE__ */ jsxRuntime.jsx(
9768
- chunkRTS3B2W7_cjs.EntityIdentityBar,
9768
+ chunk2QV2SCEB_cjs.EntityIdentityBar,
9769
9769
  {
9770
9770
  testId: "workspace-identity-bar",
9771
9771
  canEdit: isOwner,
@@ -9782,7 +9782,7 @@ function ConnectedWorkspaceSettings({
9782
9782
  label: "Name",
9783
9783
  value: workspace.name,
9784
9784
  placeholder: "Untitled",
9785
- maxLength: chunkRTS3B2W7_cjs.IDENTITY_NAME_MAX_LENGTH,
9785
+ maxLength: chunk2QV2SCEB_cjs.IDENTITY_NAME_MAX_LENGTH,
9786
9786
  valueClassName: "truncate text-base font-semibold",
9787
9787
  testId: "workspace-home-title",
9788
9788
  hideLabel: true,
@@ -11679,36 +11679,36 @@ function ConnectedSharePointAdminConsentPage({
11679
11679
  const result = givenResult === void 0 ? queryResult : givenResult;
11680
11680
  const { apiBaseUrl } = chunkI72IYIO2_cjs.useBlocksEnvironment().runtimeConfig;
11681
11681
  const consentUrl = `${apiBaseUrl}/v1/connectors/microsoft_sharepoint/admin-consent`;
11682
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentCard, { size: "md", children: [
11682
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentCard, { size: "md", children: [
11683
11683
  /* @__PURE__ */ jsxRuntime.jsx(
11684
- chunkJYR55F3P_cjs.ConsentHeader,
11684
+ chunkK6T255ST_cjs.ConsentHeader,
11685
11685
  {
11686
11686
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunk5YX3R6CK_cjs.VendorLogo, { vendorKey: "microsoft_sharepoint", product: "sharepoint" }),
11687
11687
  title: "Approve ARBI for SharePoint access",
11688
11688
  children: "A member of your organization uses ARBI and wants to sync documents from SharePoint. Your Microsoft 365 organization requires an administrator to approve this once for the whole organization."
11689
11689
  }
11690
11690
  ),
11691
- result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentNotice, { tone: "success", title: "Access approved \u2014 you\u2019re all set.", className: "mt-4", children: "People in your organization can now connect SharePoint from their own ARBI account. Nothing is synced until each user connects and chooses what to import." }),
11692
- result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentNotice, { tone: "warning", title: "The approval didn\u2019t complete.", className: "mt-4", children: "The request was declined or canceled on the Microsoft screen. You can try again below \u2014 you must sign in with a Microsoft 365 administrator account of your organization." }),
11693
- /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentSection, { title: "What you are approving", children: [
11691
+ result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentNotice, { tone: "success", title: "Access approved \u2014 you\u2019re all set.", className: "mt-4", children: "People in your organization can now connect SharePoint from their own ARBI account. Nothing is synced until each user connects and chooses what to import." }),
11692
+ result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentNotice, { tone: "warning", title: "The approval didn\u2019t complete.", className: "mt-4", children: "The request was declined or canceled on the Microsoft screen. You can try again below \u2014 you must sign in with a Microsoft 365 administrator account of your organization." }),
11693
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentSection, { title: "What you are approving", children: [
11694
11694
  /* @__PURE__ */ jsxRuntime.jsx(
11695
- chunkJYR55F3P_cjs.ConsentBulletList,
11695
+ chunkK6T255ST_cjs.ConsentBulletList,
11696
11696
  {
11697
11697
  items: [
11698
11698
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
11699
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
11699
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
11700
11700
  " \u2014 lets each user who connects their own account import documents from sites they already have access to. ARBI never gets more access than the user has."
11701
11701
  ] }),
11702
11702
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
11703
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
11703
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
11704
11704
  " \u2014 standard sign-in (openid, profile, email) and offline access so syncs keep working between sessions."
11705
11705
  ] })
11706
11706
  ]
11707
11707
  }
11708
11708
  ),
11709
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentText, { children: "Approving does not sync anything by itself and grants ARBI no standing access to your tenant. Each user still connects their own Microsoft account, and their tokens are end-to-end encrypted so ARBI\u2019s servers cannot read them at rest." }),
11709
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentText, { children: "Approving does not sync anything by itself and grants ARBI no standing access to your tenant. Each user still connects their own Microsoft account, and their tokens are end-to-end encrypted so ARBI\u2019s servers cannot read them at rest." }),
11710
11710
  /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { asChild: true, className: "w-full pointer-coarse:h-11", children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: consentUrl, children: "Review and approve in Microsoft" }) }),
11711
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentText, { variant: "footnote", children: "You\u2019ll sign in at login.microsoftonline.com and see Microsoft\u2019s own summary of these permissions before anything is granted." })
11711
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentText, { variant: "footnote", children: "You\u2019ll sign in at login.microsoftonline.com and see Microsoft\u2019s own summary of these permissions before anything is granted." })
11712
11712
  ] })
11713
11713
  ] }) });
11714
11714
  }
@@ -14321,7 +14321,7 @@ function ConnectedWorkspaceList({
14321
14321
  else void openWorkspace(workspace.external_id, { name: workspace.name });
14322
14322
  };
14323
14323
  const createDisabledReason = list.canCreateProjects === false ? react.PROJECT_CREATION_DENIED_REASON : void 0;
14324
- if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkRTS3B2W7_cjs.LoadingIndicator, { message: "Loading workspaces..." });
14324
+ if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunk2QV2SCEB_cjs.LoadingIndicator, { message: "Loading workspaces..." });
14325
14325
  if (list.error) {
14326
14326
  return /* @__PURE__ */ jsxRuntime.jsx(
14327
14327
  chunk7KIM64LQ_cjs.HomeLoadError,
@@ -14394,7 +14394,7 @@ function ConnectedWorkspaceList({
14394
14394
  workspaceState
14395
14395
  }
14396
14396
  ) })
14397
- ) : /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkRTS3B2W7_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunk7KIM64LQ_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
14397
+ ) : /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunk2QV2SCEB_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunk7KIM64LQ_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
14398
14398
  WorkspaceTableView,
14399
14399
  {
14400
14400
  list,
@@ -14636,7 +14636,7 @@ function ProjectsListPage({
14636
14636
  }
14637
14637
  ),
14638
14638
  /* @__PURE__ */ jsxRuntime.jsx(
14639
- chunkRTS3B2W7_cjs.Toolbar,
14639
+ chunk2QV2SCEB_cjs.Toolbar,
14640
14640
  {
14641
14641
  search,
14642
14642
  onSearch: setSearch,
@@ -16835,7 +16835,7 @@ function recentConversations(conversations) {
16835
16835
  return [...conversations].sort((a, b) => time(b.updated_at) - time(a.updated_at)).slice(0, RECENT_ROWS).map((c) => ({
16836
16836
  id: c.external_id,
16837
16837
  title: c.title?.trim() || "Untitled thread",
16838
- subtitle: c.status ? [chunkJYR55F3P_cjs.STATUS_LABELS[chunkJYR55F3P_cjs.asTaskStatus(c.status)], c.due_at ? `due ${shortDate(c.due_at)}` : null].filter(Boolean).join(" \xB7 ") : `${c.message_count} ${c.message_count === 1 ? "message" : "messages"}`,
16838
+ subtitle: c.status ? [chunkK6T255ST_cjs.STATUS_LABELS[chunkK6T255ST_cjs.asTaskStatus(c.status)], c.due_at ? `due ${shortDate(c.due_at)}` : null].filter(Boolean).join(" \xB7 ") : `${c.message_count} ${c.message_count === 1 ? "message" : "messages"}`,
16839
16839
  time: timeAndDate(c.updated_at)
16840
16840
  }));
16841
16841
  }
@@ -22799,6 +22799,53 @@ ${skipped.map((s) => `${s.file_name}: ${s.reason}`).join("\n")}`,
22799
22799
  [workspaceId, uploadFromUrls, shared, configExtId, onZipFiles, notify18]
22800
22800
  );
22801
22801
  }
22802
+ var DEFAULTS = {
22803
+ SKIP_DUPLICATES: true,
22804
+ AUTO_RENAME: false,
22805
+ AUTO_RENAME_INSTRUCTION: ""
22806
+ };
22807
+ function ProcessingSettingsFooter({
22808
+ activeConfigId,
22809
+ isShared,
22810
+ onSharedChange,
22811
+ workspaceEntityLabel,
22812
+ children
22813
+ }) {
22814
+ const configId = activeConfigId || "default";
22815
+ const { data: activeConfig } = react.useConfig(configId, { enabled: true });
22816
+ const configField = react.useSaveConfigField(configId);
22817
+ const config = activeConfig;
22818
+ const skipDuplicates = config?.Parser?.SKIP_DUPLICATES ?? DEFAULTS.SKIP_DUPLICATES;
22819
+ const autoRename = config?.DoctagLLM?.AUTO_RENAME ?? DEFAULTS.AUTO_RENAME;
22820
+ const autoRenameInstruction = config?.DoctagLLM?.AUTO_RENAME_INSTRUCTION ?? DEFAULTS.AUTO_RENAME_INSTRUCTION;
22821
+ const handleConfigChange = React9.useCallback(
22822
+ (instrument, field, value) => {
22823
+ configField.save(instrument, field, value);
22824
+ },
22825
+ [configField]
22826
+ );
22827
+ return /* @__PURE__ */ jsxRuntime.jsx(
22828
+ chunk5YX3R6CK_cjs.UploadFooterBar,
22829
+ {
22830
+ skipDuplicates,
22831
+ onSkipDuplicatesChange: (value) => handleConfigChange("Parser", "SKIP_DUPLICATES", value),
22832
+ autoRename,
22833
+ onAutoRenameChange: (value) => handleConfigChange("DoctagLLM", "AUTO_RENAME", value),
22834
+ autoRenameInstruction,
22835
+ onAutoRenameInstructionChange: (value) => handleConfigChange("DoctagLLM", "AUTO_RENAME_INSTRUCTION", value),
22836
+ shareToggle: /* @__PURE__ */ jsxRuntime.jsx(
22837
+ chunk5YX3R6CK_cjs.ShareToggle,
22838
+ {
22839
+ isVisible: isShared,
22840
+ onToggle: onSharedChange,
22841
+ workspaceEntityLabel,
22842
+ compact: true
22843
+ }
22844
+ ),
22845
+ children
22846
+ }
22847
+ );
22848
+ }
22802
22849
  function formatFileSize3(bytes) {
22803
22850
  if (bytes === 0) return "0 Bytes";
22804
22851
  const k = 1024;
@@ -22838,7 +22885,8 @@ function ConnectedUpload({
22838
22885
  onClose,
22839
22886
  onUploadComplete,
22840
22887
  accounts,
22841
- renderFooter = DefaultFooter
22888
+ renderFooter,
22889
+ processingSettings = false
22842
22890
  }) {
22843
22891
  const { notify: notify18 } = chunkI72IYIO2_cjs.useBlocksEnvironment();
22844
22892
  const { openUpgrade } = react.useDocumentHostActions();
@@ -23017,7 +23065,16 @@ ${summary}`,
23017
23065
  batchInfo: progress?.batches ?? null
23018
23066
  }
23019
23067
  ) }) }),
23020
- uploading === null && files.length > 0 && renderFooter({ submit, shared, onSharedChange: setShared })
23068
+ uploading === null && files.length > 0 && (renderFooter ? renderFooter({ submit, shared, onSharedChange: setShared }) : processingSettings ? /* @__PURE__ */ jsxRuntime.jsx(
23069
+ ProcessingSettingsFooter,
23070
+ {
23071
+ activeConfigId: configExtId,
23072
+ isShared: shared,
23073
+ onSharedChange: setShared,
23074
+ workspaceEntityLabel: ui.getEntityLabel("WORKSPACE"),
23075
+ children: submit
23076
+ }
23077
+ ) : /* @__PURE__ */ jsxRuntime.jsx(DefaultFooter, { submit, shared, onSharedChange: setShared }))
23021
23078
  ] });
23022
23079
  }
23023
23080
  var VENDOR_PRODUCTS = {
@@ -25500,7 +25557,7 @@ function useBatchCompleteToasts() {
25500
25557
  }
25501
25558
  }, AI_FIELDS_NOTICE_WINDOW_MS);
25502
25559
  } else if (message.batch_type === "entity_extract") {
25503
- say(`${chunkRTS3B2W7_cjs.entitiesPhrase()} extracted from ${chunkRTS3B2W7_cjs.documentCount(docIds.length)}`, "success", {
25560
+ say(`${chunk2QV2SCEB_cjs.entitiesPhrase()} extracted from ${chunk2QV2SCEB_cjs.documentCount(docIds.length)}`, "success", {
25504
25561
  ...openTags && { action: { label: "View", onClick: openTags } }
25505
25562
  });
25506
25563
  } else if (message.batch_type === "upload") {
@@ -26990,7 +27047,7 @@ var DocumentReviewCard = React9.lazy(
26990
27047
  () => import('../DocumentReviewCard-DLR4XOIZ.cjs').then((module) => ({ default: module.DocumentReviewCard }))
26991
27048
  );
26992
27049
  function defaultReviewCard(props) {
26993
- return /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkRTS3B2W7_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
27050
+ return /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunk2QV2SCEB_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
26994
27051
  }
26995
27052
  function ConnectedFilesPage({
26996
27053
  isModal = false,
@@ -27446,7 +27503,7 @@ function ConnectedFilesPage({
27446
27503
  viewMode === "grid" ? (
27447
27504
  // ‹ n / N › over the table's displayed rows; a step opens the document.
27448
27505
  /* @__PURE__ */ jsxRuntime.jsx(
27449
- chunkRTS3B2W7_cjs.GridRowNavigator,
27506
+ chunk2QV2SCEB_cjs.GridRowNavigator,
27450
27507
  {
27451
27508
  gridApi,
27452
27509
  selectedId: viewingDocumentId ?? selectedDocumentIds[0] ?? null,
@@ -28576,7 +28633,7 @@ function ProcessingSection({
28576
28633
  onDelete
28577
28634
  }) {
28578
28635
  return /* @__PURE__ */ jsxRuntime.jsx(chunk5YX3R6CK_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(
28579
- chunkJYR55F3P_cjs.UploadTaskList,
28636
+ chunkK6T255ST_cjs.UploadTaskList,
28580
28637
  {
28581
28638
  tasks,
28582
28639
  title: "",
@@ -29667,7 +29724,7 @@ function ConnectedChatThread({
29667
29724
  }
29668
29725
  return /* @__PURE__ */ jsxRuntime.jsxs(React9.Fragment, { children: [
29669
29726
  isFirstOfDay && /* @__PURE__ */ jsxRuntime.jsx(react.DateSeparator, { children: formatDay(msg.created_at) }),
29670
- !isSent && startsPeerRun(i) && /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageAuthor, { children: renderUser2(memberById(msg.sender_ext_id) ?? null) }),
29727
+ !isSent && startsPeerRun(i) && /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageAuthor, { children: renderUser2(memberById(msg.sender_ext_id) ?? null) }),
29671
29728
  /* @__PURE__ */ jsxRuntime.jsx(
29672
29729
  react.ChatBubble,
29673
29730
  {
@@ -30609,7 +30666,7 @@ function ConnectedConfigForm({ availableModels, ...rest }) {
30609
30666
  ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
30610
30667
  []
30611
30668
  );
30612
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
30669
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
30613
30670
  }
30614
30671
  function ConnectedAgentConfigForm({ agentExtId, agentName, onSaved }) {
30615
30672
  const { notify: notify18 } = chunkI72IYIO2_cjs.useBlocksEnvironment();
@@ -30726,7 +30783,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
30726
30783
  }, [name, selectedWorkspaces, role, createAgent, addWorkspaceUsers, arbi, notify18]);
30727
30784
  if (editAgent) {
30728
30785
  return /* @__PURE__ */ jsxRuntime.jsx(
30729
- chunkJYR55F3P_cjs.AgentEditView,
30786
+ chunkK6T255ST_cjs.AgentEditView,
30730
30787
  {
30731
30788
  agentName: editAgent.name,
30732
30789
  config: /* @__PURE__ */ jsxRuntime.jsx(
@@ -30742,7 +30799,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
30742
30799
  }
30743
30800
  if (view === "main") {
30744
30801
  return /* @__PURE__ */ jsxRuntime.jsx(
30745
- chunkJYR55F3P_cjs.AgentMainView,
30802
+ chunkK6T255ST_cjs.AgentMainView,
30746
30803
  {
30747
30804
  onConnectExternal: () => setView("connect"),
30748
30805
  config: mainAgent ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -30758,11 +30815,11 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
30758
30815
  }
30759
30816
  if (result) {
30760
30817
  return /* @__PURE__ */ jsxRuntime.jsx(
30761
- chunkJYR55F3P_cjs.AgentCreatedView,
30818
+ chunkK6T255ST_cjs.AgentCreatedView,
30762
30819
  {
30763
30820
  email: result.email,
30764
30821
  signingKey: result.signingKey,
30765
- instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
30822
+ instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
30766
30823
  config: /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentConfigForm, { agentExtId: result.extId, agentName: result.name }),
30767
30824
  isConfigOpen: configOpen,
30768
30825
  onToggleConfig: () => setConfigOpen((v) => !v),
@@ -30771,7 +30828,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
30771
30828
  );
30772
30829
  }
30773
30830
  return /* @__PURE__ */ jsxRuntime.jsx(
30774
- chunkJYR55F3P_cjs.AgentCreateView,
30831
+ chunkK6T255ST_cjs.AgentCreateView,
30775
30832
  {
30776
30833
  name,
30777
30834
  onNameChange: setName,
@@ -32455,14 +32512,14 @@ var referencesOf = (inputs) => {
32455
32512
  return value?.documents ?? [];
32456
32513
  };
32457
32514
  var PROMPT_BINDINGS = {
32458
- [chunkJYR55F3P_cjs.GENERATE_IMAGE_ID]: {
32515
+ [chunkK6T255ST_cjs.GENERATE_IMAGE_ID]: {
32459
32516
  attachScope: false,
32460
32517
  tools: (inputs) => {
32461
32518
  const aspectRatio = typeof inputs.aspect_ratio === "string" ? inputs.aspect_ratio : "";
32462
32519
  return {
32463
32520
  retrieval_chunk: browser.buildRetrievalChunkTool([]),
32464
32521
  retrieval_full_context: browser.buildRetrievalFullContextTool(referencesOf(inputs)),
32465
- ...aspectRatio && aspectRatio !== chunkJYR55F3P_cjs.IMAGE_ASPECT_AUTO ? {
32522
+ ...aspectRatio && aspectRatio !== chunkK6T255ST_cjs.IMAGE_ASPECT_AUTO ? {
32466
32523
  image_generation: {
32467
32524
  name: "image_generation",
32468
32525
  description: "image generation",
@@ -32498,7 +32555,7 @@ function useWorkflowTasks() {
32498
32555
  );
32499
32556
  const create2 = React9.useCallback(
32500
32557
  async (ctx, forceWorkflow = false) => {
32501
- const request = chunkJYR55F3P_cjs.taskComposerToCreateRequest(
32558
+ const request = chunkK6T255ST_cjs.taskComposerToCreateRequest(
32502
32559
  { ...ctx, documentTitles, plan: ctx.plan ?? null },
32503
32560
  activeWorkspaceId ?? void 0,
32504
32561
  forceWorkflow
@@ -32540,7 +32597,7 @@ function useWorkflowTasks() {
32540
32597
  );
32541
32598
  const update = React9.useCallback(
32542
32599
  async (task, ctx) => {
32543
- const patch = chunkJYR55F3P_cjs.taskComposerToUpdateRequest({ ...ctx, plan: ctx.plan ?? null });
32600
+ const patch = chunkK6T255ST_cjs.taskComposerToUpdateRequest({ ...ctx, plan: ctx.plan ?? null });
32544
32601
  if (task.is_owner === false) delete patch.shared;
32545
32602
  await updateConversation.mutateAsync({ conversationId: task.external_id, patch });
32546
32603
  },
@@ -32548,7 +32605,7 @@ function useWorkflowTasks() {
32548
32605
  );
32549
32606
  const updateWorkflow = React9.useCallback(
32550
32607
  async (workflow, ctx) => {
32551
- const patch = chunkJYR55F3P_cjs.composerToWorkflowUpdate({ ...ctx, documentTitles, plan: ctx.plan ?? null });
32608
+ const patch = chunkK6T255ST_cjs.composerToWorkflowUpdate({ ...ctx, documentTitles, plan: ctx.plan ?? null });
32552
32609
  if (workflow.is_owner === false) delete patch.shared;
32553
32610
  const workspaceId = workflow.workspace_ext_id ?? activeWorkspaceId;
32554
32611
  const updated = await updateWorkflowMutation.mutateAsync({
@@ -32589,7 +32646,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32589
32646
  const annotate = React9.useCallback(
32590
32647
  async ({ inputs, scope }) => {
32591
32648
  const description = text(inputs, "description");
32592
- const name = text(inputs, "name") || chunkJYR55F3P_cjs.deriveAnnotationName(description);
32649
+ const name = text(inputs, "name") || chunkK6T255ST_cjs.deriveAnnotationName(description);
32593
32650
  const matching = chunkZXHGPTAZ_cjs.matchWorkflowScope(documents, scope);
32594
32651
  if (!name || !description || matching.length === 0) return;
32595
32652
  try {
@@ -32633,9 +32690,9 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32633
32690
  async (launch) => {
32634
32691
  const { workflow, inputs, scope, agentId } = launch;
32635
32692
  if (workflow.run.kind === "operation") {
32636
- if (workflow.id === chunkJYR55F3P_cjs.ANNOTATE_ID) {
32693
+ if (workflow.id === chunkK6T255ST_cjs.ANNOTATE_ID) {
32637
32694
  await annotate(launch);
32638
- chunkJYR55F3P_cjs.recordWorkflowUse(workflow.id);
32695
+ chunkK6T255ST_cjs.recordWorkflowUse(workflow.id);
32639
32696
  return;
32640
32697
  }
32641
32698
  throw new Error(`No host handler for workflow "${workflow.id}"`);
@@ -32645,7 +32702,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32645
32702
  );
32646
32703
  const prompt = chunk76L6LOP3_cjs.composeWorkflowPrompt(workflow, inputs, { documentTitles });
32647
32704
  if (!prompt) return;
32648
- chunkJYR55F3P_cjs.recordWorkflowUse(workflow.id);
32705
+ chunkK6T255ST_cjs.recordWorkflowUse(workflow.id);
32649
32706
  if (agentId) {
32650
32707
  try {
32651
32708
  const created = await createTask({
@@ -32728,8 +32785,8 @@ function ConnectedWorkflowStart({
32728
32785
  const tags = React9.useMemo(() => chunkZXHGPTAZ_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
32729
32786
  const fieldPlaceholder = React9.useCallback(
32730
32787
  (field, inputs, workflow) => {
32731
- if (workflow.id !== chunkJYR55F3P_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
32732
- const derived = chunkJYR55F3P_cjs.deriveAnnotationName(String(inputs.description ?? ""));
32788
+ if (workflow.id !== chunkK6T255ST_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
32789
+ const derived = chunkK6T255ST_cjs.deriveAnnotationName(String(inputs.description ?? ""));
32733
32790
  return derived ? `Otherwise \u201C${derived}\u201D` : "Taken from the description";
32734
32791
  },
32735
32792
  []
@@ -32740,15 +32797,15 @@ function ConnectedWorkflowStart({
32740
32797
  ...rest,
32741
32798
  workflows,
32742
32799
  onLaunch,
32743
- renderIcon: chunkJYR55F3P_cjs.renderWorkflowIcon,
32800
+ renderIcon: chunkK6T255ST_cjs.renderWorkflowIcon,
32744
32801
  onAddFiles: openUpload,
32745
32802
  agentLabels: AGENT_LABELS,
32746
32803
  addFilesAction,
32747
32804
  fieldPlaceholder,
32748
- submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkJYR55F3P_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
32805
+ submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkK6T255ST_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
32749
32806
  renderNotice: ({ workflow, inputs }) => {
32750
- if (workflow.id !== chunkJYR55F3P_cjs.ANNOTATE_ID) return null;
32751
- const name = String(inputs.name ?? "").trim() || chunkJYR55F3P_cjs.deriveAnnotationName(String(inputs.description ?? ""));
32807
+ if (workflow.id !== chunkK6T255ST_cjs.ANNOTATE_ID) return null;
32808
+ const name = String(inputs.name ?? "").trim() || chunkK6T255ST_cjs.deriveAnnotationName(String(inputs.description ?? ""));
32752
32809
  const existing = name ? tags.find((t) => t.name.toLowerCase() === name.toLowerCase()) : void 0;
32753
32810
  if (!existing) return null;
32754
32811
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -32779,25 +32836,25 @@ function useSkillsEnabled() {
32779
32836
  // src/connection/workflows/useWorkflowDefinitions.ts
32780
32837
  function useWorkflowDefinitions() {
32781
32838
  const { data: listings } = react.useSkills();
32782
- const usage = chunkJYR55F3P_cjs.useWorkflowUsage();
32839
+ const usage = chunkK6T255ST_cjs.useWorkflowUsage();
32783
32840
  const skillsEnabled = useSkillsEnabled();
32784
32841
  return React9.useMemo(() => {
32785
32842
  const { host: builtins, skills: fromServer } = chunk76L6LOP3_cjs.mergeSkillWorkflows(
32786
- chunkJYR55F3P_cjs.WEB_WORKFLOWS,
32843
+ chunkK6T255ST_cjs.WEB_WORKFLOWS,
32787
32844
  listings ?? []
32788
32845
  );
32789
32846
  const all = [...builtins, ...fromServer];
32790
32847
  const byId = new Map(all.map((w) => [w.id, w]));
32791
- const pinned = chunkJYR55F3P_cjs.DASHBOARD_PINNED.flatMap((id) => {
32848
+ const pinned = chunkK6T255ST_cjs.DASHBOARD_PINNED.flatMap((id) => {
32792
32849
  const w = byId.get(id);
32793
32850
  return w ? [w] : [];
32794
32851
  });
32795
32852
  return {
32796
32853
  skills: all,
32797
32854
  skillsEnabled,
32798
- start: skillsEnabled ? [...builtins, ...chunkJYR55F3P_cjs.sortByRecentUse(fromServer, usage)] : [],
32799
- dashboard: [...pinned, ...chunkJYR55F3P_cjs.DASHBOARD_OPERATIONS],
32800
- forTasks: [chunkJYR55F3P_cjs.CUSTOM_TASK, ...all.filter((w) => w.schedulable), chunkJYR55F3P_cjs.REMIND_TASK]
32855
+ start: skillsEnabled ? [...builtins, ...chunkK6T255ST_cjs.sortByRecentUse(fromServer, usage)] : [],
32856
+ dashboard: [...pinned, ...chunkK6T255ST_cjs.DASHBOARD_OPERATIONS],
32857
+ forTasks: [chunkK6T255ST_cjs.CUSTOM_TASK, ...all.filter((w) => w.schedulable), chunkK6T255ST_cjs.REMIND_TASK]
32801
32858
  };
32802
32859
  }, [listings, usage, skillsEnabled]);
32803
32860
  }
@@ -32819,7 +32876,7 @@ function resolveLaunchInputs(workflow, request) {
32819
32876
  function useWorkflowLaunch() {
32820
32877
  const { skills } = useWorkflowDefinitions();
32821
32878
  const launch = React9.useCallback(
32822
- (workflowId, options2 = {}) => chunkJYR55F3P_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
32879
+ (workflowId, options2 = {}) => chunkK6T255ST_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
32823
32880
  []
32824
32881
  );
32825
32882
  const itemsFor = React9.useCallback(
@@ -32848,8 +32905,8 @@ function useWorkflowLaunch() {
32848
32905
  return { launch, itemsFor, scopeItemsFor };
32849
32906
  }
32850
32907
  function Inner() {
32851
- const request = chunkJYR55F3P_cjs.useWorkflowLaunchRequest();
32852
- const close = chunkJYR55F3P_cjs.closeWorkflowLaunch;
32908
+ const request = chunkK6T255ST_cjs.useWorkflowLaunchRequest();
32909
+ const close = chunkK6T255ST_cjs.closeWorkflowLaunch;
32853
32910
  const { skills } = useWorkflowDefinitions();
32854
32911
  const run = useLaunchWorkflow({ landing: request?.landing });
32855
32912
  const workflow = skills.find((w) => w.id === request?.workflowId);
@@ -32887,7 +32944,7 @@ function Inner() {
32887
32944
  );
32888
32945
  }
32889
32946
  function WorkflowLaunchHost() {
32890
- return chunkJYR55F3P_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
32947
+ return chunkK6T255ST_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
32891
32948
  }
32892
32949
  function isNeedsConfirmationDetail(detail) {
32893
32950
  return typeof detail === "object" && detail !== null && detail.needs_confirmation === "resource_private";
@@ -33416,7 +33473,7 @@ var ConversationEntity = React9.memo(function ConversationEntity2({
33416
33473
  );
33417
33474
  const icon2 = /* @__PURE__ */ jsxRuntime.jsx(ui.ThreadVisibilityIcon, { shared: isShared, className: `${iconSizeClass} shrink-0` });
33418
33475
  return /* @__PURE__ */ jsxRuntime.jsx(
33419
- chunkJYR55F3P_cjs.EntityChip,
33476
+ chunkK6T255ST_cjs.EntityChip,
33420
33477
  {
33421
33478
  variant,
33422
33479
  icon: icon2,
@@ -33438,22 +33495,22 @@ function WorkflowRunStatusCell({ conversation }) {
33438
33495
  });
33439
33496
  const { data: members = [] } = react.useWorkspaceUsers();
33440
33497
  const me = react.useArbiSession().user?.external_id;
33441
- const steps = chunkJYR55F3P_cjs.fromPlanSteps(conversation.plan?.steps ?? []);
33442
- const states = chunkEZLZ3MDU_cjs.stepStatesFromActivity(activity.data ?? []);
33498
+ const steps = chunkK6T255ST_cjs.fromPlanSteps(conversation.plan?.steps ?? []);
33499
+ const states = chunkJWYWP5EE_cjs.stepStatesFromActivity(activity.data ?? []);
33443
33500
  const nameOf = (id) => {
33444
33501
  if (id === me) return "you";
33445
33502
  const person = members.find((m) => m.user.external_id === id)?.user;
33446
33503
  return person ? ui.getUserDisplayName(person) : void 0;
33447
33504
  };
33448
33505
  return /* @__PURE__ */ jsxRuntime.jsx(
33449
- chunkJYR55F3P_cjs.WorkflowRunStatus,
33506
+ chunkK6T255ST_cjs.WorkflowRunStatus,
33450
33507
  {
33451
33508
  steps,
33452
33509
  states,
33453
- assigneeOf: (step) => chunkEZLZ3MDU_cjs.canAssign(step) ? chunkEZLZ3MDU_cjs.assigneeName(step.assignee, {
33510
+ assigneeOf: (step) => chunkJWYWP5EE_cjs.canAssign(step) ? chunkJWYWP5EE_cjs.assigneeName(step.assignee, {
33454
33511
  nameOf,
33455
33512
  inputs: conversation.skill_inputs ?? {},
33456
- fields: chunkEZLZ3MDU_cjs.runFieldsOf(steps),
33513
+ fields: chunkJWYWP5EE_cjs.runFieldsOf(steps),
33457
33514
  announcedTo: states[step.id]?.announcedTo
33458
33515
  }) : void 0,
33459
33516
  isLoading: activity.isLoading,
@@ -33480,7 +33537,7 @@ function ConversationStatusCell({ conversation }) {
33480
33537
  if (conversation.plan?.steps?.length && !isLiveGenerating)
33481
33538
  return /* @__PURE__ */ jsxRuntime.jsx(WorkflowRunStatusCell, { conversation });
33482
33539
  return /* @__PURE__ */ jsxRuntime.jsx(
33483
- chunkJYR55F3P_cjs.ThreadStatusLine,
33540
+ chunkK6T255ST_cjs.ThreadStatusLine,
33484
33541
  {
33485
33542
  state: threadStateOf(conversation, isLiveGenerating),
33486
33543
  className: "h-full",
@@ -33795,8 +33852,8 @@ var STEP_EVENT_PHASES = {
33795
33852
  function stepChipOf(step, eventKind, document2) {
33796
33853
  const phase = STEP_EVENT_PHASES[eventKind];
33797
33854
  if (!phase) return void 0;
33798
- const kind = chunkEZLZ3MDU_cjs.stepKindOf(step);
33799
- const KindIcon = chunkEZLZ3MDU_cjs.STEP_KIND_ICONS[kind];
33855
+ const kind = chunkJWYWP5EE_cjs.stepKindOf(step);
33856
+ const KindIcon = chunkJWYWP5EE_cjs.STEP_KIND_ICONS[kind];
33800
33857
  return { kind, phase, icon: /* @__PURE__ */ jsxRuntime.jsx(KindIcon, {}), document: document2 };
33801
33858
  }
33802
33859
  function useConnectedThreadActivity(conversationId) {
@@ -33812,16 +33869,16 @@ function useConnectedThreadActivity(conversationId) {
33812
33869
  const openWorkflow = chunkI72IYIO2_cjs.useOpenWorkflow();
33813
33870
  const workspaceExtId = react.useArbiSessionState((s) => s.workspaceId);
33814
33871
  const task = conversations.find((c) => c.external_id === conversationId);
33815
- const latestMessageAt = chunkJYR55F3P_cjs.latestMessageTime(messageHistory);
33872
+ const latestMessageAt = chunkK6T255ST_cjs.latestMessageTime(messageHistory);
33816
33873
  const events = (activity.data ?? []).filter(
33817
- (event) => !chunkJYR55F3P_cjs.isSupersededStop(event, latestMessageAt)
33874
+ (event) => !chunkK6T255ST_cjs.isSupersededStop(event, latestMessageAt)
33818
33875
  );
33819
33876
  const personName = (extId) => {
33820
33877
  const person = members.find((m) => m.user.external_id === extId)?.user;
33821
33878
  return person ? ui.getUserDisplayName(person) : "someone";
33822
33879
  };
33823
- const planSteps = chunkJYR55F3P_cjs.fromPlanSteps(task?.plan?.steps ?? []);
33824
- const entries = chunkJYR55F3P_cjs.compactThreadActivity(events, (id) => planSteps.find((s) => s.id === id)?.title);
33880
+ const planSteps = chunkK6T255ST_cjs.fromPlanSteps(task?.plan?.steps ?? []);
33881
+ const entries = chunkK6T255ST_cjs.compactThreadActivity(events, (id) => planSteps.find((s) => s.id === id)?.title);
33825
33882
  const items = entries.map(({ event, label, recipients }) => {
33826
33883
  const messageActivity = [
33827
33884
  "created",
@@ -33831,7 +33888,7 @@ function useConnectedThreadActivity(conversationId) {
33831
33888
  ].includes(event.kind);
33832
33889
  const eventStep = event.kind.startsWith("step_") && typeof event.detail?.step === "string" ? planSteps.find((s) => s.id === event.detail?.step) : void 0;
33833
33890
  const stepDocRef = event.kind === "step_done" && Array.isArray(event.detail?.documents) ? event.detail.documents.at(-1) : void 0;
33834
- const stepDocId = stepDocRef ? chunkEZLZ3MDU_cjs.splitDocRef(stepDocRef).id : void 0;
33891
+ const stepDocId = stepDocRef ? chunkJWYWP5EE_cjs.splitDocRef(stepDocRef).id : void 0;
33835
33892
  const stepDocRecord = stepDocId ? docs.find((d) => d.external_id === stepDocId) : void 0;
33836
33893
  const stepDocument = stepDocId ? {
33837
33894
  name: stepDocRecord ? ui.getDocumentTitle(stepDocRecord) : stepDocId,
@@ -33847,7 +33904,7 @@ function useConnectedThreadActivity(conversationId) {
33847
33904
  const messageId = sourceMessage ?? [...messageHistory].reverse().find((message) => Date.parse(message.created_at ?? "") <= Date.parse(event.created_at))?.external_id ?? messageHistory[0]?.external_id;
33848
33905
  const doc = docId ? docs.find((d) => d.external_id === docId) : void 0;
33849
33906
  const mailDraftId = event.kind === "notified" && event.detail?.event === "mail_draft_ready" && typeof event.detail?.mail_id === "string" ? event.detail.mail_id : void 0;
33850
- const missed = event.kind === "notified" && recipients.length ? chunkJYR55F3P_cjs.unnotifiedMentions(
33907
+ const missed = event.kind === "notified" && recipients.length ? chunkK6T255ST_cjs.unnotifiedMentions(
33851
33908
  messageHistory.find((message) => message.external_id === sourceMessage)?.mentions,
33852
33909
  recipients,
33853
33910
  event.actor_ext_id
@@ -33880,7 +33937,7 @@ function useConnectedThreadActivity(conversationId) {
33880
33937
  ) : void 0,
33881
33938
  docId,
33882
33939
  docTitle: doc ? ui.getDocumentTitle(doc) : void 0,
33883
- label: mailDraftId ? "Left a draft email" : event.kind === "notified" && recipients.length ? chunkJYR55F3P_cjs.notifiedLabel(recipients.map(personName), missed.map(personName)) : label,
33940
+ label: mailDraftId ? "Left a draft email" : event.kind === "notified" && recipients.length ? chunkK6T255ST_cjs.notifiedLabel(recipients.map(personName), missed.map(personName)) : label,
33884
33941
  description: [
33885
33942
  name,
33886
33943
  label,
@@ -33894,7 +33951,7 @@ function useConnectedThreadActivity(conversationId) {
33894
33951
  stepChip: eventStep ? stepChipOf(eventStep, event.kind, stepDocument) : void 0,
33895
33952
  // No avatar tooltip: the entry is already a button (or titled row) that carries the same
33896
33953
  // details, and a tooltip trigger inside it would be a nested <button>.
33897
- avatar: assistant ? /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AssistantEntity, { variant: "icon", size: 20, showTooltip: false }) : member ? /* @__PURE__ */ jsxRuntime.jsx(chunkS7B5E3RU_cjs.DocumentUser, { user: member, tooltip: false }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Clock, { className: "size-4 text-muted-foreground" }),
33954
+ avatar: assistant ? /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AssistantEntity, { variant: "icon", size: 20, showTooltip: false }) : member ? /* @__PURE__ */ jsxRuntime.jsx(chunkS7B5E3RU_cjs.DocumentUser, { user: member, tooltip: false }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Clock, { className: "size-4 text-muted-foreground" }),
33898
33955
  time: ui.formatRelativeTime(event.created_at, { style: "short" }),
33899
33956
  exactTime: ui.formatFriendlyDate(event.created_at),
33900
33957
  onOpenDocument: docId && doc ? () => openDocument(docId) : void 0,
@@ -33943,7 +34000,7 @@ function useConnectedThreadActivity(conversationId) {
33943
34000
  onSelect: () => navigateToConversation(source)
33944
34001
  });
33945
34002
  }
33946
- const links = chunkJYR55F3P_cjs.linkedRunsFromActivity(activity.data);
34003
+ const links = chunkK6T255ST_cjs.linkedRunsFromActivity(activity.data);
33947
34004
  const threadName = (id, workflowId) => conversations.find((c) => c.external_id === id)?.title || workflows.find((w) => w.external_id === workflowId)?.name || "Linked thread";
33948
34005
  const signals = links.raised.map((raised) => ({
33949
34006
  step: raised.step,
@@ -33958,7 +34015,7 @@ function useConnectedThreadActivity(conversationId) {
33958
34015
  if (links.startedBy) {
33959
34016
  const { conversationId: parentId, step, signal } = links.startedBy;
33960
34017
  const parent = conversations.find((c) => c.external_id === parentId);
33961
- const parentSteps = chunkJYR55F3P_cjs.fromPlanSteps(parent?.plan?.steps ?? []);
34018
+ const parentSteps = chunkK6T255ST_cjs.fromPlanSteps(parent?.plan?.steps ?? []);
33962
34019
  startedBy = {
33963
34020
  stepTitle: parentSteps.find((s) => s.id === step)?.title ?? step ?? "a step",
33964
34021
  threadTitle: parent?.title || "another thread",
@@ -33991,8 +34048,8 @@ function ConnectedThreadTaskBar({
33991
34048
  const person = members.find((m) => m.user.external_id === id)?.user;
33992
34049
  return person ? ui.getUserDisplayName(person) : void 0;
33993
34050
  };
33994
- const steps = chunkJYR55F3P_cjs.fromPlanSteps(task?.plan?.steps ?? []);
33995
- const states = chunkEZLZ3MDU_cjs.stepStatesFromActivity(activity.data ?? []);
34051
+ const steps = chunkK6T255ST_cjs.fromPlanSteps(task?.plan?.steps ?? []);
34052
+ const states = chunkJWYWP5EE_cjs.stepStatesFromActivity(activity.data ?? []);
33996
34053
  const runInputs = task?.skill_inputs ?? {};
33997
34054
  const stepCall = (body) => actOnStep.mutateAsync({ conversationId, body });
33998
34055
  const canEdit = Boolean(task?.is_owner || task?.is_shared && canEditShared);
@@ -34017,16 +34074,16 @@ function ConnectedThreadTaskBar({
34017
34074
  task?.plan?.steps?.length ? (
34018
34075
  // A workflow run: its named steps, with what happened in the thread under each.
34019
34076
  /* @__PURE__ */ jsxRuntime.jsx(
34020
- chunkJYR55F3P_cjs.WorkflowThreadStrip,
34077
+ chunkK6T255ST_cjs.WorkflowThreadStrip,
34021
34078
  {
34022
34079
  steps,
34023
34080
  states,
34024
34081
  items,
34025
- assigneeOf: (step) => chunkEZLZ3MDU_cjs.canAssign(step) ? chunkEZLZ3MDU_cjs.assigneeName(step.assignee, {
34082
+ assigneeOf: (step) => chunkJWYWP5EE_cjs.canAssign(step) ? chunkJWYWP5EE_cjs.assigneeName(step.assignee, {
34026
34083
  // A step that is the viewer's own reads "Waiting for you".
34027
34084
  nameOf: (id) => id === me ? "you" : nameOf(id),
34028
34085
  inputs: runInputs,
34029
- fields: chunkEZLZ3MDU_cjs.runFieldsOf(steps),
34086
+ fields: chunkJWYWP5EE_cjs.runFieldsOf(steps),
34030
34087
  announcedTo: states[step.id]?.announcedTo
34031
34088
  }) : void 0,
34032
34089
  signals,
@@ -34035,7 +34092,7 @@ function ConnectedThreadTaskBar({
34035
34092
  const doc = documents.find((d) => d.external_id === id);
34036
34093
  return doc ? ui.getDocumentTitle(doc) : void 0;
34037
34094
  },
34038
- onOpenDocument: (ref) => openDocument(chunkEZLZ3MDU_cjs.splitDocRef(ref).id),
34095
+ onOpenDocument: (ref) => openDocument(chunkJWYWP5EE_cjs.splitDocRef(ref).id),
34039
34096
  inputs: runInputs,
34040
34097
  nameOf: (id) => id === me ? "you" : nameOf(id),
34041
34098
  onSkip: canEdit ? (step) => void actOnStep.mutateAsync({ conversationId, body: { step, action: "skip" } }).catch(
@@ -34044,7 +34101,7 @@ function ConnectedThreadTaskBar({
34044
34101
  renderStepAction: (step, phase) => (
34045
34102
  // A signer or a draft's person acts on their step even on a thread they cannot edit.
34046
34103
  canEdit || phase === "waiting" || phase === "done" ? /* @__PURE__ */ jsxRuntime.jsx(
34047
- chunkJYR55F3P_cjs.WorkflowStepAction,
34104
+ chunkK6T255ST_cjs.WorkflowStepAction,
34048
34105
  {
34049
34106
  step,
34050
34107
  phase,
@@ -34065,8 +34122,8 @@ function ConnectedThreadTaskBar({
34065
34122
  }
34066
34123
  )
34067
34124
  ) : items.length || startedBy ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34068
- startedBy && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.WorkflowThreadStartedBy, { origin: startedBy }),
34069
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.TaskFlow, { items: items.filter((item) => !item.step) })
34125
+ startedBy && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.WorkflowThreadStartedBy, { origin: startedBy }),
34126
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.TaskFlow, { items: items.filter((item) => !item.step) })
34070
34127
  ] }) : (
34071
34128
  // Ordinary chats record no activity events, so an empty ribbon says nothing rather than
34072
34129
  // "No recorded activity yet" while the answer and its steps are right there in the thread.
@@ -34100,7 +34157,7 @@ function ConnectedThreadTaskBar({
34100
34157
  ) }),
34101
34158
  /* @__PURE__ */ jsxRuntime.jsxs(ui.DropdownMenuContent, { align: "end", children: [
34102
34159
  /* @__PURE__ */ jsxRuntime.jsx(
34103
- chunkRTS3B2W7_cjs.ThreadFollowMenuItem,
34160
+ chunk2QV2SCEB_cjs.ThreadFollowMenuItem,
34104
34161
  {
34105
34162
  following: follow.following,
34106
34163
  onFollowingChange: (on) => (
@@ -34282,7 +34339,7 @@ function ConnectedTaskComposer({
34282
34339
  const label = (t) => t.title?.trim() || "Untitled task";
34283
34340
  if (isWorkflow) return allTasks.map((t) => ({ id: t.external_id, name: label(t) }));
34284
34341
  const subject = task ?? { external_id: "__new__" };
34285
- return chunkJYR55F3P_cjs.moveTargets(
34342
+ return chunkK6T255ST_cjs.moveTargets(
34286
34343
  [...allTasks.filter((t) => t.external_id !== subject.external_id), subject],
34287
34344
  subject
34288
34345
  ).map((t) => ({ id: t.external_id, name: label(t) }));
@@ -34297,33 +34354,33 @@ function ConnectedTaskComposer({
34297
34354
  );
34298
34355
  const initialValues = React9.useMemo(() => {
34299
34356
  const ids = {
34300
- customWorkflowId: chunkJYR55F3P_cjs.CUSTOM_TASK_ID,
34301
- reminderWorkflowId: chunkJYR55F3P_cjs.REMIND_TASK_ID,
34357
+ customWorkflowId: chunkK6T255ST_cjs.CUSTOM_TASK_ID,
34358
+ reminderWorkflowId: chunkK6T255ST_cjs.REMIND_TASK_ID,
34302
34359
  definitions: forTasks
34303
34360
  };
34304
34361
  const base = launchWorkflow ? {
34305
- ...chunkJYR55F3P_cjs.workflowToComposerValues(launchWorkflow, ids),
34362
+ ...chunkK6T255ST_cjs.workflowToComposerValues(launchWorkflow, ids),
34306
34363
  when: "once",
34307
34364
  runAt: "",
34308
34365
  rrule: "",
34309
34366
  eventKind: "",
34310
34367
  afterTaskId: "",
34311
34368
  name: ""
34312
- } : editingWorkflow ? chunkJYR55F3P_cjs.workflowToComposerValues(editingWorkflow, ids) : task ? chunkJYR55F3P_cjs.taskToComposerValues(task, ids) : isWorkflow ? {
34369
+ } : editingWorkflow ? chunkK6T255ST_cjs.workflowToComposerValues(editingWorkflow, ids) : task ? chunkK6T255ST_cjs.taskToComposerValues(task, ids) : isWorkflow ? {
34313
34370
  // Run now is the default start; scheduling is the fallback in the same field.
34314
34371
  assignee: "agent",
34315
- workflowId: initialWorkflowId ?? chunkJYR55F3P_cjs.CUSTOM_TASK_ID,
34372
+ workflowId: initialWorkflowId ?? chunkK6T255ST_cjs.CUSTOM_TASK_ID,
34316
34373
  when: startLater ? "once" : "now",
34317
34374
  ...initialPrompt ? {
34318
34375
  inputs: {
34319
- [initialWorkflowId === chunkJYR55F3P_cjs.REMIND_TASK_ID ? "message" : "instruction"]: initialPrompt
34376
+ [initialWorkflowId === chunkK6T255ST_cjs.REMIND_TASK_ID ? "message" : "instruction"]: initialPrompt
34320
34377
  }
34321
34378
  } : {},
34322
34379
  // A scheduled run needs an agent: the owner's Assistant unless another is picked.
34323
34380
  ...startLater && defaultAgentId ? { agentId: defaultAgentId } : {}
34324
34381
  } : initialAgentExtId ? (
34325
34382
  // Assigning an agent means agentic work: the free instruction, and tell me when done.
34326
- { agentId: initialAgentExtId, workflowId: chunkJYR55F3P_cjs.CUSTOM_TASK_ID, notifyOnComplete: true }
34383
+ { agentId: initialAgentExtId, workflowId: chunkK6T255ST_cjs.CUSTOM_TASK_ID, notifyOnComplete: true }
34327
34384
  ) : {};
34328
34385
  return {
34329
34386
  timezone: chunkQUMUAJ2P_cjs.detectTimeZone(),
@@ -34384,7 +34441,7 @@ function ConnectedTaskComposer({
34384
34441
  const ctx = {
34385
34442
  workflow: chosen,
34386
34443
  values: submitted,
34387
- plan: chosen.id === chunkJYR55F3P_cjs.CUSTOM_TASK_ID ? plan : null
34444
+ plan: chosen.id === chunkK6T255ST_cjs.CUSTOM_TASK_ID ? plan : null
34388
34445
  };
34389
34446
  try {
34390
34447
  if (isWorkflow && editingWorkflow && !options2?.runOnce) {
@@ -34420,7 +34477,7 @@ function ConnectedTaskComposer({
34420
34477
  }
34421
34478
  };
34422
34479
  return /* @__PURE__ */ jsxRuntime.jsx(
34423
- chunkJYR55F3P_cjs.TaskComposer,
34480
+ chunkK6T255ST_cjs.TaskComposer,
34424
34481
  {
34425
34482
  open,
34426
34483
  onOpenChange,
@@ -34434,12 +34491,12 @@ function ConnectedTaskComposer({
34434
34491
  tasks: taskOptions,
34435
34492
  initialValues,
34436
34493
  timezones,
34437
- eventOptions: chunkJYR55F3P_cjs.AUTOMATION_EVENTS,
34494
+ eventOptions: chunkK6T255ST_cjs.AUTOMATION_EVENTS,
34438
34495
  eventWorkflowOptions: workspaceAutomations.filter((item) => item.external_id !== editingWorkflow?.external_id).map((item) => ({ id: item.external_id, label: item.name })),
34439
34496
  isPending,
34440
34497
  planDrafting: planWork.isPending,
34441
34498
  hasPlan: plan !== null,
34442
- renderIcon: chunkJYR55F3P_cjs.renderWorkflowIcon,
34499
+ renderIcon: chunkK6T255ST_cjs.renderWorkflowIcon,
34443
34500
  scopeSource,
34444
34501
  renderDocuments: (field, value, onChange) => /* @__PURE__ */ jsxRuntime.jsx(
34445
34502
  chunkFYL7IGK2_cjs.ConnectedWorkflowDocumentsField,
@@ -34473,8 +34530,8 @@ function ConnectedTaskComposer({
34473
34530
  ...plan ? { addAndStart: "Approve plan and start", addAndSchedule: "Approve plan and schedule" } : {}
34474
34531
  },
34475
34532
  onSubmit: submit,
34476
- goal: (values) => values.workflowId === chunkJYR55F3P_cjs.CUSTOM_TASK_ID ? /* @__PURE__ */ jsxRuntime.jsx(
34477
- chunkJYR55F3P_cjs.TaskPlan,
34533
+ goal: (values) => values.workflowId === chunkK6T255ST_cjs.CUSTOM_TASK_ID ? /* @__PURE__ */ jsxRuntime.jsx(
34534
+ chunkK6T255ST_cjs.TaskPlan,
34478
34535
  {
34479
34536
  plan,
34480
34537
  onChange: setPlan,
@@ -34674,7 +34731,7 @@ function ConnectedTaskStartDialog({
34674
34731
  };
34675
34732
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34676
34733
  /* @__PURE__ */ jsxRuntime.jsx(
34677
- chunkJYR55F3P_cjs.TaskStartDialog,
34734
+ chunkK6T255ST_cjs.TaskStartDialog,
34678
34735
  {
34679
34736
  open: open && !later,
34680
34737
  onOpenChange: (next) => {
@@ -34706,7 +34763,7 @@ function ConnectedTaskStartDialog({
34706
34763
  kind: "workflow",
34707
34764
  startLater: true,
34708
34765
  initialPrompt: later.prompt,
34709
- initialWorkflowId: later.todo ? chunkJYR55F3P_cjs.REMIND_TASK_ID : void 0,
34766
+ initialWorkflowId: later.todo ? chunkK6T255ST_cjs.REMIND_TASK_ID : void 0,
34710
34767
  initialShared: later.shared,
34711
34768
  launchWorkflow: later.workflow
34712
34769
  }
@@ -34720,7 +34777,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
34720
34777
  const [later, setLater] = React9.useState(null);
34721
34778
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34722
34779
  /* @__PURE__ */ jsxRuntime.jsx(
34723
- chunkJYR55F3P_cjs.ThreadLauncher,
34780
+ chunkK6T255ST_cjs.ThreadLauncher,
34724
34781
  {
34725
34782
  workflows: task.workflows,
34726
34783
  people: task.people,
@@ -34757,7 +34814,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
34757
34814
  kind: "workflow",
34758
34815
  startLater: true,
34759
34816
  initialPrompt: later.prompt,
34760
- initialWorkflowId: later.todo ? chunkJYR55F3P_cjs.REMIND_TASK_ID : void 0,
34817
+ initialWorkflowId: later.todo ? chunkK6T255ST_cjs.REMIND_TASK_ID : void 0,
34761
34818
  initialShared: later.shared,
34762
34819
  launchWorkflow: later.workflow
34763
34820
  }
@@ -34786,13 +34843,13 @@ function ConnectedNewThreadDialog({
34786
34843
  });
34787
34844
  const parentOptions = React9.useMemo(() => {
34788
34845
  const leaf = { external_id: "__new__" };
34789
- return chunkJYR55F3P_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
34846
+ return chunkK6T255ST_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
34790
34847
  id: t.external_id,
34791
34848
  name: t.title?.trim() || "Untitled task"
34792
34849
  }));
34793
34850
  }, [tasks]);
34794
34851
  const submit = async (values) => {
34795
- const request = chunkJYR55F3P_cjs.newThreadToRequest(values);
34852
+ const request = chunkK6T255ST_cjs.newThreadToRequest(values);
34796
34853
  try {
34797
34854
  if (!workspaceId) throw new Error("Open a workspace to add a task.");
34798
34855
  if (!request.startAssistant && request.todo) {
@@ -34833,7 +34890,7 @@ function ConnectedNewThreadDialog({
34833
34890
  }
34834
34891
  };
34835
34892
  return /* @__PURE__ */ jsxRuntime.jsx(
34836
- chunkJYR55F3P_cjs.NewThreadDialog,
34893
+ chunkK6T255ST_cjs.NewThreadDialog,
34837
34894
  {
34838
34895
  open,
34839
34896
  onOpenChange,
@@ -34891,7 +34948,7 @@ function ConnectedConversationStart() {
34891
34948
  const browse = openSkillsBrowser ? [
34892
34949
  {
34893
34950
  id: "browse-all",
34894
- iconNode: chunkJYR55F3P_cjs.renderWorkflowIcon("library"),
34951
+ iconNode: chunkK6T255ST_cjs.renderWorkflowIcon("library"),
34895
34952
  title: "Browse all",
34896
34953
  description: "See every skill, make a copy, add your own",
34897
34954
  onSelect: () => openSkillsBrowser(),
@@ -35053,7 +35110,7 @@ function getToolParams(detail) {
35053
35110
  return params;
35054
35111
  }
35055
35112
  function StepModelIcon({ modelName, tag }) {
35056
- const cfg = tag === "Premium" ? null : chunkJYR55F3P_cjs.getModelIcon(modelName, tag);
35113
+ const cfg = tag === "Premium" ? null : chunkK6T255ST_cjs.getModelIcon(modelName, tag);
35057
35114
  if (tag !== "Premium" && !cfg) return null;
35058
35115
  return /* @__PURE__ */ jsxRuntime.jsxs(ui.Tooltip, { children: [
35059
35116
  /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: tag === "Premium" ? /* @__PURE__ */ jsxRuntime.jsx(ui.ProviderIcon, { modelName: modelName ?? void 0, size: 11 }) : cfg && /* @__PURE__ */ jsxRuntime.jsx(cfg.icon, { className: cfg.className, style: { width: 11, height: 11 } }) }) }),
@@ -35168,15 +35225,15 @@ var AgentStepsComponent = ({
35168
35225
  const lastStepIndex = mergedSteps[mergedSteps.length - 1].index;
35169
35226
  const renderRow = (step, depth, isLastInList) => {
35170
35227
  const i = posByIndex.get(step.index);
35171
- const presentation = chunkJYR55F3P_cjs.getAgentStepPresentation(step, docInfo);
35228
+ const presentation = chunkK6T255ST_cjs.getAgentStepPresentation(step, docInfo);
35172
35229
  const { tool, Icon } = presentation;
35173
35230
  const { label, summary, isMultiLine, details } = browser.getStepDisplay(step, docInfo);
35174
- const accent = chunkJYR55F3P_cjs.stepAccent(step, tool);
35231
+ const accent = chunkK6T255ST_cjs.stepAccent(step, tool);
35175
35232
  const duration = stepDurations[i];
35176
35233
  const isLastStep = step.index === lastStepIndex;
35177
35234
  const isActive = step.index === currentStepIndex;
35178
35235
  const tier = step.step === "goal" ? step.model_recommendation : null;
35179
- const TierIcon = tier ? chunkJYR55F3P_cjs.MODEL_TIER_ICON_MAP[tier] : null;
35236
+ const TierIcon = tier ? chunkK6T255ST_cjs.MODEL_TIER_ICON_MAP[tier] : null;
35180
35237
  const useLiveDuration = isLastStep && liveTimer != null && step.t != null;
35181
35238
  const durationNode = useLiveDuration ? /* @__PURE__ */ jsxRuntime.jsx(
35182
35239
  MessageLiveSeconds,
@@ -35200,7 +35257,7 @@ var AgentStepsComponent = ({
35200
35257
  })) : null;
35201
35258
  const folded = childrenByParent.get(step.index);
35202
35259
  return /* @__PURE__ */ jsxRuntime.jsxs(
35203
- chunkJYR55F3P_cjs.StepRow,
35260
+ chunkK6T255ST_cjs.StepRow,
35204
35261
  {
35205
35262
  index: step.index,
35206
35263
  number: displayNumber.get(step.index) ?? String(i + 1),
@@ -35214,7 +35271,7 @@ var AgentStepsComponent = ({
35214
35271
  titleTestId: isActive ? "agent-expanded-current-step-description" : void 0,
35215
35272
  badge: TierIcon ? /* @__PURE__ */ jsxRuntime.jsxs(ui.Tooltip, { children: [
35216
35273
  /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex shrink-0 items-center self-center", children: /* @__PURE__ */ jsxRuntime.jsx(TierIcon, { size: 12, className: accent.fg, "aria-hidden": true }) }) }),
35217
- /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipContent, { side: "top", children: chunkJYR55F3P_cjs.MODEL_TIER_LABELS[tier] ?? tier })
35274
+ /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipContent, { side: "top", children: chunkK6T255ST_cjs.MODEL_TIER_LABELS[tier] ?? tier })
35218
35275
  ] }) : void 0,
35219
35276
  meta: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35220
35277
  isDeveloper && /* @__PURE__ */ jsxRuntime.jsx(StepModelIcon, { modelName: step.usage?.model, tag: getModelTag(step.usage?.model) }),
@@ -35229,14 +35286,14 @@ var AgentStepsComponent = ({
35229
35286
  summary && !isActive && (step.narration ? (
35230
35287
  /* Narration is PROSE (headings, bold, lists): render markdown, not raw asterisks.
35231
35288
  Tool summaries stay plain text: one-line headlines where a clamp matters. */
35232
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepNarration, { index: step.index, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBB4PMCU6_cjs.ConnectedMarkdown, { isStreaming: false, children: summary }) })
35233
- ) : /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepSummary, { index: step.index, multiLine: isMultiLine, children: summary })),
35234
- details.map((d, di) => /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepDetail, { index: step.index, children: d }, di)),
35235
- showOutcome && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepOutcome, { index: step.index, failed: outcomeFailed, children: step.outcome }),
35236
- toolParams.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepParams, { children: toolParams.map((p) => `${p.key}=${p.value}`).join(" ") }),
35237
- criteriaView && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.GoalCriteria, { criteria: criteriaView }),
35289
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepNarration, { index: step.index, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBB4PMCU6_cjs.ConnectedMarkdown, { isStreaming: false, children: summary }) })
35290
+ ) : /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepSummary, { index: step.index, multiLine: isMultiLine, children: summary })),
35291
+ details.map((d, di) => /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepDetail, { index: step.index, children: d }, di)),
35292
+ showOutcome && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepOutcome, { index: step.index, failed: outcomeFailed, children: step.outcome }),
35293
+ toolParams.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepParams, { children: toolParams.map((p) => `${p.key}=${p.value}`).join(" ") }),
35294
+ criteriaView && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.GoalCriteria, { criteria: criteriaView }),
35238
35295
  folded && folded.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
35239
- chunkJYR55F3P_cjs.SubStepGroup,
35296
+ chunkK6T255ST_cjs.SubStepGroup,
35240
35297
  {
35241
35298
  parentIndex: step.index,
35242
35299
  summary: summariseSubSteps(folded),
@@ -35262,7 +35319,7 @@ var AgentStepsComponent = ({
35262
35319
  leftParts.push(`${browser.formatTokens(totalInputTokens)} in`);
35263
35320
  if (totalOutputTokens > 0) leftParts.push(`${browser.formatTokens(totalOutputTokens)} out`);
35264
35321
  summaryNode = /* @__PURE__ */ jsxRuntime.jsx(
35265
- chunkJYR55F3P_cjs.StepTraceSummary,
35322
+ chunkK6T255ST_cjs.StepTraceSummary,
35266
35323
  {
35267
35324
  left: leftParts.join(" \xB7 "),
35268
35325
  isNearBudget: browser.isNearAiUsageBudget(contextUsage),
@@ -35270,7 +35327,7 @@ var AgentStepsComponent = ({
35270
35327
  }
35271
35328
  );
35272
35329
  }
35273
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.StepTrace, { className, summary: summaryNode, children: displayRows.map((row2, i) => {
35330
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.StepTrace, { className, summary: summaryNode, children: displayRows.map((row2, i) => {
35274
35331
  if (row2.lane) {
35275
35332
  return /* @__PURE__ */ jsxRuntime.jsx(
35276
35333
  LaneBinding,
@@ -35307,7 +35364,7 @@ function LaneBinding({
35307
35364
  const running = !closed && isStreaming;
35308
35365
  const latest = inner[inner.length - 1];
35309
35366
  return /* @__PURE__ */ jsxRuntime.jsx(
35310
- chunkJYR55F3P_cjs.SubAgentLane,
35367
+ chunkK6T255ST_cjs.SubAgentLane,
35311
35368
  {
35312
35369
  handle,
35313
35370
  number,
@@ -35430,7 +35487,7 @@ function AgentBarShell({
35430
35487
  }, [isStepsExpanded, steps]);
35431
35488
  const visibleStepCount = React9.useMemo(() => browser.topLevelAgentSteps(steps ?? []).length, [steps]);
35432
35489
  return /* @__PURE__ */ jsxRuntime.jsx(
35433
- chunkJYR55F3P_cjs.AgentBar,
35490
+ chunkK6T255ST_cjs.AgentBar,
35434
35491
  {
35435
35492
  className,
35436
35493
  testId,
@@ -35486,7 +35543,7 @@ function AgentControlBar({
35486
35543
  const isPaused = controlState === "paused" || controlState === "resuming";
35487
35544
  const steps = agentSteps ?? [];
35488
35545
  const currentStep = browser.getCurrentStep(steps);
35489
- const currentPresentation = chunkJYR55F3P_cjs.getCurrentAgentStepPresentation(steps);
35546
+ const currentPresentation = chunkK6T255ST_cjs.getCurrentAgentStepPresentation(steps);
35490
35547
  const CurrentStepIcon = currentPresentation?.Icon;
35491
35548
  const stepLabel2 = currentPresentation?.description ?? "Agent working\u2026";
35492
35549
  const runningLanes = browser.extractSubagentLanes(steps).filter((l) => l.status === "running");
@@ -35503,7 +35560,7 @@ function AgentControlBar({
35503
35560
  }
35504
35561
  );
35505
35562
  const status = /* @__PURE__ */ jsxRuntime.jsx(
35506
- chunkJYR55F3P_cjs.AgentBarStatus,
35563
+ chunkK6T255ST_cjs.AgentBarStatus,
35507
35564
  {
35508
35565
  state: showState ? controlState : void 0,
35509
35566
  stateLabel: STATE_LABEL[controlState],
@@ -35545,7 +35602,7 @@ function AgentControlBar({
35545
35602
  ];
35546
35603
  const controls = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35547
35604
  onStop && /* @__PURE__ */ jsxRuntime.jsx(
35548
- chunkJYR55F3P_cjs.AgentBarIconButton,
35605
+ chunkK6T255ST_cjs.AgentBarIconButton,
35549
35606
  {
35550
35607
  onClick: onStop,
35551
35608
  title: "Stop",
@@ -35554,22 +35611,22 @@ function AgentControlBar({
35554
35611
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Square, { className: "h-3 w-3", fill: "currentColor" })
35555
35612
  }
35556
35613
  ),
35557
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AgentBarMenu, { items: menuItems })
35614
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AgentBarMenu, { items: menuItems })
35558
35615
  ] });
35559
35616
  const displayedQueuedMessages = (transientQueuedMessages ?? []).filter(
35560
35617
  (message) => !message.serverId || !queuedMessages.some((queued) => queued.external_id === message.serverId)
35561
35618
  );
35562
35619
  const queuedNotes = displayedQueuedMessages.filter((message) => message.content);
35563
- const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.AgentBarNotes, { children: [
35620
+ const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.AgentBarNotes, { children: [
35564
35621
  queuedNotes.map((message, index) => /* @__PURE__ */ jsxRuntime.jsx(
35565
- chunkJYR55F3P_cjs.AgentBarQueuedNote,
35622
+ chunkK6T255ST_cjs.AgentBarQueuedNote,
35566
35623
  {
35567
35624
  text: message.content ?? "",
35568
35625
  isAcknowledged: message.acknowledged
35569
35626
  },
35570
35627
  index
35571
35628
  )),
35572
- probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35629
+ probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35573
35630
  ] }) : null;
35574
35631
  return /* @__PURE__ */ jsxRuntime.jsx(
35575
35632
  AgentBarShell,
@@ -35626,7 +35683,7 @@ function RunningSubagentsRoster({
35626
35683
  if (leafId) selectThread(leafId);
35627
35684
  };
35628
35685
  return /* @__PURE__ */ jsxRuntime.jsx(
35629
- chunkJYR55F3P_cjs.SubagentRoster,
35686
+ chunkK6T255ST_cjs.SubagentRoster,
35630
35687
  {
35631
35688
  lanes: rosterLanes,
35632
35689
  className,
@@ -35898,7 +35955,7 @@ var SourceChips = ({ messageId, citations, citationData }) => {
35898
35955
  session.setActiveCitationKey(`${messageId}-${num}`);
35899
35956
  if (source.chunk.metadata.chunk_ext_id) openChunk(source.chunk);
35900
35957
  };
35901
- return /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageSources, { messageId, sources, onOpenSource: open });
35958
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageSources, { messageId, sources, onOpenSource: open });
35902
35959
  };
35903
35960
  function MessageDetailsModal({
35904
35961
  open,
@@ -36094,7 +36151,7 @@ var ConversationComposerComponent = function ConversationComposer({
36094
36151
  () => react.buildMentionCandidates(users ?? [], currentUserId),
36095
36152
  [users, currentUserId]
36096
36153
  );
36097
- const mention = chunkEZLZ3MDU_cjs.useMentionAutocomplete({
36154
+ const mention = chunkJWYWP5EE_cjs.useMentionAutocomplete({
36098
36155
  value: newMessage,
36099
36156
  onValueChange: setNewMessage,
36100
36157
  candidates: mentionCandidates,
@@ -36141,13 +36198,13 @@ var ConversationComposerComponent = function ConversationComposer({
36141
36198
  if (recipient.hasBody) sendDraft();
36142
36199
  };
36143
36200
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(
36144
- chunk226ILMHW_cjs.Composer.Root,
36201
+ chunkW3AYIOK2_cjs.Composer.Root,
36145
36202
  {
36146
36203
  onSubmit: handleSubmit,
36147
36204
  formRef,
36148
36205
  isBranching,
36149
- notice: isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.Composer.Notice, { onCancel: onCancelBranching }) : void 0,
36150
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunk226ILMHW_cjs.Composer.Frame, { children: [
36206
+ notice: isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.Composer.Notice, { onCancel: onCancelBranching }) : void 0,
36207
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunkW3AYIOK2_cjs.Composer.Frame, { children: [
36151
36208
  /* @__PURE__ */ jsxRuntime.jsx(
36152
36209
  chunkQK3SHV3F_cjs.SlashMenu,
36153
36210
  {
@@ -36209,7 +36266,7 @@ var ConversationComposerComponent = function ConversationComposer({
36209
36266
  )
36210
36267
  ] }),
36211
36268
  /* @__PURE__ */ jsxRuntime.jsx(
36212
- chunk226ILMHW_cjs.Composer.Input,
36269
+ chunkW3AYIOK2_cjs.Composer.Input,
36213
36270
  {
36214
36271
  value: newMessage,
36215
36272
  onValueChange: (next) => {
@@ -36233,7 +36290,7 @@ var ConversationComposerComponent = function ConversationComposer({
36233
36290
  }
36234
36291
  ),
36235
36292
  /* @__PURE__ */ jsxRuntime.jsx(
36236
- chunk226ILMHW_cjs.Composer.Toolbar,
36293
+ chunkW3AYIOK2_cjs.Composer.Toolbar,
36237
36294
  {
36238
36295
  leading: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
36239
36296
  leftButton,
@@ -36271,7 +36328,7 @@ var ConversationSendButton = React9.memo(function ConversationSendButton2({
36271
36328
  const draftMessage = react.useArbiSessionState(react.selectDraft);
36272
36329
  const showRetryIcon = hasOrphanedMessage && draftMessage === "";
36273
36330
  return /* @__PURE__ */ jsxRuntime.jsx(
36274
- chunk226ILMHW_cjs.ComposerSend,
36331
+ chunkW3AYIOK2_cjs.ComposerSend,
36275
36332
  {
36276
36333
  onSend: onClick,
36277
36334
  isRetry: showRetryIcon,
@@ -36333,7 +36390,7 @@ var MicButton = React9.memo(function MicButton2({
36333
36390
  const isBusy = isTranscribing;
36334
36391
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
36335
36392
  /* @__PURE__ */ jsxRuntime.jsx(
36336
- chunk226ILMHW_cjs.ComposerVoiceButton,
36393
+ chunkW3AYIOK2_cjs.ComposerVoiceButton,
36337
36394
  {
36338
36395
  isRecording,
36339
36396
  isBusy,
@@ -36368,21 +36425,21 @@ function WorkflowStepMessage({
36368
36425
  const { conversations } = react.useConversationItems();
36369
36426
  const activity = react.useConversationActivity(conversationId ?? void 0, { live: true });
36370
36427
  const plan = conversations.find((c) => c.external_id === conversationId)?.plan;
36371
- const steps = chunkJYR55F3P_cjs.fromPlanSteps(plan?.steps ?? []);
36428
+ const steps = chunkK6T255ST_cjs.fromPlanSteps(plan?.steps ?? []);
36372
36429
  const found = steps.find((s) => s.id === step);
36373
- const states = chunkEZLZ3MDU_cjs.stepStatesFromActivity(activity.data ?? []);
36430
+ const states = chunkJWYWP5EE_cjs.stepStatesFromActivity(activity.data ?? []);
36374
36431
  const { data: documents = [] } = react.useDocuments();
36375
36432
  const { openDocument } = chunkI72IYIO2_cjs.useBlocksEnvironment();
36376
- const ref = found ? chunkEZLZ3MDU_cjs.stepDocuments(steps, states, step).at(-1) : void 0;
36377
- const docId = ref ? chunkEZLZ3MDU_cjs.splitDocRef(ref).id : void 0;
36433
+ const ref = found ? chunkJWYWP5EE_cjs.stepDocuments(steps, states, step).at(-1) : void 0;
36434
+ const docId = ref ? chunkJWYWP5EE_cjs.splitDocRef(ref).id : void 0;
36378
36435
  const doc = documents.find((d) => d.external_id === docId);
36379
36436
  return /* @__PURE__ */ jsxRuntime.jsx(
36380
- chunk226ILMHW_cjs.WorkflowStepChip,
36437
+ chunkW3AYIOK2_cjs.WorkflowStepChip,
36381
36438
  {
36382
36439
  step,
36383
36440
  title: found?.title,
36384
- kind: found ? chunkEZLZ3MDU_cjs.stepKindOf(found) : void 0,
36385
- phase: found && activity.data ? chunkEZLZ3MDU_cjs.stepPhase(steps, states, step) : void 0,
36441
+ kind: found ? chunkJWYWP5EE_cjs.stepKindOf(found) : void 0,
36442
+ phase: found && activity.data ? chunkJWYWP5EE_cjs.stepPhase(steps, states, step) : void 0,
36386
36443
  document: docId ? {
36387
36444
  name: doc ? ui.getDocumentTitle(doc) : docId,
36388
36445
  onOpen: () => {
@@ -36540,7 +36597,7 @@ var MessageComponent = ({
36540
36597
  const isQueuedAnswer = !isUser && message.status === "queued" && !isGenerating;
36541
36598
  const isAwaitingAnswer = (isGenerating || isRunningOnServer) && !isStopped && !!message.pendingUserInput;
36542
36599
  const showWorkingIndicator = (isGenerating || isRunningOnServer) && !isQueuedAnswer && !responseContent.trim() && !linkedArtifact && !isAwaitingAnswer;
36543
- const workingStepLabel = showWorkingIndicator ? chunkJYR55F3P_cjs.getCurrentAgentStepPresentation(message.agentSteps ?? [])?.description : void 0;
36600
+ const workingStepLabel = showWorkingIndicator ? chunkK6T255ST_cjs.getCurrentAgentStepPresentation(message.agentSteps ?? [])?.description : void 0;
36544
36601
  const workingStepStart = showWorkingIndicator ? browser.getCurrentStep(message.agentSteps ?? [])?.t ?? 0 : 0;
36545
36602
  const showEmptyAnswer = !isUser && !isGenerating && !isRunningOnServer && !isFailed && !isStopped && !responseContent.trim() && !linkedArtifact;
36546
36603
  const isEmptyStopped = isStopped && !responseContent.trim();
@@ -36769,7 +36826,7 @@ var MessageComponent = ({
36769
36826
  const actions = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
36770
36827
  branchControl,
36771
36828
  isUser ? /* @__PURE__ */ jsxRuntime.jsx(
36772
- chunk226ILMHW_cjs.MessageActionMenu,
36829
+ chunkW3AYIOK2_cjs.MessageActionMenu,
36773
36830
  {
36774
36831
  items: menuItems,
36775
36832
  heading: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -36780,7 +36837,7 @@ var MessageComponent = ({
36780
36837
  }
36781
36838
  ) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
36782
36839
  /* @__PURE__ */ jsxRuntime.jsx(
36783
- chunk226ILMHW_cjs.MessageActionButton,
36840
+ chunkW3AYIOK2_cjs.MessageActionButton,
36784
36841
  {
36785
36842
  onClick: (e) => {
36786
36843
  e.stopPropagation();
@@ -36795,7 +36852,7 @@ var MessageComponent = ({
36795
36852
  }
36796
36853
  ),
36797
36854
  /* @__PURE__ */ jsxRuntime.jsx(
36798
- chunk226ILMHW_cjs.MessageActionButton,
36855
+ chunkW3AYIOK2_cjs.MessageActionButton,
36799
36856
  {
36800
36857
  onClick: (e) => {
36801
36858
  e.stopPropagation();
@@ -36808,7 +36865,7 @@ var MessageComponent = ({
36808
36865
  }
36809
36866
  ),
36810
36867
  /* @__PURE__ */ jsxRuntime.jsx(
36811
- chunk226ILMHW_cjs.MessageActionMenu,
36868
+ chunkW3AYIOK2_cjs.MessageActionMenu,
36812
36869
  {
36813
36870
  items: menuItems,
36814
36871
  heading: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -36826,7 +36883,7 @@ var MessageComponent = ({
36826
36883
  ] });
36827
36884
  const isBareStopped = isEmptyStopped && visibleStepCount === 0;
36828
36885
  const footer = settledForHeader && !isBareStopped && /* @__PURE__ */ jsxRuntime.jsx(
36829
- chunk226ILMHW_cjs.MessageFooter,
36886
+ chunkW3AYIOK2_cjs.MessageFooter,
36830
36887
  {
36831
36888
  role: messageRole,
36832
36889
  align: isOtherPerson ? "start" : "end",
@@ -36844,7 +36901,7 @@ var MessageComponent = ({
36844
36901
  },
36845
36902
  "data-testid": `message-model-${messageId}`,
36846
36903
  children: /* @__PURE__ */ jsxRuntime.jsx(
36847
- chunkJYR55F3P_cjs.AssistantEntity,
36904
+ chunkK6T255ST_cjs.AssistantEntity,
36848
36905
  {
36849
36906
  name: modelDisplayName,
36850
36907
  modelName,
@@ -36924,7 +36981,7 @@ var MessageComponent = ({
36924
36981
  );
36925
36982
  }
36926
36983
  return /* @__PURE__ */ jsxRuntime.jsx(chunkTM2D4XT4_cjs.ErrorBoundary, { testId: "message-error-boundary", children: /* @__PURE__ */ jsxRuntime.jsxs(
36927
- chunk226ILMHW_cjs.MessageRoot,
36984
+ chunkW3AYIOK2_cjs.MessageRoot,
36928
36985
  {
36929
36986
  role: messageRole,
36930
36987
  messageId,
@@ -36932,15 +36989,15 @@ var MessageComponent = ({
36932
36989
  ...rest,
36933
36990
  children: [
36934
36991
  /* @__PURE__ */ jsxRuntime.jsxs(
36935
- chunk226ILMHW_cjs.MessageContent,
36992
+ chunkW3AYIOK2_cjs.MessageContent,
36936
36993
  {
36937
36994
  role: messageRole,
36938
36995
  messageId,
36939
36996
  align: isOtherPerson ? "start" : "end",
36940
36997
  children: [
36941
- startsAuthorRun && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageAuthor, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkS7B5E3RU_cjs.DocumentUser, { user: messageAuthorUser, variant: "pill" }) }),
36998
+ startsAuthorRun && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageAuthor, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkS7B5E3RU_cjs.DocumentUser, { user: messageAuthorUser, variant: "pill" }) }),
36942
36999
  /* @__PURE__ */ jsxRuntime.jsxs(
36943
- chunk226ILMHW_cjs.MessageBubble,
37000
+ chunkW3AYIOK2_cjs.MessageBubble,
36944
37001
  {
36945
37002
  ref: messageRef,
36946
37003
  role: messageRole,
@@ -36950,14 +37007,14 @@ var MessageComponent = ({
36950
37007
  className: isOtherPerson ? "border border-border bg-card" : void 0,
36951
37008
  children: [
36952
37009
  !isUser && isGenerating && /* @__PURE__ */ jsxRuntime.jsx(
36953
- chunk226ILMHW_cjs.MessageByline,
37010
+ chunkW3AYIOK2_cjs.MessageByline,
36954
37011
  {
36955
37012
  messageId,
36956
37013
  identity: (
36957
37014
  // Stays the ARBI identity while streaming: the model name arrives
36958
37015
  // with the first step that reports one and would swap the author
36959
37016
  // mid-answer. The model is shown in the footer once settled.
36960
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.AssistantEntity, { size: 16, pillSize: "sm" })
37017
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.AssistantEntity, { size: 16, pillSize: "sm" })
36961
37018
  ),
36962
37019
  timeLabel,
36963
37020
  isSettled: settledForHeader,
@@ -36965,9 +37022,9 @@ var MessageComponent = ({
36965
37022
  statusLabel
36966
37023
  }
36967
37024
  ),
36968
- subagentTaskRecord && /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageSubagentBadge, { messageId }),
36969
- /* @__PURE__ */ jsxRuntime.jsxs(chunk226ILMHW_cjs.MessageBody, { messageId, children: [
36970
- settledNarration ? /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageNarration, { messageId, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBB4PMCU6_cjs.ConnectedMarkdown, { isStreaming: false, children: settledNarration }) }) : null,
37025
+ subagentTaskRecord && /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageSubagentBadge, { messageId }),
37026
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkW3AYIOK2_cjs.MessageBody, { messageId, children: [
37027
+ settledNarration ? /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageNarration, { messageId, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBB4PMCU6_cjs.ConnectedMarkdown, { isStreaming: false, children: settledNarration }) }) : null,
36971
37028
  liveContent ? role === "assistant" ? /* @__PURE__ */ jsxRuntime.jsx(
36972
37029
  ConnectedCitationRenderer,
36973
37030
  {
@@ -37310,7 +37367,7 @@ function ConnectedMessageList({ messages }) {
37310
37367
  const isGenerating = react.useArbiSessionState((state) => state.generating[currentConversationId || ""]?.isGenerating) ?? false;
37311
37368
  const isLiveTurn = isGenerating && messages[messages.length - 1]?.isLoading === true;
37312
37369
  const lastMessage = displayMessages[displayMessages.length - 1];
37313
- const statusMessage = chunk226ILMHW_cjs.useStreamAnnouncement({
37370
+ const statusMessage = chunkW3AYIOK2_cjs.useStreamAnnouncement({
37314
37371
  isStreaming: isGenerating,
37315
37372
  text: lastMessage?.role === "assistant" ? stripThinking(lastMessage.content ?? "") : "",
37316
37373
  resetKey: currentConversationId
@@ -37400,29 +37457,29 @@ function ConnectedMessageList({ messages }) {
37400
37457
  chunkQK3SHV3F_cjs.flashMessage(target);
37401
37458
  session.setDeepLinkMessageId(null);
37402
37459
  }, [deepLinkMessageId, virtualItems, session]);
37403
- const status = /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageList.Status, { message: statusMessage });
37460
+ const status = /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageList.Status, { message: statusMessage });
37404
37461
  if (transcript.length === 0) {
37405
37462
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
37406
37463
  status,
37407
- /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageList.Empty, {})
37464
+ /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageList.Empty, {})
37408
37465
  ] });
37409
37466
  }
37410
37467
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
37411
37468
  status,
37412
- /* @__PURE__ */ jsxRuntime.jsxs(chunk226ILMHW_cjs.MessageList.Root, { isBusy: isGenerating, children: [
37413
- mainSiblingLeaf && /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageList.Banner, { onBack: () => setParentMessageId(mainSiblingLeaf) }),
37414
- /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageList.Rows, { totalSize: rowVirtualizer.getTotalSize(), children: virtualItems.map((virtualItem) => {
37469
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkW3AYIOK2_cjs.MessageList.Root, { isBusy: isGenerating, children: [
37470
+ mainSiblingLeaf && /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageList.Banner, { onBack: () => setParentMessageId(mainSiblingLeaf) }),
37471
+ /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageList.Rows, { totalSize: rowVirtualizer.getTotalSize(), children: virtualItems.map((virtualItem) => {
37415
37472
  const entry = transcript[virtualItem.index];
37416
37473
  if (entry.type === "activity") {
37417
37474
  return /* @__PURE__ */ jsxRuntime.jsx(
37418
- chunk226ILMHW_cjs.MessageList.Row,
37475
+ chunkW3AYIOK2_cjs.MessageList.Row,
37419
37476
  {
37420
37477
  ref: rowVirtualizer.measureElement,
37421
37478
  index: virtualItem.index,
37422
37479
  start: virtualItem.start,
37423
37480
  messageId: entry.id,
37424
37481
  setSize: transcript.length,
37425
- children: entry.item.card ?? /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ThreadActivity, { item: entry.item, children: entry.item.onOpenDocument && /* @__PURE__ */ jsxRuntime.jsx(
37482
+ children: entry.item.card ?? /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ThreadActivity, { item: entry.item, children: entry.item.onOpenDocument && /* @__PURE__ */ jsxRuntime.jsx(
37426
37483
  "button",
37427
37484
  {
37428
37485
  className: "mt-1 hover:underline text-primary",
@@ -37438,7 +37495,7 @@ function ConnectedMessageList({ messages }) {
37438
37495
  const messageId = message.external_id;
37439
37496
  const branchPoint = messageId ? getBranchControlForMessage(messageId) : null;
37440
37497
  return /* @__PURE__ */ jsxRuntime.jsx(
37441
- chunk226ILMHW_cjs.MessageList.Row,
37498
+ chunkW3AYIOK2_cjs.MessageList.Row,
37442
37499
  {
37443
37500
  ref: rowVirtualizer.measureElement,
37444
37501
  index: virtualItem.index,
@@ -37469,7 +37526,7 @@ function ConnectedMessageList({ messages }) {
37469
37526
  message.external_id ?? `msg-${virtualItem.index}`
37470
37527
  );
37471
37528
  }) }),
37472
- isLiveTurn ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-4", "aria-hidden": "true" }) : /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.MessageList.Tail, {})
37529
+ isLiveTurn ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-4", "aria-hidden": "true" }) : /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.MessageList.Tail, {})
37473
37530
  ] }),
37474
37531
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedThreadsPreview, { open: previewOpen, onOpenChange: setPreviewOpen })
37475
37532
  ] });
@@ -37821,7 +37878,7 @@ function ConnectedThreadsPage({
37821
37878
  "data-testid": mode === "tasks" ? "tasks-page" : "threads-page",
37822
37879
  children: [
37823
37880
  /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-0 flex-1 flex-col bg-background", children: mode === "threads" ? /* @__PURE__ */ jsxRuntime.jsx(
37824
- chunkJYR55F3P_cjs.ConversationListView,
37881
+ chunkK6T255ST_cjs.ConversationListView,
37825
37882
  {
37826
37883
  showHeader,
37827
37884
  conversations: tasks,
@@ -37841,7 +37898,7 @@ function ConnectedThreadsPage({
37841
37898
  renderLabels: threadLabels.renderLabels,
37842
37899
  labelText: threadLabels.labelText,
37843
37900
  renderBy: (row2) => /* @__PURE__ */ jsxRuntime.jsx(
37844
- chunkJYR55F3P_cjs.ConversationTurnSpeaker,
37901
+ chunkK6T255ST_cjs.ConversationTurnSpeaker,
37845
37902
  {
37846
37903
  variant: "icon",
37847
37904
  role: row2.last_message_role,
@@ -37863,7 +37920,7 @@ function ConnectedThreadsPage({
37863
37920
  footer: /* @__PURE__ */ jsxRuntime.jsx(ConnectedThreadLauncher, { autoFocus: focusLauncher })
37864
37921
  }
37865
37922
  ) : /* @__PURE__ */ jsxRuntime.jsx(
37866
- chunkJYR55F3P_cjs.TaskInbox,
37923
+ chunkK6T255ST_cjs.TaskInbox,
37867
37924
  {
37868
37925
  tasks,
37869
37926
  isLoading,
@@ -38143,7 +38200,7 @@ function ConnectedConversationPage({
38143
38200
  }
38144
38201
  );
38145
38202
  const { data: workspaceTags = [] } = react.useTags();
38146
- const historyCount = chunkJYR55F3P_cjs.filterConversationRows(
38203
+ const historyCount = chunkK6T255ST_cjs.filterConversationRows(
38147
38204
  conversations,
38148
38205
  threadFilter,
38149
38206
  (row2) => workspaceTags.filter((tag) => row2.label_ext_ids?.includes(tag.external_id)).map((tag) => tag.name).join(" "),
@@ -38259,7 +38316,7 @@ function ConnectedConversationEmpty({
38259
38316
  below
38260
38317
  }) {
38261
38318
  return /* @__PURE__ */ jsxRuntime.jsx(
38262
- chunk226ILMHW_cjs.ConversationEmpty,
38319
+ chunkW3AYIOK2_cjs.ConversationEmpty,
38263
38320
  {
38264
38321
  hasDocuments,
38265
38322
  prompts: EXAMPLE_PROMPTS,
@@ -38321,7 +38378,7 @@ function ConversationAlert({
38321
38378
  }, [message, onRetryOrphaned, notify18]);
38322
38379
  if (type === "send-failed") {
38323
38380
  return /* @__PURE__ */ jsxRuntime.jsx(
38324
- chunk226ILMHW_cjs.MessageAlert,
38381
+ chunkW3AYIOK2_cjs.MessageAlert,
38325
38382
  {
38326
38383
  title: "Message failed to send",
38327
38384
  description: errorMessage2 || "An error occurred while sending your message.",
@@ -38350,7 +38407,7 @@ function ConversationAlert({
38350
38407
  );
38351
38408
  }
38352
38409
  return /* @__PURE__ */ jsxRuntime.jsx(
38353
- chunk226ILMHW_cjs.MessageAlert,
38410
+ chunkW3AYIOK2_cjs.MessageAlert,
38354
38411
  {
38355
38412
  title: type === "backend-failed" ? "Response Failed" : "Response Incomplete",
38356
38413
  description: type === "backend-failed" ? "The assistant's response failed. Use Retry to try again." : "Use Retry to try again, or type a new query.",
@@ -39074,7 +39131,7 @@ function ConversationThread({
39074
39131
  }, [isGenerating]);
39075
39132
  const slashWorkflows = useSlashSkillWorkflows({ landing: "current-chat" });
39076
39133
  const composerSkills = React9.useMemo(
39077
- () => ({ builtin: chunkJYR55F3P_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
39134
+ () => ({ builtin: chunkK6T255ST_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
39078
39135
  [slashWorkflows.openFor]
39079
39136
  );
39080
39137
  const browseSkills = React9.useMemo(
@@ -39149,7 +39206,7 @@ function ConversationThread({
39149
39206
  /* @__PURE__ */ jsxRuntime.jsx(chunkPFJSYJ34_cjs.CallConversationEmpty, { callExtId: meetingCallExtId }),
39150
39207
  /* @__PURE__ */ jsxRuntime.jsx(chunkPFJSYJ34_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
39151
39208
  ] })
39152
- ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
39209
+ ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
39153
39210
  ConnectedConversationEmpty,
39154
39211
  {
39155
39212
  hasDocuments: allWorkspaceDocuments.length > 0,
@@ -39164,17 +39221,17 @@ function ConversationThread({
39164
39221
  }
39165
39222
  ) }),
39166
39223
  /* @__PURE__ */ jsxRuntime.jsx(
39167
- chunk226ILMHW_cjs.ComposerDock,
39224
+ chunkW3AYIOK2_cjs.ComposerDock,
39168
39225
  {
39169
39226
  floating: /* @__PURE__ */ jsxRuntime.jsx(
39170
- chunk226ILMHW_cjs.ScrollToBottom,
39227
+ chunkW3AYIOK2_cjs.ScrollToBottom,
39171
39228
  {
39172
39229
  className: "left-auto right-3 translate-x-0",
39173
39230
  show: showScrollToBottom,
39174
39231
  onClick: scrollToBottom
39175
39232
  }
39176
39233
  ),
39177
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunk226ILMHW_cjs.ComposerContainer, { className: "mx-auto max-w-[49rem] px-3 sm:px-6", children: [
39234
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunkW3AYIOK2_cjs.ComposerContainer, { className: "mx-auto max-w-[49rem] px-3 sm:px-6", children: [
39178
39235
  orphanedMessage ? /* @__PURE__ */ jsxRuntime.jsx(
39179
39236
  ConversationAlert,
39180
39237
  {
@@ -39315,7 +39372,7 @@ function ConnectedCompactConversation() {
39315
39372
  const currentConversationId = react.useArbiSessionState((state) => state.conversationId);
39316
39373
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col flex-1 min-h-0", "data-testid": "embedded-chat", children: [
39317
39374
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative flex-1 min-h-0", children: messageHistory.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedMessageArea, { ref: containerRef, messages: messageHistory }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center h-full text-muted-foreground text-sm p-4", children: currentConversationId ? "Loading messages..." : "Start a conversation by typing below." }) }),
39318
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sticky bottom-0 w-full bg-background border-t z-10", children: /* @__PURE__ */ jsxRuntime.jsx(chunk226ILMHW_cjs.ComposerContainer, { children: /* @__PURE__ */ jsxRuntime.jsx(
39375
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sticky bottom-0 w-full bg-background border-t z-10", children: /* @__PURE__ */ jsxRuntime.jsx(chunkW3AYIOK2_cjs.ComposerContainer, { children: /* @__PURE__ */ jsxRuntime.jsx(
39319
39376
  ConversationComposer2,
39320
39377
  {
39321
39378
  handleSendMessage,
@@ -39469,7 +39526,7 @@ function AgentChat({ agentId, workspaceId, onOpenFull }) {
39469
39526
  /* @__PURE__ */ jsxRuntime.jsx("ol", { className: "mt-2 space-y-1", children: activity.map((name, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "whitespace-pre-wrap break-all", children: name }) }, i)) })
39470
39527
  ] }),
39471
39528
  /* @__PURE__ */ jsxRuntime.jsx(
39472
- chunk226ILMHW_cjs.ChatPage,
39529
+ chunkW3AYIOK2_cjs.ChatPage,
39473
39530
  {
39474
39531
  chat: { ...chat, assistantMode: void 0, setAssistantMode: void 0 },
39475
39532
  surface: "dock",
@@ -41036,7 +41093,7 @@ function SsoResendVerificationButton({
41036
41093
  onClick: async () => handleResendEmailVerification(),
41037
41094
  disabled: loading || disabled,
41038
41095
  "aria-label": "Resend verification email",
41039
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkRTS3B2W7_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
41096
+ children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk2QV2SCEB_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
41040
41097
  "Didn't get a verification email? ",
41041
41098
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold", children: "Resend" })
41042
41099
  ] })
@@ -41930,27 +41987,27 @@ function ConnectedOAuthConsentPage({
41930
41987
  oauthErrorRedirect(params.redirectUri, params.state, "access_denied");
41931
41988
  }
41932
41989
  if (error && !params) {
41933
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
41990
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
41934
41991
  }
41935
41992
  if (!params) {
41936
41993
  return null;
41937
41994
  }
41938
41995
  if (clientInfo?.isLocalAgentFlow) {
41939
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentMessage, { tone: "warning", title: "Close this tab", children: "This tab opened alongside the correct authorization page. Please close this tab and complete the connection in the other tab that opened at the same time." }) });
41996
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentMessage, { tone: "warning", title: "Close this tab", children: "This tab opened alongside the correct authorization page. Please close this tab and complete the connection in the other tab that opened at the same time." }) });
41940
41997
  }
41941
41998
  if (!isAuthenticated2) {
41942
41999
  return null;
41943
42000
  }
41944
42001
  if (callbackUrl) {
41945
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentCard, { size: "md", children: [
41946
- /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
42002
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentCard, { size: "md", children: [
42003
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
41947
42004
  "A new tab has opened to complete the connection. If it succeeded, you can close this page. If you see a connection error there, paste the URL below into Claude Cowork \u2014",
41948
42005
  " ",
41949
42006
  copied ? "it's already copied to your clipboard." : "copy it first."
41950
42007
  ] }),
41951
- /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentSection, { title: "Callback URL", children: [
41952
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
41953
- /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentText, { variant: "hint", children: [
42008
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentSection, { title: "Callback URL", children: [
42009
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
42010
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentText, { variant: "hint", children: [
41954
42011
  "In Claude Code, paste the URL at the prompt that says",
41955
42012
  " ",
41956
42013
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-foreground", children: '"paste the full redirect URL here"' }),
@@ -41959,17 +42016,17 @@ function ConnectedOAuthConsentPage({
41959
42016
  ] })
41960
42017
  ] }) });
41961
42018
  }
41962
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentCard, { children: [
41963
- /* @__PURE__ */ jsxRuntime.jsxs(chunkJYR55F3P_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
41964
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
42019
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentCard, { children: [
42020
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkK6T255ST_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
42021
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
41965
42022
  " is requesting access to your ",
41966
42023
  appName,
41967
42024
  " workspace."
41968
42025
  ] }),
41969
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentPermissionList, { items: permissions }) }),
41970
- error && /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentNotice, { tone: "error", children: error }),
41971
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
41972
- /* @__PURE__ */ jsxRuntime.jsx(chunkJYR55F3P_cjs.ConsentFootnote, { children: footnote })
42026
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentPermissionList, { items: permissions }) }),
42027
+ error && /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentNotice, { tone: "error", children: error }),
42028
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
42029
+ /* @__PURE__ */ jsxRuntime.jsx(chunkK6T255ST_cjs.ConsentFootnote, { children: footnote })
41973
42030
  ] }) });
41974
42031
  }
41975
42032
  function ConnectedSharedFilesPage({
@@ -42265,10 +42322,10 @@ function useContextualHints() {
42265
42322
  const session = react.useArbiSessionStore();
42266
42323
  const { data: userSettings } = react.useUserSettings();
42267
42324
  const updateUserSettings = react.useUpdateUserSettings();
42268
- const [sessionOverride] = react.useTransientView(chunkRTS3B2W7_cjs.TIPS_VISIBILITY_OVERRIDE, null);
42269
- const setShowHints = (value) => chunkRTS3B2W7_cjs.setHintsSessionOverride(session, value);
42325
+ const [sessionOverride] = react.useTransientView(chunk2QV2SCEB_cjs.TIPS_VISIBILITY_OVERRIDE, null);
42326
+ const setShowHints = (value) => chunk2QV2SCEB_cjs.setHintsSessionOverride(session, value);
42270
42327
  const setShowHintsPersisted = (value) => {
42271
- chunkRTS3B2W7_cjs.setHintsSessionOverride(session, null);
42328
+ chunk2QV2SCEB_cjs.setHintsSessionOverride(session, null);
42272
42329
  updateUserSettings.mutate({ show_hints: value });
42273
42330
  };
42274
42331
  return {
@@ -42451,35 +42508,35 @@ Object.defineProperty(exports, "useResolvedDocStatus", {
42451
42508
  });
42452
42509
  Object.defineProperty(exports, "ConnectedAssistantDock", {
42453
42510
  enumerable: true,
42454
- get: function () { return chunkMBGV6JHG_cjs.ConnectedAssistantDock; }
42511
+ get: function () { return chunkKYOVVXAS_cjs.ConnectedAssistantDock; }
42455
42512
  });
42456
42513
  Object.defineProperty(exports, "redlineStats", {
42457
42514
  enumerable: true,
42458
- get: function () { return chunkMBGV6JHG_cjs.redlineStats; }
42515
+ get: function () { return chunkKYOVVXAS_cjs.redlineStats; }
42459
42516
  });
42460
42517
  Object.defineProperty(exports, "textToArtifact", {
42461
42518
  enumerable: true,
42462
- get: function () { return chunkMBGV6JHG_cjs.textToArtifact; }
42519
+ get: function () { return chunkKYOVVXAS_cjs.textToArtifact; }
42463
42520
  });
42464
42521
  Object.defineProperty(exports, "toRedlineMarkdown", {
42465
42522
  enumerable: true,
42466
- get: function () { return chunkMBGV6JHG_cjs.toRedlineMarkdown; }
42523
+ get: function () { return chunkKYOVVXAS_cjs.toRedlineMarkdown; }
42467
42524
  });
42468
42525
  Object.defineProperty(exports, "useConnectedAiTask", {
42469
42526
  enumerable: true,
42470
- get: function () { return chunkMBGV6JHG_cjs.useConnectedAiTask; }
42527
+ get: function () { return chunkKYOVVXAS_cjs.useConnectedAiTask; }
42471
42528
  });
42472
42529
  Object.defineProperty(exports, "useConnectedChat", {
42473
42530
  enumerable: true,
42474
- get: function () { return chunkMBGV6JHG_cjs.useConnectedChat; }
42531
+ get: function () { return chunkKYOVVXAS_cjs.useConnectedChat; }
42475
42532
  });
42476
42533
  Object.defineProperty(exports, "useSemanticSearch", {
42477
42534
  enumerable: true,
42478
- get: function () { return chunkMBGV6JHG_cjs.useSemanticSearch; }
42535
+ get: function () { return chunkKYOVVXAS_cjs.useSemanticSearch; }
42479
42536
  });
42480
42537
  Object.defineProperty(exports, "useWorkspaceDocs", {
42481
42538
  enumerable: true,
42482
- get: function () { return chunkMBGV6JHG_cjs.useWorkspaceDocs; }
42539
+ get: function () { return chunkKYOVVXAS_cjs.useWorkspaceDocs; }
42483
42540
  });
42484
42541
  Object.defineProperty(exports, "ConnectedWorkflowDocumentsField", {
42485
42542
  enumerable: true,