@arbidocs/blocks 0.5.52 → 0.5.53

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 (80) hide show
  1. package/dist/{ConnectedNativeDocxComparison-E3J2DKJU.js → ConnectedNativeDocxComparison-URPACTBQ.js} +8 -8
  2. package/dist/{ConnectedStreamedWordArtifact-OLTI5TGZ.js.map → ConnectedNativeDocxComparison-URPACTBQ.js.map} +1 -1
  3. package/dist/{ConnectedNativeDocxComparison-B3PXV6QS.cjs → ConnectedNativeDocxComparison-YROKRZOV.cjs} +9 -9
  4. package/dist/{ConnectedNativeDocxComparison-B3PXV6QS.cjs.map → ConnectedNativeDocxComparison-YROKRZOV.cjs.map} +1 -1
  5. package/dist/{ConnectedNativeDocxEditor-USZ2EO3T.js → ConnectedNativeDocxEditor-A3F2QISR.js} +7 -7
  6. package/dist/{ConnectedNativeDocxEditor-USZ2EO3T.js.map → ConnectedNativeDocxEditor-A3F2QISR.js.map} +1 -1
  7. package/dist/{ConnectedNativeDocxEditor-3ZQQ3IKM.cjs → ConnectedNativeDocxEditor-MJ3LAXTF.cjs} +9 -9
  8. package/dist/{ConnectedNativeDocxEditor-3ZQQ3IKM.cjs.map → ConnectedNativeDocxEditor-MJ3LAXTF.cjs.map} +1 -1
  9. package/dist/{ConnectedStreamedWordArtifact-OLTI5TGZ.js → ConnectedStreamedWordArtifact-GQWYYVT5.js} +8 -8
  10. package/dist/{ConnectedNativeDocxComparison-E3J2DKJU.js.map → ConnectedStreamedWordArtifact-GQWYYVT5.js.map} +1 -1
  11. package/dist/{ConnectedStreamedWordArtifact-WP7XISA3.cjs → ConnectedStreamedWordArtifact-KPVL377Z.cjs} +9 -9
  12. package/dist/ConnectedStreamedWordArtifact-KPVL377Z.cjs.map +1 -0
  13. package/dist/{DocumentReviewCard-WHDZA46J.cjs → DocumentReviewCard-IWQFZO3X.cjs} +3 -3
  14. package/dist/{DocumentReviewCard-WHDZA46J.cjs.map → DocumentReviewCard-IWQFZO3X.cjs.map} +1 -1
  15. package/dist/{DocumentReviewCard-PZFDQMLX.js → DocumentReviewCard-TBU56QQG.js} +3 -3
  16. package/dist/{DocumentReviewCard-PZFDQMLX.js.map → DocumentReviewCard-TBU56QQG.js.map} +1 -1
  17. package/dist/WorkspaceTableView-4DZ4YODA.js +1 -1
  18. package/dist/WorkspaceTableView-XHEVFCRP.cjs +1 -1
  19. package/dist/agents/index.cjs +335 -335
  20. package/dist/agents/index.js +5 -5
  21. package/dist/calls/index.cjs +1 -1
  22. package/dist/calls/index.js +1 -1
  23. package/dist/{chunk-ED4TE7XG.cjs → chunk-2DRTKD2W.cjs} +7 -7
  24. package/dist/{chunk-ED4TE7XG.cjs.map → chunk-2DRTKD2W.cjs.map} +1 -1
  25. package/dist/{chunk-PEBVG2FZ.cjs → chunk-2KQH2Z6Y.cjs} +4 -4
  26. package/dist/{chunk-PEBVG2FZ.cjs.map → chunk-2KQH2Z6Y.cjs.map} +1 -1
  27. package/dist/{chunk-JA45SE3Q.js → chunk-2SAVSXZF.js} +3 -3
  28. package/dist/{chunk-JA45SE3Q.js.map → chunk-2SAVSXZF.js.map} +1 -1
  29. package/dist/{chunk-JS7KJRKG.js → chunk-75Z5AUMM.js} +3 -3
  30. package/dist/{chunk-JS7KJRKG.js.map → chunk-75Z5AUMM.js.map} +1 -1
  31. package/dist/{chunk-NX2RTI3E.js → chunk-7WMEKKX5.js} +3 -3
  32. package/dist/{chunk-NX2RTI3E.js.map → chunk-7WMEKKX5.js.map} +1 -1
  33. package/dist/{chunk-WADQ6T5Q.js → chunk-BAKRM5XB.js} +3 -3
  34. package/dist/{chunk-WADQ6T5Q.js.map → chunk-BAKRM5XB.js.map} +1 -1
  35. package/dist/{chunk-JJ3BM4O4.js → chunk-FCHIMF7Q.js} +3 -3
  36. package/dist/{chunk-JJ3BM4O4.js.map → chunk-FCHIMF7Q.js.map} +1 -1
  37. package/dist/{chunk-YIPMYI7I.cjs → chunk-JEXP72GJ.cjs} +4 -4
  38. package/dist/{chunk-YIPMYI7I.cjs.map → chunk-JEXP72GJ.cjs.map} +1 -1
  39. package/dist/{chunk-P35R4CNF.js → chunk-KOKGEFSE.js} +4 -4
  40. package/dist/{chunk-P35R4CNF.js.map → chunk-KOKGEFSE.js.map} +1 -1
  41. package/dist/{chunk-UIGZHXIA.js → chunk-LXQGAYUZ.js} +6 -6
  42. package/dist/{chunk-UIGZHXIA.js.map → chunk-LXQGAYUZ.js.map} +1 -1
  43. package/dist/{chunk-O56XBFEC.js → chunk-MGHRGZPH.js} +4 -4
  44. package/dist/{chunk-O56XBFEC.js.map → chunk-MGHRGZPH.js.map} +1 -1
  45. package/dist/{chunk-PC3RCNCQ.js → chunk-O7KU7QW2.js} +4 -4
  46. package/dist/{chunk-PC3RCNCQ.js.map → chunk-O7KU7QW2.js.map} +1 -1
  47. package/dist/{chunk-Q5MGOAZW.cjs → chunk-PTNV3TT5.cjs} +36 -36
  48. package/dist/{chunk-Q5MGOAZW.cjs.map → chunk-PTNV3TT5.cjs.map} +1 -1
  49. package/dist/{chunk-FCOP4ZJD.cjs → chunk-R3247EN3.cjs} +13 -13
  50. package/dist/{chunk-FCOP4ZJD.cjs.map → chunk-R3247EN3.cjs.map} +1 -1
  51. package/dist/{chunk-BKILOHZ3.cjs → chunk-ST6ELFDF.cjs} +4 -4
  52. package/dist/{chunk-BKILOHZ3.cjs.map → chunk-ST6ELFDF.cjs.map} +1 -1
  53. package/dist/{chunk-6ODV5TIC.cjs → chunk-VGFU6JFI.cjs} +5 -5
  54. package/dist/{chunk-6ODV5TIC.cjs.map → chunk-VGFU6JFI.cjs.map} +1 -1
  55. package/dist/{chunk-TXJK77YJ.js → chunk-VT3TOWWF.js} +3 -3
  56. package/dist/{chunk-TXJK77YJ.js.map → chunk-VT3TOWWF.js.map} +1 -1
  57. package/dist/{chunk-22WFFNYY.cjs → chunk-VVNG7LMP.cjs} +18 -18
  58. package/dist/{chunk-22WFFNYY.cjs.map → chunk-VVNG7LMP.cjs.map} +1 -1
  59. package/dist/{chunk-N5CKIKQB.cjs → chunk-WHJMV6TX.cjs} +10 -10
  60. package/dist/{chunk-N5CKIKQB.cjs.map → chunk-WHJMV6TX.cjs.map} +1 -1
  61. package/dist/{chunk-F72ZD5Q2.cjs → chunk-YD3RN2FY.cjs} +3 -3
  62. package/dist/{chunk-F72ZD5Q2.cjs.map → chunk-YD3RN2FY.cjs.map} +1 -1
  63. package/dist/connect/docx.cjs +11 -11
  64. package/dist/connect/docx.js +7 -7
  65. package/dist/connect/index.cjs +279 -279
  66. package/dist/connect/index.js +15 -15
  67. package/dist/connect/viewer.cjs +4 -4
  68. package/dist/connect/viewer.js +4 -4
  69. package/dist/connection/facts/useFactFilters.d.ts +10 -1
  70. package/dist/facts/index.cjs +55 -55
  71. package/dist/facts/index.js +3 -3
  72. package/dist/index.cjs +400 -400
  73. package/dist/index.js +7 -7
  74. package/dist/settings/index.cjs +1 -1
  75. package/dist/settings/index.js +1 -1
  76. package/dist/workflow-canvas/index.cjs +30 -30
  77. package/dist/workflow-canvas/index.js +8 -8
  78. package/node_modules/@arbidocs/coedit/package.json +1 -1
  79. package/package.json +5 -5
  80. package/dist/ConnectedStreamedWordArtifact-WP7XISA3.cjs.map +0 -1
@@ -3,20 +3,20 @@
3
3
 
4
4
  var chunkRH6HTLVS_cjs = require('../chunk-RH6HTLVS.cjs');
5
5
  var chunkQECV3AFL_cjs = require('../chunk-QECV3AFL.cjs');
6
- var chunkQ5MGOAZW_cjs = require('../chunk-Q5MGOAZW.cjs');
6
+ var chunkPTNV3TT5_cjs = require('../chunk-PTNV3TT5.cjs');
7
7
  var chunkDZWO5JAG_cjs = require('../chunk-DZWO5JAG.cjs');
8
8
  var chunkJL4KG6QA_cjs = require('../chunk-JL4KG6QA.cjs');
9
9
  var chunkKWJW5TMH_cjs = require('../chunk-KWJW5TMH.cjs');
10
10
  var chunkPSIKUQYM_cjs = require('../chunk-PSIKUQYM.cjs');
11
- var chunkF72ZD5Q2_cjs = require('../chunk-F72ZD5Q2.cjs');
11
+ var chunkYD3RN2FY_cjs = require('../chunk-YD3RN2FY.cjs');
12
12
  var chunkWSOBLKDY_cjs = require('../chunk-WSOBLKDY.cjs');
13
13
  var chunkOU3RGQFX_cjs = require('../chunk-OU3RGQFX.cjs');
14
14
  require('../chunk-REH7PX3N.cjs');
15
15
  require('../chunk-H32DV7XS.cjs');
16
16
  var chunkFEVJA4BP_cjs = require('../chunk-FEVJA4BP.cjs');
17
17
  var chunkIJPNLKXR_cjs = require('../chunk-IJPNLKXR.cjs');
18
- var chunkED4TE7XG_cjs = require('../chunk-ED4TE7XG.cjs');
19
- var chunkN5CKIKQB_cjs = require('../chunk-N5CKIKQB.cjs');
18
+ var chunk2DRTKD2W_cjs = require('../chunk-2DRTKD2W.cjs');
19
+ var chunkWHJMV6TX_cjs = require('../chunk-WHJMV6TX.cjs');
20
20
  var chunkA2UBFIY5_cjs = require('../chunk-A2UBFIY5.cjs');
21
21
  var chunk6XEFUJTT_cjs = require('../chunk-6XEFUJTT.cjs');
22
22
  var chunk2WLXQGWC_cjs = require('../chunk-2WLXQGWC.cjs');
@@ -29,7 +29,7 @@ var chunk464YPRAE_cjs = require('../chunk-464YPRAE.cjs');
29
29
  var chunkPICGTGEB_cjs = require('../chunk-PICGTGEB.cjs');
30
30
  var chunk5FYU7ZIU_cjs = require('../chunk-5FYU7ZIU.cjs');
31
31
  require('../chunk-ZESMRGDV.cjs');
32
- var chunk6ODV5TIC_cjs = require('../chunk-6ODV5TIC.cjs');
32
+ var chunkVGFU6JFI_cjs = require('../chunk-VGFU6JFI.cjs');
33
33
  var chunkTMX7YFVM_cjs = require('../chunk-TMX7YFVM.cjs');
34
34
  require('../chunk-QXNEXPUL.cjs');
35
35
  var chunkC2ECYOPP_cjs = require('../chunk-C2ECYOPP.cjs');
@@ -52,9 +52,9 @@ require('../chunk-VLCY46K6.cjs');
52
52
  require('../chunk-D54JXTPG.cjs');
53
53
  var chunkJIOHDVWH_cjs = require('../chunk-JIOHDVWH.cjs');
54
54
  var chunkRC25WMVB_cjs = require('../chunk-RC25WMVB.cjs');
55
- var chunkFCOP4ZJD_cjs = require('../chunk-FCOP4ZJD.cjs');
55
+ var chunkR3247EN3_cjs = require('../chunk-R3247EN3.cjs');
56
56
  var chunkRFIBUWLF_cjs = require('../chunk-RFIBUWLF.cjs');
57
- var chunkYIPMYI7I_cjs = require('../chunk-YIPMYI7I.cjs');
57
+ var chunkJEXP72GJ_cjs = require('../chunk-JEXP72GJ.cjs');
58
58
  var chunkM36TROAF_cjs = require('../chunk-M36TROAF.cjs');
59
59
  var chunkAQPZ4QMV_cjs = require('../chunk-AQPZ4QMV.cjs');
60
60
  require('../chunk-SIB6C7P7.cjs');
@@ -67,17 +67,17 @@ var chunkLKK52DEY_cjs = require('../chunk-LKK52DEY.cjs');
67
67
  var chunkQVBZESYQ_cjs = require('../chunk-QVBZESYQ.cjs');
68
68
  var chunkBYJUI4AT_cjs = require('../chunk-BYJUI4AT.cjs');
69
69
  var chunkCG757WKY_cjs = require('../chunk-CG757WKY.cjs');
70
+ var chunkW3PSIIMN_cjs = require('../chunk-W3PSIIMN.cjs');
71
+ var chunkQUMUAJ2P_cjs = require('../chunk-QUMUAJ2P.cjs');
72
+ var chunkVZOOGA47_cjs = require('../chunk-VZOOGA47.cjs');
70
73
  var chunkGUJD7R6U_cjs = require('../chunk-GUJD7R6U.cjs');
71
74
  var chunkQPZDJVNY_cjs = require('../chunk-QPZDJVNY.cjs');
72
75
  var chunkOWZNSOQN_cjs = require('../chunk-OWZNSOQN.cjs');
73
76
  var chunkH3ZMAU77_cjs = require('../chunk-H3ZMAU77.cjs');
74
77
  var chunkMOIZ2R5X_cjs = require('../chunk-MOIZ2R5X.cjs');
75
78
  var chunkLUO46ELJ_cjs = require('../chunk-LUO46ELJ.cjs');
76
- var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
77
79
  var chunkMEMWZ72Y_cjs = require('../chunk-MEMWZ72Y.cjs');
78
- var chunkW3PSIIMN_cjs = require('../chunk-W3PSIIMN.cjs');
79
- var chunkQUMUAJ2P_cjs = require('../chunk-QUMUAJ2P.cjs');
80
- var chunkVZOOGA47_cjs = require('../chunk-VZOOGA47.cjs');
80
+ var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
81
81
  var chunkMFUEOTZQ_cjs = require('../chunk-MFUEOTZQ.cjs');
82
82
  var chunkU4CPZAMQ_cjs = require('../chunk-U4CPZAMQ.cjs');
83
83
  var chunkZ2XZ2D4N_cjs = require('../chunk-Z2XZ2D4N.cjs');
@@ -395,7 +395,7 @@ function ConnectedWorkspaceActivity({
395
395
  [feed.data]
396
396
  );
397
397
  return /* @__PURE__ */ jsxRuntime.jsx(
398
- chunk6ODV5TIC_cjs.WorkspaceActivityList,
398
+ chunkVGFU6JFI_cjs.WorkspaceActivityList,
399
399
  {
400
400
  ...listProps,
401
401
  items,
@@ -1440,7 +1440,7 @@ function ConnectedWorkspaceNotificationMenu({
1440
1440
  }, [error, notify18]);
1441
1441
  if (!workspaceId) return null;
1442
1442
  return /* @__PURE__ */ jsxRuntime.jsx(
1443
- chunk6ODV5TIC_cjs.WorkspaceNotificationMenu,
1443
+ chunkVGFU6JFI_cjs.WorkspaceNotificationMenu,
1444
1444
  {
1445
1445
  ...menuProps,
1446
1446
  level,
@@ -1459,7 +1459,7 @@ function ConnectedThreadFollow({
1459
1459
  enabled: live
1460
1460
  });
1461
1461
  if (!conversationId) return null;
1462
- const Control = as === "menu-item" ? chunk6ODV5TIC_cjs.ThreadFollowMenuItem : chunk6ODV5TIC_cjs.ThreadFollowButton;
1462
+ const Control = as === "menu-item" ? chunkVGFU6JFI_cjs.ThreadFollowMenuItem : chunkVGFU6JFI_cjs.ThreadFollowButton;
1463
1463
  return /* @__PURE__ */ jsxRuntime.jsx(
1464
1464
  Control,
1465
1465
  {
@@ -1532,7 +1532,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1532
1532
  onChange: (e) => {
1533
1533
  const file = e.target.files?.[0];
1534
1534
  e.target.value = "";
1535
- if (file) void add(() => chunkFCOP4ZJD_cjs.importSkillFile(file));
1535
+ if (file) void add(() => chunkR3247EN3_cjs.importSkillFile(file));
1536
1536
  }
1537
1537
  }
1538
1538
  ),
@@ -1557,7 +1557,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1557
1557
  className: "space-y-2",
1558
1558
  onSubmit: (e) => {
1559
1559
  e.preventDefault();
1560
- if (url.trim()) void add(() => chunkFCOP4ZJD_cjs.importSkillFromUrl(url));
1560
+ if (url.trim()) void add(() => chunkR3247EN3_cjs.importSkillFromUrl(url));
1561
1561
  },
1562
1562
  children: [
1563
1563
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "skills-add-url", children: l.fromLink }),
@@ -1620,9 +1620,9 @@ function ConnectedSkillsLibrary({
1620
1620
  const [type, setType] = React9.useState("all");
1621
1621
  const [view, setView] = React9.useState("gallery");
1622
1622
  const [isBusy, setIsBusy] = React9.useState(false);
1623
- const all = React9.useMemo(() => chunkFCOP4ZJD_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1623
+ const all = React9.useMemo(() => chunkR3247EN3_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1624
1624
  const shown = React9.useMemo(
1625
- () => chunkFCOP4ZJD_cjs.filterLibrarySkills(all, { query, source, type }),
1625
+ () => chunkR3247EN3_cjs.filterLibrarySkills(all, { query, source, type }),
1626
1626
  [all, query, source, type]
1627
1627
  );
1628
1628
  const current = all.find((s) => s.slug === selected) ?? null;
@@ -1633,21 +1633,21 @@ function ConnectedSkillsLibrary({
1633
1633
  const count2 = (s) => all.filter((x) => x.source === s).length;
1634
1634
  const sourceOptions = [
1635
1635
  { id: "all", label: "All", count: all.length },
1636
- { id: "builtin", label: chunkFCOP4ZJD_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1637
- { id: "mine", label: chunkFCOP4ZJD_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1638
- { id: "shared", label: chunkFCOP4ZJD_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1636
+ { id: "builtin", label: chunkR3247EN3_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1637
+ { id: "mine", label: chunkR3247EN3_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1638
+ { id: "shared", label: chunkR3247EN3_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1639
1639
  ];
1640
1640
  const types = [...new Set(all.map((s) => s.type))];
1641
1641
  const typeOptions = [
1642
1642
  { id: "all", label: "Any kind" },
1643
- ...types.map((t) => ({ id: t, label: chunkFCOP4ZJD_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1643
+ ...types.map((t) => ({ id: t, label: chunkR3247EN3_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1644
1644
  ];
1645
1645
  const pick = (slug) => {
1646
1646
  setSelected(slug);
1647
1647
  setMode("detail");
1648
1648
  };
1649
1649
  const markdownOf = async (skill) => {
1650
- if (!skill.docExtId) return chunkFCOP4ZJD_cjs.workflowToSkillMarkdown(skill.workflow);
1650
+ if (!skill.docExtId) return chunkR3247EN3_cjs.workflowToSkillMarkdown(skill.workflow);
1651
1651
  const response = await arbi.documents.download(skill.docExtId);
1652
1652
  if (!response.ok) throw new Error(`Could not read the skill (${response.status})`);
1653
1653
  return response.text();
@@ -1711,7 +1711,7 @@ function ConnectedSkillsLibrary({
1711
1711
  try {
1712
1712
  documentTools.downloadBlob(
1713
1713
  new Blob([await markdownOf(skill)], { type: "text/markdown" }),
1714
- chunkFCOP4ZJD_cjs.SKILL_MAIN_FILENAME
1714
+ chunkR3247EN3_cjs.SKILL_MAIN_FILENAME
1715
1715
  );
1716
1716
  } catch (error) {
1717
1717
  notify18(errorText(error, "Could not export the skill"), "error");
@@ -1752,10 +1752,10 @@ function ConnectedSkillsLibrary({
1752
1752
  }
1753
1753
  )
1754
1754
  ] }),
1755
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.SkillViewToggle, { value: view, onChange: setView })
1755
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.SkillViewToggle, { value: view, onChange: setView })
1756
1756
  ] }),
1757
1757
  /* @__PURE__ */ jsxRuntime.jsx(
1758
- chunkFCOP4ZJD_cjs.SkillFilterChips,
1758
+ chunkR3247EN3_cjs.SkillFilterChips,
1759
1759
  {
1760
1760
  label: "Show",
1761
1761
  value: source,
@@ -1764,7 +1764,7 @@ function ConnectedSkillsLibrary({
1764
1764
  }
1765
1765
  ),
1766
1766
  types.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
1767
- chunkFCOP4ZJD_cjs.SkillFilterChips,
1767
+ chunkR3247EN3_cjs.SkillFilterChips,
1768
1768
  {
1769
1769
  label: "Kind",
1770
1770
  value: type,
@@ -1811,12 +1811,12 @@ function ConnectedSkillsLibrary({
1811
1811
  view === "gallery" ? "grid grid-cols-[repeat(auto-fill,minmax(9.5rem,1fr))]" : "flex flex-col"
1812
1812
  ),
1813
1813
  children: shown.map((skill) => /* @__PURE__ */ jsxRuntime.jsx(
1814
- chunkFCOP4ZJD_cjs.SkillTile,
1814
+ chunkR3247EN3_cjs.SkillTile,
1815
1815
  {
1816
1816
  name: skill.title,
1817
1817
  testId: `skill-tile-${skill.slug}`,
1818
1818
  description: skill.description,
1819
- sourceLabel: skill.isShared ? `${chunkFCOP4ZJD_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkFCOP4ZJD_cjs.SKILL_SOURCE_LABELS[skill.source],
1819
+ sourceLabel: skill.isShared ? `${chunkR3247EN3_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkR3247EN3_cjs.SKILL_SOURCE_LABELS[skill.source],
1820
1820
  type: skill.type,
1821
1821
  icon,
1822
1822
  layout: view,
@@ -1851,7 +1851,7 @@ function ConnectedSkillsLibrary({
1851
1851
  }
1852
1852
  ),
1853
1853
  mode === "new" && /* @__PURE__ */ jsxRuntime.jsx(
1854
- chunkFCOP4ZJD_cjs.SkillGenerateForm,
1854
+ chunkR3247EN3_cjs.SkillGenerateForm,
1855
1855
  {
1856
1856
  icon,
1857
1857
  onGenerate: (desc) => {
@@ -1878,11 +1878,11 @@ function ConnectedSkillsLibrary({
1878
1878
  ),
1879
1879
  mode === "add" && /* @__PURE__ */ jsxRuntime.jsx(ConnectedSkillUpload, { onDone: done }),
1880
1880
  mode === "detail" && current && /* @__PURE__ */ jsxRuntime.jsx(
1881
- chunkFCOP4ZJD_cjs.SkillLibraryDetail,
1881
+ chunkR3247EN3_cjs.SkillLibraryDetail,
1882
1882
  {
1883
1883
  skill: current,
1884
1884
  icon,
1885
- instructions: current.docExtId ? currentText ? chunkFCOP4ZJD_cjs.parseSkillFrontmatter(currentText, chunkFCOP4ZJD_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1885
+ instructions: current.docExtId ? currentText ? chunkR3247EN3_cjs.parseSkillFrontmatter(currentText, chunkR3247EN3_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1886
1886
  isLoading: !!current.docExtId && textLoading,
1887
1887
  actions: {
1888
1888
  onRun: () => onRun(current.slug),
@@ -1917,7 +1917,7 @@ function SkillEditor({
1917
1917
  const [seeded, setSeeded] = React9.useState(!isEditing);
1918
1918
  const [nameError, setNameError] = React9.useState(null);
1919
1919
  if (isEditing && !seeded && text2 !== void 0) {
1920
- const parsed = chunkFCOP4ZJD_cjs.parseSkillFrontmatter(text2, chunkFCOP4ZJD_cjs.SKILL_MAIN_FILENAME);
1920
+ const parsed = chunkR3247EN3_cjs.parseSkillFrontmatter(text2, chunkR3247EN3_cjs.SKILL_MAIN_FILENAME);
1921
1921
  setDescription(parsed.description ?? "");
1922
1922
  setBody(parsed.content ?? "");
1923
1923
  setSeeded(true);
@@ -1931,15 +1931,15 @@ function SkillEditor({
1931
1931
  notify18("Add a short description.", "error");
1932
1932
  return;
1933
1933
  }
1934
- const slug = chunkFCOP4ZJD_cjs.skillSlug(name);
1934
+ const slug = chunkR3247EN3_cjs.skillSlug(name);
1935
1935
  try {
1936
- await onSave(slug, chunkFCOP4ZJD_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1936
+ await onSave(slug, chunkR3247EN3_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1937
1937
  } catch (err) {
1938
1938
  notify18(errorText(err, "Could not save the skill"), "error");
1939
1939
  }
1940
1940
  };
1941
1941
  return /* @__PURE__ */ jsxRuntime.jsx(
1942
- chunkFCOP4ZJD_cjs.SkillEditForm,
1942
+ chunkR3247EN3_cjs.SkillEditForm,
1943
1943
  {
1944
1944
  name,
1945
1945
  onNameChange: setName,
@@ -1975,9 +1975,9 @@ function ConnectedAgentCreator({
1975
1975
  agent,
1976
1976
  initialName,
1977
1977
  onSaved,
1978
- capabilities = chunkFCOP4ZJD_cjs.DEFAULT_AGENT_CAPABILITIES,
1979
- templates = chunkFCOP4ZJD_cjs.DEFAULT_AGENT_TEMPLATES,
1980
- types = chunkFCOP4ZJD_cjs.DEFAULT_AGENT_TYPES,
1978
+ capabilities = chunkR3247EN3_cjs.DEFAULT_AGENT_CAPABILITIES,
1979
+ templates = chunkR3247EN3_cjs.DEFAULT_AGENT_TEMPLATES,
1980
+ types = chunkR3247EN3_cjs.DEFAULT_AGENT_TYPES,
1981
1981
  canRevokeWorkspaces = false,
1982
1982
  labels
1983
1983
  }) {
@@ -2019,7 +2019,7 @@ function ConnectedAgentCreator({
2019
2019
  const initialValues = React9.useMemo(
2020
2020
  () => ({
2021
2021
  name: agent?.given_name ?? initialName ?? "",
2022
- persona: isEdit ? chunkFCOP4ZJD_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2022
+ persona: isEdit ? chunkR3247EN3_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2023
2023
  modelName: String(agents.AGENT_MODEL_NAME ?? ""),
2024
2024
  capabilities: Object.fromEntries(capabilities.map(({ key }) => [key, Boolean(agents[key])])),
2025
2025
  type: "builtin",
@@ -2038,7 +2038,7 @@ function ConnectedAgentCreator({
2038
2038
  try {
2039
2039
  let agentExtId = agent?.external_id ?? early?.id ?? "";
2040
2040
  if (!agentExtId) {
2041
- if (!chunkFCOP4ZJD_cjs.isValidAgentName(values.name)) {
2041
+ if (!chunkR3247EN3_cjs.isValidAgentName(values.name)) {
2042
2042
  notify18("Give the agent a name first.", "error");
2043
2043
  return;
2044
2044
  }
@@ -2074,7 +2074,7 @@ function ConnectedAgentCreator({
2074
2074
  title: `agent-${name}`,
2075
2075
  sections: {
2076
2076
  Agents: {
2077
- PERSONA: chunkFCOP4ZJD_cjs.composePersona(name, values.persona),
2077
+ PERSONA: chunkR3247EN3_cjs.composePersona(name, values.persona),
2078
2078
  ...values.modelName ? { AGENT_MODEL_NAME: values.modelName } : {},
2079
2079
  ...Object.fromEntries(capabilities.map(({ key }) => [key, !!values.capabilities[key]])),
2080
2080
  ENABLED_SKILLS: values.capabilities.SKILLS_ENABLED && skills.length ? skills : null,
@@ -2097,7 +2097,7 @@ function ConnectedAgentCreator({
2097
2097
  };
2098
2098
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2099
2099
  /* @__PURE__ */ jsxRuntime.jsx(
2100
- chunkFCOP4ZJD_cjs.AgentCreator,
2100
+ chunkR3247EN3_cjs.AgentCreator,
2101
2101
  {
2102
2102
  open: ready,
2103
2103
  onOpenChange,
@@ -2113,11 +2113,11 @@ function ConnectedAgentCreator({
2113
2113
  ) : void 0,
2114
2114
  revokingWorkspaceId: revokeAccess.isPending ? revokeAccess.variables?.workspaceId : void 0,
2115
2115
  avatar: (values) => /* @__PURE__ */ jsxRuntime.jsx(
2116
- chunkFCOP4ZJD_cjs.AgentAvatarField,
2116
+ chunkR3247EN3_cjs.AgentAvatarField,
2117
2117
  {
2118
2118
  picture,
2119
2119
  isBusy: avatarBusy,
2120
- canGenerate: isEdit || chunkFCOP4ZJD_cjs.isValidAgentName(values.name),
2120
+ canGenerate: isEdit || chunkR3247EN3_cjs.isValidAgentName(values.name),
2121
2121
  onGenerate: () => handleGenerateAvatar(values)
2122
2122
  }
2123
2123
  ),
@@ -2169,7 +2169,7 @@ function ConnectedAgentCreator({
2169
2169
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogTitle, { children: "Connect your agent" }),
2170
2170
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { children: "This key is shown once. Run the script on the machine that will host the agent." })
2171
2171
  ] }),
2172
- connect && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2172
+ connect && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2173
2173
  ]
2174
2174
  }
2175
2175
  ) })
@@ -2376,7 +2376,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2376
2376
  );
2377
2377
  const conversation = conversations.data?.find((c) => c.external_id === threadId);
2378
2378
  const steps = React9.useMemo(
2379
- () => chunkSMQIYEOL_cjs.workflowSteps(workflow).length > 0 ? chunkSMQIYEOL_cjs.workflowSteps(workflow) : chunkFCOP4ZJD_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
2379
+ () => chunkSMQIYEOL_cjs.workflowSteps(workflow).length > 0 ? chunkSMQIYEOL_cjs.workflowSteps(workflow) : chunkR3247EN3_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
2380
2380
  [workflow, conversation?.plan?.steps]
2381
2381
  );
2382
2382
  const activity = react.useConversationActivity(threadId, { live: !!threadId });
@@ -2436,7 +2436,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2436
2436
  criteria: [],
2437
2437
  max_passes: 3,
2438
2438
  documents: [],
2439
- steps: chunkFCOP4ZJD_cjs.toPlanSteps(workflow, {
2439
+ steps: chunkR3247EN3_cjs.toPlanSteps(workflow, {
2440
2440
  inputs: values,
2441
2441
  resolveWorkflow: options2.resolveWorkflow,
2442
2442
  compose: options2.compose
@@ -2523,7 +2523,7 @@ function useWorkflowThread(workflow, options2 = {}) {
2523
2523
  const anyRunning = Object.values(states).some((s) => s.status === "running");
2524
2524
  const needsStart = !threadId || idle && !anyRunning;
2525
2525
  const runError = idle ? conversation?.last_error ?? null : null;
2526
- const view = chunkFCOP4ZJD_cjs.useWorkflowView({
2526
+ const view = chunkR3247EN3_cjs.useWorkflowView({
2527
2527
  steps,
2528
2528
  states,
2529
2529
  inputs,
@@ -2689,7 +2689,7 @@ function WorkflowWordDialog({
2689
2689
  title: title ?? labels.wordTitle,
2690
2690
  size: "xl",
2691
2691
  testId: "workflow-word-dialog",
2692
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkULWRNGGE_cjs.ModalScaffold.Body, { className: "h-[70dvh] p-0", children: /* @__PURE__ */ jsxRuntime.jsx(chunkED4TE7XG_cjs.ConnectedNativeDocxEditor, { documentId: id, title: title ?? labels.wordTitle }) })
2692
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunkULWRNGGE_cjs.ModalScaffold.Body, { className: "h-[70dvh] p-0", children: /* @__PURE__ */ jsxRuntime.jsx(chunk2DRTKD2W_cjs.ConnectedNativeDocxEditor, { documentId: id, title: title ?? labels.wordTitle }) })
2693
2693
  }
2694
2694
  );
2695
2695
  }
@@ -3011,7 +3011,7 @@ function ConnectedWorkflowRunner({
3011
3011
  );
3012
3012
  };
3013
3013
  const runner = (compact) => /* @__PURE__ */ jsxRuntime.jsx(
3014
- chunkFCOP4ZJD_cjs.WorkflowRunner,
3014
+ chunkR3247EN3_cjs.WorkflowRunner,
3015
3015
  {
3016
3016
  people,
3017
3017
  ...runnerProps,
@@ -3057,7 +3057,7 @@ function ConnectedWorkflowRunner({
3057
3057
  ) }),
3058
3058
  inThread && conversationId ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3059
3059
  /* @__PURE__ */ jsxRuntime.jsx(
3060
- chunkFCOP4ZJD_cjs.WorkflowStepBar,
3060
+ chunkR3247EN3_cjs.WorkflowStepBar,
3061
3061
  {
3062
3062
  run: view,
3063
3063
  levels: chunkSMQIYEOL_cjs.stepLevels(view.steps),
@@ -3348,7 +3348,7 @@ function ConnectedTagTable({
3348
3348
  const fail2 = (fallback) => (e) => notify18(browser.refusalReason(e, fallback), "error");
3349
3349
  const snapshot2 = (data) => {
3350
3350
  const title = exportTitle ?? ui.tagKindTitle(kind, { plural: true });
3351
- const bytes = chunk6ODV5TIC_cjs.tagTableDocx(data, {
3351
+ const bytes = chunkVGFU6JFI_cjs.tagTableDocx(data, {
3352
3352
  title,
3353
3353
  nameOf: (id) => people.find((p) => p.value === id)?.label
3354
3354
  });
@@ -3357,7 +3357,7 @@ function ConnectedTagTable({
3357
3357
  return { blob: new Blob([bytes], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }), name };
3358
3358
  };
3359
3359
  return /* @__PURE__ */ jsxRuntime.jsx(
3360
- chunk6ODV5TIC_cjs.TagTable,
3360
+ chunkVGFU6JFI_cjs.TagTable,
3361
3361
  {
3362
3362
  ...props,
3363
3363
  table,
@@ -3398,7 +3398,7 @@ function DocTagPassages({ docId, tagId, label, docOf, testId }) {
3398
3398
  const [open, setOpen] = React9.useState(false);
3399
3399
  const doctag = docOf(docId)?.doctags?.find((dt) => dt.tag_ext_id === tagId);
3400
3400
  const citations = React9.useMemo(
3401
- () => chunkF72ZD5Q2_cjs.toFactCitations(doctag?.citations) ?? [],
3401
+ () => chunkYD3RN2FY_cjs.toFactCitations(doctag?.citations) ?? [],
3402
3402
  [doctag?.citations]
3403
3403
  );
3404
3404
  const { quoteFor, orderOf } = react.usePassageQuotes(
@@ -3407,7 +3407,7 @@ function DocTagPassages({ docId, tagId, label, docOf, testId }) {
3407
3407
  const { openDocument } = chunkNG6FFY44_cjs.useBlocksEnvironment();
3408
3408
  const viewingPassageId = react.useArbiSessionState((s) => s.viewingDocument?.passageId ?? null);
3409
3409
  const id = testId ?? `doctag-passages-${docId}`;
3410
- const refOf = (cited) => chunkF72ZD5Q2_cjs.citedVersionRef(cited.doc_ext_id, cited.version, docOf(cited.doc_ext_id)?.current_version);
3410
+ const refOf = (cited) => chunkYD3RN2FY_cjs.citedVersionRef(cited.doc_ext_id, cited.version, docOf(cited.doc_ext_id)?.current_version);
3411
3411
  const ordered = (cited) => [...cited.chunks].sort((a, b) => {
3412
3412
  const oa = orderOf(a.chunk_id);
3413
3413
  const ob = orderOf(b.chunk_id);
@@ -3438,7 +3438,7 @@ function DocTagPassages({ docId, tagId, label, docOf, testId }) {
3438
3438
  const doc = docOf(cited.doc_ext_id);
3439
3439
  const passages = ordered(cited);
3440
3440
  return /* @__PURE__ */ jsxRuntime.jsx(
3441
- chunkF72ZD5Q2_cjs.FactSourceGroup,
3441
+ chunkYD3RN2FY_cjs.FactSourceGroup,
3442
3442
  {
3443
3443
  docId: cited.doc_ext_id,
3444
3444
  hasPassages: passages.length > 0,
@@ -3495,9 +3495,9 @@ function GlossaryExport({ labelId, nameOf }) {
3495
3495
  const narrowed = agreements.find((a) => a.id === narrowTo);
3496
3496
  const title = narrowed ? `Glossary - ${narrowed.name}` : "Glossary";
3497
3497
  const download = (format) => {
3498
- const entries = chunk6ODV5TIC_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3499
- const blob = format === "docx" ? new Blob([chunk6ODV5TIC_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunk6ODV5TIC_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3500
- documentTools.downloadBlob(blob, chunk6ODV5TIC_cjs.glossaryFileName(title, format));
3498
+ const entries = chunkVGFU6JFI_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3499
+ const blob = format === "docx" ? new Blob([chunkVGFU6JFI_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunkVGFU6JFI_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3500
+ documentTools.downloadBlob(blob, chunkVGFU6JFI_cjs.glossaryFileName(title, format));
3501
3501
  };
3502
3502
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", "data-testid": "tags-glossary", children: [
3503
3503
  agreements.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4042,7 +4042,7 @@ function KindSection({
4042
4042
  {
4043
4043
  testId: `tags-kind-${kind}`,
4044
4044
  title: ui.tagKindTitle(kind, { plural: true }),
4045
- description: chunk6ODV5TIC_cjs.tagKindDescription(kind),
4045
+ description: chunkVGFU6JFI_cjs.tagKindDescription(kind),
4046
4046
  actions: picker,
4047
4047
  children: [
4048
4048
  browser.isEntityTag({ kind }) && extractingCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4053,9 +4053,9 @@ function KindSection({
4053
4053
  children: [
4054
4054
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "size-4 animate-spin" }),
4055
4055
  "Extracting ",
4056
- chunk6ODV5TIC_cjs.entitiesPhrase().toLowerCase(),
4056
+ chunkVGFU6JFI_cjs.entitiesPhrase().toLowerCase(),
4057
4057
  " from ",
4058
- chunk6ODV5TIC_cjs.documentCount(extractingCount),
4058
+ chunkVGFU6JFI_cjs.documentCount(extractingCount),
4059
4059
  "\u2026"
4060
4060
  ]
4061
4061
  }
@@ -4073,7 +4073,7 @@ function KindSection({
4073
4073
  onOpenDocument: (id) => openDocument(id),
4074
4074
  onOpenFact: ctx.onOpenFact,
4075
4075
  onOpenThread: (id) => openConversation(id),
4076
- labels: chunk6ODV5TIC_cjs.tagTableLabels(kind),
4076
+ labels: chunkVGFU6JFI_cjs.tagTableLabels(kind),
4077
4077
  testId: `tags-table-${kind}`
4078
4078
  }
4079
4079
  )
@@ -4175,12 +4175,12 @@ function TagSection({
4175
4175
  onOpenDocument: (id) => openDocument(id),
4176
4176
  onOpenFact: ctx.onOpenFact,
4177
4177
  onOpenThread: (id) => openConversation(id),
4178
- labels: chunk6ODV5TIC_cjs.tagTableLabels(tag.kind),
4178
+ labels: chunkVGFU6JFI_cjs.tagTableLabels(tag.kind),
4179
4179
  testId: "tags-rows"
4180
4180
  }
4181
4181
  ),
4182
4182
  /* @__PURE__ */ jsxRuntime.jsx(
4183
- chunk6ODV5TIC_cjs.TagDetail,
4183
+ chunkVGFU6JFI_cjs.TagDetail,
4184
4184
  {
4185
4185
  row: detailRow && narrowTagRow(detailRow, ctx.filter.matches),
4186
4186
  fields: schema.data?.fields ?? [],
@@ -4192,10 +4192,10 @@ function TagSection({
4192
4192
  onOpenDocument: (id) => openDocument(id),
4193
4193
  onOpenFact: ctx.onOpenFact,
4194
4194
  onOpenThread: (id) => openConversation(id),
4195
- noteLabel: chunk6ODV5TIC_cjs.tagNoteLabel(tag.kind),
4195
+ noteLabel: chunkVGFU6JFI_cjs.tagNoteLabel(tag.kind),
4196
4196
  noteIsValue: tag.kind === "annotation",
4197
4197
  renderPassages: (d, label) => renderPassages(d.doc_ext_id, label),
4198
- labels: chunk6ODV5TIC_cjs.tagDetailLabels(),
4198
+ labels: chunkVGFU6JFI_cjs.tagDetailLabels(),
4199
4199
  testId: "tags-detail"
4200
4200
  }
4201
4201
  )
@@ -4283,7 +4283,7 @@ function ConnectedTagsPage({
4283
4283
  const onDelete = async (t) => {
4284
4284
  const nested = browser.getChildTags([...tags], t.external_id);
4285
4285
  const uses = browser.tagUseCount(t);
4286
- const n2 = chunk6ODV5TIC_cjs.tagsPageNouns();
4286
+ const n2 = chunkVGFU6JFI_cjs.tagsPageNouns();
4287
4287
  const tagNoun = (count2) => (count2 === 1 ? n2.tag : n2.tags).toLowerCase();
4288
4288
  const carriers = uses === 1 ? `${n2.document}, ${n2.fact} or ${n2.thread}` : `${n2.documents}, ${n2.facts} and ${n2.threads}`;
4289
4289
  const message = `Delete ${ui.tagKindNouns(t.kind).singular} "${t.name}"?` + (uses > 0 ? `
@@ -4304,16 +4304,16 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4304
4304
  try {
4305
4305
  await extract.mutateAsync(docIds);
4306
4306
  notify18(
4307
- `Extracting ${chunk6ODV5TIC_cjs.entitiesPhrase().toLowerCase()} from ${chunk6ODV5TIC_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4307
+ `Extracting ${chunkVGFU6JFI_cjs.entitiesPhrase().toLowerCase()} from ${chunkVGFU6JFI_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4308
4308
  "info"
4309
4309
  );
4310
4310
  } catch (error) {
4311
- notify18(browser.refusalReason(error, `Could not extract ${chunk6ODV5TIC_cjs.entitiesPhrase().toLowerCase()}`), "error");
4311
+ notify18(browser.refusalReason(error, `Could not extract ${chunkVGFU6JFI_cjs.entitiesPhrase().toLowerCase()}`), "error");
4312
4312
  throw error;
4313
4313
  }
4314
4314
  };
4315
4315
  const picker = /* @__PURE__ */ jsxRuntime.jsx(
4316
- chunk6ODV5TIC_cjs.TagPicker,
4316
+ chunkVGFU6JFI_cjs.TagPicker,
4317
4317
  {
4318
4318
  tags: viewTags,
4319
4319
  selectedId: tag?.external_id,
@@ -4327,10 +4327,10 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4327
4327
  onOpenTag: openTag,
4328
4328
  onOpenFact
4329
4329
  };
4330
- const n = chunk6ODV5TIC_cjs.tagsPageNouns();
4330
+ const n = chunkVGFU6JFI_cjs.tagsPageNouns();
4331
4331
  const action = view === "person" || view === "organisation" ? {
4332
4332
  label: "Extract",
4333
- title: `Extract ${chunk6ODV5TIC_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4333
+ title: `Extract ${chunkVGFU6JFI_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4334
4334
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "h-4 w-4" }),
4335
4335
  run: () => setExtracting(true),
4336
4336
  testId: "tags-extract-entities"
@@ -4480,7 +4480,7 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4480
4480
  }
4481
4481
  ),
4482
4482
  /* @__PURE__ */ jsxRuntime.jsx(
4483
- chunk6ODV5TIC_cjs.ExtractEntitiesDialog,
4483
+ chunkVGFU6JFI_cjs.ExtractEntitiesDialog,
4484
4484
  {
4485
4485
  open: extracting,
4486
4486
  onOpenChange: setExtracting,
@@ -4541,7 +4541,7 @@ function FactSourcesPopover({
4541
4541
  reset();
4542
4542
  }
4543
4543
  };
4544
- const refOf = (docId) => chunkF72ZD5Q2_cjs.citedVersionRef(
4544
+ const refOf = (docId) => chunkYD3RN2FY_cjs.citedVersionRef(
4545
4545
  docId,
4546
4546
  citations.find((d) => d.doc_ext_id === docId)?.version,
4547
4547
  citedDocs?.[docId]?.current_version
@@ -4571,7 +4571,7 @@ function FactSourcesPopover({
4571
4571
  const olderVersion = refOf(docId) !== docId ? refOf(docId).split("@v")[1] : null;
4572
4572
  const cited = passagesOf(docId);
4573
4573
  return /* @__PURE__ */ jsxRuntime.jsx(
4574
- chunkF72ZD5Q2_cjs.FactSourceGroup,
4574
+ chunkYD3RN2FY_cjs.FactSourceGroup,
4575
4575
  {
4576
4576
  docId,
4577
4577
  isViewing,
@@ -4640,8 +4640,8 @@ function FactMarkdownEditor({
4640
4640
  citationContainer,
4641
4641
  "data-testid": dataTestId
4642
4642
  }) {
4643
- const sources = React9.useMemo(() => chunkF72ZD5Q2_cjs.toFactCitations(citations) ?? [], [citations]);
4644
- const docIds = chunkF72ZD5Q2_cjs.docIdsOf(sources);
4643
+ const sources = React9.useMemo(() => chunkYD3RN2FY_cjs.toFactCitations(citations) ?? [], [citations]);
4644
+ const docIds = chunkYD3RN2FY_cjs.docIdsOf(sources);
4645
4645
  const hasSources = docIds.length > 0;
4646
4646
  const { quoteFor, orderOf } = react.usePassageQuotes(
4647
4647
  React9.useMemo(() => sources.filter((d) => d.chunks.length > 0).map((d) => d.doc_ext_id), [sources])
@@ -4660,7 +4660,7 @@ function FactMarkdownEditor({
4660
4660
  const editorRef = React9.useRef(null);
4661
4661
  React9.useEffect(() => {
4662
4662
  if (!editorRef.current) return;
4663
- return chunkF72ZD5Q2_cjs.enableFactTableColumnResize(editorRef.current);
4663
+ return chunkYD3RN2FY_cjs.enableFactTableColumnResize(editorRef.current);
4664
4664
  }, []);
4665
4665
  React9.useEffect(() => {
4666
4666
  if (!editing) return;
@@ -4675,14 +4675,14 @@ function FactMarkdownEditor({
4675
4675
  return () => document.removeEventListener("pointerdown", onPointerDown, true);
4676
4676
  }, [editing]);
4677
4677
  const removeDoc = (docExtId) => {
4678
- const remaining = chunkF72ZD5Q2_cjs.withoutDoc(sources, docExtId);
4678
+ const remaining = chunkYD3RN2FY_cjs.withoutDoc(sources, docExtId);
4679
4679
  if (!remaining) setSourcesOpen(false);
4680
4680
  onChange(value, remaining);
4681
4681
  };
4682
4682
  const citeDocument = (docExtId) => onCiteDocument(docExtId, { toggle: false });
4683
4683
  const handleToggleDoc = (docExtId) => {
4684
4684
  if (docIds.includes(docExtId)) removeDoc(docExtId);
4685
- else onChange(value, chunkF72ZD5Q2_cjs.withDoc(sources, docExtId));
4685
+ else onChange(value, chunkYD3RN2FY_cjs.withDoc(sources, docExtId));
4686
4686
  };
4687
4687
  const expandToggle = /* @__PURE__ */ jsxRuntime.jsx(
4688
4688
  "button",
@@ -4901,7 +4901,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
4901
4901
  const [composing, setComposing] = React9.useState(false);
4902
4902
  const [draft, setDraft] = React9.useState("");
4903
4903
  const [baselineText, setBaselineText] = React9.useState("");
4904
- const [draftDateFields, setDraftDateFields] = React9.useState(chunkF72ZD5Q2_cjs.EMPTY_FACT_DATE_FIELDS);
4904
+ const [draftDateFields, setDraftDateFields] = React9.useState(chunkYD3RN2FY_cjs.EMPTY_FACT_DATE_FIELDS);
4905
4905
  const [composerError, setComposerError] = React9.useState(null);
4906
4906
  const [editingId, setEditingId] = React9.useState(null);
4907
4907
  const [draftShared, setDraftShared] = React9.useState(false);
@@ -4958,9 +4958,9 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
4958
4958
  if (!collector || !picked?.length || !collectingFor || !docBeingCollected) return;
4959
4959
  const docExtId = docBeingCollected;
4960
4960
  const apply = (prev) => {
4961
- let next = chunkF72ZD5Q2_cjs.toFactCitations(prev);
4961
+ let next = chunkYD3RN2FY_cjs.toFactCitations(prev);
4962
4962
  for (const pending of picked) {
4963
- next = chunkF72ZD5Q2_cjs.withChunk(next, docExtId, { chunk_id: pending.chunk_id, page: pending.page ?? null });
4963
+ next = chunkYD3RN2FY_cjs.withChunk(next, docExtId, { chunk_id: pending.chunk_id, page: pending.page ?? null });
4964
4964
  }
4965
4965
  return next ?? [];
4966
4966
  };
@@ -4971,8 +4971,8 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
4971
4971
  React9.useEffect(() => {
4972
4972
  if (!collector || !unpicked?.length || !collectingFor) return;
4973
4973
  setDraftCitations((prev) => {
4974
- let next = chunkF72ZD5Q2_cjs.toFactCitations(prev);
4975
- for (const chunkId of unpicked) next = chunkF72ZD5Q2_cjs.withoutChunk(next, chunkId);
4974
+ let next = chunkYD3RN2FY_cjs.toFactCitations(prev);
4975
+ for (const chunkId of unpicked) next = chunkYD3RN2FY_cjs.withoutChunk(next, chunkId);
4976
4976
  return next;
4977
4977
  });
4978
4978
  collector.consumeUnpicked();
@@ -4982,7 +4982,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
4982
4982
  setBaselineText("");
4983
4983
  setDraftCitations(null);
4984
4984
  setDraftTagIds([]);
4985
- setDraftDateFields(chunkF72ZD5Q2_cjs.EMPTY_FACT_DATE_FIELDS);
4985
+ setDraftDateFields(chunkYD3RN2FY_cjs.EMPTY_FACT_DATE_FIELDS);
4986
4986
  setDraftShared(false);
4987
4987
  setDraftConfirmed(true);
4988
4988
  setComposerError(null);
@@ -4996,7 +4996,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
4996
4996
  setBaselineText("");
4997
4997
  setDraftCitations(null);
4998
4998
  setDraftTagIds([]);
4999
- setDraftDateFields(chunkF72ZD5Q2_cjs.EMPTY_FACT_DATE_FIELDS);
4999
+ setDraftDateFields(chunkYD3RN2FY_cjs.EMPTY_FACT_DATE_FIELDS);
5000
5000
  setDraftShared(false);
5001
5001
  setDraftConfirmed(true);
5002
5002
  setComposerError(null);
@@ -5007,7 +5007,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
5007
5007
  const content = chunkRC25WMVB_cjs.decodeWhitespaceEntities(draft).trim();
5008
5008
  if (!content) return;
5009
5009
  setComposerError(null);
5010
- const span = chunkF72ZD5Q2_cjs.factDateFieldsToSpan(draftDateFields);
5010
+ const span = chunkYD3RN2FY_cjs.factDateFieldsToSpan(draftDateFields);
5011
5011
  try {
5012
5012
  let saved;
5013
5013
  if (editingId) {
@@ -5045,7 +5045,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
5045
5045
  setBaselineText(draft);
5046
5046
  setDraftCitations(saved.citations ?? null);
5047
5047
  setDraftTagIds(saved.tags.map((t) => t.tag_ext_id));
5048
- setDraftDateFields(chunkF72ZD5Q2_cjs.factDateSpanToFields(saved.date_start, saved.date_end, saved.timezone));
5048
+ setDraftDateFields(chunkYD3RN2FY_cjs.factDateSpanToFields(saved.date_start, saved.date_end, saved.timezone));
5049
5049
  setDraftShared(saved.shared ?? false);
5050
5050
  setDraftConfirmed(saved.confirmed ?? true);
5051
5051
  }
@@ -5070,7 +5070,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
5070
5070
  setBaselineText(m.text);
5071
5071
  setDraftCitations(m.citations ?? null);
5072
5072
  setDraftTagIds(m.tags.map((t) => t.tag_ext_id));
5073
- setDraftDateFields(chunkF72ZD5Q2_cjs.factDateSpanToFields(m.date_start, m.date_end, m.timezone));
5073
+ setDraftDateFields(chunkYD3RN2FY_cjs.factDateSpanToFields(m.date_start, m.date_end, m.timezone));
5074
5074
  setDraftShared(m.shared ?? false);
5075
5075
  setDraftConfirmed(m.confirmed ?? true);
5076
5076
  setComposerError(null);
@@ -5084,7 +5084,7 @@ function useFactComposer(notes, remove, gridApiRef, collector, composeRequested,
5084
5084
  const textChanged = draft.trim() !== baselineText.trim();
5085
5085
  const citationsChanged = JSON.stringify(draftCitations ?? null) !== JSON.stringify(f.citations ?? null);
5086
5086
  const tagsChanged = JSON.stringify([...draftTagIds].sort()) !== JSON.stringify(f.tags.map((t) => t.tag_ext_id).sort());
5087
- const dateChanged = JSON.stringify(draftDateFields) !== JSON.stringify(chunkF72ZD5Q2_cjs.factDateSpanToFields(f.date_start, f.date_end, f.timezone));
5087
+ const dateChanged = JSON.stringify(draftDateFields) !== JSON.stringify(chunkYD3RN2FY_cjs.factDateSpanToFields(f.date_start, f.date_end, f.timezone));
5088
5088
  const sharedChanged = draftShared !== (f.shared ?? false);
5089
5089
  const confirmedChanged = draftConfirmed !== (f.confirmed ?? true);
5090
5090
  return textChanged || citationsChanged || tagsChanged || dateChanged || sharedChanged || confirmedChanged;
@@ -5258,7 +5258,7 @@ function useFactFilters(notes, view, chat) {
5258
5258
  const makeTagPicker = React9.useCallback(
5259
5259
  (selected, setSelected, opts) => {
5260
5260
  const applied = new Set(selected);
5261
- return /* @__PURE__ */ jsxRuntime.jsx(chunkF72ZD5Q2_cjs.FactFieldRow, { label: "Labels", children: /* @__PURE__ */ jsxRuntime.jsx(
5261
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkYD3RN2FY_cjs.FactFieldRow, { label: "Labels", children: /* @__PURE__ */ jsxRuntime.jsx(
5262
5262
  chunk6XEFUJTT_cjs.FieldLabelsSelect,
5263
5263
  {
5264
5264
  options: labelOptions,
@@ -5449,14 +5449,14 @@ function useFactSelection(notes, gridApiRef, setFactTags, chat) {
5449
5449
  }
5450
5450
  function renderSourcesCell(params) {
5451
5451
  const fact = params.data;
5452
- const count2 = chunkF72ZD5Q2_cjs.sourceDocCount(fact);
5452
+ const count2 = chunkYD3RN2FY_cjs.sourceDocCount(fact);
5453
5453
  if (!fact || count2 === 0) return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/40", children: "\u2014" });
5454
5454
  return /* @__PURE__ */ jsxRuntime.jsxs(
5455
5455
  "button",
5456
5456
  {
5457
5457
  type: "button",
5458
5458
  onClick: () => params.context?.openEdit?.(fact),
5459
- title: chunkF72ZD5Q2_cjs.DEFAULT_FACT_COLUMN_LABELS.sourcedFrom(count2),
5459
+ title: chunkYD3RN2FY_cjs.DEFAULT_FACT_COLUMN_LABELS.sourcedFrom(count2),
5460
5460
  "data-testid": `facts-grid-sources-${fact.external_id}`,
5461
5461
  className: "inline-flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground",
5462
5462
  children: [
@@ -5513,14 +5513,14 @@ function createFactPageColumns({
5513
5513
  onToggleConfirmed,
5514
5514
  onToggleShared
5515
5515
  }) {
5516
- const columns = chunkF72ZD5Q2_cjs.createFactColumns({
5516
+ const columns = chunkYD3RN2FY_cjs.createFactColumns({
5517
5517
  onToggleInChat,
5518
5518
  isInChat,
5519
5519
  renderHeader: (params, colId) => /* @__PURE__ */ jsxRuntime.jsx(FactHeader, { params, colId }),
5520
5520
  renderRowActions: (fact, params) => {
5521
5521
  const ctx = params.context;
5522
5522
  return /* @__PURE__ */ jsxRuntime.jsx(
5523
- chunkF72ZD5Q2_cjs.FactRowActions,
5523
+ chunkYD3RN2FY_cjs.FactRowActions,
5524
5524
  {
5525
5525
  onEdit: () => ctx?.openEdit?.(fact),
5526
5526
  canEdit: ctx?.canRewrite?.(fact) !== false,
@@ -5650,7 +5650,7 @@ function useFactsGrid({
5650
5650
  );
5651
5651
  const renderFactTags = React9.useCallback(
5652
5652
  (fact, rowHeight) => /* @__PURE__ */ jsxRuntime.jsx(
5653
- chunkF72ZD5Q2_cjs.FactLabelsCell,
5653
+ chunkYD3RN2FY_cjs.FactLabelsCell,
5654
5654
  {
5655
5655
  options: labelOptions,
5656
5656
  selectedIds: fact.tags.map((t) => t.tag_ext_id),
@@ -6299,7 +6299,7 @@ var citedDocIdsCache = /* @__PURE__ */ new WeakMap();
6299
6299
  function citedDocIds(m) {
6300
6300
  const cached = citedDocIdsCache.get(m);
6301
6301
  if (cached) return cached;
6302
- const ids = chunkF72ZD5Q2_cjs.docIdsOf(chunkF72ZD5Q2_cjs.toFactCitations(m.citations));
6302
+ const ids = chunkYD3RN2FY_cjs.docIdsOf(chunkYD3RN2FY_cjs.toFactCitations(m.citations));
6303
6303
  citedDocIdsCache.set(m, ids);
6304
6304
  return ids;
6305
6305
  }
@@ -6400,7 +6400,7 @@ function ConnectedFactsPage({
6400
6400
  const citedDocs = React9.useMemo(() => {
6401
6401
  const wanted = /* @__PURE__ */ new Set([
6402
6402
  ...notes.flatMap((n) => citedDocIds(n)),
6403
- ...chunkF72ZD5Q2_cjs.docIdsOf(chunkF72ZD5Q2_cjs.toFactCitations(composer.draftCitations))
6403
+ ...chunkYD3RN2FY_cjs.docIdsOf(chunkYD3RN2FY_cjs.toFactCitations(composer.draftCitations))
6404
6404
  ]);
6405
6405
  return Object.fromEntries(
6406
6406
  documents.filter((d) => wanted.has(d.external_id)).map((d) => [d.external_id, d])
@@ -6454,7 +6454,7 @@ function ConnectedFactsPage({
6454
6454
  };
6455
6455
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: setFactSection, className: "relative flex h-full flex-col", "data-testid": "facts-page", children: [
6456
6456
  /* @__PURE__ */ jsxRuntime.jsx(
6457
- chunkF72ZD5Q2_cjs.FactsToolbar,
6457
+ chunkYD3RN2FY_cjs.FactsToolbar,
6458
6458
  {
6459
6459
  count: filteredNotes.length,
6460
6460
  hasActiveFilters: filters.hasActiveFilters,
@@ -6483,7 +6483,7 @@ function ConnectedFactsPage({
6483
6483
  onNewFact: composing && !editingId ? () => void 0 : composer.startNewFact,
6484
6484
  navSlotRef: setNavSlot,
6485
6485
  navigator: view === "table" ? /* @__PURE__ */ jsxRuntime.jsx(
6486
- chunk6ODV5TIC_cjs.GridRowNavigator,
6486
+ chunkVGFU6JFI_cjs.GridRowNavigator,
6487
6487
  {
6488
6488
  gridApi,
6489
6489
  selectedId: editingId,
@@ -6494,7 +6494,7 @@ function ConnectedFactsPage({
6494
6494
  ) : null,
6495
6495
  showToolbarRow: view !== "smart_search",
6496
6496
  tools: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
6497
- view === "table" && /* @__PURE__ */ jsxRuntime.jsx(chunkF72ZD5Q2_cjs.FactsFieldsButton, { getGridApi: () => gridApiRef.current }),
6497
+ view === "table" && /* @__PURE__ */ jsxRuntime.jsx(chunkYD3RN2FY_cjs.FactsFieldsButton, { getGridApi: () => gridApiRef.current }),
6498
6498
  view === "table" && /* @__PURE__ */ jsxRuntime.jsx(
6499
6499
  chunk6XEFUJTT_cjs.RowDensityControl,
6500
6500
  {
@@ -6515,7 +6515,7 @@ function ConnectedFactsPage({
6515
6515
  }
6516
6516
  ),
6517
6517
  /* @__PURE__ */ jsxRuntime.jsx(
6518
- chunkF72ZD5Q2_cjs.FactComposer,
6518
+ chunkYD3RN2FY_cjs.FactComposer,
6519
6519
  {
6520
6520
  isOpen: composing,
6521
6521
  isEditing: !!editingId,
@@ -6548,7 +6548,7 @@ function ConnectedFactsPage({
6548
6548
  reserveSourcesSpace: view === "gantt" || view === "calendar",
6549
6549
  citationContainer: factSection,
6550
6550
  renderDocumentPicker: (onSelect, selectedIds, onOpen, sourcesToggle, sourcesOpen) => /* @__PURE__ */ jsxRuntime.jsx(
6551
- chunkF72ZD5Q2_cjs.FactSourcesRow,
6551
+ chunkYD3RN2FY_cjs.FactSourcesRow,
6552
6552
  {
6553
6553
  toggle: sourcesToggle,
6554
6554
  picker: /* @__PURE__ */ jsxRuntime.jsx(
@@ -6594,7 +6594,7 @@ function ConnectedFactsPage({
6594
6594
  }
6595
6595
  ),
6596
6596
  dateInput: /* @__PURE__ */ jsxRuntime.jsx(
6597
- chunkF72ZD5Q2_cjs.FactDateInput,
6597
+ chunkYD3RN2FY_cjs.FactDateInput,
6598
6598
  {
6599
6599
  value: composer.draftDateFields,
6600
6600
  onChange: composer.setDraftDateFields,
@@ -6604,13 +6604,13 @@ function ConnectedFactsPage({
6604
6604
  }
6605
6605
  ),
6606
6606
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "scrollbar-subtle flex-1 overflow-y-auto pb-2", children: [
6607
- isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkF72ZD5Q2_cjs.FactsLoading, {}) : isError ? /* @__PURE__ */ jsxRuntime.jsx(chunkF72ZD5Q2_cjs.FactsLoadError, { onRetry: () => refetch() }) : smartSearch ? (
6607
+ isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkYD3RN2FY_cjs.FactsLoading, {}) : isError ? /* @__PURE__ */ jsxRuntime.jsx(chunkYD3RN2FY_cjs.FactsLoadError, { onRetry: () => refetch() }) : smartSearch ? (
6608
6608
  // Searches facts only (never documents). Kept before the empty-state guard so the
6609
6609
  // search UI is reachable even in an empty workspace.
6610
6610
  smartSearch({ selectedFactId: editingId, onOpenFact: openFactById })
6611
6611
  ) : notes.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-full flex-col items-center justify-center", children: [
6612
6612
  /* @__PURE__ */ jsxRuntime.jsx(
6613
- chunkF72ZD5Q2_cjs.FactsEmptyState,
6613
+ chunkYD3RN2FY_cjs.FactsEmptyState,
6614
6614
  {
6615
6615
  onUseExample: (text2) => {
6616
6616
  composer.setDraft(text2);
@@ -6621,7 +6621,7 @@ function ConnectedFactsPage({
6621
6621
  ),
6622
6622
  emptyStateExtra
6623
6623
  ] }) : view === "calendar" ? /* @__PURE__ */ jsxRuntime.jsx(
6624
- chunkF72ZD5Q2_cjs.FactsCalendar,
6624
+ chunkYD3RN2FY_cjs.FactsCalendar,
6625
6625
  {
6626
6626
  facts: filteredNotes,
6627
6627
  onSelect: (n) => openEditIfAllowed(n),
@@ -6630,7 +6630,7 @@ function ConnectedFactsPage({
6630
6630
  navigatorTotal: filteredNotes.length
6631
6631
  }
6632
6632
  ) : view === "gantt" ? /* @__PURE__ */ jsxRuntime.jsx(
6633
- chunkF72ZD5Q2_cjs.FactsGanttPane,
6633
+ chunkYD3RN2FY_cjs.FactsGanttPane,
6634
6634
  {
6635
6635
  items: ganttItems,
6636
6636
  labelWidth: pageView.labelWidth,
@@ -6680,7 +6680,7 @@ function ConnectedFactsPage({
6680
6680
  )
6681
6681
  ] }),
6682
6682
  selectable && notes.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
6683
- chunkF72ZD5Q2_cjs.FactsBulkBar,
6683
+ chunkYD3RN2FY_cjs.FactsBulkBar,
6684
6684
  {
6685
6685
  count: selection.selectedFacts.length,
6686
6686
  onClear: selection.clearSelection,
@@ -9667,13 +9667,13 @@ function ConnectedWorkspaceSettings({
9667
9667
  const [membersExpanded, setMembersExpanded] = React9.useState(false);
9668
9668
  const [shareOpen, setShareOpen] = React9.useState(false);
9669
9669
  if (!workspace) {
9670
- return /* @__PURE__ */ jsxRuntime.jsx(chunkJL4KG6QA_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunk6ODV5TIC_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9670
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkJL4KG6QA_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkVGFU6JFI_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9671
9671
  }
9672
9672
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9673
9673
  /* @__PURE__ */ jsxRuntime.jsxs(chunkJL4KG6QA_cjs.WorkspacePageFrame, { testId, children: [
9674
9674
  /* @__PURE__ */ jsxRuntime.jsxs(chunkJL4KG6QA_cjs.WorkspaceIdentityPanel, { children: [
9675
9675
  /* @__PURE__ */ jsxRuntime.jsx(
9676
- chunk6ODV5TIC_cjs.EntityIdentityBar,
9676
+ chunkVGFU6JFI_cjs.EntityIdentityBar,
9677
9677
  {
9678
9678
  testId: "workspace-identity-bar",
9679
9679
  canEdit: isOwner,
@@ -9690,7 +9690,7 @@ function ConnectedWorkspaceSettings({
9690
9690
  label: "Name",
9691
9691
  value: workspace.name,
9692
9692
  placeholder: "Untitled",
9693
- maxLength: chunk6ODV5TIC_cjs.IDENTITY_NAME_MAX_LENGTH,
9693
+ maxLength: chunkVGFU6JFI_cjs.IDENTITY_NAME_MAX_LENGTH,
9694
9694
  valueClassName: "truncate text-base font-semibold",
9695
9695
  testId: "workspace-home-title",
9696
9696
  hideLabel: true,
@@ -12047,36 +12047,36 @@ function ConnectedSharePointAdminConsentPage({
12047
12047
  const result = givenResult === void 0 ? queryResult : givenResult;
12048
12048
  const { apiBaseUrl } = chunkNG6FFY44_cjs.useBlocksEnvironment().runtimeConfig;
12049
12049
  const consentUrl = `${apiBaseUrl}/v1/connectors/microsoft_sharepoint/admin-consent`;
12050
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentCard, { size: "md", children: [
12050
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentCard, { size: "md", children: [
12051
12051
  /* @__PURE__ */ jsxRuntime.jsx(
12052
- chunkFCOP4ZJD_cjs.ConsentHeader,
12052
+ chunkR3247EN3_cjs.ConsentHeader,
12053
12053
  {
12054
12054
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunk6XEFUJTT_cjs.VendorLogo, { vendorKey: "microsoft_sharepoint", product: "sharepoint" }),
12055
12055
  title: "Approve ARBI for SharePoint access",
12056
12056
  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."
12057
12057
  }
12058
12058
  ),
12059
- result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_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." }),
12060
- result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_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." }),
12061
- /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentSection, { title: "What you are approving", children: [
12059
+ result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_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." }),
12060
+ result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_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." }),
12061
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentSection, { title: "What you are approving", children: [
12062
12062
  /* @__PURE__ */ jsxRuntime.jsx(
12063
- chunkFCOP4ZJD_cjs.ConsentBulletList,
12063
+ chunkR3247EN3_cjs.ConsentBulletList,
12064
12064
  {
12065
12065
  items: [
12066
12066
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12067
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
12067
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
12068
12068
  " \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."
12069
12069
  ] }),
12070
12070
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12071
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
12071
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
12072
12072
  " \u2014 standard sign-in (openid, profile, email) and offline access so syncs keep working between sessions."
12073
12073
  ] })
12074
12074
  ]
12075
12075
  }
12076
12076
  ),
12077
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_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." }),
12077
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_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." }),
12078
12078
  /* @__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" }) }),
12079
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_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." })
12079
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_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." })
12080
12080
  ] })
12081
12081
  ] }) });
12082
12082
  }
@@ -14689,7 +14689,7 @@ function ConnectedWorkspaceList({
14689
14689
  else void openWorkspace(workspace.external_id, { name: workspace.name });
14690
14690
  };
14691
14691
  const createDisabledReason = list.canCreateProjects === false ? react.PROJECT_CREATION_DENIED_REASON : void 0;
14692
- if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunk6ODV5TIC_cjs.LoadingIndicator, { message: "Loading workspaces..." });
14692
+ if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkVGFU6JFI_cjs.LoadingIndicator, { message: "Loading workspaces..." });
14693
14693
  if (list.error) {
14694
14694
  return /* @__PURE__ */ jsxRuntime.jsx(
14695
14695
  chunkWSOBLKDY_cjs.HomeLoadError,
@@ -14762,7 +14762,7 @@ function ConnectedWorkspaceList({
14762
14762
  workspaceState
14763
14763
  }
14764
14764
  ) })
14765
- ) : /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunk6ODV5TIC_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkWSOBLKDY_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
14765
+ ) : /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkVGFU6JFI_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkWSOBLKDY_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
14766
14766
  WorkspaceTableView,
14767
14767
  {
14768
14768
  list,
@@ -15004,7 +15004,7 @@ function ProjectsListPage({
15004
15004
  }
15005
15005
  ),
15006
15006
  /* @__PURE__ */ jsxRuntime.jsx(
15007
- chunk6ODV5TIC_cjs.Toolbar,
15007
+ chunkVGFU6JFI_cjs.Toolbar,
15008
15008
  {
15009
15009
  search,
15010
15010
  onSearch: setSearch,
@@ -15317,7 +15317,7 @@ var COMPACT_BELOW = 132;
15317
15317
  var NO_DOCUMENTS = [];
15318
15318
  function useFilesWorkspace() {
15319
15319
  const { workspaceId, userId, live } = chunkH3ZMAU77_cjs.useConnectedWorkspace();
15320
- const { members, role } = chunkN5CKIKQB_cjs.useConnectedWorkspaceRole();
15320
+ const { members, role } = chunkWHJMV6TX_cjs.useConnectedWorkspaceRole();
15321
15321
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
15322
15322
  const workspaceName = workspaces?.find((w) => w.external_id === workspaceId)?.name;
15323
15323
  return {
@@ -16077,7 +16077,7 @@ function ProjectChronology({
16077
16077
  })),
16078
16078
  [facts]
16079
16079
  );
16080
- return /* @__PURE__ */ jsxRuntime.jsx(ui.Card, { className: "h-[min(70dvh,640px)] overflow-hidden", "data-testid": testId, children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-4 text-sm text-muted-foreground", children: loading }) : /* @__PURE__ */ jsxRuntime.jsx(chunkF72ZD5Q2_cjs.FactsGanttPane, { items, testId: `${testId}-gantt`, labels: { ganttEmpty: empty } }) });
16080
+ return /* @__PURE__ */ jsxRuntime.jsx(ui.Card, { className: "h-[min(70dvh,640px)] overflow-hidden", "data-testid": testId, children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-4 text-sm text-muted-foreground", children: loading }) : /* @__PURE__ */ jsxRuntime.jsx(chunkYD3RN2FY_cjs.FactsGanttPane, { items, testId: `${testId}-gantt`, labels: { ganttEmpty: empty } }) });
16081
16081
  }
16082
16082
  function ProjectThreads({
16083
16083
  projectId,
@@ -17203,7 +17203,7 @@ function recentConversations(conversations) {
17203
17203
  return [...conversations].sort((a, b) => time(b.updated_at) - time(a.updated_at)).slice(0, RECENT_ROWS).map((c) => ({
17204
17204
  id: c.external_id,
17205
17205
  title: c.title?.trim() || "Untitled thread",
17206
- subtitle: c.status ? [chunkFCOP4ZJD_cjs.STATUS_LABELS[chunkFCOP4ZJD_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"}`,
17206
+ subtitle: c.status ? [chunkR3247EN3_cjs.STATUS_LABELS[chunkR3247EN3_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"}`,
17207
17207
  time: timeAndDate(c.updated_at)
17208
17208
  }));
17209
17209
  }
@@ -20961,7 +20961,7 @@ function EventEditorDialog({
20961
20961
  const { notify: notify18, runtimeConfig } = chunkNG6FFY44_cjs.useBlocksEnvironment();
20962
20962
  const attachmentDocuments = documents.map((document2) => ({
20963
20963
  doc_id: document2.external_id,
20964
- title: chunkN5CKIKQB_cjs.toWorkflowFieldDocument(document2).title,
20964
+ title: chunkWHJMV6TX_cjs.toWorkflowFieldDocument(document2).title,
20965
20965
  url: chunk725OETK3_cjs.buildDeepLinkUrl(
20966
20966
  { workspaceId: workspaceId ?? void 0, documentId: document2.external_id },
20967
20967
  runtimeConfig.deploymentDomain
@@ -25925,7 +25925,7 @@ function useBatchCompleteToasts() {
25925
25925
  }
25926
25926
  }, AI_FIELDS_NOTICE_WINDOW_MS);
25927
25927
  } else if (message.batch_type === "entity_extract") {
25928
- say(`${chunk6ODV5TIC_cjs.entitiesPhrase()} extracted from ${chunk6ODV5TIC_cjs.documentCount(docIds.length)}`, "success", {
25928
+ say(`${chunkVGFU6JFI_cjs.entitiesPhrase()} extracted from ${chunkVGFU6JFI_cjs.documentCount(docIds.length)}`, "success", {
25929
25929
  ...openTags && { action: { label: "View", onClick: openTags } }
25930
25930
  });
25931
25931
  } else if (message.batch_type === "upload") {
@@ -27412,10 +27412,10 @@ var TABLET_TABLE_BELOW = 860;
27412
27412
  var TABLET_VIEWPORT_BELOW = 1100;
27413
27413
  var NO_CONVERSATION_DOCUMENTS = [];
27414
27414
  var DocumentReviewCard = React9.lazy(
27415
- () => import('../DocumentReviewCard-WHDZA46J.cjs').then((module) => ({ default: module.DocumentReviewCard }))
27415
+ () => import('../DocumentReviewCard-IWQFZO3X.cjs').then((module) => ({ default: module.DocumentReviewCard }))
27416
27416
  );
27417
27417
  function defaultReviewCard(props) {
27418
- return /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunk6ODV5TIC_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
27418
+ return /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkVGFU6JFI_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
27419
27419
  }
27420
27420
  function ConnectedFilesPage({
27421
27421
  isModal = false,
@@ -27456,7 +27456,7 @@ function ConnectedFilesPage({
27456
27456
  const deleteDocuments = react.useDeleteDocuments();
27457
27457
  const isDocumentsPending = isLoading && documents.length === 0;
27458
27458
  const { workspaceId, userId, live } = chunkH3ZMAU77_cjs.useConnectedWorkspace();
27459
- const { role, members } = chunkN5CKIKQB_cjs.useConnectedWorkspaceRole();
27459
+ const { role, members } = chunkWHJMV6TX_cjs.useConnectedWorkspaceRole();
27460
27460
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
27461
27461
  const workspaceName = workspaces?.find((w) => w.external_id === workspaceId)?.name;
27462
27462
  const isMember = role != null;
@@ -27871,7 +27871,7 @@ function ConnectedFilesPage({
27871
27871
  viewMode === "grid" ? (
27872
27872
  // ‹ n / N › over the table's displayed rows; a step opens the document.
27873
27873
  /* @__PURE__ */ jsxRuntime.jsx(
27874
- chunk6ODV5TIC_cjs.GridRowNavigator,
27874
+ chunkVGFU6JFI_cjs.GridRowNavigator,
27875
27875
  {
27876
27876
  gridApi,
27877
27877
  selectedId: viewingDocumentId ?? selectedDocumentIds[0] ?? null,
@@ -29001,7 +29001,7 @@ function ProcessingSection({
29001
29001
  onDelete
29002
29002
  }) {
29003
29003
  return /* @__PURE__ */ jsxRuntime.jsx(chunk6XEFUJTT_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(
29004
- chunkFCOP4ZJD_cjs.UploadTaskList,
29004
+ chunkR3247EN3_cjs.UploadTaskList,
29005
29005
  {
29006
29006
  tasks,
29007
29007
  title: "",
@@ -31034,7 +31034,7 @@ function ConnectedConfigForm({ availableModels, ...rest }) {
31034
31034
  ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
31035
31035
  []
31036
31036
  );
31037
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
31037
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
31038
31038
  }
31039
31039
  function ConnectedAgentConfigForm({ agentExtId, agentName, onSaved }) {
31040
31040
  const { notify: notify18 } = chunkNG6FFY44_cjs.useBlocksEnvironment();
@@ -31151,7 +31151,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31151
31151
  }, [name, selectedWorkspaces, role, createAgent, addWorkspaceUsers, arbi, notify18]);
31152
31152
  if (editAgent) {
31153
31153
  return /* @__PURE__ */ jsxRuntime.jsx(
31154
- chunkFCOP4ZJD_cjs.AgentEditView,
31154
+ chunkR3247EN3_cjs.AgentEditView,
31155
31155
  {
31156
31156
  agentName: editAgent.name,
31157
31157
  config: /* @__PURE__ */ jsxRuntime.jsx(
@@ -31167,7 +31167,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31167
31167
  }
31168
31168
  if (view === "main") {
31169
31169
  return /* @__PURE__ */ jsxRuntime.jsx(
31170
- chunkFCOP4ZJD_cjs.AgentMainView,
31170
+ chunkR3247EN3_cjs.AgentMainView,
31171
31171
  {
31172
31172
  onConnectExternal: () => setView("connect"),
31173
31173
  config: mainAgent ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -31183,11 +31183,11 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31183
31183
  }
31184
31184
  if (result) {
31185
31185
  return /* @__PURE__ */ jsxRuntime.jsx(
31186
- chunkFCOP4ZJD_cjs.AgentCreatedView,
31186
+ chunkR3247EN3_cjs.AgentCreatedView,
31187
31187
  {
31188
31188
  email: result.email,
31189
31189
  signingKey: result.signingKey,
31190
- instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
31190
+ instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
31191
31191
  config: /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentConfigForm, { agentExtId: result.extId, agentName: result.name }),
31192
31192
  isConfigOpen: configOpen,
31193
31193
  onToggleConfig: () => setConfigOpen((v) => !v),
@@ -31196,7 +31196,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31196
31196
  );
31197
31197
  }
31198
31198
  return /* @__PURE__ */ jsxRuntime.jsx(
31199
- chunkFCOP4ZJD_cjs.AgentCreateView,
31199
+ chunkR3247EN3_cjs.AgentCreateView,
31200
31200
  {
31201
31201
  name,
31202
31202
  onNameChange: setName,
@@ -32880,14 +32880,14 @@ var referencesOf = (inputs) => {
32880
32880
  return value?.documents ?? [];
32881
32881
  };
32882
32882
  var PROMPT_BINDINGS = {
32883
- [chunkFCOP4ZJD_cjs.GENERATE_IMAGE_ID]: {
32883
+ [chunkR3247EN3_cjs.GENERATE_IMAGE_ID]: {
32884
32884
  attachScope: false,
32885
32885
  tools: (inputs) => {
32886
32886
  const aspectRatio = typeof inputs.aspect_ratio === "string" ? inputs.aspect_ratio : "";
32887
32887
  return {
32888
32888
  retrieval_chunk: browser.buildRetrievalChunkTool([]),
32889
32889
  retrieval_full_context: browser.buildRetrievalFullContextTool(referencesOf(inputs)),
32890
- ...aspectRatio && aspectRatio !== chunkFCOP4ZJD_cjs.IMAGE_ASPECT_AUTO ? {
32890
+ ...aspectRatio && aspectRatio !== chunkR3247EN3_cjs.IMAGE_ASPECT_AUTO ? {
32891
32891
  image_generation: {
32892
32892
  name: "image_generation",
32893
32893
  description: "image generation",
@@ -32908,19 +32908,19 @@ var text = (inputs, name) => {
32908
32908
  function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32909
32909
  const { data: documents = [] } = react.useDocuments();
32910
32910
  const { data: workspaceTags = [] } = react.useTags();
32911
- const tags = React9.useMemo(() => chunkYIPMYI7I_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
32911
+ const tags = React9.useMemo(() => chunkJEXP72GJ_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
32912
32912
  const createTag = react.useCreateTag();
32913
32913
  const updateTag = react.useUpdateTag();
32914
32914
  const generate = react.useGenerateDocTags();
32915
- const { create: createTask } = chunkQ5MGOAZW_cjs.useWorkflowTasks();
32915
+ const { create: createTask } = chunkPTNV3TT5_cjs.useWorkflowTasks();
32916
32916
  const applyModel = react.useApplyChatModel();
32917
32917
  const session = react.useArbiSessionStore();
32918
32918
  const { notify: notify18, openFiles, openNewConversation } = chunkNG6FFY44_cjs.useBlocksEnvironment();
32919
32919
  const annotate = React9.useCallback(
32920
32920
  async ({ inputs, scope }) => {
32921
32921
  const description = text(inputs, "description");
32922
- const name = text(inputs, "name") || chunkFCOP4ZJD_cjs.deriveAnnotationName(description);
32923
- const matching = chunkYIPMYI7I_cjs.matchWorkflowScope(documents, scope);
32922
+ const name = text(inputs, "name") || chunkR3247EN3_cjs.deriveAnnotationName(description);
32923
+ const matching = chunkJEXP72GJ_cjs.matchWorkflowScope(documents, scope);
32924
32924
  if (!name || !description || matching.length === 0) return;
32925
32925
  try {
32926
32926
  const existing = tags.find((t) => t.name.toLowerCase() === name.toLowerCase());
@@ -32963,9 +32963,9 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32963
32963
  async (launch) => {
32964
32964
  const { workflow, inputs, scope, agentId } = launch;
32965
32965
  if (workflow.run.kind === "operation") {
32966
- if (workflow.id === chunkFCOP4ZJD_cjs.ANNOTATE_ID) {
32966
+ if (workflow.id === chunkR3247EN3_cjs.ANNOTATE_ID) {
32967
32967
  await annotate(launch);
32968
- chunkFCOP4ZJD_cjs.recordWorkflowUse(workflow.id);
32968
+ chunkR3247EN3_cjs.recordWorkflowUse(workflow.id);
32969
32969
  return;
32970
32970
  }
32971
32971
  throw new Error(`No host handler for workflow "${workflow.id}"`);
@@ -32975,7 +32975,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
32975
32975
  );
32976
32976
  const prompt = chunkSMQIYEOL_cjs.composeWorkflowPrompt(workflow, inputs, { documentTitles });
32977
32977
  if (!prompt) return;
32978
- chunkFCOP4ZJD_cjs.recordWorkflowUse(workflow.id);
32978
+ chunkR3247EN3_cjs.recordWorkflowUse(workflow.id);
32979
32979
  if (agentId) {
32980
32980
  try {
32981
32981
  const created = await createTask({
@@ -33020,7 +33020,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
33020
33020
  const binding = PROMPT_BINDINGS[workflow.id];
33021
33021
  if (!inPlace) openNewConversation();
33022
33022
  if (binding?.attachScope !== false && !chunkSMQIYEOL_cjs.isEmptyWorkflowScope(scope)) {
33023
- const ids = chunkYIPMYI7I_cjs.matchWorkflowScope(documents, scope).map((d) => d.external_id);
33023
+ const ids = chunkJEXP72GJ_cjs.matchWorkflowScope(documents, scope).map((d) => d.external_id);
33024
33024
  if (ids.length > 0) {
33025
33025
  session.setConversationDocuments(
33026
33026
  inPlace ? session.getState().conversationId ?? "new" : "new",
@@ -33055,30 +33055,30 @@ function ConnectedWorkflowStart({
33055
33055
  const onLaunch = useLaunchWorkflow({ landing });
33056
33056
  const { openUpload } = chunkNG6FFY44_cjs.useBlocksEnvironment();
33057
33057
  const { data: workspaceTags = [] } = react.useTags();
33058
- const tags = React9.useMemo(() => chunkYIPMYI7I_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
33058
+ const tags = React9.useMemo(() => chunkJEXP72GJ_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
33059
33059
  const fieldPlaceholder = React9.useCallback(
33060
33060
  (field, inputs, workflow) => {
33061
- if (workflow.id !== chunkFCOP4ZJD_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
33062
- const derived = chunkFCOP4ZJD_cjs.deriveAnnotationName(String(inputs.description ?? ""));
33061
+ if (workflow.id !== chunkR3247EN3_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
33062
+ const derived = chunkR3247EN3_cjs.deriveAnnotationName(String(inputs.description ?? ""));
33063
33063
  return derived ? `Otherwise \u201C${derived}\u201D` : "Taken from the description";
33064
33064
  },
33065
33065
  []
33066
33066
  );
33067
33067
  return /* @__PURE__ */ jsxRuntime.jsx(
33068
- chunkN5CKIKQB_cjs.ConnectedWorkflowLauncher,
33068
+ chunkWHJMV6TX_cjs.ConnectedWorkflowLauncher,
33069
33069
  {
33070
33070
  ...rest,
33071
33071
  workflows,
33072
33072
  onLaunch,
33073
- renderIcon: chunkFCOP4ZJD_cjs.renderWorkflowIcon,
33073
+ renderIcon: chunkR3247EN3_cjs.renderWorkflowIcon,
33074
33074
  onAddFiles: openUpload,
33075
33075
  agentLabels: AGENT_LABELS,
33076
33076
  addFilesAction,
33077
33077
  fieldPlaceholder,
33078
- submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkFCOP4ZJD_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
33078
+ submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkR3247EN3_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
33079
33079
  renderNotice: ({ workflow, inputs }) => {
33080
- if (workflow.id !== chunkFCOP4ZJD_cjs.ANNOTATE_ID) return null;
33081
- const name = String(inputs.name ?? "").trim() || chunkFCOP4ZJD_cjs.deriveAnnotationName(String(inputs.description ?? ""));
33080
+ if (workflow.id !== chunkR3247EN3_cjs.ANNOTATE_ID) return null;
33081
+ const name = String(inputs.name ?? "").trim() || chunkR3247EN3_cjs.deriveAnnotationName(String(inputs.description ?? ""));
33082
33082
  const existing = name ? tags.find((t) => t.name.toLowerCase() === name.toLowerCase()) : void 0;
33083
33083
  if (!existing) return null;
33084
33084
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -33115,9 +33115,9 @@ function resolveLaunchInputs(workflow, request) {
33115
33115
  return { ...fromContext, ...fromScope, ...request.inputs };
33116
33116
  }
33117
33117
  function useWorkflowLaunch() {
33118
- const { skills } = chunkQ5MGOAZW_cjs.useWorkflowDefinitions();
33118
+ const { skills } = chunkPTNV3TT5_cjs.useWorkflowDefinitions();
33119
33119
  const launch = React9.useCallback(
33120
- (workflowId, options2 = {}) => chunkFCOP4ZJD_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
33120
+ (workflowId, options2 = {}) => chunkR3247EN3_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
33121
33121
  []
33122
33122
  );
33123
33123
  const itemsFor = React9.useCallback(
@@ -33146,9 +33146,9 @@ function useWorkflowLaunch() {
33146
33146
  return { launch, itemsFor, scopeItemsFor };
33147
33147
  }
33148
33148
  function Inner() {
33149
- const request = chunkFCOP4ZJD_cjs.useWorkflowLaunchRequest();
33150
- const close = chunkFCOP4ZJD_cjs.closeWorkflowLaunch;
33151
- const { skills } = chunkQ5MGOAZW_cjs.useWorkflowDefinitions();
33149
+ const request = chunkR3247EN3_cjs.useWorkflowLaunchRequest();
33150
+ const close = chunkR3247EN3_cjs.closeWorkflowLaunch;
33151
+ const { skills } = chunkPTNV3TT5_cjs.useWorkflowDefinitions();
33152
33152
  const run = useLaunchWorkflow({ landing: request?.landing });
33153
33153
  const workflow = skills.find((w) => w.id === request?.workflowId);
33154
33154
  const inputs = React9.useMemo(
@@ -33185,7 +33185,7 @@ function Inner() {
33185
33185
  );
33186
33186
  }
33187
33187
  function WorkflowLaunchHost() {
33188
- return chunkFCOP4ZJD_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
33188
+ return chunkR3247EN3_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
33189
33189
  }
33190
33190
  function isNeedsConfirmationDetail(detail) {
33191
33191
  return typeof detail === "object" && detail !== null && detail.needs_confirmation === "resource_private";
@@ -33714,7 +33714,7 @@ var ConversationEntity = React9.memo(function ConversationEntity2({
33714
33714
  );
33715
33715
  const icon2 = /* @__PURE__ */ jsxRuntime.jsx(ui.ThreadVisibilityIcon, { shared: isShared, className: `${iconSizeClass} shrink-0` });
33716
33716
  return /* @__PURE__ */ jsxRuntime.jsx(
33717
- chunkFCOP4ZJD_cjs.EntityChip,
33717
+ chunkR3247EN3_cjs.EntityChip,
33718
33718
  {
33719
33719
  variant,
33720
33720
  icon: icon2,
@@ -33736,7 +33736,7 @@ function WorkflowRunStatusCell({ conversation }) {
33736
33736
  });
33737
33737
  const { data: members = [] } = react.useWorkspaceUsers();
33738
33738
  const me = react.useArbiSession().user?.external_id;
33739
- const steps = chunkFCOP4ZJD_cjs.fromPlanSteps(conversation.plan?.steps ?? []);
33739
+ const steps = chunkR3247EN3_cjs.fromPlanSteps(conversation.plan?.steps ?? []);
33740
33740
  const states = chunkSMQIYEOL_cjs.stepStatesFromActivity(activity.data ?? []);
33741
33741
  const nameOf = (id) => {
33742
33742
  if (id === me) return "you";
@@ -33744,7 +33744,7 @@ function WorkflowRunStatusCell({ conversation }) {
33744
33744
  return person ? ui.getUserDisplayName(person) : void 0;
33745
33745
  };
33746
33746
  return /* @__PURE__ */ jsxRuntime.jsx(
33747
- chunkFCOP4ZJD_cjs.WorkflowRunStatus,
33747
+ chunkR3247EN3_cjs.WorkflowRunStatus,
33748
33748
  {
33749
33749
  steps,
33750
33750
  states,
@@ -33778,7 +33778,7 @@ function ConversationStatusCell({ conversation }) {
33778
33778
  if (conversation.plan?.steps?.length && !isLiveGenerating)
33779
33779
  return /* @__PURE__ */ jsxRuntime.jsx(WorkflowRunStatusCell, { conversation });
33780
33780
  return /* @__PURE__ */ jsxRuntime.jsx(
33781
- chunkFCOP4ZJD_cjs.ThreadStatusLine,
33781
+ chunkR3247EN3_cjs.ThreadStatusLine,
33782
33782
  {
33783
33783
  state: threadStateOf(conversation, isLiveGenerating),
33784
33784
  className: "h-full",
@@ -34110,16 +34110,16 @@ function useConnectedThreadActivity(conversationId) {
34110
34110
  const openWorkflow = chunkNG6FFY44_cjs.useOpenWorkflow();
34111
34111
  const workspaceExtId = react.useArbiSessionState((s) => s.workspaceId);
34112
34112
  const task = conversations.find((c) => c.external_id === conversationId);
34113
- const latestMessageAt = chunkFCOP4ZJD_cjs.latestMessageTime(messageHistory);
34113
+ const latestMessageAt = chunkR3247EN3_cjs.latestMessageTime(messageHistory);
34114
34114
  const events = (activity.data ?? []).filter(
34115
- (event) => !chunkFCOP4ZJD_cjs.isSupersededStop(event, latestMessageAt)
34115
+ (event) => !chunkR3247EN3_cjs.isSupersededStop(event, latestMessageAt)
34116
34116
  );
34117
34117
  const personName = (extId) => {
34118
34118
  const person = members.find((m) => m.user.external_id === extId)?.user;
34119
34119
  return person ? ui.getUserDisplayName(person) : "someone";
34120
34120
  };
34121
- const planSteps = chunkFCOP4ZJD_cjs.fromPlanSteps(task?.plan?.steps ?? []);
34122
- const entries = chunkFCOP4ZJD_cjs.compactThreadActivity(events, (id) => planSteps.find((s) => s.id === id)?.title);
34121
+ const planSteps = chunkR3247EN3_cjs.fromPlanSteps(task?.plan?.steps ?? []);
34122
+ const entries = chunkR3247EN3_cjs.compactThreadActivity(events, (id) => planSteps.find((s) => s.id === id)?.title);
34123
34123
  const items = entries.map(({ event, label, recipients }) => {
34124
34124
  const messageActivity = [
34125
34125
  "created",
@@ -34145,7 +34145,7 @@ function useConnectedThreadActivity(conversationId) {
34145
34145
  const messageId = sourceMessage ?? [...messageHistory].reverse().find((message) => Date.parse(message.created_at ?? "") <= Date.parse(event.created_at))?.external_id ?? messageHistory[0]?.external_id;
34146
34146
  const doc = docId ? docs.find((d) => d.external_id === docId) : void 0;
34147
34147
  const mailDraftId = event.kind === "notified" && event.detail?.event === "mail_draft_ready" && typeof event.detail?.mail_id === "string" ? event.detail.mail_id : void 0;
34148
- const missed = event.kind === "notified" && recipients.length ? chunkFCOP4ZJD_cjs.unnotifiedMentions(
34148
+ const missed = event.kind === "notified" && recipients.length ? chunkR3247EN3_cjs.unnotifiedMentions(
34149
34149
  messageHistory.find((message) => message.external_id === sourceMessage)?.mentions,
34150
34150
  recipients,
34151
34151
  event.actor_ext_id
@@ -34178,7 +34178,7 @@ function useConnectedThreadActivity(conversationId) {
34178
34178
  ) : void 0,
34179
34179
  docId,
34180
34180
  docTitle: doc ? ui.getDocumentTitle(doc) : void 0,
34181
- label: mailDraftId ? "Left a draft email" : event.kind === "notified" && recipients.length ? chunkFCOP4ZJD_cjs.notifiedLabel(recipients.map(personName), missed.map(personName)) : label,
34181
+ label: mailDraftId ? "Left a draft email" : event.kind === "notified" && recipients.length ? chunkR3247EN3_cjs.notifiedLabel(recipients.map(personName), missed.map(personName)) : label,
34182
34182
  description: [
34183
34183
  name,
34184
34184
  label,
@@ -34192,7 +34192,7 @@ function useConnectedThreadActivity(conversationId) {
34192
34192
  stepChip: eventStep ? stepChipOf(eventStep, event.kind, stepDocument) : void 0,
34193
34193
  // No avatar tooltip: the entry is already a button (or titled row) that carries the same
34194
34194
  // details, and a tooltip trigger inside it would be a nested <button>.
34195
- avatar: assistant ? /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AssistantEntity, { variant: "icon", size: 20, showTooltip: false }) : member ? /* @__PURE__ */ jsxRuntime.jsx(chunkDZWO5JAG_cjs.DocumentUser, { user: member, tooltip: false }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Clock, { className: "size-4 text-muted-foreground" }),
34195
+ avatar: assistant ? /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AssistantEntity, { variant: "icon", size: 20, showTooltip: false }) : member ? /* @__PURE__ */ jsxRuntime.jsx(chunkDZWO5JAG_cjs.DocumentUser, { user: member, tooltip: false }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Clock, { className: "size-4 text-muted-foreground" }),
34196
34196
  time: ui.formatRelativeTime(event.created_at, { style: "short" }),
34197
34197
  exactTime: ui.formatFriendlyDate(event.created_at),
34198
34198
  onOpenDocument: docId && doc ? () => openDocument(docId) : void 0,
@@ -34241,7 +34241,7 @@ function useConnectedThreadActivity(conversationId) {
34241
34241
  onSelect: () => navigateToConversation(source)
34242
34242
  });
34243
34243
  }
34244
- const links = chunkFCOP4ZJD_cjs.linkedRunsFromActivity(activity.data);
34244
+ const links = chunkR3247EN3_cjs.linkedRunsFromActivity(activity.data);
34245
34245
  const threadName = (id, workflowId) => conversations.find((c) => c.external_id === id)?.title || workflows.find((w) => w.external_id === workflowId)?.name || "Linked thread";
34246
34246
  const signals = links.raised.map((raised) => ({
34247
34247
  step: raised.step,
@@ -34256,7 +34256,7 @@ function useConnectedThreadActivity(conversationId) {
34256
34256
  if (links.startedBy) {
34257
34257
  const { conversationId: parentId, step, signal } = links.startedBy;
34258
34258
  const parent = conversations.find((c) => c.external_id === parentId);
34259
- const parentSteps = chunkFCOP4ZJD_cjs.fromPlanSteps(parent?.plan?.steps ?? []);
34259
+ const parentSteps = chunkR3247EN3_cjs.fromPlanSteps(parent?.plan?.steps ?? []);
34260
34260
  startedBy = {
34261
34261
  stepTitle: parentSteps.find((s) => s.id === step)?.title ?? step ?? "a step",
34262
34262
  threadTitle: parent?.title || "another thread",
@@ -34289,7 +34289,7 @@ function ConnectedThreadTaskBar({
34289
34289
  const person = members.find((m) => m.user.external_id === id)?.user;
34290
34290
  return person ? ui.getUserDisplayName(person) : void 0;
34291
34291
  };
34292
- const steps = chunkFCOP4ZJD_cjs.fromPlanSteps(task?.plan?.steps ?? []);
34292
+ const steps = chunkR3247EN3_cjs.fromPlanSteps(task?.plan?.steps ?? []);
34293
34293
  const states = chunkSMQIYEOL_cjs.stepStatesFromActivity(activity.data ?? []);
34294
34294
  const runInputs = task?.skill_inputs ?? {};
34295
34295
  const stepCall = (body) => actOnStep.mutateAsync({ conversationId, body });
@@ -34315,7 +34315,7 @@ function ConnectedThreadTaskBar({
34315
34315
  task?.plan?.steps?.length ? (
34316
34316
  // A workflow run: its named steps, with what happened in the thread under each.
34317
34317
  /* @__PURE__ */ jsxRuntime.jsx(
34318
- chunkFCOP4ZJD_cjs.WorkflowThreadStrip,
34318
+ chunkR3247EN3_cjs.WorkflowThreadStrip,
34319
34319
  {
34320
34320
  steps,
34321
34321
  states,
@@ -34342,7 +34342,7 @@ function ConnectedThreadTaskBar({
34342
34342
  renderStepAction: (step, phase) => (
34343
34343
  // A signer or a draft's person acts on their step even on a thread they cannot edit.
34344
34344
  canEdit || phase === "waiting" || phase === "done" ? /* @__PURE__ */ jsxRuntime.jsx(
34345
- chunkFCOP4ZJD_cjs.WorkflowStepAction,
34345
+ chunkR3247EN3_cjs.WorkflowStepAction,
34346
34346
  {
34347
34347
  step,
34348
34348
  phase,
@@ -34363,8 +34363,8 @@ function ConnectedThreadTaskBar({
34363
34363
  }
34364
34364
  )
34365
34365
  ) : items.length || startedBy ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34366
- startedBy && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.WorkflowThreadStartedBy, { origin: startedBy }),
34367
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.TaskFlow, { items: items.filter((item) => !item.step) })
34366
+ startedBy && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.WorkflowThreadStartedBy, { origin: startedBy }),
34367
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.TaskFlow, { items: items.filter((item) => !item.step) })
34368
34368
  ] }) : (
34369
34369
  // Ordinary chats record no activity events, so an empty ribbon says nothing rather than
34370
34370
  // "No recorded activity yet" while the answer and its steps are right there in the thread.
@@ -34398,7 +34398,7 @@ function ConnectedThreadTaskBar({
34398
34398
  ) }),
34399
34399
  /* @__PURE__ */ jsxRuntime.jsxs(ui.DropdownMenuContent, { align: "end", children: [
34400
34400
  /* @__PURE__ */ jsxRuntime.jsx(
34401
- chunk6ODV5TIC_cjs.ThreadFollowMenuItem,
34401
+ chunkVGFU6JFI_cjs.ThreadFollowMenuItem,
34402
34402
  {
34403
34403
  following: follow.following,
34404
34404
  onFollowingChange: (on) => (
@@ -34654,7 +34654,7 @@ function ConnectedTaskStartDialog({
34654
34654
  };
34655
34655
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34656
34656
  /* @__PURE__ */ jsxRuntime.jsx(
34657
- chunkFCOP4ZJD_cjs.TaskStartDialog,
34657
+ chunkR3247EN3_cjs.TaskStartDialog,
34658
34658
  {
34659
34659
  open: open && !later,
34660
34660
  onOpenChange: (next) => {
@@ -34679,14 +34679,14 @@ function ConnectedTaskStartDialog({
34679
34679
  }
34680
34680
  ),
34681
34681
  later && /* @__PURE__ */ jsxRuntime.jsx(
34682
- chunkQ5MGOAZW_cjs.ConnectedTaskComposer,
34682
+ chunkPTNV3TT5_cjs.ConnectedTaskComposer,
34683
34683
  {
34684
34684
  open: true,
34685
34685
  onOpenChange: (next) => !next && setLater(null),
34686
34686
  kind: "workflow",
34687
34687
  startLater: true,
34688
34688
  initialPrompt: later.prompt,
34689
- initialWorkflowId: later.todo ? chunkFCOP4ZJD_cjs.REMIND_TASK_ID : void 0,
34689
+ initialWorkflowId: later.todo ? chunkR3247EN3_cjs.REMIND_TASK_ID : void 0,
34690
34690
  initialShared: later.shared,
34691
34691
  launchWorkflow: later.workflow
34692
34692
  }
@@ -34700,7 +34700,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
34700
34700
  const [later, setLater] = React9.useState(null);
34701
34701
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
34702
34702
  /* @__PURE__ */ jsxRuntime.jsx(
34703
- chunkFCOP4ZJD_cjs.ThreadLauncher,
34703
+ chunkR3247EN3_cjs.ThreadLauncher,
34704
34704
  {
34705
34705
  workflows: task.workflows,
34706
34706
  people: task.people,
@@ -34730,14 +34730,14 @@ function ConnectedThreadLauncher({ autoFocus }) {
34730
34730
  }
34731
34731
  ),
34732
34732
  later && /* @__PURE__ */ jsxRuntime.jsx(
34733
- chunkQ5MGOAZW_cjs.ConnectedTaskComposer,
34733
+ chunkPTNV3TT5_cjs.ConnectedTaskComposer,
34734
34734
  {
34735
34735
  open: true,
34736
34736
  onOpenChange: (next) => !next && setLater(null),
34737
34737
  kind: "workflow",
34738
34738
  startLater: true,
34739
34739
  initialPrompt: later.prompt,
34740
- initialWorkflowId: later.todo ? chunkFCOP4ZJD_cjs.REMIND_TASK_ID : void 0,
34740
+ initialWorkflowId: later.todo ? chunkR3247EN3_cjs.REMIND_TASK_ID : void 0,
34741
34741
  initialShared: later.shared,
34742
34742
  launchWorkflow: later.workflow
34743
34743
  }
@@ -34766,13 +34766,13 @@ function ConnectedNewThreadDialog({
34766
34766
  });
34767
34767
  const parentOptions = React9.useMemo(() => {
34768
34768
  const leaf = { external_id: "__new__" };
34769
- return chunkFCOP4ZJD_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
34769
+ return chunkR3247EN3_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
34770
34770
  id: t.external_id,
34771
34771
  name: t.title?.trim() || "Untitled task"
34772
34772
  }));
34773
34773
  }, [tasks]);
34774
34774
  const submit = async (values) => {
34775
- const request = chunkFCOP4ZJD_cjs.newThreadToRequest(values);
34775
+ const request = chunkR3247EN3_cjs.newThreadToRequest(values);
34776
34776
  try {
34777
34777
  if (!workspaceId) throw new Error("Open a workspace to add a task.");
34778
34778
  if (!request.startAssistant && request.todo) {
@@ -34813,7 +34813,7 @@ function ConnectedNewThreadDialog({
34813
34813
  }
34814
34814
  };
34815
34815
  return /* @__PURE__ */ jsxRuntime.jsx(
34816
- chunkFCOP4ZJD_cjs.NewThreadDialog,
34816
+ chunkR3247EN3_cjs.NewThreadDialog,
34817
34817
  {
34818
34818
  open,
34819
34819
  onOpenChange,
@@ -34829,7 +34829,7 @@ function ConnectedNewThreadDialog({
34829
34829
  var START_VISIBLE = 8;
34830
34830
  var START_SEARCH_ABOVE = 8;
34831
34831
  function ConnectedConversationStart() {
34832
- const { start } = chunkQ5MGOAZW_cjs.useWorkflowDefinitions();
34832
+ const { start } = chunkPTNV3TT5_cjs.useWorkflowDefinitions();
34833
34833
  const { openSkillsBrowser } = chunkNG6FFY44_cjs.useBlocksEnvironment();
34834
34834
  const [query, setQuery] = React9.useState("");
34835
34835
  const q = query.trim().toLowerCase();
@@ -34844,7 +34844,7 @@ function ConnectedConversationStart() {
34844
34844
  const browse = openSkillsBrowser ? [
34845
34845
  {
34846
34846
  id: "browse-all",
34847
- iconNode: chunkFCOP4ZJD_cjs.renderWorkflowIcon("library"),
34847
+ iconNode: chunkR3247EN3_cjs.renderWorkflowIcon("library"),
34848
34848
  title: "Browse all",
34849
34849
  description: "See every skill, make a copy, add your own",
34850
34850
  onSelect: () => openSkillsBrowser(),
@@ -34888,7 +34888,7 @@ function parseTypedSkill(draft) {
34888
34888
  return m ? { slug: m[1].toLowerCase(), text: (m[2] ?? "").trim() } : null;
34889
34889
  }
34890
34890
  function useSlashSkillWorkflows({ landing }) {
34891
- const { skills, skillsEnabled } = chunkQ5MGOAZW_cjs.useWorkflowDefinitions();
34891
+ const { skills, skillsEnabled } = chunkPTNV3TT5_cjs.useWorkflowDefinitions();
34892
34892
  const { commands } = react.useBuiltinCommands();
34893
34893
  const [active, setActive] = React9.useState(null);
34894
34894
  const open = (workflow, text2) => {
@@ -34957,7 +34957,7 @@ function getToolParams(detail) {
34957
34957
  return params;
34958
34958
  }
34959
34959
  function StepModelIcon({ modelName, tag }) {
34960
- const cfg = tag === "Premium" ? null : chunkFCOP4ZJD_cjs.getModelIcon(modelName, tag);
34960
+ const cfg = tag === "Premium" ? null : chunkR3247EN3_cjs.getModelIcon(modelName, tag);
34961
34961
  if (tag !== "Premium" && !cfg) return null;
34962
34962
  return /* @__PURE__ */ jsxRuntime.jsxs(ui.Tooltip, { children: [
34963
34963
  /* @__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 } }) }) }),
@@ -35072,15 +35072,15 @@ var AgentStepsComponent = ({
35072
35072
  const lastStepIndex = mergedSteps[mergedSteps.length - 1].index;
35073
35073
  const renderRow = (step, depth, isLastInList) => {
35074
35074
  const i = posByIndex.get(step.index);
35075
- const presentation = chunkFCOP4ZJD_cjs.getAgentStepPresentation(step, docInfo);
35075
+ const presentation = chunkR3247EN3_cjs.getAgentStepPresentation(step, docInfo);
35076
35076
  const { tool, Icon } = presentation;
35077
35077
  const { label, summary, isMultiLine, details } = browser.getStepDisplay(step, docInfo);
35078
- const accent = chunkFCOP4ZJD_cjs.stepAccent(step, tool);
35078
+ const accent = chunkR3247EN3_cjs.stepAccent(step, tool);
35079
35079
  const duration = stepDurations[i];
35080
35080
  const isLastStep = step.index === lastStepIndex;
35081
35081
  const isActive = step.index === currentStepIndex;
35082
35082
  const tier = step.step === "goal" ? step.model_recommendation : null;
35083
- const TierIcon = tier ? chunkFCOP4ZJD_cjs.MODEL_TIER_ICON_MAP[tier] : null;
35083
+ const TierIcon = tier ? chunkR3247EN3_cjs.MODEL_TIER_ICON_MAP[tier] : null;
35084
35084
  const useLiveDuration = isLastStep && liveTimer != null && step.t != null;
35085
35085
  const durationNode = useLiveDuration ? /* @__PURE__ */ jsxRuntime.jsx(
35086
35086
  MessageLiveSeconds,
@@ -35104,7 +35104,7 @@ var AgentStepsComponent = ({
35104
35104
  })) : null;
35105
35105
  const folded = childrenByParent.get(step.index);
35106
35106
  return /* @__PURE__ */ jsxRuntime.jsxs(
35107
- chunkFCOP4ZJD_cjs.StepRow,
35107
+ chunkR3247EN3_cjs.StepRow,
35108
35108
  {
35109
35109
  index: step.index,
35110
35110
  number: displayNumber.get(step.index) ?? String(i + 1),
@@ -35118,7 +35118,7 @@ var AgentStepsComponent = ({
35118
35118
  titleTestId: isActive ? "agent-expanded-current-step-description" : void 0,
35119
35119
  badge: TierIcon ? /* @__PURE__ */ jsxRuntime.jsxs(ui.Tooltip, { children: [
35120
35120
  /* @__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 }) }) }),
35121
- /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipContent, { side: "top", children: chunkFCOP4ZJD_cjs.MODEL_TIER_LABELS[tier] ?? tier })
35121
+ /* @__PURE__ */ jsxRuntime.jsx(ui.TooltipContent, { side: "top", children: chunkR3247EN3_cjs.MODEL_TIER_LABELS[tier] ?? tier })
35122
35122
  ] }) : void 0,
35123
35123
  meta: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35124
35124
  isDeveloper && /* @__PURE__ */ jsxRuntime.jsx(StepModelIcon, { modelName: step.usage?.model, tag: getModelTag(step.usage?.model) }),
@@ -35133,14 +35133,14 @@ var AgentStepsComponent = ({
35133
35133
  summary && !isActive && (step.narration ? (
35134
35134
  /* Narration is PROSE (headings, bold, lists): render markdown, not raw asterisks.
35135
35135
  Tool summaries stay plain text: one-line headlines where a clamp matters. */
35136
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepNarration, { index: step.index, children: /* @__PURE__ */ jsxRuntime.jsx(chunkA2UBFIY5_cjs.ConnectedMarkdown, { isStreaming: false, children: summary }) })
35137
- ) : /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepSummary, { index: step.index, multiLine: isMultiLine, children: summary })),
35138
- details.map((d, di) => /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepDetail, { index: step.index, children: d }, di)),
35139
- showOutcome && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepOutcome, { index: step.index, failed: outcomeFailed, children: step.outcome }),
35140
- toolParams.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepParams, { children: toolParams.map((p) => `${p.key}=${p.value}`).join(" ") }),
35141
- criteriaView && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.GoalCriteria, { criteria: criteriaView }),
35136
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepNarration, { index: step.index, children: /* @__PURE__ */ jsxRuntime.jsx(chunkA2UBFIY5_cjs.ConnectedMarkdown, { isStreaming: false, children: summary }) })
35137
+ ) : /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepSummary, { index: step.index, multiLine: isMultiLine, children: summary })),
35138
+ details.map((d, di) => /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepDetail, { index: step.index, children: d }, di)),
35139
+ showOutcome && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepOutcome, { index: step.index, failed: outcomeFailed, children: step.outcome }),
35140
+ toolParams.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepParams, { children: toolParams.map((p) => `${p.key}=${p.value}`).join(" ") }),
35141
+ criteriaView && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.GoalCriteria, { criteria: criteriaView }),
35142
35142
  folded && folded.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
35143
- chunkFCOP4ZJD_cjs.SubStepGroup,
35143
+ chunkR3247EN3_cjs.SubStepGroup,
35144
35144
  {
35145
35145
  parentIndex: step.index,
35146
35146
  summary: summariseSubSteps(folded),
@@ -35166,7 +35166,7 @@ var AgentStepsComponent = ({
35166
35166
  leftParts.push(`${browser.formatTokens(totalInputTokens)} in`);
35167
35167
  if (totalOutputTokens > 0) leftParts.push(`${browser.formatTokens(totalOutputTokens)} out`);
35168
35168
  summaryNode = /* @__PURE__ */ jsxRuntime.jsx(
35169
- chunkFCOP4ZJD_cjs.StepTraceSummary,
35169
+ chunkR3247EN3_cjs.StepTraceSummary,
35170
35170
  {
35171
35171
  left: leftParts.join(" \xB7 "),
35172
35172
  isNearBudget: browser.isNearAiUsageBudget(contextUsage),
@@ -35174,7 +35174,7 @@ var AgentStepsComponent = ({
35174
35174
  }
35175
35175
  );
35176
35176
  }
35177
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.StepTrace, { className, summary: summaryNode, children: displayRows.map((row2, i) => {
35177
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.StepTrace, { className, summary: summaryNode, children: displayRows.map((row2, i) => {
35178
35178
  if (row2.lane) {
35179
35179
  return /* @__PURE__ */ jsxRuntime.jsx(
35180
35180
  LaneBinding,
@@ -35211,7 +35211,7 @@ function LaneBinding({
35211
35211
  const running = !closed && isStreaming;
35212
35212
  const latest = inner[inner.length - 1];
35213
35213
  return /* @__PURE__ */ jsxRuntime.jsx(
35214
- chunkFCOP4ZJD_cjs.SubAgentLane,
35214
+ chunkR3247EN3_cjs.SubAgentLane,
35215
35215
  {
35216
35216
  handle,
35217
35217
  number,
@@ -35334,7 +35334,7 @@ function AgentBarShell({
35334
35334
  }, [isStepsExpanded, steps]);
35335
35335
  const visibleStepCount = React9.useMemo(() => browser.topLevelAgentSteps(steps ?? []).length, [steps]);
35336
35336
  return /* @__PURE__ */ jsxRuntime.jsx(
35337
- chunkFCOP4ZJD_cjs.AgentBar,
35337
+ chunkR3247EN3_cjs.AgentBar,
35338
35338
  {
35339
35339
  className,
35340
35340
  testId,
@@ -35390,7 +35390,7 @@ function AgentControlBar({
35390
35390
  const isPaused = controlState === "paused" || controlState === "resuming";
35391
35391
  const steps = agentSteps ?? [];
35392
35392
  const currentStep = browser.getCurrentStep(steps);
35393
- const currentPresentation = chunkFCOP4ZJD_cjs.getCurrentAgentStepPresentation(steps);
35393
+ const currentPresentation = chunkR3247EN3_cjs.getCurrentAgentStepPresentation(steps);
35394
35394
  const CurrentStepIcon = currentPresentation?.Icon;
35395
35395
  const stepLabel2 = currentPresentation?.description ?? "Agent working\u2026";
35396
35396
  const runningLanes = browser.extractSubagentLanes(steps).filter((l) => l.status === "running");
@@ -35407,7 +35407,7 @@ function AgentControlBar({
35407
35407
  }
35408
35408
  );
35409
35409
  const status = /* @__PURE__ */ jsxRuntime.jsx(
35410
- chunkFCOP4ZJD_cjs.AgentBarStatus,
35410
+ chunkR3247EN3_cjs.AgentBarStatus,
35411
35411
  {
35412
35412
  state: showState ? controlState : void 0,
35413
35413
  stateLabel: STATE_LABEL[controlState],
@@ -35449,7 +35449,7 @@ function AgentControlBar({
35449
35449
  ];
35450
35450
  const controls = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35451
35451
  onStop && /* @__PURE__ */ jsxRuntime.jsx(
35452
- chunkFCOP4ZJD_cjs.AgentBarIconButton,
35452
+ chunkR3247EN3_cjs.AgentBarIconButton,
35453
35453
  {
35454
35454
  onClick: onStop,
35455
35455
  title: "Stop",
@@ -35458,22 +35458,22 @@ function AgentControlBar({
35458
35458
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Square, { className: "h-3 w-3", fill: "currentColor" })
35459
35459
  }
35460
35460
  ),
35461
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AgentBarMenu, { items: menuItems })
35461
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AgentBarMenu, { items: menuItems })
35462
35462
  ] });
35463
35463
  const displayedQueuedMessages = (transientQueuedMessages ?? []).filter(
35464
35464
  (message) => !message.serverId || !queuedMessages.some((queued) => queued.external_id === message.serverId)
35465
35465
  );
35466
35466
  const queuedNotes = displayedQueuedMessages.filter((message) => message.content);
35467
- const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.AgentBarNotes, { children: [
35467
+ const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.AgentBarNotes, { children: [
35468
35468
  queuedNotes.map((message, index) => /* @__PURE__ */ jsxRuntime.jsx(
35469
- chunkFCOP4ZJD_cjs.AgentBarQueuedNote,
35469
+ chunkR3247EN3_cjs.AgentBarQueuedNote,
35470
35470
  {
35471
35471
  text: message.content ?? "",
35472
35472
  isAcknowledged: message.acknowledged
35473
35473
  },
35474
35474
  index
35475
35475
  )),
35476
- probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35476
+ probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35477
35477
  ] }) : null;
35478
35478
  return /* @__PURE__ */ jsxRuntime.jsx(
35479
35479
  AgentBarShell,
@@ -35530,7 +35530,7 @@ function RunningSubagentsRoster({
35530
35530
  if (leafId) selectThread(leafId);
35531
35531
  };
35532
35532
  return /* @__PURE__ */ jsxRuntime.jsx(
35533
- chunkFCOP4ZJD_cjs.SubagentRoster,
35533
+ chunkR3247EN3_cjs.SubagentRoster,
35534
35534
  {
35535
35535
  lanes: rosterLanes,
35536
35536
  className,
@@ -35654,7 +35654,7 @@ function useOpenChunk() {
35654
35654
  const meta = chunk.metadata;
35655
35655
  if (!meta?.doc_ext_id) return;
35656
35656
  const listed = documents?.find((d) => d.external_id === meta.doc_ext_id);
35657
- openDocument(chunkF72ZD5Q2_cjs.citedVersionRef(meta.doc_ext_id, meta.doc_version, listed?.current_version), {
35657
+ openDocument(chunkYD3RN2FY_cjs.citedVersionRef(meta.doc_ext_id, meta.doc_version, listed?.current_version), {
35658
35658
  page: meta.page_number ?? void 0,
35659
35659
  passageId: meta.chunk_ext_id ?? void 0
35660
35660
  });
@@ -36272,7 +36272,7 @@ function WorkflowStepMessage({
36272
36272
  const { conversations } = react.useConversationItems();
36273
36273
  const activity = react.useConversationActivity(conversationId ?? void 0, { live: true });
36274
36274
  const plan = conversations.find((c) => c.external_id === conversationId)?.plan;
36275
- const steps = chunkFCOP4ZJD_cjs.fromPlanSteps(plan?.steps ?? []);
36275
+ const steps = chunkR3247EN3_cjs.fromPlanSteps(plan?.steps ?? []);
36276
36276
  const found = steps.find((s) => s.id === step);
36277
36277
  const states = chunkSMQIYEOL_cjs.stepStatesFromActivity(activity.data ?? []);
36278
36278
  const { data: documents = [] } = react.useDocuments();
@@ -36444,7 +36444,7 @@ var MessageComponent = ({
36444
36444
  const isQueuedAnswer = !isUser && message.status === "queued" && !isGenerating;
36445
36445
  const isAwaitingAnswer = (isGenerating || isRunningOnServer) && !isStopped && !!message.pendingUserInput;
36446
36446
  const showWorkingIndicator = (isGenerating || isRunningOnServer) && !isQueuedAnswer && !responseContent.trim() && !linkedArtifact && !isAwaitingAnswer;
36447
- const workingStepLabel = showWorkingIndicator ? chunkFCOP4ZJD_cjs.getCurrentAgentStepPresentation(message.agentSteps ?? [])?.description : void 0;
36447
+ const workingStepLabel = showWorkingIndicator ? chunkR3247EN3_cjs.getCurrentAgentStepPresentation(message.agentSteps ?? [])?.description : void 0;
36448
36448
  const workingStepStart = showWorkingIndicator ? browser.getCurrentStep(message.agentSteps ?? [])?.t ?? 0 : 0;
36449
36449
  const showEmptyAnswer = !isUser && !isGenerating && !isRunningOnServer && !isFailed && !isStopped && !responseContent.trim() && !linkedArtifact;
36450
36450
  const isEmptyStopped = isStopped && !responseContent.trim();
@@ -36464,7 +36464,7 @@ var MessageComponent = ({
36464
36464
  else session.setDraft(retry.question.content);
36465
36465
  };
36466
36466
  const factData = React9.useMemo(
36467
- () => chunkF72ZD5Q2_cjs.buildFactCitations(responseContent, activeCitations, citationData),
36467
+ () => chunkYD3RN2FY_cjs.buildFactCitations(responseContent, activeCitations, citationData),
36468
36468
  [responseContent, activeCitations, citationData]
36469
36469
  );
36470
36470
  const factText = factData.text;
@@ -36567,7 +36567,7 @@ var MessageComponent = ({
36567
36567
  notify18("Cannot create fact: no workspace open", "error");
36568
36568
  return;
36569
36569
  }
36570
- const chronology = chunkF72ZD5Q2_cjs.chronologyFactBodies(factText, factData.citations);
36570
+ const chronology = chunkYD3RN2FY_cjs.chronologyFactBodies(factText, factData.citations);
36571
36571
  try {
36572
36572
  if (chronology) {
36573
36573
  await createFacts.mutateAsync({ facts: chronology });
@@ -36748,7 +36748,7 @@ var MessageComponent = ({
36748
36748
  },
36749
36749
  "data-testid": `message-model-${messageId}`,
36750
36750
  children: /* @__PURE__ */ jsxRuntime.jsx(
36751
- chunkFCOP4ZJD_cjs.AssistantEntity,
36751
+ chunkR3247EN3_cjs.AssistantEntity,
36752
36752
  {
36753
36753
  name: modelDisplayName,
36754
36754
  modelName,
@@ -36861,7 +36861,7 @@ var MessageComponent = ({
36861
36861
  // Stays the ARBI identity while streaming: the model name arrives
36862
36862
  // with the first step that reports one and would swap the author
36863
36863
  // mid-answer. The model is shown in the footer once settled.
36864
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.AssistantEntity, { size: 16, pillSize: "sm" })
36864
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.AssistantEntity, { size: 16, pillSize: "sm" })
36865
36865
  ),
36866
36866
  timeLabel,
36867
36867
  isSettled: settledForHeader,
@@ -37326,7 +37326,7 @@ function ConnectedMessageList({ messages }) {
37326
37326
  start: virtualItem.start,
37327
37327
  messageId: entry.id,
37328
37328
  setSize: transcript.length,
37329
- children: entry.item.card ?? /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ThreadActivity, { item: entry.item, children: entry.item.onOpenDocument && /* @__PURE__ */ jsxRuntime.jsx(
37329
+ children: entry.item.card ?? /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ThreadActivity, { item: entry.item, children: entry.item.onOpenDocument && /* @__PURE__ */ jsxRuntime.jsx(
37330
37330
  "button",
37331
37331
  {
37332
37332
  className: "mt-1 hover:underline text-primary",
@@ -37486,8 +37486,8 @@ function ConnectedThreadsPage({
37486
37486
  const tasks = useStableRecencyOrder(listed);
37487
37487
  const updateConversation = react.useUpdateConversation();
37488
37488
  const deleteConversation = react.useDeleteConversation();
37489
- const people = chunkQ5MGOAZW_cjs.useTaskPeople();
37490
- const renderPerson = chunkQ5MGOAZW_cjs.useRenderTaskPerson();
37489
+ const people = chunkPTNV3TT5_cjs.useTaskPeople();
37490
+ const renderPerson = chunkPTNV3TT5_cjs.useRenderTaskPerson();
37491
37491
  const canEditShared = react.useCanEditShared();
37492
37492
  const isWorkspaceOwner = react.useIsWorkspaceOwner();
37493
37493
  const { data: agents = [] } = react.useAgents();
@@ -37725,7 +37725,7 @@ function ConnectedThreadsPage({
37725
37725
  "data-testid": mode === "tasks" ? "tasks-page" : "threads-page",
37726
37726
  children: [
37727
37727
  /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-0 flex-1 flex-col bg-background", children: mode === "threads" ? /* @__PURE__ */ jsxRuntime.jsx(
37728
- chunkFCOP4ZJD_cjs.ConversationListView,
37728
+ chunkR3247EN3_cjs.ConversationListView,
37729
37729
  {
37730
37730
  showHeader,
37731
37731
  conversations: tasks,
@@ -37745,7 +37745,7 @@ function ConnectedThreadsPage({
37745
37745
  renderLabels: threadLabels.renderLabels,
37746
37746
  labelText: threadLabels.labelText,
37747
37747
  renderBy: (row2) => /* @__PURE__ */ jsxRuntime.jsx(
37748
- chunkFCOP4ZJD_cjs.ConversationTurnSpeaker,
37748
+ chunkR3247EN3_cjs.ConversationTurnSpeaker,
37749
37749
  {
37750
37750
  variant: "icon",
37751
37751
  role: row2.last_message_role,
@@ -37767,7 +37767,7 @@ function ConnectedThreadsPage({
37767
37767
  footer: /* @__PURE__ */ jsxRuntime.jsx(ConnectedThreadLauncher, { autoFocus: focusLauncher })
37768
37768
  }
37769
37769
  ) : /* @__PURE__ */ jsxRuntime.jsx(
37770
- chunkFCOP4ZJD_cjs.TaskInbox,
37770
+ chunkR3247EN3_cjs.TaskInbox,
37771
37771
  {
37772
37772
  tasks,
37773
37773
  isLoading,
@@ -37811,7 +37811,7 @@ function ConnectedThreadsPage({
37811
37811
  initialParentId: parentForNew
37812
37812
  }
37813
37813
  ),
37814
- /* @__PURE__ */ jsxRuntime.jsx(chunkQ5MGOAZW_cjs.ConnectedTaskComposer, { open: editorOpen, onOpenChange: setEditorOpen, task: editing }),
37814
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPTNV3TT5_cjs.ConnectedTaskComposer, { open: editorOpen, onOpenChange: setEditorOpen, task: editing }),
37815
37815
  /* @__PURE__ */ jsxRuntime.jsx(
37816
37816
  ConnectedExportDialog,
37817
37817
  {
@@ -38047,7 +38047,7 @@ function ConnectedConversationPage({
38047
38047
  }
38048
38048
  );
38049
38049
  const { data: workspaceTags = [] } = react.useTags();
38050
- const historyCount = chunkFCOP4ZJD_cjs.filterConversationRows(
38050
+ const historyCount = chunkR3247EN3_cjs.filterConversationRows(
38051
38051
  conversations,
38052
38052
  threadFilter,
38053
38053
  (row2) => workspaceTags.filter((tag) => row2.label_ext_ids?.includes(tag.external_id)).map((tag) => tag.name).join(" "),
@@ -38978,7 +38978,7 @@ function ConversationThread({
38978
38978
  }, [isGenerating]);
38979
38979
  const slashWorkflows = useSlashSkillWorkflows({ landing: "current-chat" });
38980
38980
  const composerSkills = React9.useMemo(
38981
- () => ({ builtin: chunkFCOP4ZJD_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
38981
+ () => ({ builtin: chunkR3247EN3_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
38982
38982
  [slashWorkflows.openFor]
38983
38983
  );
38984
38984
  const browseSkills = React9.useMemo(
@@ -39053,7 +39053,7 @@ function ConversationThread({
39053
39053
  /* @__PURE__ */ jsxRuntime.jsx(chunkGUJD7R6U_cjs.CallConversationEmpty, { callExtId: meetingCallExtId }),
39054
39054
  /* @__PURE__ */ jsxRuntime.jsx(chunkGUJD7R6U_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
39055
39055
  ] })
39056
- ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
39056
+ ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
39057
39057
  ConnectedConversationEmpty,
39058
39058
  {
39059
39059
  hasDocuments: allWorkspaceDocuments.length > 0,
@@ -40940,7 +40940,7 @@ function SsoResendVerificationButton({
40940
40940
  onClick: async () => handleResendEmailVerification(),
40941
40941
  disabled: loading || disabled,
40942
40942
  "aria-label": "Resend verification email",
40943
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6ODV5TIC_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
40943
+ children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkVGFU6JFI_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
40944
40944
  "Didn't get a verification email? ",
40945
40945
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold", children: "Resend" })
40946
40946
  ] })
@@ -41834,27 +41834,27 @@ function ConnectedOAuthConsentPage({
41834
41834
  oauthErrorRedirect(params.redirectUri, params.state, "access_denied");
41835
41835
  }
41836
41836
  if (error && !params) {
41837
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
41837
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
41838
41838
  }
41839
41839
  if (!params) {
41840
41840
  return null;
41841
41841
  }
41842
41842
  if (clientInfo?.isLocalAgentFlow) {
41843
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_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." }) });
41843
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_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." }) });
41844
41844
  }
41845
41845
  if (!isAuthenticated2) {
41846
41846
  return null;
41847
41847
  }
41848
41848
  if (callbackUrl) {
41849
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentCard, { size: "md", children: [
41850
- /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
41849
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentCard, { size: "md", children: [
41850
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
41851
41851
  "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",
41852
41852
  " ",
41853
41853
  copied ? "it's already copied to your clipboard." : "copy it first."
41854
41854
  ] }),
41855
- /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentSection, { title: "Callback URL", children: [
41856
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
41857
- /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentText, { variant: "hint", children: [
41855
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentSection, { title: "Callback URL", children: [
41856
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
41857
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentText, { variant: "hint", children: [
41858
41858
  "In Claude Code, paste the URL at the prompt that says",
41859
41859
  " ",
41860
41860
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-foreground", children: '"paste the full redirect URL here"' }),
@@ -41863,17 +41863,17 @@ function ConnectedOAuthConsentPage({
41863
41863
  ] })
41864
41864
  ] }) });
41865
41865
  }
41866
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentCard, { children: [
41867
- /* @__PURE__ */ jsxRuntime.jsxs(chunkFCOP4ZJD_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
41868
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
41866
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentCard, { children: [
41867
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR3247EN3_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
41868
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
41869
41869
  " is requesting access to your ",
41870
41870
  appName,
41871
41871
  " workspace."
41872
41872
  ] }),
41873
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentPermissionList, { items: permissions }) }),
41874
- error && /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentNotice, { tone: "error", children: error }),
41875
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
41876
- /* @__PURE__ */ jsxRuntime.jsx(chunkFCOP4ZJD_cjs.ConsentFootnote, { children: footnote })
41873
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentPermissionList, { items: permissions }) }),
41874
+ error && /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentNotice, { tone: "error", children: error }),
41875
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
41876
+ /* @__PURE__ */ jsxRuntime.jsx(chunkR3247EN3_cjs.ConsentFootnote, { children: footnote })
41877
41877
  ] }) });
41878
41878
  }
41879
41879
  function ConnectedSharedFilesPage({
@@ -42169,10 +42169,10 @@ function useContextualHints() {
42169
42169
  const session = react.useArbiSessionStore();
42170
42170
  const { data: userSettings } = react.useUserSettings();
42171
42171
  const updateUserSettings = react.useUpdateUserSettings();
42172
- const [sessionOverride] = react.useTransientView(chunk6ODV5TIC_cjs.TIPS_VISIBILITY_OVERRIDE, null);
42173
- const setShowHints = (value) => chunk6ODV5TIC_cjs.setHintsSessionOverride(session, value);
42172
+ const [sessionOverride] = react.useTransientView(chunkVGFU6JFI_cjs.TIPS_VISIBILITY_OVERRIDE, null);
42173
+ const setShowHints = (value) => chunkVGFU6JFI_cjs.setHintsSessionOverride(session, value);
42174
42174
  const setShowHintsPersisted = (value) => {
42175
- chunk6ODV5TIC_cjs.setHintsSessionOverride(session, null);
42175
+ chunkVGFU6JFI_cjs.setHintsSessionOverride(session, null);
42176
42176
  updateUserSettings.mutate({ show_hints: value });
42177
42177
  };
42178
42178
  return {
@@ -42251,43 +42251,43 @@ Object.defineProperty(exports, "useMemberLookup", {
42251
42251
  });
42252
42252
  Object.defineProperty(exports, "ConnectedTaskActivityDialog", {
42253
42253
  enumerable: true,
42254
- get: function () { return chunkQ5MGOAZW_cjs.ConnectedTaskActivityDialog; }
42254
+ get: function () { return chunkPTNV3TT5_cjs.ConnectedTaskActivityDialog; }
42255
42255
  });
42256
42256
  Object.defineProperty(exports, "ConnectedTaskComposer", {
42257
42257
  enumerable: true,
42258
- get: function () { return chunkQ5MGOAZW_cjs.ConnectedTaskComposer; }
42258
+ get: function () { return chunkPTNV3TT5_cjs.ConnectedTaskComposer; }
42259
42259
  });
42260
42260
  Object.defineProperty(exports, "ConnectedWorkflowHistory", {
42261
42261
  enumerable: true,
42262
- get: function () { return chunkQ5MGOAZW_cjs.ConnectedWorkflowHistory; }
42262
+ get: function () { return chunkPTNV3TT5_cjs.ConnectedWorkflowHistory; }
42263
42263
  });
42264
42264
  Object.defineProperty(exports, "useRenderTaskPerson", {
42265
42265
  enumerable: true,
42266
- get: function () { return chunkQ5MGOAZW_cjs.useRenderTaskPerson; }
42266
+ get: function () { return chunkPTNV3TT5_cjs.useRenderTaskPerson; }
42267
42267
  });
42268
42268
  Object.defineProperty(exports, "useSkillsEnabled", {
42269
42269
  enumerable: true,
42270
- get: function () { return chunkQ5MGOAZW_cjs.useSkillsEnabled; }
42270
+ get: function () { return chunkPTNV3TT5_cjs.useSkillsEnabled; }
42271
42271
  });
42272
42272
  Object.defineProperty(exports, "useTaskPeople", {
42273
42273
  enumerable: true,
42274
- get: function () { return chunkQ5MGOAZW_cjs.useTaskPeople; }
42274
+ get: function () { return chunkPTNV3TT5_cjs.useTaskPeople; }
42275
42275
  });
42276
42276
  Object.defineProperty(exports, "useWorkflowDefinitions", {
42277
42277
  enumerable: true,
42278
- get: function () { return chunkQ5MGOAZW_cjs.useWorkflowDefinitions; }
42278
+ get: function () { return chunkPTNV3TT5_cjs.useWorkflowDefinitions; }
42279
42279
  });
42280
42280
  Object.defineProperty(exports, "useWorkflowTasks", {
42281
42281
  enumerable: true,
42282
- get: function () { return chunkQ5MGOAZW_cjs.useWorkflowTasks; }
42282
+ get: function () { return chunkPTNV3TT5_cjs.useWorkflowTasks; }
42283
42283
  });
42284
42284
  Object.defineProperty(exports, "useWorkflowsPageState", {
42285
42285
  enumerable: true,
42286
- get: function () { return chunkQ5MGOAZW_cjs.useWorkflowsPageState; }
42286
+ get: function () { return chunkPTNV3TT5_cjs.useWorkflowsPageState; }
42287
42287
  });
42288
42288
  Object.defineProperty(exports, "workflowRunView", {
42289
42289
  enumerable: true,
42290
- get: function () { return chunkQ5MGOAZW_cjs.workflowRunView; }
42290
+ get: function () { return chunkPTNV3TT5_cjs.workflowRunView; }
42291
42291
  });
42292
42292
  Object.defineProperty(exports, "ConnectedPendingSyncDialog", {
42293
42293
  enumerable: true,
@@ -42427,43 +42427,43 @@ Object.defineProperty(exports, "useWorkspaceDocs", {
42427
42427
  });
42428
42428
  Object.defineProperty(exports, "useDocxCommentTarget", {
42429
42429
  enumerable: true,
42430
- get: function () { return chunkED4TE7XG_cjs.useDocxCommentTarget; }
42430
+ get: function () { return chunk2DRTKD2W_cjs.useDocxCommentTarget; }
42431
42431
  });
42432
42432
  Object.defineProperty(exports, "useNativeDocxSupport", {
42433
42433
  enumerable: true,
42434
- get: function () { return chunkED4TE7XG_cjs.useNativeDocxSupport; }
42434
+ get: function () { return chunk2DRTKD2W_cjs.useNativeDocxSupport; }
42435
42435
  });
42436
42436
  Object.defineProperty(exports, "ConnectedWorkflowDocumentsField", {
42437
42437
  enumerable: true,
42438
- get: function () { return chunkN5CKIKQB_cjs.ConnectedWorkflowDocumentsField; }
42438
+ get: function () { return chunkWHJMV6TX_cjs.ConnectedWorkflowDocumentsField; }
42439
42439
  });
42440
42440
  Object.defineProperty(exports, "ConnectedWorkflowLauncher", {
42441
42441
  enumerable: true,
42442
- get: function () { return chunkN5CKIKQB_cjs.ConnectedWorkflowLauncher; }
42442
+ get: function () { return chunkWHJMV6TX_cjs.ConnectedWorkflowLauncher; }
42443
42443
  });
42444
42444
  Object.defineProperty(exports, "ConnectedWorkflowsTable", {
42445
42445
  enumerable: true,
42446
- get: function () { return chunkN5CKIKQB_cjs.ConnectedWorkflowsTable; }
42446
+ get: function () { return chunkWHJMV6TX_cjs.ConnectedWorkflowsTable; }
42447
42447
  });
42448
42448
  Object.defineProperty(exports, "DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS", {
42449
42449
  enumerable: true,
42450
- get: function () { return chunkN5CKIKQB_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
42450
+ get: function () { return chunkWHJMV6TX_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
42451
42451
  });
42452
42452
  Object.defineProperty(exports, "toWorkflowFieldDocument", {
42453
42453
  enumerable: true,
42454
- get: function () { return chunkN5CKIKQB_cjs.toWorkflowFieldDocument; }
42454
+ get: function () { return chunkWHJMV6TX_cjs.toWorkflowFieldDocument; }
42455
42455
  });
42456
42456
  Object.defineProperty(exports, "useConnectedAgentOptions", {
42457
42457
  enumerable: true,
42458
- get: function () { return chunkN5CKIKQB_cjs.useConnectedAgentOptions; }
42458
+ get: function () { return chunkWHJMV6TX_cjs.useConnectedAgentOptions; }
42459
42459
  });
42460
42460
  Object.defineProperty(exports, "useConnectedWorkflowScopeSource", {
42461
42461
  enumerable: true,
42462
- get: function () { return chunkN5CKIKQB_cjs.useConnectedWorkflowScopeSource; }
42462
+ get: function () { return chunkWHJMV6TX_cjs.useConnectedWorkflowScopeSource; }
42463
42463
  });
42464
42464
  Object.defineProperty(exports, "useConnectedWorkspaceRole", {
42465
42465
  enumerable: true,
42466
- get: function () { return chunkN5CKIKQB_cjs.useConnectedWorkspaceRole; }
42466
+ get: function () { return chunkWHJMV6TX_cjs.useConnectedWorkspaceRole; }
42467
42467
  });
42468
42468
  Object.defineProperty(exports, "ConnectedDocumentToolsProvider", {
42469
42469
  enumerable: true,