@arbidocs/blocks 0.5.116 → 0.5.118

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 (71) hide show
  1. package/dist/{ConnectedCallDock-WER7R222.cjs → ConnectedCallDock-E7RMQMMT.cjs} +12 -12
  2. package/dist/{ConnectedCallDock-WER7R222.cjs.map → ConnectedCallDock-E7RMQMMT.cjs.map} +1 -1
  3. package/dist/{ConnectedCallRoom-T7OBQTYP.cjs → ConnectedCallRoom-FF7X6LQ2.cjs} +12 -12
  4. package/dist/{ConnectedCallRoom-T7OBQTYP.cjs.map → ConnectedCallRoom-FF7X6LQ2.cjs.map} +1 -1
  5. package/dist/{ConnectedNativeDocxComparison-546ILGLW.cjs → ConnectedNativeDocxComparison-PB2LXT5U.cjs} +11 -11
  6. package/dist/{ConnectedNativeDocxComparison-546ILGLW.cjs.map → ConnectedNativeDocxComparison-PB2LXT5U.cjs.map} +1 -1
  7. package/dist/{ConnectedStreamedWordArtifact-S2ZFZLZQ.cjs → ConnectedStreamedWordArtifact-S7ICDK5T.cjs} +11 -11
  8. package/dist/{ConnectedStreamedWordArtifact-S2ZFZLZQ.cjs.map → ConnectedStreamedWordArtifact-S7ICDK5T.cjs.map} +1 -1
  9. package/dist/{DocumentReviewCard-ZSBZBGFK.cjs → DocumentReviewCard-L472OMQS.cjs} +5 -5
  10. package/dist/{DocumentReviewCard-ZSBZBGFK.cjs.map → DocumentReviewCard-L472OMQS.cjs.map} +1 -1
  11. package/dist/{FilesViewerDialog-6UKR5WEF.cjs → FilesViewerDialog-JK25HKKF.cjs} +21 -21
  12. package/dist/{FilesViewerDialog-6UKR5WEF.cjs.map → FilesViewerDialog-JK25HKKF.cjs.map} +1 -1
  13. package/dist/{WorkspaceTableView-J3C6VH4T.cjs → WorkspaceTableView-JCTDEMIL.cjs} +8 -8
  14. package/dist/{WorkspaceTableView-J3C6VH4T.cjs.map → WorkspaceTableView-JCTDEMIL.cjs.map} +1 -1
  15. package/dist/agents/index.cjs +187 -187
  16. package/dist/{ai-IM4A23YT.cjs → ai-OBS67QV4.cjs} +16 -16
  17. package/dist/ai-OBS67QV4.cjs.map +1 -0
  18. package/dist/calls/index.cjs +2 -2
  19. package/dist/{chunk-B3LZITVF.cjs → chunk-3LNUQYAF.cjs} +3 -3
  20. package/dist/{chunk-B3LZITVF.cjs.map → chunk-3LNUQYAF.cjs.map} +1 -1
  21. package/dist/{chunk-QHOHDNBU.cjs → chunk-5XAJ4N2S.cjs} +4 -4
  22. package/dist/{chunk-QHOHDNBU.cjs.map → chunk-5XAJ4N2S.cjs.map} +1 -1
  23. package/dist/{chunk-XKVPSOKP.cjs → chunk-6ULADDBW.cjs} +4 -4
  24. package/dist/{chunk-XKVPSOKP.cjs.map → chunk-6ULADDBW.cjs.map} +1 -1
  25. package/dist/{chunk-CPR6EHG7.cjs → chunk-7IPIKMCY.cjs} +3 -3
  26. package/dist/{chunk-CPR6EHG7.cjs.map → chunk-7IPIKMCY.cjs.map} +1 -1
  27. package/dist/{chunk-SB4M3ITT.cjs → chunk-CB3YYZAU.cjs} +9 -9
  28. package/dist/{chunk-SB4M3ITT.cjs.map → chunk-CB3YYZAU.cjs.map} +1 -1
  29. package/dist/{chunk-6UTKM5AB.cjs → chunk-JSQQV23D.cjs} +3 -3
  30. package/dist/{chunk-6UTKM5AB.cjs.map → chunk-JSQQV23D.cjs.map} +1 -1
  31. package/dist/{chunk-VGCTYTEW.cjs → chunk-K6AUKKUN.cjs} +6 -6
  32. package/dist/{chunk-VGCTYTEW.cjs.map → chunk-K6AUKKUN.cjs.map} +1 -1
  33. package/dist/{chunk-T23UTIRI.cjs → chunk-KHAO7ZTO.cjs} +5 -5
  34. package/dist/{chunk-T23UTIRI.cjs.map → chunk-KHAO7ZTO.cjs.map} +1 -1
  35. package/dist/{chunk-NJCK6V6U.cjs → chunk-L6APDO3Y.cjs} +3 -3
  36. package/dist/{chunk-NJCK6V6U.cjs.map → chunk-L6APDO3Y.cjs.map} +1 -1
  37. package/dist/{chunk-NIE3N6OM.cjs → chunk-MMVDVHKE.cjs} +5 -5
  38. package/dist/{chunk-NIE3N6OM.cjs.map → chunk-MMVDVHKE.cjs.map} +1 -1
  39. package/dist/{chunk-TDO5UWXF.cjs → chunk-O4F77VSO.cjs} +5 -5
  40. package/dist/{chunk-TDO5UWXF.cjs.map → chunk-O4F77VSO.cjs.map} +1 -1
  41. package/dist/{chunk-OEREKAAP.cjs → chunk-OPH4UZQN.cjs} +30 -30
  42. package/dist/{chunk-OEREKAAP.cjs.map → chunk-OPH4UZQN.cjs.map} +1 -1
  43. package/dist/{chunk-KTQOGT2L.cjs → chunk-P2MOLUFO.cjs} +6 -6
  44. package/dist/{chunk-KTQOGT2L.cjs.map → chunk-P2MOLUFO.cjs.map} +1 -1
  45. package/dist/{chunk-DDIW4HLU.cjs → chunk-PVPRVI54.cjs} +6 -6
  46. package/dist/{chunk-DDIW4HLU.cjs.map → chunk-PVPRVI54.cjs.map} +1 -1
  47. package/dist/{chunk-557MJ4IH.cjs → chunk-QOXK5O6M.cjs} +12 -12
  48. package/dist/{chunk-557MJ4IH.cjs.map → chunk-QOXK5O6M.cjs.map} +1 -1
  49. package/dist/{chunk-Y24V6HPR.cjs → chunk-SUYPXUE6.cjs} +4 -4
  50. package/dist/{chunk-Y24V6HPR.cjs.map → chunk-SUYPXUE6.cjs.map} +1 -1
  51. package/dist/{chunk-R7CJEIA5.cjs → chunk-XZYIS2JZ.cjs} +3 -3
  52. package/dist/{chunk-R7CJEIA5.cjs.map → chunk-XZYIS2JZ.cjs.map} +1 -1
  53. package/dist/{chunk-HB2O4THB.cjs → chunk-YDPLSXHB.cjs} +4 -4
  54. package/dist/{chunk-HB2O4THB.cjs.map → chunk-YDPLSXHB.cjs.map} +1 -1
  55. package/dist/{chunk-B2HNNG25.cjs → chunk-ZCIQBHH5.cjs} +35 -35
  56. package/dist/{chunk-B2HNNG25.cjs.map → chunk-ZCIQBHH5.cjs.map} +1 -1
  57. package/dist/connect/docx.cjs +14 -14
  58. package/dist/connect/index.cjs +625 -625
  59. package/dist/connect/viewer.cjs +11 -11
  60. package/dist/dashboards/index.cjs +1 -1
  61. package/dist/embed/index.cjs +21 -21
  62. package/dist/index.cjs +316 -316
  63. package/dist/settings/index.cjs +147 -147
  64. package/dist/shell/index.cjs +35 -35
  65. package/dist/studio/index.cjs +8 -8
  66. package/dist/workflow-canvas/index.cjs +27 -27
  67. package/node_modules/@arbidocs/coedit/package.json +1 -1
  68. package/node_modules/@docx-editor.dev/core/dist/chunk-T6K2QYNZ.cjs +1 -1
  69. package/node_modules/@docx-editor.dev/core/dist/chunk-U4JZVSOE.js +1 -1
  70. package/package.json +5 -5
  71. package/dist/ai-IM4A23YT.cjs.map +0 -1
@@ -1,21 +1,21 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkTDO5UWXF_cjs = require('../chunk-TDO5UWXF.cjs');
4
+ var chunkO4F77VSO_cjs = require('../chunk-O4F77VSO.cjs');
5
5
  var chunkVWTOIGX4_cjs = require('../chunk-VWTOIGX4.cjs');
6
6
  var chunkCPG7II4E_cjs = require('../chunk-CPG7II4E.cjs');
7
- var chunkT23UTIRI_cjs = require('../chunk-T23UTIRI.cjs');
7
+ var chunkKHAO7ZTO_cjs = require('../chunk-KHAO7ZTO.cjs');
8
8
  var chunkPSIKUQYM_cjs = require('../chunk-PSIKUQYM.cjs');
9
- var chunkKTQOGT2L_cjs = require('../chunk-KTQOGT2L.cjs');
10
- var chunkB2HNNG25_cjs = require('../chunk-B2HNNG25.cjs');
9
+ var chunkP2MOLUFO_cjs = require('../chunk-P2MOLUFO.cjs');
10
+ var chunkZCIQBHH5_cjs = require('../chunk-ZCIQBHH5.cjs');
11
11
  var chunkCMGNRMPA_cjs = require('../chunk-CMGNRMPA.cjs');
12
12
  var chunkYZ6YOOTF_cjs = require('../chunk-YZ6YOOTF.cjs');
13
13
  var chunkKWJW5TMH_cjs = require('../chunk-KWJW5TMH.cjs');
14
- var chunkOEREKAAP_cjs = require('../chunk-OEREKAAP.cjs');
15
- var chunk557MJ4IH_cjs = require('../chunk-557MJ4IH.cjs');
16
- var chunkY24V6HPR_cjs = require('../chunk-Y24V6HPR.cjs');
14
+ var chunkOPH4UZQN_cjs = require('../chunk-OPH4UZQN.cjs');
15
+ var chunkQOXK5O6M_cjs = require('../chunk-QOXK5O6M.cjs');
16
+ var chunkSUYPXUE6_cjs = require('../chunk-SUYPXUE6.cjs');
17
17
  var chunkP77YTTJ3_cjs = require('../chunk-P77YTTJ3.cjs');
18
- var chunk6UTKM5AB_cjs = require('../chunk-6UTKM5AB.cjs');
18
+ var chunkJSQQV23D_cjs = require('../chunk-JSQQV23D.cjs');
19
19
  var chunk57NHXEU2_cjs = require('../chunk-57NHXEU2.cjs');
20
20
  var chunkTJY7XPDE_cjs = require('../chunk-TJY7XPDE.cjs');
21
21
  var chunkH7PHOTX2_cjs = require('../chunk-H7PHOTX2.cjs');
@@ -31,11 +31,11 @@ var chunkPL7HUTM3_cjs = require('../chunk-PL7HUTM3.cjs');
31
31
  var chunkYGXOKB5Z_cjs = require('../chunk-YGXOKB5Z.cjs');
32
32
  var chunkKXIRVKCJ_cjs = require('../chunk-KXIRVKCJ.cjs');
33
33
  var chunkTT4IF52H_cjs = require('../chunk-TT4IF52H.cjs');
34
- var chunkNJCK6V6U_cjs = require('../chunk-NJCK6V6U.cjs');
34
+ var chunkL6APDO3Y_cjs = require('../chunk-L6APDO3Y.cjs');
35
35
  var chunkNNUK5ZM7_cjs = require('../chunk-NNUK5ZM7.cjs');
36
36
  var chunk223D4727_cjs = require('../chunk-223D4727.cjs');
37
37
  var chunkSNUBQMIS_cjs = require('../chunk-SNUBQMIS.cjs');
38
- var chunkVGCTYTEW_cjs = require('../chunk-VGCTYTEW.cjs');
38
+ var chunkK6AUKKUN_cjs = require('../chunk-K6AUKKUN.cjs');
39
39
  var chunk4ONPEVTP_cjs = require('../chunk-4ONPEVTP.cjs');
40
40
  require('../chunk-V3KLUWQQ.cjs');
41
41
  var chunkP5AQYC4D_cjs = require('../chunk-P5AQYC4D.cjs');
@@ -49,7 +49,7 @@ require('../chunk-JH6JTI76.cjs');
49
49
  var chunkQQMMCXBP_cjs = require('../chunk-QQMMCXBP.cjs');
50
50
  require('../chunk-DTMBAFIL.cjs');
51
51
  require('../chunk-ZESMRGDV.cjs');
52
- var chunkNIE3N6OM_cjs = require('../chunk-NIE3N6OM.cjs');
52
+ var chunkMMVDVHKE_cjs = require('../chunk-MMVDVHKE.cjs');
53
53
  var chunkSGYSDABK_cjs = require('../chunk-SGYSDABK.cjs');
54
54
  require('../chunk-NEGFHF3V.cjs');
55
55
  var chunkZ3LFF3YT_cjs = require('../chunk-Z3LFF3YT.cjs');
@@ -63,7 +63,7 @@ var chunkEOG6OT5I_cjs = require('../chunk-EOG6OT5I.cjs');
63
63
  require('../chunk-7G2LJMUG.cjs');
64
64
  var chunkUKOYN2WD_cjs = require('../chunk-UKOYN2WD.cjs');
65
65
  var chunkRC25WMVB_cjs = require('../chunk-RC25WMVB.cjs');
66
- var chunkB3LZITVF_cjs = require('../chunk-B3LZITVF.cjs');
66
+ var chunk3LNUQYAF_cjs = require('../chunk-3LNUQYAF.cjs');
67
67
  var chunkMZZ3SBQL_cjs = require('../chunk-MZZ3SBQL.cjs');
68
68
  var chunkNY3YUCOW_cjs = require('../chunk-NY3YUCOW.cjs');
69
69
  var chunk325GVZE6_cjs = require('../chunk-325GVZE6.cjs');
@@ -80,7 +80,7 @@ var chunkZU2B2RZK_cjs = require('../chunk-ZU2B2RZK.cjs');
80
80
  var chunkNSD37OF5_cjs = require('../chunk-NSD37OF5.cjs');
81
81
  require('../chunk-OEJQFPWO.cjs');
82
82
  require('../chunk-BQOL4XNZ.cjs');
83
- var chunkDDIW4HLU_cjs = require('../chunk-DDIW4HLU.cjs');
83
+ var chunkPVPRVI54_cjs = require('../chunk-PVPRVI54.cjs');
84
84
  var chunkQECKDZ47_cjs = require('../chunk-QECKDZ47.cjs');
85
85
  var chunkTP5PGWIO_cjs = require('../chunk-TP5PGWIO.cjs');
86
86
  require('../chunk-I4IS6ST6.cjs');
@@ -89,7 +89,7 @@ require('../chunk-EVZH6Z5O.cjs');
89
89
  var chunkOYXWQTHF_cjs = require('../chunk-OYXWQTHF.cjs');
90
90
  require('../chunk-S237ORM3.cjs');
91
91
  require('../chunk-II2OEXHW.cjs');
92
- require('../chunk-R7CJEIA5.cjs');
92
+ require('../chunk-XZYIS2JZ.cjs');
93
93
  require('../chunk-3YEXZX4H.cjs');
94
94
  var chunk4PA6VCCR_cjs = require('../chunk-4PA6VCCR.cjs');
95
95
  require('../chunk-WXUU3COI.cjs');
@@ -108,19 +108,6 @@ var chunk6U3CYVZC_cjs = require('../chunk-6U3CYVZC.cjs');
108
108
  var chunkQUMUAJ2P_cjs = require('../chunk-QUMUAJ2P.cjs');
109
109
  var chunkZKKSTMMI_cjs = require('../chunk-ZKKSTMMI.cjs');
110
110
  var chunkVZOOGA47_cjs = require('../chunk-VZOOGA47.cjs');
111
- var chunkBQ5RIWWT_cjs = require('../chunk-BQ5RIWWT.cjs');
112
- require('../chunk-OAIOOVFN.cjs');
113
- var chunkVJCSEMXT_cjs = require('../chunk-VJCSEMXT.cjs');
114
- require('../chunk-SBWIA4PL.cjs');
115
- var chunkQMIHLJMH_cjs = require('../chunk-QMIHLJMH.cjs');
116
- var chunkHQDR43JC_cjs = require('../chunk-HQDR43JC.cjs');
117
- var chunkJR2YSBD5_cjs = require('../chunk-JR2YSBD5.cjs');
118
- var chunkTMX7YFVM_cjs = require('../chunk-TMX7YFVM.cjs');
119
- var chunkMOIZ2R5X_cjs = require('../chunk-MOIZ2R5X.cjs');
120
- var chunk3YZKDCWY_cjs = require('../chunk-3YZKDCWY.cjs');
121
- var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
122
- var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
123
- require('../chunk-ZT5MIFLC.cjs');
124
111
  var chunkKLMNCBLY_cjs = require('../chunk-KLMNCBLY.cjs');
125
112
  var chunkPGJYD67F_cjs = require('../chunk-PGJYD67F.cjs');
126
113
  require('../chunk-5SKHK3BG.cjs');
@@ -142,6 +129,19 @@ var chunkQGVOT7E4_cjs = require('../chunk-QGVOT7E4.cjs');
142
129
  var chunkQRAQZTJE_cjs = require('../chunk-QRAQZTJE.cjs');
143
130
  require('../chunk-UDSHVNU3.cjs');
144
131
  var chunkIPSHAMO2_cjs = require('../chunk-IPSHAMO2.cjs');
132
+ var chunkBQ5RIWWT_cjs = require('../chunk-BQ5RIWWT.cjs');
133
+ require('../chunk-OAIOOVFN.cjs');
134
+ var chunkVJCSEMXT_cjs = require('../chunk-VJCSEMXT.cjs');
135
+ require('../chunk-SBWIA4PL.cjs');
136
+ var chunkQMIHLJMH_cjs = require('../chunk-QMIHLJMH.cjs');
137
+ var chunkHQDR43JC_cjs = require('../chunk-HQDR43JC.cjs');
138
+ var chunkJR2YSBD5_cjs = require('../chunk-JR2YSBD5.cjs');
139
+ var chunkTMX7YFVM_cjs = require('../chunk-TMX7YFVM.cjs');
140
+ var chunkMOIZ2R5X_cjs = require('../chunk-MOIZ2R5X.cjs');
141
+ var chunk3YZKDCWY_cjs = require('../chunk-3YZKDCWY.cjs');
142
+ var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
143
+ var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
144
+ require('../chunk-ZT5MIFLC.cjs');
145
145
  var chunkZBP4ZSAJ_cjs = require('../chunk-ZBP4ZSAJ.cjs');
146
146
  require('../chunk-PPCATBOY.cjs');
147
147
  var chunkTKHCIHE2_cjs = require('../chunk-TKHCIHE2.cjs');
@@ -256,7 +256,7 @@ function ConnectedWorkspaceActivity({
256
256
  [feed.data]
257
257
  );
258
258
  return /* @__PURE__ */ jsxRuntime.jsx(
259
- chunkNIE3N6OM_cjs.WorkspaceActivityList,
259
+ chunkMMVDVHKE_cjs.WorkspaceActivityList,
260
260
  {
261
261
  ...listProps,
262
262
  items,
@@ -1136,7 +1136,7 @@ function NotificationCenter({
1136
1136
  }
1137
1137
  ];
1138
1138
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col h-full bg-background", "data-testid": "notifications-page", children: [
1139
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
1139
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
1140
1140
  chunkSJSGSHIT_cjs.TabHeader,
1141
1141
  {
1142
1142
  tabs,
@@ -1460,7 +1460,7 @@ function ConnectedOfflineStatus({ compact = false }) {
1460
1460
  notify19("Still offline \u2014 check your connection and try again.", "warning");
1461
1461
  };
1462
1462
  return /* @__PURE__ */ jsxRuntime.jsx(
1463
- chunkB3LZITVF_cjs.OfflinePill,
1463
+ chunk3LNUQYAF_cjs.OfflinePill,
1464
1464
  {
1465
1465
  tone,
1466
1466
  label,
@@ -1578,7 +1578,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1578
1578
  onChange: (e) => {
1579
1579
  const file = e.target.files?.[0];
1580
1580
  e.target.value = "";
1581
- if (file) void add(() => chunkDDIW4HLU_cjs.importSkillFile(file));
1581
+ if (file) void add(() => chunkPVPRVI54_cjs.importSkillFile(file));
1582
1582
  }
1583
1583
  }
1584
1584
  ),
@@ -1603,7 +1603,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1603
1603
  className: "space-y-2",
1604
1604
  onSubmit: (e) => {
1605
1605
  e.preventDefault();
1606
- if (url.trim()) void add(() => chunkDDIW4HLU_cjs.importSkillFromUrl(url));
1606
+ if (url.trim()) void add(() => chunkPVPRVI54_cjs.importSkillFromUrl(url));
1607
1607
  },
1608
1608
  children: [
1609
1609
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "skills-add-url", children: l.fromLink }),
@@ -1656,9 +1656,9 @@ function ConnectedSkillsLibrary({
1656
1656
  const arbi = react.useArbi();
1657
1657
  const { confirm, notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
1658
1658
  const { data: allListings } = react.useSkills();
1659
- const isExternal2 = chunk6UTKM5AB_cjs.useIsExternalAccount();
1659
+ const isExternal2 = chunkJSQQV23D_cjs.useIsExternalAccount();
1660
1660
  const listings = react$1.useMemo(
1661
- () => isExternal2 && allListings ? chunk6UTKM5AB_cjs.withoutMarketplace(allListings) : allListings,
1661
+ () => isExternal2 && allListings ? chunkJSQQV23D_cjs.withoutMarketplace(allListings) : allListings,
1662
1662
  [allListings, isExternal2]
1663
1663
  );
1664
1664
  const save = react.useSaveSkill();
@@ -1671,9 +1671,9 @@ function ConnectedSkillsLibrary({
1671
1671
  const [type, setType] = react$1.useState("all");
1672
1672
  const [view, setView] = react$1.useState("gallery");
1673
1673
  const [isBusy, setIsBusy] = react$1.useState(false);
1674
- const all = react$1.useMemo(() => chunkDDIW4HLU_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1674
+ const all = react$1.useMemo(() => chunkPVPRVI54_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1675
1675
  const shown = react$1.useMemo(
1676
- () => chunkDDIW4HLU_cjs.filterLibrarySkills(all, { query, source, type }),
1676
+ () => chunkPVPRVI54_cjs.filterLibrarySkills(all, { query, source, type }),
1677
1677
  [all, query, source, type]
1678
1678
  );
1679
1679
  const current = all.find((s) => s.slug === selected) ?? null;
@@ -1684,21 +1684,21 @@ function ConnectedSkillsLibrary({
1684
1684
  const count2 = (s) => all.filter((x) => x.source === s).length;
1685
1685
  const sourceOptions = [
1686
1686
  { id: "all", label: "All", count: all.length },
1687
- { id: "builtin", label: chunkDDIW4HLU_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1688
- { id: "mine", label: chunkDDIW4HLU_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1689
- { id: "shared", label: chunkDDIW4HLU_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1687
+ { id: "builtin", label: chunkPVPRVI54_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1688
+ { id: "mine", label: chunkPVPRVI54_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1689
+ { id: "shared", label: chunkPVPRVI54_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1690
1690
  ];
1691
1691
  const types = [...new Set(all.map((s) => s.type))];
1692
1692
  const typeOptions = [
1693
1693
  { id: "all", label: "Any kind" },
1694
- ...types.map((t) => ({ id: t, label: chunkDDIW4HLU_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1694
+ ...types.map((t) => ({ id: t, label: chunkPVPRVI54_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1695
1695
  ];
1696
1696
  const pick = (slug) => {
1697
1697
  setSelected(slug);
1698
1698
  setMode("detail");
1699
1699
  };
1700
1700
  const markdownOf = async (skill) => {
1701
- if (!skill.docExtId) return chunkDDIW4HLU_cjs.workflowToSkillMarkdown(skill.workflow);
1701
+ if (!skill.docExtId) return chunkPVPRVI54_cjs.workflowToSkillMarkdown(skill.workflow);
1702
1702
  const response = await arbi.documents.download(skill.docExtId);
1703
1703
  if (!response.ok) throw new Error(`Could not read the skill (${response.status})`);
1704
1704
  return response.text();
@@ -1762,7 +1762,7 @@ function ConnectedSkillsLibrary({
1762
1762
  try {
1763
1763
  documentTools.downloadBlob(
1764
1764
  new Blob([await markdownOf(skill)], { type: "text/markdown" }),
1765
- chunkDDIW4HLU_cjs.SKILL_MAIN_FILENAME
1765
+ chunkPVPRVI54_cjs.SKILL_MAIN_FILENAME
1766
1766
  );
1767
1767
  } catch (error) {
1768
1768
  notify19(errorText(error, "Could not export the skill"), "error");
@@ -1803,10 +1803,10 @@ function ConnectedSkillsLibrary({
1803
1803
  }
1804
1804
  )
1805
1805
  ] }),
1806
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.SkillViewToggle, { value: view, onChange: setView })
1806
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.SkillViewToggle, { value: view, onChange: setView })
1807
1807
  ] }),
1808
1808
  /* @__PURE__ */ jsxRuntime.jsx(
1809
- chunkDDIW4HLU_cjs.SkillFilterChips,
1809
+ chunkPVPRVI54_cjs.SkillFilterChips,
1810
1810
  {
1811
1811
  label: "Show",
1812
1812
  value: source,
@@ -1815,7 +1815,7 @@ function ConnectedSkillsLibrary({
1815
1815
  }
1816
1816
  ),
1817
1817
  types.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
1818
- chunkDDIW4HLU_cjs.SkillFilterChips,
1818
+ chunkPVPRVI54_cjs.SkillFilterChips,
1819
1819
  {
1820
1820
  label: "Kind",
1821
1821
  value: type,
@@ -1862,12 +1862,12 @@ function ConnectedSkillsLibrary({
1862
1862
  view === "gallery" ? "grid grid-cols-[repeat(auto-fill,minmax(9.5rem,1fr))]" : "flex flex-col"
1863
1863
  ),
1864
1864
  children: shown.map((skill) => /* @__PURE__ */ jsxRuntime.jsx(
1865
- chunkDDIW4HLU_cjs.SkillTile,
1865
+ chunkPVPRVI54_cjs.SkillTile,
1866
1866
  {
1867
1867
  name: skill.title,
1868
1868
  testId: `skill-tile-${skill.slug}`,
1869
1869
  description: skill.description,
1870
- sourceLabel: skill.isShared ? `${chunkDDIW4HLU_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkDDIW4HLU_cjs.SKILL_SOURCE_LABELS[skill.source],
1870
+ sourceLabel: skill.isShared ? `${chunkPVPRVI54_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkPVPRVI54_cjs.SKILL_SOURCE_LABELS[skill.source],
1871
1871
  type: skill.type,
1872
1872
  icon,
1873
1873
  layout: view,
@@ -1902,7 +1902,7 @@ function ConnectedSkillsLibrary({
1902
1902
  }
1903
1903
  ),
1904
1904
  mode === "new" && /* @__PURE__ */ jsxRuntime.jsx(
1905
- chunkDDIW4HLU_cjs.SkillGenerateForm,
1905
+ chunkPVPRVI54_cjs.SkillGenerateForm,
1906
1906
  {
1907
1907
  icon,
1908
1908
  onGenerate: (desc) => {
@@ -1929,11 +1929,11 @@ function ConnectedSkillsLibrary({
1929
1929
  ),
1930
1930
  mode === "add" && /* @__PURE__ */ jsxRuntime.jsx(ConnectedSkillUpload, { onDone: done }),
1931
1931
  mode === "detail" && current && /* @__PURE__ */ jsxRuntime.jsx(
1932
- chunkDDIW4HLU_cjs.SkillLibraryDetail,
1932
+ chunkPVPRVI54_cjs.SkillLibraryDetail,
1933
1933
  {
1934
1934
  skill: current,
1935
1935
  icon,
1936
- instructions: current.docExtId ? currentText ? chunkDDIW4HLU_cjs.parseSkillFrontmatter(currentText, chunkDDIW4HLU_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1936
+ instructions: current.docExtId ? currentText ? chunkPVPRVI54_cjs.parseSkillFrontmatter(currentText, chunkPVPRVI54_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1937
1937
  isLoading: !!current.docExtId && textLoading,
1938
1938
  actions: {
1939
1939
  onRun: () => onRun(current.slug),
@@ -1968,7 +1968,7 @@ function SkillEditor({
1968
1968
  const [seeded, setSeeded] = react$1.useState(!isEditing);
1969
1969
  const [nameError, setNameError] = react$1.useState(null);
1970
1970
  if (isEditing && !seeded && text !== void 0) {
1971
- const parsed = chunkDDIW4HLU_cjs.parseSkillFrontmatter(text, chunkDDIW4HLU_cjs.SKILL_MAIN_FILENAME);
1971
+ const parsed = chunkPVPRVI54_cjs.parseSkillFrontmatter(text, chunkPVPRVI54_cjs.SKILL_MAIN_FILENAME);
1972
1972
  setDescription(parsed.description ?? "");
1973
1973
  setBody(parsed.content ?? "");
1974
1974
  setSeeded(true);
@@ -1982,15 +1982,15 @@ function SkillEditor({
1982
1982
  notify19("Add a short description.", "error");
1983
1983
  return;
1984
1984
  }
1985
- const slug = chunkDDIW4HLU_cjs.skillSlug(name);
1985
+ const slug = chunkPVPRVI54_cjs.skillSlug(name);
1986
1986
  try {
1987
- await onSave(slug, chunkDDIW4HLU_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1987
+ await onSave(slug, chunkPVPRVI54_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1988
1988
  } catch (err) {
1989
1989
  notify19(errorText(err, "Could not save the skill"), "error");
1990
1990
  }
1991
1991
  };
1992
1992
  return /* @__PURE__ */ jsxRuntime.jsx(
1993
- chunkDDIW4HLU_cjs.SkillEditForm,
1993
+ chunkPVPRVI54_cjs.SkillEditForm,
1994
1994
  {
1995
1995
  name,
1996
1996
  onNameChange: setName,
@@ -2033,7 +2033,7 @@ function ConnectedSkillsBrowser({
2033
2033
  renderEditor,
2034
2034
  labels
2035
2035
  }) {
2036
- const builtins = chunk6UTKM5AB_cjs.useNamedWorkflows(givenBuiltins);
2036
+ const builtins = chunkJSQQV23D_cjs.useNamedWorkflows(givenBuiltins);
2037
2037
  const l = { ...DEFAULT_CONNECTED_SKILLS_BROWSER_LABELS, ...labels };
2038
2038
  const isOpen = props !== null;
2039
2039
  const session = react.useArbiSessionStore();
@@ -2083,7 +2083,7 @@ function ConnectedSkillsBrowser({
2083
2083
  }
2084
2084
  ) }),
2085
2085
  runSkillId && /* @__PURE__ */ jsxRuntime.jsx(
2086
- chunkB2HNNG25_cjs.ConnectedTaskComposer,
2086
+ chunkZCIQBHH5_cjs.ConnectedTaskComposer,
2087
2087
  {
2088
2088
  kind: "workflow",
2089
2089
  open: true,
@@ -2107,9 +2107,9 @@ function ConnectedAgentCreator({
2107
2107
  agent,
2108
2108
  initialName,
2109
2109
  onSaved,
2110
- capabilities = chunkDDIW4HLU_cjs.DEFAULT_AGENT_CAPABILITIES,
2111
- templates = chunkDDIW4HLU_cjs.DEFAULT_AGENT_TEMPLATES,
2112
- types = chunkDDIW4HLU_cjs.DEFAULT_AGENT_TYPES,
2110
+ capabilities = chunkPVPRVI54_cjs.DEFAULT_AGENT_CAPABILITIES,
2111
+ templates = chunkPVPRVI54_cjs.DEFAULT_AGENT_TEMPLATES,
2112
+ types = chunkPVPRVI54_cjs.DEFAULT_AGENT_TYPES,
2113
2113
  canRevokeWorkspaces = false,
2114
2114
  labels
2115
2115
  }) {
@@ -2151,7 +2151,7 @@ function ConnectedAgentCreator({
2151
2151
  const initialValues = react$1.useMemo(
2152
2152
  () => ({
2153
2153
  name: agent?.given_name ?? initialName ?? "",
2154
- persona: isEdit ? chunkDDIW4HLU_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2154
+ persona: isEdit ? chunkPVPRVI54_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
2155
2155
  modelName: String(agents.AGENT_MODEL_NAME ?? ""),
2156
2156
  capabilities: Object.fromEntries(capabilities.map(({ key }) => [key, Boolean(agents[key])])),
2157
2157
  type: "builtin",
@@ -2170,7 +2170,7 @@ function ConnectedAgentCreator({
2170
2170
  try {
2171
2171
  let agentExtId = agent?.external_id ?? early?.id ?? "";
2172
2172
  if (!agentExtId) {
2173
- if (!chunkDDIW4HLU_cjs.isValidAgentName(values.name)) {
2173
+ if (!chunkPVPRVI54_cjs.isValidAgentName(values.name)) {
2174
2174
  notify19("Give the agent a name first.", "error");
2175
2175
  return;
2176
2176
  }
@@ -2206,7 +2206,7 @@ function ConnectedAgentCreator({
2206
2206
  title: `agent-${name}`,
2207
2207
  sections: {
2208
2208
  Agents: {
2209
- PERSONA: chunkDDIW4HLU_cjs.composePersona(name, values.persona),
2209
+ PERSONA: chunkPVPRVI54_cjs.composePersona(name, values.persona),
2210
2210
  ...values.modelName ? { AGENT_MODEL_NAME: values.modelName } : {},
2211
2211
  ...Object.fromEntries(capabilities.map(({ key }) => [key, !!values.capabilities[key]])),
2212
2212
  ENABLED_SKILLS: values.capabilities.SKILLS_ENABLED && skills.length ? skills : null,
@@ -2229,7 +2229,7 @@ function ConnectedAgentCreator({
2229
2229
  };
2230
2230
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2231
2231
  /* @__PURE__ */ jsxRuntime.jsx(
2232
- chunkDDIW4HLU_cjs.AgentCreator,
2232
+ chunkPVPRVI54_cjs.AgentCreator,
2233
2233
  {
2234
2234
  open: ready,
2235
2235
  onOpenChange,
@@ -2245,11 +2245,11 @@ function ConnectedAgentCreator({
2245
2245
  ) : void 0,
2246
2246
  revokingWorkspaceId: revokeAccess.isPending ? revokeAccess.variables?.workspaceId : void 0,
2247
2247
  avatar: (values) => /* @__PURE__ */ jsxRuntime.jsx(
2248
- chunkDDIW4HLU_cjs.AgentAvatarField,
2248
+ chunkPVPRVI54_cjs.AgentAvatarField,
2249
2249
  {
2250
2250
  picture,
2251
2251
  isBusy: avatarBusy,
2252
- canGenerate: isEdit || chunkDDIW4HLU_cjs.isValidAgentName(values.name),
2252
+ canGenerate: isEdit || chunkPVPRVI54_cjs.isValidAgentName(values.name),
2253
2253
  onGenerate: () => handleGenerateAvatar(values)
2254
2254
  }
2255
2255
  ),
@@ -2301,7 +2301,7 @@ function ConnectedAgentCreator({
2301
2301
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogTitle, { children: "Connect your agent" }),
2302
2302
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { children: "This key is shown once. Run the script on the machine that will host the agent." })
2303
2303
  ] }),
2304
- connect && /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2304
+ connect && /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2305
2305
  ]
2306
2306
  }
2307
2307
  ) })
@@ -2693,7 +2693,7 @@ function useMemoryCount(enabled) {
2693
2693
  }
2694
2694
  function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2695
2695
  const { notify: notify19, openConversation, openDocument } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
2696
- const people = chunkB2HNNG25_cjs.useTaskPeople();
2696
+ const people = chunkZCIQBHH5_cjs.useTaskPeople();
2697
2697
  const canEditShared = react.useCanEditShared();
2698
2698
  const isWorkspaceOwner = react.useIsWorkspaceOwner();
2699
2699
  const { data: workflows = [] } = react.useWorkflows({ live: true });
@@ -2719,7 +2719,7 @@ function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2719
2719
  }, [documents]);
2720
2720
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2721
2721
  /* @__PURE__ */ jsxRuntime.jsx(
2722
- chunkDDIW4HLU_cjs.TaskTable,
2722
+ chunkPVPRVI54_cjs.TaskTable,
2723
2723
  {
2724
2724
  tasks,
2725
2725
  isLoading,
@@ -2746,7 +2746,7 @@ function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2746
2746
  }
2747
2747
  ),
2748
2748
  activityFor && /* @__PURE__ */ jsxRuntime.jsx(
2749
- chunkB2HNNG25_cjs.ConnectedTaskActivityDialog,
2749
+ chunkZCIQBHH5_cjs.ConnectedTaskActivityDialog,
2750
2750
  {
2751
2751
  conversationId: activityFor.external_id,
2752
2752
  taskName: activityFor.title || l.untitledTask,
@@ -2762,7 +2762,7 @@ function AgentsLauncher({ workflows, renderIcon, labels: l, testId }) {
2762
2762
  const { notify: notify19, openConversation } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
2763
2763
  const { workspaceId, ensureWorkspaceOpen } = chunkJR2YSBD5_cjs.useConnectedWorkspace();
2764
2764
  const { data: skills = [] } = react.useSkills({ enabled: !!workspaceId, live: true });
2765
- const workflowTasks = chunk6UTKM5AB_cjs.useWorkflowTasks();
2765
+ const workflowTasks = chunkJSQQV23D_cjs.useWorkflowTasks();
2766
2766
  const launchable = react$1.useMemo(
2767
2767
  () => [
2768
2768
  ...workflows,
@@ -2785,7 +2785,7 @@ function AgentsLauncher({ workflows, renderIcon, labels: l, testId }) {
2785
2785
  [workflows, skills, l.skillFiles]
2786
2786
  );
2787
2787
  const launch = async ({ workflow, inputs, agentId }) => {
2788
- const values = chunkDDIW4HLU_cjs.defaultTaskComposerValues(launchable, {
2788
+ const values = chunkPVPRVI54_cjs.defaultTaskComposerValues(launchable, {
2789
2789
  workflowId: workflow.id,
2790
2790
  assignee: "agent",
2791
2791
  inputs,
@@ -2905,7 +2905,7 @@ function ConnectedAgentsPageScope(props) {
2905
2905
  children,
2906
2906
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentCreator, { ...management.editorProps, ...agentOptions.creator }),
2907
2907
  taskDialog && /* @__PURE__ */ jsxRuntime.jsx(
2908
- chunkB2HNNG25_cjs.ConnectedTaskComposer,
2908
+ chunkZCIQBHH5_cjs.ConnectedTaskComposer,
2909
2909
  {
2910
2910
  open: true,
2911
2911
  onOpenChange: (open) => !open && setTaskDialog(null),
@@ -2927,7 +2927,7 @@ function AgentsGallery() {
2927
2927
  cardTestIds
2928
2928
  } = agentOptions;
2929
2929
  const { openConversation } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
2930
- const tasksByAgent = react$1.useMemo(() => chunkDDIW4HLU_cjs.groupAgentTasks(tasks), [tasks]);
2930
+ const tasksByAgent = react$1.useMemo(() => chunkPVPRVI54_cjs.groupAgentTasks(tasks), [tasks]);
2931
2931
  const behaviour = useAgentBehaviour(l.defaultBehaviour, details.includes("behaviour"));
2932
2932
  const { agents } = management;
2933
2933
  const cardDetails = (agent) => details.map(
@@ -2942,7 +2942,7 @@ function AgentsGallery() {
2942
2942
  ) : detail === "workspaces" ? /* @__PURE__ */ jsxRuntime.jsx(AgentWorkspaceAccess, { agentExtId: agent.external_id, labels: l }, detail) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: behaviour.behaviourOf(agent.given_name) }, detail)
2943
2943
  );
2944
2944
  return /* @__PURE__ */ jsxRuntime.jsx(
2945
- chunkDDIW4HLU_cjs.AgentGallery,
2945
+ chunkPVPRVI54_cjs.AgentGallery,
2946
2946
  {
2947
2947
  count: agents.length,
2948
2948
  onCreate: management.create,
@@ -2952,9 +2952,9 @@ function AgentsGallery() {
2952
2952
  const agentTasks = tasksByAgent.get(agent.external_id) ?? [];
2953
2953
  const running = agentTasks.filter((t) => t.in_progress);
2954
2954
  const watchConversationId = running[0]?.external_id ?? null;
2955
- const progress = agentTasks[0] ? chunkDDIW4HLU_cjs.goalProgress(agentTasks[0]) : null;
2955
+ const progress = agentTasks[0] ? chunkPVPRVI54_cjs.goalProgress(agentTasks[0]) : null;
2956
2956
  return /* @__PURE__ */ jsxRuntime.jsx(
2957
- chunkDDIW4HLU_cjs.AgentCard,
2957
+ chunkPVPRVI54_cjs.AgentCard,
2958
2958
  {
2959
2959
  name: displayName(agent),
2960
2960
  avatar: /* @__PURE__ */ jsxRuntime.jsx(AgentInitialsAvatar, { agent }),
@@ -3062,7 +3062,7 @@ function AgentsSectionBody({ id }) {
3062
3062
  ) });
3063
3063
  case "scheduled":
3064
3064
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-[min(32rem,70dvh)] min-h-64 flex-col", children: /* @__PURE__ */ jsxRuntime.jsx(
3065
- chunkVGCTYTEW_cjs.ConnectedWorkflowsTable,
3065
+ chunkK6AUKKUN_cjs.ConnectedWorkflowsTable,
3066
3066
  {
3067
3067
  filter: "scheduled",
3068
3068
  onEdit: (w) => openWorkflow?.(w.external_id),
@@ -3124,7 +3124,7 @@ function ConnectedAgentsPage({
3124
3124
  className: "flex h-full flex-col",
3125
3125
  "data-testid": scope.testIds?.root ?? DEFAULT_TEST_IDS.root,
3126
3126
  children: [
3127
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
3127
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
3128
3128
  chunkSJSGSHIT_cjs.TabHeader,
3129
3129
  {
3130
3130
  tabs: [
@@ -3236,10 +3236,10 @@ function cascadeTagCombination(tags, previous, next) {
3236
3236
  function tagCombinationMatches(combination, items) {
3237
3237
  if (!isCombining(combination)) return void 0;
3238
3238
  const pass = (list) => new Set(
3239
- chunkNJCK6V6U_cjs.applyInvertedIndexFilter(
3239
+ chunkL6APDO3Y_cjs.applyInvertedIndexFilter(
3240
3240
  [...list],
3241
3241
  combination,
3242
- chunkNJCK6V6U_cjs.buildInvertedIndex(
3242
+ chunkL6APDO3Y_cjs.buildInvertedIndex(
3243
3243
  [...list],
3244
3244
  (item) => item.id,
3245
3245
  (item) => item.tagIds
@@ -3366,7 +3366,7 @@ function ConnectedTagTable({
3366
3366
  const fail2 = (fallback) => (e) => notify19(browser.refusalReason(e, fallback), "error");
3367
3367
  const snapshot2 = (data) => {
3368
3368
  const title = exportTitle ?? ui.tagKindTitle(kind, { plural: true });
3369
- const bytes = chunkNIE3N6OM_cjs.tagTableDocx(data, {
3369
+ const bytes = chunkMMVDVHKE_cjs.tagTableDocx(data, {
3370
3370
  title,
3371
3371
  nameOf: (id) => people.find((p) => p.value === id)?.label
3372
3372
  });
@@ -3375,7 +3375,7 @@ function ConnectedTagTable({
3375
3375
  return { blob: new Blob([bytes], { type: chunkUKOYN2WD_cjs.DOCX_MIME_TYPE }), name };
3376
3376
  };
3377
3377
  return /* @__PURE__ */ jsxRuntime.jsx(
3378
- chunkNIE3N6OM_cjs.TagTable,
3378
+ chunkMMVDVHKE_cjs.TagTable,
3379
3379
  {
3380
3380
  ...props,
3381
3381
  table,
@@ -3752,9 +3752,9 @@ function GlossaryExport({ labelId, nameOf }) {
3752
3752
  const narrowed = agreements.find((a) => a.id === narrowTo);
3753
3753
  const title = narrowed ? `Glossary - ${narrowed.name}` : "Glossary";
3754
3754
  const download = (format) => {
3755
- const entries = chunkNIE3N6OM_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3756
- const blob = format === "docx" ? new Blob([chunkNIE3N6OM_cjs.glossaryDocx(entries, { title })], { type: chunkUKOYN2WD_cjs.DOCX_MIME_TYPE }) : new Blob([chunkNIE3N6OM_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3757
- documentTools.downloadBlob(blob, chunkNIE3N6OM_cjs.glossaryFileName(title, format));
3755
+ const entries = chunkMMVDVHKE_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3756
+ const blob = format === "docx" ? new Blob([chunkMMVDVHKE_cjs.glossaryDocx(entries, { title })], { type: chunkUKOYN2WD_cjs.DOCX_MIME_TYPE }) : new Blob([chunkMMVDVHKE_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3757
+ documentTools.downloadBlob(blob, chunkMMVDVHKE_cjs.glossaryFileName(title, format));
3758
3758
  };
3759
3759
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", "data-testid": "tags-glossary", children: [
3760
3760
  agreements.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4218,7 +4218,7 @@ function TagFilterChips({
4218
4218
  const name = (id) => tags.find((t) => t.external_id === id)?.name ?? id;
4219
4219
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-1.5", "data-testid": "tags-filter-chips", children: [
4220
4220
  set.map(([id, state]) => /* @__PURE__ */ jsxRuntime.jsx(
4221
- chunkNJCK6V6U_cjs.FilterChip,
4221
+ chunkL6APDO3Y_cjs.FilterChip,
4222
4222
  {
4223
4223
  label: name(id),
4224
4224
  labelContent: /* @__PURE__ */ jsxRuntime.jsx(
@@ -4283,7 +4283,7 @@ function KindSection({
4283
4283
  {
4284
4284
  testId: `tags-kind-${kind}`,
4285
4285
  title: ui.tagKindTitle(kind, { plural: true }),
4286
- description: chunkNIE3N6OM_cjs.tagKindDescription(kind),
4286
+ description: chunkMMVDVHKE_cjs.tagKindDescription(kind),
4287
4287
  children: [
4288
4288
  browser.isEntityTag({ kind }) && extractingCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
4289
4289
  "p",
@@ -4293,9 +4293,9 @@ function KindSection({
4293
4293
  children: [
4294
4294
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "size-4 animate-spin" }),
4295
4295
  "Extracting ",
4296
- chunkNIE3N6OM_cjs.entitiesPhrase().toLowerCase(),
4296
+ chunkMMVDVHKE_cjs.entitiesPhrase().toLowerCase(),
4297
4297
  " from ",
4298
- chunkNIE3N6OM_cjs.documentCount(extractingCount),
4298
+ chunkMMVDVHKE_cjs.documentCount(extractingCount),
4299
4299
  "\u2026"
4300
4300
  ]
4301
4301
  }
@@ -4313,7 +4313,7 @@ function KindSection({
4313
4313
  onOpenTag: ctx.onOpenTag,
4314
4314
  onOpenRow: ctx.onOpenTag,
4315
4315
  onOpenTaggedItems: ctx.onOpenTaggedItems,
4316
- labels: chunkNIE3N6OM_cjs.tagTableLabels(kind),
4316
+ labels: chunkMMVDVHKE_cjs.tagTableLabels(kind),
4317
4317
  testId: `tags-table-${kind}`
4318
4318
  }
4319
4319
  )
@@ -4421,15 +4421,15 @@ function TagSection({
4421
4421
  onOpenTag: ctx.onOpenTag,
4422
4422
  onOpenRow: ctx.onOpenTag,
4423
4423
  onOpenTaggedItems: ctx.onOpenTaggedItems,
4424
- labels: chunkNIE3N6OM_cjs.tagTableLabels(tag.kind),
4424
+ labels: chunkMMVDVHKE_cjs.tagTableLabels(tag.kind),
4425
4425
  testId: "tags-rows"
4426
4426
  }
4427
4427
  ),
4428
4428
  /* @__PURE__ */ jsxRuntime.jsx(
4429
- chunkNIE3N6OM_cjs.TagDetail,
4429
+ chunkMMVDVHKE_cjs.TagDetail,
4430
4430
  {
4431
4431
  onOpenTaggedItems: ctx.onOpenTaggedItems,
4432
- fieldLabels: chunkNIE3N6OM_cjs.tagTableLabels(tag.kind),
4432
+ fieldLabels: chunkMMVDVHKE_cjs.tagTableLabels(tag.kind),
4433
4433
  row: detailRow,
4434
4434
  fields: schema.data?.fields ?? [],
4435
4435
  isLoading: detail.isLoading,
@@ -4443,7 +4443,7 @@ function TagSection({
4443
4443
  throw e;
4444
4444
  })
4445
4445
  ),
4446
- labels: chunkNIE3N6OM_cjs.tagDetailLabels(),
4446
+ labels: chunkMMVDVHKE_cjs.tagDetailLabels(),
4447
4447
  testId: "tags-detail"
4448
4448
  }
4449
4449
  )
@@ -4518,7 +4518,7 @@ function ConnectedTagsPage() {
4518
4518
  const onDelete = async (t) => {
4519
4519
  const nested = browser.getChildTags([...tags], t.external_id);
4520
4520
  const uses = browser.tagUseCount(t);
4521
- const n2 = chunkNIE3N6OM_cjs.tagsPageNouns();
4521
+ const n2 = chunkMMVDVHKE_cjs.tagsPageNouns();
4522
4522
  const tagNoun = (count2) => (count2 === 1 ? n2.tag : n2.tags).toLowerCase();
4523
4523
  const carriers = uses === 1 ? `${n2.document}, ${n2.fact} or ${n2.thread}` : `${n2.documents}, ${n2.facts} and ${n2.threads}`;
4524
4524
  const message = `Delete ${ui.tagKindNouns(t.kind).singular} "${t.name}"?` + (uses > 0 ? `
@@ -4539,11 +4539,11 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4539
4539
  try {
4540
4540
  await extract.mutateAsync(docIds);
4541
4541
  notify19(
4542
- `Extracting ${chunkNIE3N6OM_cjs.entitiesPhrase().toLowerCase()} from ${chunkNIE3N6OM_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4542
+ `Extracting ${chunkMMVDVHKE_cjs.entitiesPhrase().toLowerCase()} from ${chunkMMVDVHKE_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4543
4543
  "info"
4544
4544
  );
4545
4545
  } catch (error) {
4546
- notify19(browser.refusalReason(error, `Could not extract ${chunkNIE3N6OM_cjs.entitiesPhrase().toLowerCase()}`), "error");
4546
+ notify19(browser.refusalReason(error, `Could not extract ${chunkMMVDVHKE_cjs.entitiesPhrase().toLowerCase()}`), "error");
4547
4547
  throw error;
4548
4548
  }
4549
4549
  };
@@ -4557,10 +4557,10 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4557
4557
  onOpenTag: openTag,
4558
4558
  onOpenTaggedItems
4559
4559
  };
4560
- const n = chunkNIE3N6OM_cjs.tagsPageNouns();
4560
+ const n = chunkMMVDVHKE_cjs.tagsPageNouns();
4561
4561
  const action = view === "person" || view === "organisation" ? {
4562
4562
  label: "Extract",
4563
- title: `Extract ${chunkNIE3N6OM_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4563
+ title: `Extract ${chunkMMVDVHKE_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4564
4564
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "h-4 w-4" }),
4565
4565
  run: () => setExtracting(true),
4566
4566
  testId: "tags-extract-entities"
@@ -4729,7 +4729,7 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4729
4729
  }
4730
4730
  ),
4731
4731
  /* @__PURE__ */ jsxRuntime.jsx(
4732
- chunkNIE3N6OM_cjs.ExtractEntitiesDialog,
4732
+ chunkMMVDVHKE_cjs.ExtractEntitiesDialog,
4733
4733
  {
4734
4734
  open: extracting,
4735
4735
  onOpenChange: setExtracting,
@@ -4913,7 +4913,7 @@ function ConnectedPanelHost({
4913
4913
  onClose();
4914
4914
  }, [onClose]);
4915
4915
  const setFocusedArea = react.useArbiSessionStore().setFocusedArea;
4916
- const { popoutTitle } = chunkB3LZITVF_cjs.usePanelHostSupport();
4916
+ const { popoutTitle } = chunk3LNUQYAF_cjs.usePanelHostSupport();
4917
4917
  const focusedArea = react.useArbiSessionState((s) => s.shell.focusedArea);
4918
4918
  const handlePanelFocus = react$1.useCallback(() => {
4919
4919
  setFocusedArea(panelId);
@@ -4946,7 +4946,7 @@ function ConnectedPanelHost({
4946
4946
  }, [isExiting]);
4947
4947
  if (!isOpen && !isExiting) return null;
4948
4948
  const modeSwitcher = /* @__PURE__ */ jsxRuntime.jsx(
4949
- chunkB3LZITVF_cjs.PanelModeSwitcher,
4949
+ chunk3LNUQYAF_cjs.PanelModeSwitcher,
4950
4950
  {
4951
4951
  mode,
4952
4952
  onModeChange: setPanelMode,
@@ -4956,7 +4956,7 @@ function ConnectedPanelHost({
4956
4956
  }
4957
4957
  );
4958
4958
  const panelElement = /* @__PURE__ */ jsxRuntime.jsx(
4959
- chunkNJCK6V6U_cjs.FloatingPanel,
4959
+ chunkL6APDO3Y_cjs.FloatingPanel,
4960
4960
  {
4961
4961
  panelId,
4962
4962
  mode,
@@ -4968,7 +4968,7 @@ function ConnectedPanelHost({
4968
4968
  }
4969
4969
  );
4970
4970
  return /* @__PURE__ */ jsxRuntime.jsx(
4971
- chunkB3LZITVF_cjs.PanelPortal,
4971
+ chunk3LNUQYAF_cjs.PanelPortal,
4972
4972
  {
4973
4973
  defaultWidth,
4974
4974
  panelId,
@@ -6089,7 +6089,7 @@ function ConnectedFieldsManager({
6089
6089
  ) })
6090
6090
  ] });
6091
6091
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col h-full", children: [
6092
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.DraggableHeader, { children: [
6092
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.DraggableHeader, { children: [
6093
6093
  /* @__PURE__ */ jsxRuntime.jsx(chunkNNUK5ZM7_cjs.FieldsManagerTitle, { title, className: "px-4 pt-3.5 pb-2" }),
6094
6094
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-3", children: tabHeader })
6095
6095
  ] }),
@@ -6989,10 +6989,10 @@ function useFactFilters(notes, view, chat) {
6989
6989
  );
6990
6990
  const setFactFilters = view.setFilters;
6991
6991
  const quickFilteredNotes = react$1.useMemo(
6992
- () => chunkNJCK6V6U_cjs.applyInvertedIndexFilter(
6992
+ () => chunkL6APDO3Y_cjs.applyInvertedIndexFilter(
6993
6993
  notes,
6994
6994
  factFilters,
6995
- chunkNJCK6V6U_cjs.buildInvertedIndex(
6995
+ chunkL6APDO3Y_cjs.buildInvertedIndex(
6996
6996
  notes,
6997
6997
  (f) => f.external_id,
6998
6998
  (f) => Object.entries(getFactFilterAttributes(f)).filter(([id, on]) => on && factFilterIds.includes(id)).map(([id]) => id)
@@ -7849,7 +7849,7 @@ function ConnectedFactsPage() {
7849
7849
  onNewFact: composing && !editingId ? () => void 0 : composer.startNewFact,
7850
7850
  navSlotRef: setNavSlot,
7851
7851
  navigator: view === "table" ? /* @__PURE__ */ jsxRuntime.jsx(
7852
- chunkNIE3N6OM_cjs.GridRowNavigator,
7852
+ chunkMMVDVHKE_cjs.GridRowNavigator,
7853
7853
  {
7854
7854
  gridApi,
7855
7855
  selectedId: editingId,
@@ -8126,7 +8126,7 @@ function useConnectedShellWorkspaces(options = {}) {
8126
8126
  function ConnectedSsoDisconnect() {
8127
8127
  const { client } = react.useAccountClient();
8128
8128
  const { data: profile } = react.useProfile();
8129
- const auth = chunkOEREKAAP_cjs.useAuthPages();
8129
+ const auth = chunkOPH4UZQN_cjs.useAuthPages();
8130
8130
  const { notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
8131
8131
  const [open, setOpen] = react$1.useState(false);
8132
8132
  const [step, setStep] = react$1.useState("email");
@@ -8271,7 +8271,7 @@ function ConnectedBoxPortalSection() {
8271
8271
  function ServerConnectionRow({ onRefresh, ...status }) {
8272
8272
  const { runtimeConfig } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
8273
8273
  const [isRefreshing, setIsRefreshing] = react$1.useState(false);
8274
- const view = chunkNJCK6V6U_cjs.serverConnectionView(status, runtimeConfig.deploymentDomain || "server");
8274
+ const view = chunkL6APDO3Y_cjs.serverConnectionView(status, runtimeConfig.deploymentDomain || "server");
8275
8275
  const refresh = async () => {
8276
8276
  setIsRefreshing(true);
8277
8277
  try {
@@ -8281,7 +8281,7 @@ function ServerConnectionRow({ onRefresh, ...status }) {
8281
8281
  }
8282
8282
  };
8283
8283
  return /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsRow, { label: "Server connection", description: view.description, children: /* @__PURE__ */ jsxRuntime.jsx(
8284
- chunkNJCK6V6U_cjs.ServerConnectionButton,
8284
+ chunkL6APDO3Y_cjs.ServerConnectionButton,
8285
8285
  {
8286
8286
  state: view.state,
8287
8287
  label: view.label,
@@ -8304,14 +8304,14 @@ function ConnectedAccountSettings({
8304
8304
  }) {
8305
8305
  const [logoutOpen, setLogoutOpen] = react$1.useState(false);
8306
8306
  return /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsPanel, { className: "max-w-2xl", children: [
8307
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedProfileCard, { avatarClassName, nameBadge: profileBadge }),
8307
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedProfileCard, { avatarClassName, nameBadge: profileBadge }),
8308
8308
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedBoxPortalSection, {}),
8309
8309
  /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsDisclosure, { title: "More", testId: "account-more-settings", children: [
8310
8310
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedSsoDisconnect, {}),
8311
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedSecuritySection, { children: securityRows }),
8311
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedSecuritySection, { children: securityRows }),
8312
8312
  moreSettings,
8313
8313
  /* @__PURE__ */ jsxRuntime.jsx(
8314
- chunkOEREKAAP_cjs.ConnectedIdentityVerification,
8314
+ chunkOPH4UZQN_cjs.ConnectedIdentityVerification,
8315
8315
  {
8316
8316
  collapsible: true,
8317
8317
  onManageBilling,
@@ -8321,7 +8321,7 @@ function ConnectedAccountSettings({
8321
8321
  ] }),
8322
8322
  /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsSection, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Wifi, {}), title: "Session", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsCard, { children: [
8323
8323
  connection && /* @__PURE__ */ jsxRuntime.jsx(ServerConnectionRow, { ...connection }),
8324
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedSessionsRow, { renderSessionIcon }),
8324
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedSessionsRow, { renderSessionIcon }),
8325
8325
  /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsRow, { label: "Logout", description: "Sign out of your account on this device.", children: /* @__PURE__ */ jsxRuntime.jsxs(
8326
8326
  ui.Button,
8327
8327
  {
@@ -8338,9 +8338,9 @@ function ConnectedAccountSettings({
8338
8338
  }
8339
8339
  ) })
8340
8340
  ] }) }),
8341
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedDangerZone, { renderSubscriptionLink }),
8341
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedDangerZone, { renderSubscriptionLink }),
8342
8342
  !onLogout && /* @__PURE__ */ jsxRuntime.jsx(
8343
- chunkOEREKAAP_cjs.ConnectedLogoutDialog,
8343
+ chunkOPH4UZQN_cjs.ConnectedLogoutDialog,
8344
8344
  {
8345
8345
  open: logoutOpen,
8346
8346
  onClose: () => setLogoutOpen(false),
@@ -8683,7 +8683,7 @@ function ConnectedPrivacySettings({
8683
8683
  }
8684
8684
  )
8685
8685
  ] }) }),
8686
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedNotificationPreferences, {})
8686
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedNotificationPreferences, {})
8687
8687
  ] });
8688
8688
  }
8689
8689
  var PROVIDER_NAMES = {
@@ -8724,13 +8724,13 @@ var COLUMNS = [
8724
8724
  flex: 1,
8725
8725
  minWidth: 120,
8726
8726
  cellRenderer: (params) => isStandard(params.data) ? /* @__PURE__ */ jsxRuntime.jsx(
8727
- chunkNJCK6V6U_cjs.ModelProviderLabel,
8727
+ chunkL6APDO3Y_cjs.ModelProviderLabel,
8728
8728
  {
8729
8729
  logo: /* @__PURE__ */ jsxRuntime.jsx(ui.ArbiIcon, { size: 14, "aria-label": "ARBI", className: "flex-shrink-0 rounded-sm" }),
8730
8730
  children: "ARBI CITY"
8731
8731
  }
8732
8732
  ) : /* @__PURE__ */ jsxRuntime.jsx(
8733
- chunkNJCK6V6U_cjs.ModelProviderLabel,
8733
+ chunkL6APDO3Y_cjs.ModelProviderLabel,
8734
8734
  {
8735
8735
  logo: /* @__PURE__ */ jsxRuntime.jsx(ui.ProviderIcon, { modelName: params.data?.model_name, provider: params.value, size: 14 }),
8736
8736
  children: PROVIDER_NAMES[params.value ?? ""] || params.value || "\u2014"
@@ -8807,7 +8807,7 @@ function ConnectedPremiumModels() {
8807
8807
  );
8808
8808
  if (premiumModels.length === 0) return null;
8809
8809
  return /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsPanel, { className: "max-w-2xl space-y-4", children: /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsSection, { title: "Premium models", children: /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsCard, { className: "space-y-0", children: /* @__PURE__ */ jsxRuntime.jsx(
8810
- chunkNJCK6V6U_cjs.PremiumModelsFrame,
8810
+ chunkL6APDO3Y_cjs.PremiumModelsFrame,
8811
8811
  {
8812
8812
  enabled: premiumModel !== "",
8813
8813
  onEnabledChange: (enabled) => {
@@ -9143,10 +9143,10 @@ function ConnectedAppsSettings({
9143
9143
  }
9144
9144
  };
9145
9145
  if (isLoading) {
9146
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ConnectionsLoading, { message: "Loading connected apps\u2026" });
9146
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ConnectionsLoading, { message: "Loading connected apps\u2026" });
9147
9147
  }
9148
9148
  if (catalogError) {
9149
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ConnectionsError, { message: "Failed to load connector catalog. Please refresh and try again." });
9149
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ConnectionsError, { message: "Failed to load connector catalog. Please refresh and try again." });
9150
9150
  }
9151
9151
  const visibleCatalog = catalog.filter((c) => isVendorVisible(c.vendor_key));
9152
9152
  const sharePointVisible = isVendorVisible("microsoft_sharepoint");
@@ -9155,7 +9155,7 @@ function ConnectedAppsSettings({
9155
9155
  (c) => !react.isMailboxSyncVendor(c.vendor_key) && !react.isSharePointVendor(c.vendor_key)
9156
9156
  );
9157
9157
  const renderCard = (entry) => /* @__PURE__ */ jsxRuntime.jsx(
9158
- chunkNJCK6V6U_cjs.ConnectionCard,
9158
+ chunkL6APDO3Y_cjs.ConnectionCard,
9159
9159
  {
9160
9160
  connection: toConnectionCardView(entry, connectedByVendor[entry.vendor_key], {
9161
9161
  isDisconnecting: disconnect.isPending && disconnect.variables?.vendorKey === entry.vendor_key,
@@ -9283,7 +9283,7 @@ function ConnectedAppsSettings({
9283
9283
  }
9284
9284
  )
9285
9285
  ] }),
9286
- catalog.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsCard, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ConnectionsEmpty, { message: "No connectors available yet." }) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9286
+ catalog.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsCard, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ConnectionsEmpty, { message: "No connectors available yet." }) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9287
9287
  renderGroup("Email & Drive", EMAIL_AND_DRIVE_SUBTITLE, /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Mail, {}), emailCatalog),
9288
9288
  renderGroup(
9289
9289
  "Apps & Integrations (MCP)",
@@ -9736,7 +9736,7 @@ function ConnectedStorageProjectCard({
9736
9736
  project.personal && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-0.5 text-sm text-muted-foreground", children: "Mail, recordings of calls you host, chat attachments and everything not in a project." })
9737
9737
  ] }),
9738
9738
  /* @__PURE__ */ jsxRuntime.jsx(
9739
- chunkNJCK6V6U_cjs.UsageToggle,
9739
+ chunkL6APDO3Y_cjs.UsageToggle,
9740
9740
  {
9741
9741
  value: view,
9742
9742
  onChange: setView,
@@ -9821,7 +9821,7 @@ function ConnectedStorageProjectCard({
9821
9821
  ] })
9822
9822
  ] }),
9823
9823
  view === "largest" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
9824
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.UsageToggle, { value: kind, onChange: setKind, options: KIND_FILTERS, ariaLabel: "Kind" }),
9824
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.UsageToggle, { value: kind, onChange: setKind, options: KIND_FILTERS, ariaLabel: "Kind" }),
9825
9825
  largest.isLoading ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: "Loading\u2026" }) : /* @__PURE__ */ jsxRuntime.jsx(
9826
9826
  StorageItemsTable,
9827
9827
  {
@@ -10080,7 +10080,7 @@ function ConnectedSettingsPage({
10080
10080
  }, [requested]);
10081
10081
  const controlled = section !== void 0;
10082
10082
  return /* @__PURE__ */ jsxRuntime.jsx(
10083
- chunkNJCK6V6U_cjs.SettingsPage,
10083
+ chunkL6APDO3Y_cjs.SettingsPage,
10084
10084
  {
10085
10085
  ...page,
10086
10086
  sections,
@@ -10112,7 +10112,7 @@ function UsageSettings({ icon: icon2 }) {
10112
10112
  description: "AI usage today, in \xA3 (ex VAT).",
10113
10113
  testId: "settings-usage",
10114
10114
  children: /* @__PURE__ */ jsxRuntime.jsx(
10115
- chunkNJCK6V6U_cjs.UsageSummary,
10115
+ chunkL6APDO3Y_cjs.UsageSummary,
10116
10116
  {
10117
10117
  stats: [
10118
10118
  {
@@ -10230,7 +10230,7 @@ function ReaderAppearance({ bundle }) {
10230
10230
  const { defaults } = bundle;
10231
10231
  const isDefault = state.pairingId === defaults.pairingId && state.colorScheme === defaults.colorScheme && state.textSize === defaults.textSize;
10232
10232
  return /* @__PURE__ */ jsxRuntime.jsx(
10233
- chunkNJCK6V6U_cjs.AppearanceSettings,
10233
+ chunkL6APDO3Y_cjs.AppearanceSettings,
10234
10234
  {
10235
10235
  colorScheme: state.colorScheme,
10236
10236
  onColorSchemeChange: state.setColorScheme,
@@ -10457,7 +10457,7 @@ function SwitchRow({ row: row2 }) {
10457
10457
  const { on, set } = react.useFeatureSwitch(row2.feature);
10458
10458
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10459
10459
  /* @__PURE__ */ jsxRuntime.jsx(
10460
- chunkNJCK6V6U_cjs.SettingsSwitchRow,
10460
+ chunkL6APDO3Y_cjs.SettingsSwitchRow,
10461
10461
  {
10462
10462
  id: row2.id ?? row2.feature,
10463
10463
  testId: row2.testId ?? `toggle-${row2.feature}`,
@@ -10468,14 +10468,14 @@ function SwitchRow({ row: row2 }) {
10468
10468
  onCheckedChange: set
10469
10469
  }
10470
10470
  ),
10471
- on && row2.rows && row2.rows.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SettingsSwitchGroup, { children: row2.rows.map((sub) => /* @__PURE__ */ jsxRuntime.jsx(FeatureRow, { row: sub }, sub.feature)) })
10471
+ on && row2.rows && row2.rows.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SettingsSwitchGroup, { children: row2.rows.map((sub) => /* @__PURE__ */ jsxRuntime.jsx(FeatureRow, { row: sub }, sub.feature)) })
10472
10472
  ] });
10473
10473
  }
10474
10474
  function CallsRow({ row: row2 }) {
10475
10475
  const { on, set } = react.useFeatureSwitch(row2.feature);
10476
- const state = chunkNJCK6V6U_cjs.callsSwitchState(react.useCallsConfig(), on);
10476
+ const state = chunkL6APDO3Y_cjs.callsSwitchState(react.useCallsConfig(), on);
10477
10477
  return /* @__PURE__ */ jsxRuntime.jsx(
10478
- chunkNJCK6V6U_cjs.SettingsSwitchRow,
10478
+ chunkL6APDO3Y_cjs.SettingsSwitchRow,
10479
10479
  {
10480
10480
  id: row2.id ?? row2.feature,
10481
10481
  testId: row2.testId ?? `toggle-${row2.feature}`,
@@ -10490,7 +10490,7 @@ function CallsRow({ row: row2 }) {
10490
10490
  }
10491
10491
  function ConnectedAccountAccessBadge() {
10492
10492
  const { data: user } = react.useCurrentUser();
10493
- const status = !user ? null : user.is_deployment_admin || user.user_type === "admin" ? ["Deployment administrator", "You can manage users and deployment settings."] : chunk6UTKM5AB_cjs.isExternalAccount(user) ? [
10493
+ const status = !user ? null : user.is_deployment_admin || user.user_type === "admin" ? ["Deployment administrator", "You can manage users and deployment settings."] : chunkJSQQV23D_cjs.isExternalAccount(user) ? [
10494
10494
  "External user",
10495
10495
  "Temporary access to shared workspaces. Ask an owner to renew access after it expires."
10496
10496
  ] : user.user_type === "manager" ? [
@@ -10679,7 +10679,7 @@ function ConnectedRecoveryKeyDialog({
10679
10679
  const arbi = react.useArbi();
10680
10680
  const { user, isSso: isSsoMode } = react.useArbiSession();
10681
10681
  const userEmail = user?.email;
10682
- const sso = chunkOEREKAAP_cjs.useSsoSignIn();
10682
+ const sso = chunkOPH4UZQN_cjs.useSsoSignIn();
10683
10683
  const handleVerify = async () => {
10684
10684
  setError(null);
10685
10685
  if (!password) {
@@ -10840,7 +10840,7 @@ function ConnectedRemoteControlSwitch() {
10840
10840
  }
10841
10841
  function RemoteControlSwitch() {
10842
10842
  const enabled = react.useRemoteControl((state) => state.enabled);
10843
- const remote = chunkOEREKAAP_cjs.useRemoteControlActions();
10843
+ const remote = chunkOPH4UZQN_cjs.useRemoteControlActions();
10844
10844
  return /* @__PURE__ */ jsxRuntime.jsx(
10845
10845
  chunkQQMMCXBP_cjs.SettingsRow,
10846
10846
  {
@@ -10862,7 +10862,7 @@ function RemoteControlSwitch() {
10862
10862
  );
10863
10863
  }
10864
10864
  var JUST_CONNECTED_VIEW = "settings.justConnected";
10865
- var identityFeeLabel = (status) => `${chunkTDO5UWXF_cjs.formatMoney(status.price_pence, status.currency.toLowerCase())} incl. VAT`;
10865
+ var identityFeeLabel = (status) => `${chunkO4F77VSO_cjs.formatMoney(status.price_pence, status.currency.toLowerCase())} incl. VAT`;
10866
10866
  var openLogout = () => chunkJDFBEGQO_cjs.openDialog("logout");
10867
10867
  function RecoveryKeyRow() {
10868
10868
  const [open, setOpen] = react$1.useState(false);
@@ -10953,7 +10953,7 @@ function useSettingsSections({
10953
10953
  ] })
10954
10954
  }),
10955
10955
  // "Work offline" flips the one offline switch even while the server is reachable.
10956
- actions: /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.WorkOfflineToggle, { isOffline: forceOffline, onToggle: setWorkOffline })
10956
+ actions: /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.WorkOfflineToggle, { isOffline: forceOffline, onToggle: setWorkOffline })
10957
10957
  },
10958
10958
  ...showMail ? [
10959
10959
  mailSettingsSection({
@@ -11101,7 +11101,7 @@ function ConnectedDeploymentStorage() {
11101
11101
  deployment.unattributed_bytes > 0 && ` \xB7 ${chunkUZHWXKS6_cjs.formatBytes(deployment.unattributed_bytes)} not owned by any ${ui.entityNoun("PROJECT")}`
11102
11102
  ] }),
11103
11103
  trend.dates.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
11104
- chunkNJCK6V6U_cjs.UsageLineChart,
11104
+ chunkL6APDO3Y_cjs.UsageLineChart,
11105
11105
  {
11106
11106
  dates: trend.dates,
11107
11107
  series: trend.series,
@@ -11110,7 +11110,7 @@ function ConnectedDeploymentStorage() {
11110
11110
  }
11111
11111
  ),
11112
11112
  /* @__PURE__ */ jsxRuntime.jsx(
11113
- chunkNJCK6V6U_cjs.UsageToggle,
11113
+ chunkL6APDO3Y_cjs.UsageToggle,
11114
11114
  {
11115
11115
  value: view,
11116
11116
  onChange: setView,
@@ -11183,14 +11183,14 @@ function usePaidWorkspaceMembers() {
11183
11183
  try {
11184
11184
  return await mutation.mutateAsync(...args);
11185
11185
  } catch (error) {
11186
- const detail = chunkTDO5UWXF_cjs.apiErrorDetail(error);
11186
+ const detail = chunkO4F77VSO_cjs.apiErrorDetail(error);
11187
11187
  if (detail?.code !== "COLLABORATOR_CAPACITY_REQUIRED" || !detail.can_buy || !arbi || !detail.project_ext_id || !detail.blocks_required || !detail.block_size)
11188
11188
  throw error;
11189
11189
  const project = detail.project_ext_id;
11190
11190
  const quote = await arbi.projects.quoteAddon(project, "collaborators");
11191
11191
  const count2 = detail.blocks_required;
11192
- const today = chunkTDO5UWXF_cjs.formatMoney(quote.now.total_pence * count2, "gbp");
11193
- const renewal = chunkTDO5UWXF_cjs.formatMoney(quote.renewal.total_pence * count2, "gbp");
11192
+ const today = chunkO4F77VSO_cjs.formatMoney(quote.now.total_pence * count2, "gbp");
11193
+ const renewal = chunkO4F77VSO_cjs.formatMoney(quote.renewal.total_pence * count2, "gbp");
11194
11194
  const confirmed = await confirm({
11195
11195
  title: "More collaborator places needed",
11196
11196
  message: `This invitation exceeds your ${detail.limit}-collaborator allowance. Add ${count2 * detail.block_size} places for ${today} today, including tax, then ${renewal} per ${detail.interval === "year" ? "year" : "month"} until removed? You are not counted.`,
@@ -12043,7 +12043,7 @@ function ConnectedProjectEntity({
12043
12043
  subscription = "none",
12044
12044
  ...props
12045
12045
  }) {
12046
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
12046
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
12047
12047
  return /* @__PURE__ */ jsxRuntime.jsx(
12048
12048
  ui.ProjectEntity,
12049
12049
  {
@@ -12138,7 +12138,7 @@ function StripeCheckoutModal({
12138
12138
  const [clientSecret, setClientSecret] = react$1.useState(null);
12139
12139
  const [isCreating, setIsCreating] = react$1.useState(false);
12140
12140
  const [stripe, setStripe] = react$1.useState(null);
12141
- const { stripeEnabled, checkout } = chunkTDO5UWXF_cjs.useBillingSupport();
12141
+ const { stripeEnabled, checkout } = chunkO4F77VSO_cjs.useBillingSupport();
12142
12142
  const createCheckout = react.useCreateProjectCheckout();
12143
12143
  const refreshProject = react.useRefreshProject();
12144
12144
  const invalidateProjects = react.useInvalidateProjects();
@@ -12167,7 +12167,7 @@ function StripeCheckoutModal({
12167
12167
  projectExtId,
12168
12168
  body: {
12169
12169
  interval,
12170
- packs: chunkTDO5UWXF_cjs.PRO_PACKS,
12170
+ packs: chunkO4F77VSO_cjs.PRO_PACKS,
12171
12171
  ai_blocks: aiBlocks,
12172
12172
  storage_blocks: storageBlocks,
12173
12173
  collaborator_blocks: collaboratorBlocks,
@@ -12184,7 +12184,7 @@ function StripeCheckoutModal({
12184
12184
  },
12185
12185
  onError: (error) => {
12186
12186
  console.error("Failed to create checkout session:", error);
12187
- const reason = chunkTDO5UWXF_cjs.apiErrorDetail(error)?.message;
12187
+ const reason = chunkO4F77VSO_cjs.apiErrorDetail(error)?.message;
12188
12188
  shell.notify.error(
12189
12189
  reason ? `Checkout didn't start: ${reason}` : "Checkout didn't start. Try again."
12190
12190
  );
@@ -12218,9 +12218,9 @@ function StripeCheckoutModal({
12218
12218
  }
12219
12219
  }, [open]);
12220
12220
  const isStripeConfigured = stripeEnabled;
12221
- const vatNote = quote ? `${chunkTDO5UWXF_cjs.checkoutItemsLabel(aiBlocks, storageBlocks, collaboratorBlocks, price)} \xB7 ${chunkTDO5UWXF_cjs.quoteTotalLine(quote)}` : null;
12221
+ const vatNote = quote ? `${chunkO4F77VSO_cjs.checkoutItemsLabel(aiBlocks, storageBlocks, collaboratorBlocks, price)} \xB7 ${chunkO4F77VSO_cjs.quoteTotalLine(quote)}` : null;
12222
12222
  return /* @__PURE__ */ jsxRuntime.jsx(
12223
- chunkNJCK6V6U_cjs.CheckoutDialogFrame,
12223
+ chunkL6APDO3Y_cjs.CheckoutDialogFrame,
12224
12224
  {
12225
12225
  open,
12226
12226
  onOpenChange,
@@ -12230,7 +12230,7 @@ function StripeCheckoutModal({
12230
12230
  children: clientSecret && !!stripe && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12231
12231
  vatNote && /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-vat-note", className: "mb-4 text-sm text-muted-foreground", children: vatNote }),
12232
12232
  checkout?.render(stripe, { clientSecret, onComplete: handleComplete }),
12233
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.MoreInfo, { title: "Paying", label: "Payment help", testId: "checkout-payment-help", children: [
12233
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.MoreInfo, { title: "Paying", label: "Payment help", testId: "checkout-payment-help", children: [
12234
12234
  /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-decline-note", children: "Card declined? Nothing was charged. Try again or use another card." }),
12235
12235
  /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-vat-id-note", children: "No VAT number? Leave \u2018purchasing as a business\u2019 unticked." }),
12236
12236
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "Add-ons chosen here are on the first invoice with the plan and renew with it until you reduce them." })
@@ -12254,7 +12254,7 @@ function MonthlySpendCap({
12254
12254
  const min = Math.ceil(minimum / 100 / step) * step;
12255
12255
  const max = Math.max(Math.floor((maximum ?? 5e4) / 100 / step) * step, min);
12256
12256
  const pounds = Math.max(min, Math.min(max, Math.floor(value / stepPence) * step));
12257
- const money = (n) => chunkTDO5UWXF_cjs.formatMoney(n, "gbp");
12257
+ const money = (n) => chunkO4F77VSO_cjs.formatMoney(n, "gbp");
12258
12258
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full space-y-2", children: [
12259
12259
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-baseline justify-between gap-4", children: [
12260
12260
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: id, children: "Auto-upgrade limit" }),
@@ -12311,7 +12311,7 @@ function applyReferralReward(totalCents, reward, priceCurrency) {
12311
12311
  };
12312
12312
  }
12313
12313
  function purchaseNet(price, ai, storage, collaborators) {
12314
- const base = chunkTDO5UWXF_cjs.packPrice(price)?.amount_ex_vat ?? price?.amount_ex_vat;
12314
+ const base = chunkO4F77VSO_cjs.packPrice(price)?.amount_ex_vat ?? price?.amount_ex_vat;
12315
12315
  if (base == null) return null;
12316
12316
  let total = base;
12317
12317
  for (const [kind, count2] of [
@@ -12340,8 +12340,8 @@ function ProjectPurchaseOptions({
12340
12340
  onChoose
12341
12341
  }) {
12342
12342
  const [spendCap, setSpendCap] = react$1.useState(null);
12343
- const reward = chunkTDO5UWXF_cjs.useRewardBalance();
12344
- const prices = chunkTDO5UWXF_cjs.findProPrices(products);
12343
+ const reward = chunkO4F77VSO_cjs.useRewardBalance();
12344
+ const prices = chunkO4F77VSO_cjs.findProPrices(products);
12345
12345
  const monthlyNet = purchaseNet(prices.monthly, aiBlocks, storageBlocks, collaboratorBlocks);
12346
12346
  const annualNet = purchaseNet(prices.annual, aiBlocks, storageBlocks, collaboratorBlocks);
12347
12347
  const extras = { ai_usage: aiBlocks, storage: storageBlocks, collaborators: collaboratorBlocks };
@@ -12355,9 +12355,9 @@ function ProjectPurchaseOptions({
12355
12355
  );
12356
12356
  const product = products?.[0];
12357
12357
  const currency = prices.monthly?.currency ?? prices.annual?.currency ?? "gbp";
12358
- const money = (pence) => chunkTDO5UWXF_cjs.formatMoney(pence, currency);
12359
- const ai = (product?.included_ai_gbp ?? 0) + aiBlocks * (chunkTDO5UWXF_cjs.addonPrice(prices.monthly, "ai_usage")?.ai_gbp ?? 0);
12360
- const storage = (product?.included_storage_gb ?? 0) + storageBlocks * (chunkTDO5UWXF_cjs.addonPrice(prices.monthly, "storage")?.storage_gb ?? 0);
12358
+ const money = (pence) => chunkO4F77VSO_cjs.formatMoney(pence, currency);
12359
+ const ai = (product?.included_ai_gbp ?? 0) + aiBlocks * (chunkO4F77VSO_cjs.addonPrice(prices.monthly, "ai_usage")?.ai_gbp ?? 0);
12360
+ const storage = (product?.included_storage_gb ?? 0) + storageBlocks * (chunkO4F77VSO_cjs.addonPrice(prices.monthly, "storage")?.storage_gb ?? 0);
12361
12361
  const collaborators = (product?.included_collaborators ?? 0) + collaboratorBlocks * (prices.monthly?.addon_prices?.find((p) => p.kind === "collaborators")?.collaborators ?? 0);
12362
12362
  const saving = monthlyNet && annualNet != null ? Math.max(0, Math.round(100 * (1 - annualNet / (monthlyNet * 12)))) : 0;
12363
12363
  const stepPence = product?.spend_cap_step_pence ?? 2500;
@@ -12398,7 +12398,7 @@ function ProjectPurchaseOptions({
12398
12398
  size: "icon",
12399
12399
  variant: "outline",
12400
12400
  "aria-label": `Add ${label}`,
12401
- disabled: busy || !available || count2 >= chunkTDO5UWXF_cjs.MAX_CHECKOUT_BLOCKS,
12401
+ disabled: busy || !available || count2 >= chunkO4F77VSO_cjs.MAX_CHECKOUT_BLOCKS,
12402
12402
  onClick: () => onChange(count2 + 1),
12403
12403
  "data-testid": `checkout-${kind}-blocks-increment`,
12404
12404
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { size: 14, "aria-hidden": "true" })
@@ -12416,7 +12416,7 @@ function ProjectPurchaseOptions({
12416
12416
  aiBlocks,
12417
12417
  onAiBlocksChange,
12418
12418
  "AI credits",
12419
- !!chunkTDO5UWXF_cjs.addonPrice(prices.monthly, "ai_usage")
12419
+ !!chunkO4F77VSO_cjs.addonPrice(prices.monthly, "ai_usage")
12420
12420
  )
12421
12421
  ] }),
12422
12422
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
@@ -12438,7 +12438,7 @@ function ProjectPurchaseOptions({
12438
12438
  storageBlocks,
12439
12439
  onStorageBlocksChange,
12440
12440
  "storage",
12441
- !!chunkTDO5UWXF_cjs.addonPrice(prices.monthly, "storage")
12441
+ !!chunkO4F77VSO_cjs.addonPrice(prices.monthly, "storage")
12442
12442
  )
12443
12443
  ] }),
12444
12444
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
@@ -12546,7 +12546,7 @@ function refusal(what, next) {
12546
12546
  return `${sentence(what)}. Nothing was charged. ${sentence(next)}.`;
12547
12547
  }
12548
12548
  function createProjectErrorMessage(error, fallback = `Failed to create ${ui.entityNoun("PROJECT")}`) {
12549
- const detail = chunkTDO5UWXF_cjs.apiErrorDetail(error);
12549
+ const detail = chunkO4F77VSO_cjs.apiErrorDetail(error);
12550
12550
  if (typeof detail === "string" && detail) return detail;
12551
12551
  const message = detail?.message;
12552
12552
  return typeof message === "string" && message ? message : fallback;
@@ -12565,7 +12565,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
12565
12565
  const [checkoutQuote, setCheckoutQuote] = react$1.useState();
12566
12566
  const paymentCompleted = react$1.useRef(false);
12567
12567
  const attempt = react$1.useRef(0);
12568
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
12568
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
12569
12569
  const { data: products, isLoading: productsLoading } = react.useProducts({ enabled: stripeEnabled });
12570
12570
  const createProject = react.useCreateProject();
12571
12571
  const deleteProject = react.useDeleteProject();
@@ -12605,7 +12605,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
12605
12605
  {
12606
12606
  name: projectName.trim(),
12607
12607
  plan: stripeEnabled ? "pro" : "free",
12608
- daily_cap_per_user: chunkTDO5UWXF_cjs.SUGGESTED_DAILY_CAP_PER_USER
12608
+ daily_cap_per_user: chunkO4F77VSO_cjs.SUGGESTED_DAILY_CAP_PER_USER
12609
12609
  },
12610
12610
  {
12611
12611
  onSuccess: (project) => {
@@ -12650,7 +12650,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
12650
12650
  description: stripeEnabled ? "Name your project and choose monthly or annual billing." : "Name your project.",
12651
12651
  size: "md",
12652
12652
  className: stripeEnabled ? "project-purchase-modal sm:max-w-[500px]" : void 0,
12653
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PlanStack, { gap: 4, children: [
12653
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PlanStack, { gap: 4, children: [
12654
12654
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
12655
12655
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "new-project-name", children: "Name" }),
12656
12656
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -12667,7 +12667,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
12667
12667
  }
12668
12668
  )
12669
12669
  ] }),
12670
- stripeEnabled && (productsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { children: "Loading prices\u2026" }) : /* @__PURE__ */ jsxRuntime.jsx(
12670
+ stripeEnabled && (productsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { children: "Loading prices\u2026" }) : /* @__PURE__ */ jsxRuntime.jsx(
12671
12671
  ProjectPurchaseOptions,
12672
12672
  {
12673
12673
  products,
@@ -12685,16 +12685,16 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
12685
12685
  )),
12686
12686
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-end gap-2", children: [
12687
12687
  /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { variant: "ghost", onClick: close, children: "Cancel" }),
12688
- !stripeEnabled && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanActionButton, { onClick: () => create3(), disabled: !canSubmit, children: isCreating ? "Creating\u2026" : `Create ${ui.entityNoun("PROJECT")}` })
12688
+ !stripeEnabled && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanActionButton, { onClick: () => create3(), disabled: !canSubmit, children: isCreating ? "Creating\u2026" : `Create ${ui.entityNoun("PROJECT")}` })
12689
12689
  ] }),
12690
- isSlow && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { className: "text-xs", testId: "new-project-still-working", children: "Still working. We'll update here." })
12690
+ isSlow && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { className: "text-xs", testId: "new-project-still-working", children: "Still working. We'll update here." })
12691
12691
  ] })
12692
12692
  }
12693
12693
  ),
12694
12694
  checkoutProject && /* @__PURE__ */ jsxRuntime.jsx(
12695
12695
  StripeCheckoutModal,
12696
12696
  {
12697
- price: chunkTDO5UWXF_cjs.findProPrices(products)[checkoutInterval === "year" ? "annual" : "monthly"],
12697
+ price: chunkO4F77VSO_cjs.findProPrices(products)[checkoutInterval === "year" ? "annual" : "monthly"],
12698
12698
  projectExtId: checkoutProject.id,
12699
12699
  interval: checkoutInterval,
12700
12700
  addonBudgetPence: checkoutBudget,
@@ -12726,7 +12726,7 @@ function ConnectedProjectSelector({
12726
12726
  readOnly,
12727
12727
  className
12728
12728
  }) {
12729
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
12729
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
12730
12730
  return /* @__PURE__ */ jsxRuntime.jsx(
12731
12731
  chunkYZ6YOOTF_cjs.ProjectPicker,
12732
12732
  {
@@ -12870,13 +12870,13 @@ function ConnectedWorkspaceSettings({
12870
12870
  const [membersExpanded, setMembersExpanded] = react$1.useState(false);
12871
12871
  const [shareOpen, setShareOpen] = react$1.useState(false);
12872
12872
  if (!workspace) {
12873
- return /* @__PURE__ */ jsxRuntime.jsx(chunkCMGNRMPA_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
12873
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkCMGNRMPA_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
12874
12874
  }
12875
12875
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12876
12876
  /* @__PURE__ */ jsxRuntime.jsxs(chunkCMGNRMPA_cjs.WorkspacePageFrame, { testId, children: [
12877
12877
  /* @__PURE__ */ jsxRuntime.jsxs(chunkCMGNRMPA_cjs.WorkspaceIdentityPanel, { children: [
12878
12878
  /* @__PURE__ */ jsxRuntime.jsx(
12879
- chunkNIE3N6OM_cjs.EntityIdentityBar,
12879
+ chunkMMVDVHKE_cjs.EntityIdentityBar,
12880
12880
  {
12881
12881
  testId: "workspace-identity-bar",
12882
12882
  canEdit: isOwner,
@@ -12893,7 +12893,7 @@ function ConnectedWorkspaceSettings({
12893
12893
  label: "Name",
12894
12894
  value: workspace.name,
12895
12895
  placeholder: "Untitled",
12896
- maxLength: chunkNIE3N6OM_cjs.IDENTITY_NAME_MAX_LENGTH,
12896
+ maxLength: chunkMMVDVHKE_cjs.IDENTITY_NAME_MAX_LENGTH,
12897
12897
  valueClassName: "truncate text-base font-semibold",
12898
12898
  testId: "workspace-home-title",
12899
12899
  hideLabel: true,
@@ -13524,20 +13524,20 @@ function ConnectedEmailWorkspaceDialog({
13524
13524
  else if (activeSession)
13525
13525
  access = {
13526
13526
  kind: "session",
13527
- expiresIn: chunkNJCK6V6U_cjs.formatSessionTtl(activeSession.ttl),
13527
+ expiresIn: chunkL6APDO3Y_cjs.formatSessionTtl(activeSession.ttl),
13528
13528
  isEnding: terminateSession.isPending,
13529
13529
  onEnd: handleEndSession
13530
13530
  };
13531
13531
  else
13532
13532
  access = {
13533
13533
  kind: "idle",
13534
- defaultTtl: limits ? chunkNJCK6V6U_cjs.formatSessionTtl(limits.default_ttl_seconds) : void 0,
13534
+ defaultTtl: limits ? chunkL6APDO3Y_cjs.formatSessionTtl(limits.default_ttl_seconds) : void 0,
13535
13535
  isAuthorizing: grantAgentAccess.isPending && grantAgentAccess.variables?.mode?.kind === "temporary",
13536
13536
  onAuthorize: handleAuthorize
13537
13537
  };
13538
13538
  }
13539
13539
  return /* @__PURE__ */ jsxRuntime.jsx(
13540
- chunkNJCK6V6U_cjs.EmailWorkspaceDialogView,
13540
+ chunkL6APDO3Y_cjs.EmailWorkspaceDialogView,
13541
13541
  {
13542
13542
  open,
13543
13543
  onOpenChange,
@@ -14103,9 +14103,9 @@ function ConnectedMailboxSyncDialog({
14103
14103
  showDescription: true,
14104
14104
  className: "w-[92vw] sm:max-w-lg",
14105
14105
  children: [
14106
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncDialogBody, { children: [
14107
- !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncField, { label: "Target workspace", htmlFor: "sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
14108
- chunkNJCK6V6U_cjs.SyncSelect,
14106
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncDialogBody, { children: [
14107
+ !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncField, { label: "Target workspace", htmlFor: "sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
14108
+ chunkL6APDO3Y_cjs.SyncSelect,
14109
14109
  {
14110
14110
  id: "sync-workspace",
14111
14111
  value: workspaceExtId,
@@ -14114,9 +14114,9 @@ function ConnectedMailboxSyncDialog({
14114
14114
  options: memberWorkspaces.map((w) => ({ value: w.external_id, label: w.name }))
14115
14115
  }
14116
14116
  ) }),
14117
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncField, { label: "Backfill window", htmlFor: "sync-backfill", children: [
14117
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncField, { label: "Backfill window", htmlFor: "sync-backfill", children: [
14118
14118
  /* @__PURE__ */ jsxRuntime.jsx(
14119
- chunkNJCK6V6U_cjs.SyncSelect,
14119
+ chunkL6APDO3Y_cjs.SyncSelect,
14120
14120
  {
14121
14121
  id: "sync-backfill",
14122
14122
  value: backfill,
@@ -14136,17 +14136,17 @@ function ConnectedMailboxSyncDialog({
14136
14136
  "aria-label": "Import emails since date"
14137
14137
  }
14138
14138
  ),
14139
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncSmallNote, { children: "Emails are always imported from this date onward \u2014 the start point never moves." })
14139
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncSmallNote, { children: "Emails are always imported from this date onward \u2014 the start point never moves." })
14140
14140
  ] })
14141
14141
  ] }),
14142
14142
  /* @__PURE__ */ jsxRuntime.jsx(
14143
- chunkNJCK6V6U_cjs.SyncField,
14143
+ chunkL6APDO3Y_cjs.SyncField,
14144
14144
  {
14145
14145
  label: `Folders to import${selectedFolders.length > 0 ? ` (${selectedFolders.length})` : ""}`,
14146
14146
  hint: "Select at least one folder to import.",
14147
- actions: folders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncLinkRow, { children: [
14147
+ actions: folders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncLinkRow, { children: [
14148
14148
  /* @__PURE__ */ jsxRuntime.jsx(
14149
- chunkNJCK6V6U_cjs.SyncLinkButton,
14149
+ chunkL6APDO3Y_cjs.SyncLinkButton,
14150
14150
  {
14151
14151
  onClick: () => setExpandAllNonce((n) => n + 1),
14152
14152
  testId: "mail-folders-expand-all",
@@ -14154,20 +14154,20 @@ function ConnectedMailboxSyncDialog({
14154
14154
  }
14155
14155
  ),
14156
14156
  /* @__PURE__ */ jsxRuntime.jsx(
14157
- chunkNJCK6V6U_cjs.SyncLinkButton,
14157
+ chunkL6APDO3Y_cjs.SyncLinkButton,
14158
14158
  {
14159
14159
  onClick: () => setCollapseAllNonce((n) => n + 1),
14160
14160
  testId: "mail-folders-collapse-all",
14161
14161
  children: "Collapse all"
14162
14162
  }
14163
14163
  ),
14164
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncLinkButton, { onClick: toggleAllFolders, children: allSelected ? "Clear all" : "Select all" })
14164
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncLinkButton, { onClick: toggleAllFolders, children: allSelected ? "Clear all" : "Select all" })
14165
14165
  ] }),
14166
- children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncLoading, { children: "Loading folders\u2026" }) : foldersError ? (
14166
+ children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncLoading, { children: "Loading folders\u2026" }) : foldersError ? (
14167
14167
  // A failed fetch is not an empty mailbox: it hides auth/scope errors (e.g. a Gmail
14168
14168
  // account needing reconnect).
14169
14169
  /* @__PURE__ */ jsxRuntime.jsx(
14170
- chunkNJCK6V6U_cjs.SyncReconnectNotice,
14170
+ chunkL6APDO3Y_cjs.SyncReconnectNotice,
14171
14171
  {
14172
14172
  message: `Couldn\u2019t load folders from ${catalog.display_name}. Reconnect the account and try again.`,
14173
14173
  onReconnect: () => void reconnect(),
@@ -14175,7 +14175,7 @@ function ConnectedMailboxSyncDialog({
14175
14175
  testId: "folders-reconnect"
14176
14176
  }
14177
14177
  )
14178
- ) : folders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx(
14178
+ ) : folders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx(
14179
14179
  chunkEOG6OT5I_cjs.MailFolderTree,
14180
14180
  {
14181
14181
  nodes: folderTree,
@@ -14187,9 +14187,9 @@ function ConnectedMailboxSyncDialog({
14187
14187
  ) })
14188
14188
  }
14189
14189
  ),
14190
- isNative ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncNote, { children: turningOff ? "Saving with no folders stops adding new mail from them. What was added stays." : "Only you can see mail added from your mailbox. New mail is added when you open this workspace." }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncOptions, { children: [
14190
+ isNative ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncNote, { children: turningOff ? "Saving with no folders stops adding new mail from them. What was added stays." : "Only you can see mail added from your mailbox. New mail is added when you open this workspace." }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncOptions, { children: [
14191
14191
  /* @__PURE__ */ jsxRuntime.jsx(
14192
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14192
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14193
14193
  {
14194
14194
  checked: skipDuplicates,
14195
14195
  onCheckedChange: setSkipDuplicates,
@@ -14199,7 +14199,7 @@ function ConnectedMailboxSyncDialog({
14199
14199
  }
14200
14200
  ),
14201
14201
  /* @__PURE__ */ jsxRuntime.jsx(
14202
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14202
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14203
14203
  {
14204
14204
  checked: autoRename,
14205
14205
  onCheckedChange: setAutoRename,
@@ -14209,7 +14209,7 @@ function ConnectedMailboxSyncDialog({
14209
14209
  }
14210
14210
  ),
14211
14211
  /* @__PURE__ */ jsxRuntime.jsx(
14212
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14212
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14213
14213
  {
14214
14214
  checked: shared,
14215
14215
  onCheckedChange: setShared,
@@ -14219,7 +14219,7 @@ function ConnectedMailboxSyncDialog({
14219
14219
  }
14220
14220
  ),
14221
14221
  /* @__PURE__ */ jsxRuntime.jsx(
14222
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14222
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14223
14223
  {
14224
14224
  checked: autoSync,
14225
14225
  onCheckedChange: setAutoSync,
@@ -14231,7 +14231,7 @@ function ConnectedMailboxSyncDialog({
14231
14231
  ] })
14232
14232
  ] }),
14233
14233
  /* @__PURE__ */ jsxRuntime.jsx(
14234
- chunkNJCK6V6U_cjs.SyncDialogFooter,
14234
+ chunkL6APDO3Y_cjs.SyncDialogFooter,
14235
14235
  {
14236
14236
  onCancel: () => onOpenChange(false),
14237
14237
  onSave: handleEnableSubmit,
@@ -14293,7 +14293,7 @@ function DriveFolderNode({
14293
14293
  const mightHaveChildren = docCount == null || docCount > 0;
14294
14294
  const orderedChildren = [...children].sort((a, b) => a.name.localeCompare(b.name));
14295
14295
  return /* @__PURE__ */ jsxRuntime.jsx(
14296
- chunkNJCK6V6U_cjs.SyncFolderRow,
14296
+ chunkL6APDO3Y_cjs.SyncFolderRow,
14297
14297
  {
14298
14298
  id: folder.id,
14299
14299
  name: folder.name,
@@ -14307,7 +14307,7 @@ function DriveFolderNode({
14307
14307
  onCheckedChange: () => onToggle(folder.id),
14308
14308
  count: typeof docCount === "number" ? docCount : void 0,
14309
14309
  isCountLoading: isSelectable && countLoading,
14310
- children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncFolderStatus, { depth, kind: "loading" }) : orderedChildren.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncFolderStatus, { depth, kind: "empty" }) : orderedChildren.map((child) => /* @__PURE__ */ jsxRuntime.jsx(
14310
+ children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncFolderStatus, { depth, kind: "loading" }) : orderedChildren.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncFolderStatus, { depth, kind: "empty" }) : orderedChildren.map((child) => /* @__PURE__ */ jsxRuntime.jsx(
14311
14311
  DriveFolderNode,
14312
14312
  {
14313
14313
  vendorKey,
@@ -14453,9 +14453,9 @@ function ConnectedDriveSyncDialog({
14453
14453
  showDescription: true,
14454
14454
  className: "w-[92vw] sm:max-w-lg",
14455
14455
  children: [
14456
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncDialogBody, { children: [
14457
- !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncField, { label: "Target workspace", htmlFor: "drive-sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
14458
- chunkNJCK6V6U_cjs.SyncSelect,
14456
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncDialogBody, { children: [
14457
+ !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncField, { label: "Target workspace", htmlFor: "drive-sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
14458
+ chunkL6APDO3Y_cjs.SyncSelect,
14459
14459
  {
14460
14460
  id: "drive-sync-workspace",
14461
14461
  value: workspaceExtId,
@@ -14465,13 +14465,13 @@ function ConnectedDriveSyncDialog({
14465
14465
  }
14466
14466
  ) }),
14467
14467
  /* @__PURE__ */ jsxRuntime.jsx(
14468
- chunkNJCK6V6U_cjs.SyncField,
14468
+ chunkL6APDO3Y_cjs.SyncField,
14469
14469
  {
14470
14470
  label: `Folders to import${selectedFolders.length > 0 ? ` (${selectedFolders.length})` : ""}`,
14471
14471
  hint: "Select at least one folder. Importing a folder includes everything inside it.",
14472
- actions: orderedFolders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncLinkRow, { children: [
14472
+ actions: orderedFolders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncLinkRow, { children: [
14473
14473
  /* @__PURE__ */ jsxRuntime.jsx(
14474
- chunkNJCK6V6U_cjs.SyncLinkButton,
14474
+ chunkL6APDO3Y_cjs.SyncLinkButton,
14475
14475
  {
14476
14476
  onClick: () => setExpandAllNonce((n) => n + 1),
14477
14477
  testId: "drive-folders-expand-all",
@@ -14479,7 +14479,7 @@ function ConnectedDriveSyncDialog({
14479
14479
  }
14480
14480
  ),
14481
14481
  /* @__PURE__ */ jsxRuntime.jsx(
14482
- chunkNJCK6V6U_cjs.SyncLinkButton,
14482
+ chunkL6APDO3Y_cjs.SyncLinkButton,
14483
14483
  {
14484
14484
  onClick: () => setCollapseAllNonce((n) => n + 1),
14485
14485
  testId: "drive-folders-collapse-all",
@@ -14487,19 +14487,19 @@ function ConnectedDriveSyncDialog({
14487
14487
  }
14488
14488
  )
14489
14489
  ] }),
14490
- children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncLoading, { children: "Loading folders\u2026" }) : needsReconnect ? /* @__PURE__ */ jsxRuntime.jsx(
14491
- chunkNJCK6V6U_cjs.SyncReconnectNotice,
14490
+ children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncLoading, { children: "Loading folders\u2026" }) : needsReconnect ? /* @__PURE__ */ jsxRuntime.jsx(
14491
+ chunkL6APDO3Y_cjs.SyncReconnectNotice,
14492
14492
  {
14493
14493
  ...reconnectButtonProps,
14494
14494
  message: `Reconnect ${catalog.display_name} to enable ${productName} \u2014 your account needs to grant file access.`
14495
14495
  }
14496
14496
  ) : foldersError ? /* @__PURE__ */ jsxRuntime.jsx(
14497
- chunkNJCK6V6U_cjs.SyncReconnectNotice,
14497
+ chunkL6APDO3Y_cjs.SyncReconnectNotice,
14498
14498
  {
14499
14499
  ...reconnectButtonProps,
14500
14500
  message: `Couldn\u2019t load folders from ${productName}. Reconnect the account and try again.`
14501
14501
  }
14502
- ) : orderedFolders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", "data-testid": "drive-folder-tree", children: orderedFolders.map((f) => /* @__PURE__ */ jsxRuntime.jsx(
14502
+ ) : orderedFolders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", "data-testid": "drive-folder-tree", children: orderedFolders.map((f) => /* @__PURE__ */ jsxRuntime.jsx(
14503
14503
  DriveFolderNode,
14504
14504
  {
14505
14505
  vendorKey: catalog.vendor_key,
@@ -14516,9 +14516,9 @@ function ConnectedDriveSyncDialog({
14516
14516
  )) }) })
14517
14517
  }
14518
14518
  ),
14519
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.SyncOptions, { children: [
14519
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.SyncOptions, { children: [
14520
14520
  /* @__PURE__ */ jsxRuntime.jsx(
14521
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14521
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14522
14522
  {
14523
14523
  checked: skipDuplicates,
14524
14524
  onCheckedChange: setSkipDuplicates,
@@ -14527,7 +14527,7 @@ function ConnectedDriveSyncDialog({
14527
14527
  }
14528
14528
  ),
14529
14529
  /* @__PURE__ */ jsxRuntime.jsx(
14530
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14530
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14531
14531
  {
14532
14532
  checked: autoRename,
14533
14533
  onCheckedChange: setAutoRename,
@@ -14536,7 +14536,7 @@ function ConnectedDriveSyncDialog({
14536
14536
  }
14537
14537
  ),
14538
14538
  /* @__PURE__ */ jsxRuntime.jsx(
14539
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14539
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14540
14540
  {
14541
14541
  checked: shared,
14542
14542
  onCheckedChange: setShared,
@@ -14545,7 +14545,7 @@ function ConnectedDriveSyncDialog({
14545
14545
  }
14546
14546
  ),
14547
14547
  /* @__PURE__ */ jsxRuntime.jsx(
14548
- chunkNJCK6V6U_cjs.SyncOptionToggle,
14548
+ chunkL6APDO3Y_cjs.SyncOptionToggle,
14549
14549
  {
14550
14550
  checked: autoSync,
14551
14551
  onCheckedChange: setAutoSync,
@@ -14557,7 +14557,7 @@ function ConnectedDriveSyncDialog({
14557
14557
  ] })
14558
14558
  ] }),
14559
14559
  /* @__PURE__ */ jsxRuntime.jsx(
14560
- chunkNJCK6V6U_cjs.SyncDialogFooter,
14560
+ chunkL6APDO3Y_cjs.SyncDialogFooter,
14561
14561
  {
14562
14562
  onCancel: () => onOpenChange(false),
14563
14563
  onSave: handleEnableSubmit,
@@ -14578,36 +14578,36 @@ function ConnectedSharePointAdminConsentPage({
14578
14578
  const result = givenResult === void 0 ? queryResult : givenResult;
14579
14579
  const { apiBaseUrl } = chunkTKHCIHE2_cjs.useBlocksEnvironment().runtimeConfig;
14580
14580
  const consentUrl = `${apiBaseUrl}/v1/connectors/microsoft_sharepoint/admin-consent`;
14581
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentCard, { size: "md", children: [
14581
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentCard, { size: "md", children: [
14582
14582
  /* @__PURE__ */ jsxRuntime.jsx(
14583
- chunkDDIW4HLU_cjs.ConsentHeader,
14583
+ chunkPVPRVI54_cjs.ConsentHeader,
14584
14584
  {
14585
14585
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkNNUK5ZM7_cjs.VendorLogo, { vendorKey: "microsoft_sharepoint", product: "sharepoint" }),
14586
14586
  title: "Approve ARBI for SharePoint access",
14587
14587
  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."
14588
14588
  }
14589
14589
  ),
14590
- result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_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." }),
14591
- result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_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." }),
14592
- /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentSection, { title: "What you are approving", children: [
14590
+ result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_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." }),
14591
+ result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_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." }),
14592
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentSection, { title: "What you are approving", children: [
14593
14593
  /* @__PURE__ */ jsxRuntime.jsx(
14594
- chunkDDIW4HLU_cjs.ConsentBulletList,
14594
+ chunkPVPRVI54_cjs.ConsentBulletList,
14595
14595
  {
14596
14596
  items: [
14597
14597
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14598
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
14598
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
14599
14599
  " \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."
14600
14600
  ] }),
14601
14601
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14602
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
14602
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
14603
14603
  " \u2014 standard sign-in (openid, profile, email) and offline access so syncs keep working between sessions."
14604
14604
  ] })
14605
14605
  ]
14606
14606
  }
14607
14607
  ),
14608
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_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." }),
14608
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_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." }),
14609
14609
  /* @__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" }) }),
14610
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_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." })
14610
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_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." })
14611
14611
  ] })
14612
14612
  ] }) });
14613
14613
  }
@@ -14648,8 +14648,8 @@ function InvoicesModal({
14648
14648
  key: inv.number ?? String(i),
14649
14649
  date: formatInvoiceDate(inv.date),
14650
14650
  kind: KIND_LABELS2[inv.kind],
14651
- amount: chunkTDO5UWXF_cjs.formatMoney(inv.amount, inv.currency),
14652
- amountNote: inv.amount_ex_vat != null && inv.amount_ex_vat !== inv.amount ? `${chunkTDO5UWXF_cjs.formatMoney(inv.amount_ex_vat, inv.currency)} ex VAT` : void 0,
14651
+ amount: chunkO4F77VSO_cjs.formatMoney(inv.amount, inv.currency),
14652
+ amountNote: inv.amount_ex_vat != null && inv.amount_ex_vat !== inv.amount ? `${chunkO4F77VSO_cjs.formatMoney(inv.amount_ex_vat, inv.currency)} ex VAT` : void 0,
14653
14653
  status: inv.status,
14654
14654
  isPaid: isPaid2,
14655
14655
  href: inv.hosted_invoice_url ?? inv.url ?? inv.pdf_url ?? void 0,
@@ -14657,7 +14657,7 @@ function InvoicesModal({
14657
14657
  };
14658
14658
  });
14659
14659
  return /* @__PURE__ */ jsxRuntime.jsx(
14660
- chunkNJCK6V6U_cjs.InvoicesDialog,
14660
+ chunkL6APDO3Y_cjs.InvoicesDialog,
14661
14661
  {
14662
14662
  open,
14663
14663
  onOpenChange,
@@ -14674,11 +14674,11 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
14674
14674
  const [collaboratorBlocks, setCollaboratorBlocks] = react$1.useState(0);
14675
14675
  const [checkout, setCheckout] = react$1.useState(null);
14676
14676
  const [checkoutOpen, setCheckoutOpen] = react$1.useState(false);
14677
- if (isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { children: "Loading prices\u2026" });
14678
- if (error) return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { tone: "error", children: "Prices didn't load. Try again." });
14679
- if (!products?.length) return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { children: "No plans available." });
14677
+ if (isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { children: "Loading prices\u2026" });
14678
+ if (error) return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { tone: "error", children: "Prices didn't load. Try again." });
14679
+ if (!products?.length) return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { children: "No plans available." });
14680
14680
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14681
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PlanStack, { children: [
14681
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PlanStack, { children: [
14682
14682
  /* @__PURE__ */ jsxRuntime.jsx(
14683
14683
  ProjectPurchaseOptions,
14684
14684
  {
@@ -14701,7 +14701,7 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
14701
14701
  checkout && /* @__PURE__ */ jsxRuntime.jsx(
14702
14702
  StripeCheckoutModal,
14703
14703
  {
14704
- price: chunkTDO5UWXF_cjs.findProPrices(products)[checkout.interval === "year" ? "annual" : "monthly"],
14704
+ price: chunkO4F77VSO_cjs.findProPrices(products)[checkout.interval === "year" ? "annual" : "monthly"],
14705
14705
  projectExtId,
14706
14706
  interval: checkout.interval,
14707
14707
  addonBudgetPence: checkout.capPence,
@@ -14748,7 +14748,7 @@ var FALLBACK_MESSAGES = {
14748
14748
  BILLING_ADDRESS_REQUIRED: "Add a billing address first."
14749
14749
  };
14750
14750
  function addonErrorMessage(error) {
14751
- const detail = chunkTDO5UWXF_cjs.apiErrorDetail(error);
14751
+ const detail = chunkO4F77VSO_cjs.apiErrorDetail(error);
14752
14752
  if (detail && typeof detail === "object") {
14753
14753
  const { code, message } = detail;
14754
14754
  if (message) return message;
@@ -14774,14 +14774,14 @@ function chargeRefusalMessage(error) {
14774
14774
  return code ? REFUSALS[code] : null;
14775
14775
  }
14776
14776
  function addonErrorCode(error) {
14777
- const detail = chunkTDO5UWXF_cjs.apiErrorDetail(error);
14777
+ const detail = chunkO4F77VSO_cjs.apiErrorDetail(error);
14778
14778
  if (detail && typeof detail === "object") {
14779
14779
  const code = detail.code;
14780
14780
  if (code && code in FALLBACK_MESSAGES) return code;
14781
14781
  }
14782
14782
  return null;
14783
14783
  }
14784
- var addedMessage = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `${react.formatGbp(blockAiGbp ?? chunkTDO5UWXF_cjs.ADDON_BLOCK_AI_GBP)} of AI credits added` : `${blockStorageGb ?? chunkTDO5UWXF_cjs.STORAGE_BLOCK_GB} GB added`;
14784
+ var addedMessage = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `${react.formatGbp(blockAiGbp ?? chunkO4F77VSO_cjs.ADDON_BLOCK_AI_GBP)} of AI credits added` : `${blockStorageGb ?? chunkO4F77VSO_cjs.STORAGE_BLOCK_GB} GB added`;
14785
14785
  function useAddonPurchase() {
14786
14786
  const addBlock = react.useAddProjectAddonBlock();
14787
14787
  const { mutate } = addBlock;
@@ -14831,14 +14831,14 @@ function useAddonPurchase() {
14831
14831
  function ConnectedReferralRewardNote() {
14832
14832
  const reward = useReferralReward();
14833
14833
  if (!reward) return null;
14834
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ReferralRewardNote, { amountLabel: chunkTDO5UWXF_cjs.formatMoney(reward.amount, reward.currency) });
14834
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ReferralRewardNote, { amountLabel: chunkO4F77VSO_cjs.formatMoney(reward.amount, reward.currency) });
14835
14835
  }
14836
14836
  function PlanChangeLines({
14837
14837
  preview,
14838
14838
  isError,
14839
14839
  className
14840
14840
  }) {
14841
- const lines = preview ? chunkTDO5UWXF_cjs.planPreviewLines(preview) : [{ id: "pay-today", text: isError ? chunkTDO5UWXF_cjs.PAY_TODAY_UNPRICED : "Checking price\u2026" }];
14841
+ const lines = preview ? chunkO4F77VSO_cjs.planPreviewLines(preview) : [{ id: "pay-today", text: isError ? chunkO4F77VSO_cjs.PAY_TODAY_UNPRICED : "Checking price\u2026" }];
14842
14842
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className, "data-testid": "plan-change-lines", children: lines.map((line) => /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": `plan-change-${line.id}`, children: line.text }, line.id)) });
14843
14843
  }
14844
14844
  var BANK_CONFIRM_PLAN_CHANGE = "Confirm with your bank. Nothing is charged until you do.";
@@ -14846,13 +14846,13 @@ function notifyPlanChange(data, fallback, planName2) {
14846
14846
  const outcome = data?.plan_change;
14847
14847
  switch (outcome?.result) {
14848
14848
  case "upgraded": {
14849
- const plan = chunkTDO5UWXF_cjs.planNameForPacks(data?.addons?.packs ?? data?.packs);
14850
- const charged = outcome.charged_pence > 0 ? ` \xB7 ${chunkTDO5UWXF_cjs.formatMoney(outcome.charged_pence, "gbp")} charged` : "";
14849
+ const plan = chunkO4F77VSO_cjs.planNameForPacks(data?.addons?.packs ?? data?.packs);
14850
+ const charged = outcome.charged_pence > 0 ? ` \xB7 ${chunkO4F77VSO_cjs.formatMoney(outcome.charged_pence, "gbp")} charged` : "";
14851
14851
  shell.notify.success(`Upgraded to ${plan}${charged}`);
14852
14852
  break;
14853
14853
  }
14854
14854
  case "scheduled": {
14855
- const when2 = chunkTDO5UWXF_cjs.formatPeriodEnd(data?.addons?.period_end ?? data?.current_period_end);
14855
+ const when2 = chunkO4F77VSO_cjs.formatPeriodEnd(data?.addons?.period_end ?? data?.current_period_end);
14856
14856
  shell.notify.success(when2 ? `Scheduled for ${when2}` : fallback);
14857
14857
  break;
14858
14858
  }
@@ -14885,23 +14885,23 @@ function ChangeProPlan({
14885
14885
  const { data: products } = react.useProducts();
14886
14886
  const changePlan = react.useChangeProjectPlan();
14887
14887
  const cancel = react.useCancelProjectSubscription();
14888
- const prices = chunkTDO5UWXF_cjs.findProPrices(products);
14888
+ const prices = chunkO4F77VSO_cjs.findProPrices(products);
14889
14889
  const addons = project.addons;
14890
14890
  const isCanceling = project.cancel_at_period_end === true || project.subscription === "canceled";
14891
- const currentPacks = Math.max(addons?.packs ?? project.packs ?? chunkTDO5UWXF_cjs.PRO_PACKS, chunkTDO5UWXF_cjs.PRO_PACKS);
14892
- const isLegacyMultiPack = currentPacks > chunkTDO5UWXF_cjs.PRO_PACKS;
14891
+ const currentPacks = Math.max(addons?.packs ?? project.packs ?? chunkO4F77VSO_cjs.PRO_PACKS, chunkO4F77VSO_cjs.PRO_PACKS);
14892
+ const isLegacyMultiPack = currentPacks > chunkO4F77VSO_cjs.PRO_PACKS;
14893
14893
  const currentInterval = project.plan_interval === "year" ? "year" : "month";
14894
14894
  const scheduledPacks = isCanceling ? 0 : addons?.packs_next ?? currentPacks;
14895
14895
  const scheduledInterval = addons?.pending_interval ?? currentInterval;
14896
14896
  const [targetPacks, setTargetPacks] = react$1.useState(scheduledPacks);
14897
14897
  const [chosenInterval, setChosenInterval] = react$1.useState(scheduledInterval);
14898
- const targetInterval = targetPacks > chunkTDO5UWXF_cjs.PRO_PACKS ? currentInterval : chosenInterval;
14898
+ const targetInterval = targetPacks > chunkO4F77VSO_cjs.PRO_PACKS ? currentInterval : chosenInterval;
14899
14899
  const periodEnd = formatDate(addons?.period_end ?? project.current_period_end);
14900
14900
  const when2 = periodEnd ?? "the end of the period";
14901
14901
  const shortWhen = periodEnd ? periodEnd.replace(/ \d{4}$/, "") : "period end";
14902
14902
  const isPending = changePlan.isPending || cancel.isPending;
14903
14903
  const sameAsScheduled = targetPacks === scheduledPacks && (targetPacks === 0 || targetInterval === scheduledInterval);
14904
- const packOptions = isLegacyMultiPack ? [currentPacks, chunkTDO5UWXF_cjs.PRO_PACKS, 0] : [chunkTDO5UWXF_cjs.PRO_PACKS, 0];
14904
+ const packOptions = isLegacyMultiPack ? [currentPacks, chunkO4F77VSO_cjs.PRO_PACKS, 0] : [chunkO4F77VSO_cjs.PRO_PACKS, 0];
14905
14905
  const intervalPrice = targetInterval === "year" ? prices.annual : prices.monthly;
14906
14906
  const currency = intervalPrice?.currency ?? project.currency ?? "gbp";
14907
14907
  const preview = react.usePreviewProjectPlanChange(
@@ -14910,7 +14910,7 @@ function ChangeProPlan({
14910
14910
  );
14911
14911
  const noChange = sameAsScheduled || preview.data?.unchanged === true;
14912
14912
  const isPersonal = project.is_personal === true;
14913
- const nameFor = (packs) => packs === 0 && !isPersonal ? "Cancel subscription" : packs === currentPacks && packs > 0 ? chunkTDO5UWXF_cjs.proTierName(project) : chunkTDO5UWXF_cjs.planNameForPacks(packs);
14913
+ const nameFor = (packs) => packs === 0 && !isPersonal ? "Cancel subscription" : packs === currentPacks && packs > 0 ? chunkO4F77VSO_cjs.proTierName(project) : chunkO4F77VSO_cjs.planNameForPacks(packs);
14914
14914
  const effects = [];
14915
14915
  const target = nameFor(targetPacks);
14916
14916
  if (targetPacks === 0) {
@@ -14922,7 +14922,7 @@ function ChangeProPlan({
14922
14922
  if (targetPacks < currentPacks) {
14923
14923
  effects.push(`Changes to one Pro licence on ${when2}. No refund.`);
14924
14924
  } else if (!isCanceling && addons?.packs_next != null) {
14925
- effects.push(`Cancels the change to ${chunkTDO5UWXF_cjs.planNameForPacks(addons.packs_next)}.`);
14925
+ effects.push(`Cancels the change to ${chunkO4F77VSO_cjs.planNameForPacks(addons.packs_next)}.`);
14926
14926
  }
14927
14927
  if (targetInterval !== currentInterval) {
14928
14928
  effects.push(`${targetInterval === "year" ? "Annual" : "Monthly"} billing from ${when2}.`);
@@ -14961,33 +14961,33 @@ function ChangeProPlan({
14961
14961
  if (packs === 0) {
14962
14962
  return {
14963
14963
  total: isPersonal ? "\xA30" : void 0,
14964
- summary: isPersonal ? `${react.formatGbp(chunkTDO5UWXF_cjs.FREE_AI_GBP)} of AI credits \xB7 ${chunkTDO5UWXF_cjs.FREE_STORAGE_MB} MB \xB7 just you` : "Suspended after the paid period. 30 days to export or resubscribe."
14964
+ summary: isPersonal ? `${react.formatGbp(chunkO4F77VSO_cjs.FREE_AI_GBP)} of AI credits \xB7 ${chunkO4F77VSO_cjs.FREE_STORAGE_MB} MB \xB7 just you` : "Suspended after the paid period. 30 days to export or resubscribe."
14965
14965
  };
14966
14966
  }
14967
- const allowance = `${react.formatGbp(chunkTDO5UWXF_cjs.PRO_AI_GBP * packs)} of AI credits \xB7 ${chunkTDO5UWXF_cjs.PRO_STORAGE_GB * packs} GB`;
14968
- const legacy = packs > chunkTDO5UWXF_cjs.PRO_PACKS;
14969
- const exVat = legacy ? project.amount_ex_vat : chunkTDO5UWXF_cjs.packPrice(intervalPrice)?.amount_ex_vat;
14967
+ const allowance = `${react.formatGbp(chunkO4F77VSO_cjs.PRO_AI_GBP * packs)} of AI credits \xB7 ${chunkO4F77VSO_cjs.PRO_STORAGE_GB * packs} GB`;
14968
+ const legacy = packs > chunkO4F77VSO_cjs.PRO_PACKS;
14969
+ const exVat = legacy ? project.amount_ex_vat : chunkO4F77VSO_cjs.packPrice(intervalPrice)?.amount_ex_vat;
14970
14970
  return {
14971
- total: exVat != null ? chunkTDO5UWXF_cjs.plusVat(exVat, currency) : void 0,
14971
+ total: exVat != null ? chunkO4F77VSO_cjs.plusVat(exVat, currency) : void 0,
14972
14972
  summary: allowance
14973
14973
  };
14974
14974
  };
14975
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PlanStack, { gap: 4, testId: "change-pro-plan", children: [
14975
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PlanStack, { gap: 4, testId: "change-pro-plan", children: [
14976
14976
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [
14977
14977
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-foreground", children: "Billing" }),
14978
- targetPacks > chunkTDO5UWXF_cjs.PRO_PACKS ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-muted-foreground", "data-testid": "change-plan-interval-fixed", children: currentInterval === "year" ? "Annual" : "Monthly" }) : /* @__PURE__ */ jsxRuntime.jsx(
14979
- chunkNJCK6V6U_cjs.PricingToggle,
14978
+ targetPacks > chunkO4F77VSO_cjs.PRO_PACKS ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-muted-foreground", "data-testid": "change-plan-interval-fixed", children: currentInterval === "year" ? "Annual" : "Monthly" }) : /* @__PURE__ */ jsxRuntime.jsx(
14979
+ chunkL6APDO3Y_cjs.PricingToggle,
14980
14980
  {
14981
14981
  isAnnual: targetInterval === "year",
14982
14982
  onToggle: () => setChosenInterval(targetInterval === "year" ? "month" : "year"),
14983
- savingsPercent: chunkTDO5UWXF_cjs.calcSavingsPercent(prices.monthly, prices.annual)
14983
+ savingsPercent: chunkO4F77VSO_cjs.calcSavingsPercent(prices.monthly, prices.annual)
14984
14984
  }
14985
14985
  )
14986
14986
  ] }),
14987
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanStack, { gap: 2, children: packOptions.map((packs) => {
14987
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanStack, { gap: 2, children: packOptions.map((packs) => {
14988
14988
  const { total, summary } = optionFor(packs);
14989
14989
  return /* @__PURE__ */ jsxRuntime.jsx(
14990
- chunkNJCK6V6U_cjs.PlanTierOption,
14990
+ chunkL6APDO3Y_cjs.PlanTierOption,
14991
14991
  {
14992
14992
  onSelect: setTargetPacks,
14993
14993
  option: {
@@ -15004,13 +15004,13 @@ function ChangeProPlan({
15004
15004
  );
15005
15005
  }) }),
15006
15006
  isLegacyMultiPack && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1", children: [
15007
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PlanNotice, { className: "text-xs", testId: "change-plan-legacy-note", children: [
15008
- chunkTDO5UWXF_cjs.proTierName(project),
15007
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PlanNotice, { className: "text-xs", testId: "change-plan-legacy-note", children: [
15008
+ chunkO4F77VSO_cjs.proTierName(project),
15009
15009
  " is no longer sold"
15010
15010
  ] }),
15011
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.MoreInfo, { title: "Legacy plan", testId: "change-plan-legacy-more-info", children: [
15011
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.MoreInfo, { title: "Legacy plan", testId: "change-plan-legacy-more-info", children: [
15012
15012
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
15013
- chunkTDO5UWXF_cjs.proTierName(project),
15013
+ chunkO4F77VSO_cjs.proTierName(project),
15014
15014
  " keeps renewing at its own price, with its allowance and add-ons, until you change it."
15015
15015
  ] }),
15016
15016
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
@@ -15031,7 +15031,7 @@ function ChangeProPlan({
15031
15031
  ),
15032
15032
  targetPacks > 0 && /* @__PURE__ */ jsxRuntime.jsx(ConnectedReferralRewardNote, {}),
15033
15033
  /* @__PURE__ */ jsxRuntime.jsx(
15034
- chunkNJCK6V6U_cjs.PlanActionButton,
15034
+ chunkL6APDO3Y_cjs.PlanActionButton,
15035
15035
  {
15036
15036
  onClick: apply,
15037
15037
  disabled: noChange || isPending,
@@ -15042,9 +15042,9 @@ function ChangeProPlan({
15042
15042
  ] });
15043
15043
  }
15044
15044
  function ChangePlanDialog({ project, open, onOpenChange }) {
15045
- const isPro = !!project && chunkTDO5UWXF_cjs.isProProject(project);
15045
+ const isPro = !!project && chunkO4F77VSO_cjs.isProProject(project);
15046
15046
  return /* @__PURE__ */ jsxRuntime.jsx(
15047
- chunkNJCK6V6U_cjs.PlanDialogFrame,
15047
+ chunkL6APDO3Y_cjs.PlanDialogFrame,
15048
15048
  {
15049
15049
  compact: !isPro,
15050
15050
  className: isPro ? void 0 : "project-purchase-upgrade",
@@ -15067,14 +15067,14 @@ function ChangePlanDialog({ project, open, onOpenChange }) {
15067
15067
  }
15068
15068
  function ProjectsTable() {
15069
15069
  const { data: projects, isLoading } = react.useProjects();
15070
- const currentUserExtId = chunkTDO5UWXF_cjs.useSelfExtId();
15070
+ const currentUserExtId = chunkO4F77VSO_cjs.useSelfExtId();
15071
15071
  const { openProject } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
15072
15072
  const updateProject = react.useUpdateProjectFields();
15073
15073
  const [renameTarget, setRenameTarget] = react$1.useState(null);
15074
15074
  const [renameValue, setRenameValue] = react$1.useState("");
15075
15075
  const [invoicesTarget, setInvoicesTarget] = react$1.useState(null);
15076
15076
  const [upgradeTarget, setUpgradeTarget] = react$1.useState(null);
15077
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
15077
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
15078
15078
  const ownedProjects = react$1.useMemo(
15079
15079
  () => (projects ?? []).filter((p) => p.created_by === currentUserExtId),
15080
15080
  [projects, currentUserExtId]
@@ -15113,13 +15113,13 @@ function ProjectsTable() {
15113
15113
  const hasPaid = p.subscription === "active" || p.subscription === "past_due";
15114
15114
  const canUpgrade = stripeEnabled && !hasPaid && p.subscription !== "canceled" && p.subscription !== "dev";
15115
15115
  return /* @__PURE__ */ jsxRuntime.jsx(
15116
- chunkNJCK6V6U_cjs.ProjectRow,
15116
+ chunkL6APDO3Y_cjs.ProjectRow,
15117
15117
  {
15118
15118
  testId: `project-row-${p.external_id}`,
15119
15119
  onOpen: () => openProject(p.external_id),
15120
15120
  identity: /* @__PURE__ */ jsxRuntime.jsx(ConnectedProjectEntity, { name: p.name, relation: "mine", subscription: p.subscription }),
15121
- summary: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center whitespace-nowrap", children: /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanBadge, { ...chunkTDO5UWXF_cjs.planBadgeView(p) }) }) : void 0,
15122
- usage: p.quotas ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.QuotaMeter, { items: chunkTDO5UWXF_cjs.getQuotaItems(p.quotas), size: "lg" }) : void 0,
15121
+ summary: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center whitespace-nowrap", children: /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanBadge, { ...chunkO4F77VSO_cjs.planBadgeView(p) }) }) : void 0,
15122
+ usage: p.quotas ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.QuotaMeter, { items: chunkO4F77VSO_cjs.getQuotaItems(p.quotas), size: "lg" }) : void 0,
15123
15123
  actions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
15124
15124
  canUpgrade && /* @__PURE__ */ jsxRuntime.jsxs(
15125
15125
  ui.Button,
@@ -15153,9 +15153,9 @@ function ProjectsTable() {
15153
15153
  );
15154
15154
  };
15155
15155
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
15156
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ProjectList, { isLoading, isEmpty: ownedProjects.length === 0, isFilteredOut: false, children: ownedProjects.map(renderRow) }),
15156
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ProjectList, { isLoading, isEmpty: ownedProjects.length === 0, isFilteredOut: false, children: ownedProjects.map(renderRow) }),
15157
15157
  /* @__PURE__ */ jsxRuntime.jsx(
15158
- chunkNJCK6V6U_cjs.RenameDialog,
15158
+ chunkL6APDO3Y_cjs.RenameDialog,
15159
15159
  {
15160
15160
  open: !!renameTarget,
15161
15161
  onClose: () => setRenameTarget(null),
@@ -15186,7 +15186,7 @@ function ProjectsTable() {
15186
15186
  }
15187
15187
  function SharedProjects() {
15188
15188
  const { data: projects } = react.useProjects();
15189
- const currentUserExtId = chunkTDO5UWXF_cjs.useSelfExtId();
15189
+ const currentUserExtId = chunkO4F77VSO_cjs.useSelfExtId();
15190
15190
  const { data: usageToday } = react.useUserUsageToday();
15191
15191
  const shared = react$1.useMemo(
15192
15192
  () => (projects ?? []).filter((p) => p.created_by !== currentUserExtId),
@@ -15195,13 +15195,13 @@ function SharedProjects() {
15195
15195
  if (shared.length === 0) return null;
15196
15196
  const usedToday = usageToday?.used_gbp ?? 0;
15197
15197
  return /* @__PURE__ */ jsxRuntime.jsx(
15198
- chunkNJCK6V6U_cjs.SharedProjectsSection,
15198
+ chunkL6APDO3Y_cjs.SharedProjectsSection,
15199
15199
  {
15200
15200
  footnote: `Your daily AI credits allowance in ${ui.entityNoun("PROJECT", "PLURAL")} other people run \u2014 their plan and billing are theirs.`,
15201
15201
  children: shared.map((p) => {
15202
15202
  const cap = p.daily_cap_per_user;
15203
15203
  return /* @__PURE__ */ jsxRuntime.jsx(
15204
- chunkNJCK6V6U_cjs.SharedProjectRow,
15204
+ chunkL6APDO3Y_cjs.SharedProjectRow,
15205
15205
  {
15206
15206
  testId: `shared-project-${p.external_id}`,
15207
15207
  identity: /* @__PURE__ */ jsxRuntime.jsx(ConnectedProjectEntity, { name: p.name, relation: "other" }),
@@ -15308,10 +15308,10 @@ function CollaboratorPlan({ project }) {
15308
15308
  const next = addons.collaborator_blocks_next ?? blocks;
15309
15309
  const included = addons.included_collaborators ?? 0;
15310
15310
  const size = addons.block_collaborators ?? 0;
15311
- const from = chunkTDO5UWXF_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "the next billing period";
15311
+ const from = chunkO4F77VSO_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "the next billing period";
15312
15312
  const annual = project.plan_interval === "year";
15313
- const now = quote.data ? chunkTDO5UWXF_cjs.quoteParts(quote.data.now) : null;
15314
- const renewal = quote.data ? chunkTDO5UWXF_cjs.quoteParts(quote.data.renewal) : null;
15313
+ const now = quote.data ? chunkO4F77VSO_cjs.quoteParts(quote.data.now) : null;
15314
+ const renewal = quote.data ? chunkO4F77VSO_cjs.quoteParts(quote.data.renewal) : null;
15315
15315
  const busy = add.isPending || update.isPending;
15316
15316
  const setNext = (count2) => update.mutate(
15317
15317
  { projectExtId: project.external_id, body: { collaborator_blocks: count2 } },
@@ -15350,7 +15350,7 @@ function CollaboratorPlan({ project }) {
15350
15350
  project.quotas.collaborators.limit,
15351
15351
  " available \xB7 you don't count towards the limit."
15352
15352
  ] }),
15353
- /* @__PURE__ */ jsxRuntime.jsx("p", { children: addons.collaborator_block_period_ex_vat_pence != null ? `${chunkTDO5UWXF_cjs.formatMoney(addons.collaborator_block_period_ex_vat_pence, project.currency ?? "gbp")}/${annual ? "year" : "month"} per pack, plus tax.` : "The price is confirmed before purchase." }),
15353
+ /* @__PURE__ */ jsxRuntime.jsx("p", { children: addons.collaborator_block_period_ex_vat_pence != null ? `${chunkO4F77VSO_cjs.formatMoney(addons.collaborator_block_period_ex_vat_pence, project.currency ?? "gbp")}/${annual ? "year" : "month"} per pack, plus tax.` : "The price is confirmed before purchase." }),
15354
15354
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "Adding a pack charges your saved card for the rest of this billing period, then renews until removed. Collaborators share the project's AI credits budget." }),
15355
15355
  /* @__PURE__ */ jsxRuntime.jsxs(
15356
15356
  ui.Button,
@@ -15413,20 +15413,20 @@ function CollaboratorPlan({ project }) {
15413
15413
  now && renewal && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2 text-sm", children: [
15414
15414
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
15415
15415
  "Pay ",
15416
- chunkTDO5UWXF_cjs.money2(now.total),
15416
+ chunkO4F77VSO_cjs.money2(now.total),
15417
15417
  " today (",
15418
- chunkTDO5UWXF_cjs.taxDetail(now),
15418
+ chunkO4F77VSO_cjs.taxDetail(now),
15419
15419
  "), covering until ",
15420
15420
  from,
15421
15421
  "."
15422
15422
  ] }),
15423
15423
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
15424
15424
  "Then ",
15425
- chunkTDO5UWXF_cjs.money2(renewal.total),
15425
+ chunkO4F77VSO_cjs.money2(renewal.total),
15426
15426
  " every ",
15427
15427
  annual ? "year" : "month",
15428
15428
  " (",
15429
- chunkTDO5UWXF_cjs.taxDetail(renewal),
15429
+ chunkO4F77VSO_cjs.taxDetail(renewal),
15430
15430
  "), starting ",
15431
15431
  from,
15432
15432
  ", until you remove the pack."
@@ -15439,7 +15439,7 @@ function CollaboratorPlan({ project }) {
15439
15439
  ] }),
15440
15440
  /* @__PURE__ */ jsxRuntime.jsxs(ui.DialogFooter, { children: [
15441
15441
  /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { variant: "outline", onClick: () => setOpen(false), children: "Cancel" }),
15442
- /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { onClick: buy, disabled: !now || !renewal || quote.isFetching || busy, children: add.isPending ? "Paying\u2026" : now ? `Pay ${chunkTDO5UWXF_cjs.money2(now.total)}` : "Add collaborators" })
15442
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { onClick: buy, disabled: !now || !renewal || quote.isFetching || busy, children: add.isPending ? "Paying\u2026" : now ? `Pay ${chunkO4F77VSO_cjs.money2(now.total)}` : "Add collaborators" })
15443
15443
  ] })
15444
15444
  ] }) })
15445
15445
  ] });
@@ -15470,7 +15470,7 @@ function DailyCapEditor({ project }) {
15470
15470
  );
15471
15471
  };
15472
15472
  return /* @__PURE__ */ jsxRuntime.jsx(
15473
- chunkNJCK6V6U_cjs.DailyCapField,
15473
+ chunkL6APDO3Y_cjs.DailyCapField,
15474
15474
  {
15475
15475
  value,
15476
15476
  onChange: setValue,
@@ -15483,11 +15483,11 @@ function DailyCapEditor({ project }) {
15483
15483
  function SubscriptionStatus({ project }) {
15484
15484
  const { quotas, cancel_at_period_end, subscription, current_period_end, addons } = project;
15485
15485
  return /* @__PURE__ */ jsxRuntime.jsx(
15486
- chunkNJCK6V6U_cjs.SubscriptionStatusView,
15486
+ chunkL6APDO3Y_cjs.SubscriptionStatusView,
15487
15487
  {
15488
- resetDate: chunkTDO5UWXF_cjs.formatResetDate(addons?.ai_usage_reset_at ?? current_period_end),
15488
+ resetDate: chunkO4F77VSO_cjs.formatResetDate(addons?.ai_usage_reset_at ?? current_period_end),
15489
15489
  isCanceling: subscription === "canceled" || cancel_at_period_end === true,
15490
- meters: chunkTDO5UWXF_cjs.getQuotaItems(quotas).map((q) => ({
15490
+ meters: chunkO4F77VSO_cjs.getQuotaItems(quotas).map((q) => ({
15491
15491
  key: q.key,
15492
15492
  icon: q.icon,
15493
15493
  label: q.label,
@@ -15551,7 +15551,7 @@ function PendingChange({
15551
15551
  }
15552
15552
  );
15553
15553
  }
15554
- var titleFor = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `Add ${react.formatGbp(blockAiGbp ?? chunkTDO5UWXF_cjs.ADDON_BLOCK_AI_GBP)} of AI credits` : `Add ${blockStorageGb ?? chunkTDO5UWXF_cjs.STORAGE_BLOCK_GB} GB storage`;
15554
+ var titleFor = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `Add ${react.formatGbp(blockAiGbp ?? chunkO4F77VSO_cjs.ADDON_BLOCK_AI_GBP)} of AI credits` : `Add ${blockStorageGb ?? chunkO4F77VSO_cjs.STORAGE_BLOCK_GB} GB storage`;
15555
15555
  var blocksOf = (kind, project) => (kind === "ai_usage" ? project.addons?.ai_blocks : project.addons?.storage_blocks) ?? 0;
15556
15556
  function Row({ label, children }) {
15557
15557
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-baseline justify-between gap-4", children: [
@@ -15572,11 +15572,11 @@ function AddAddonDialog({
15572
15572
  const addons = project.addons;
15573
15573
  if (!addons) return null;
15574
15574
  const isAnnual = project.plan_interval === "year";
15575
- const price = chunkTDO5UWXF_cjs.addonCharge(kind, addons, isAnnual, addons.period_end ?? project.current_period_end);
15576
- const nextCharge = chunkTDO5UWXF_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
15577
- const now = quote.data ? chunkTDO5UWXF_cjs.quoteParts(quote.data.now) : null;
15578
- const renewal = quote.data ? chunkTDO5UWXF_cjs.quoteParts(quote.data.renewal) : null;
15579
- const today = now ? { total: chunkTDO5UWXF_cjs.money2(now.total), detail: chunkTDO5UWXF_cjs.taxDetail(now) } : { total: price.now, detail: `incl. VAT (${price.nowExVat} + ${price.nowVat} VAT)` };
15575
+ const price = chunkO4F77VSO_cjs.addonCharge(kind, addons, isAnnual, addons.period_end ?? project.current_period_end);
15576
+ const nextCharge = chunkO4F77VSO_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
15577
+ const now = quote.data ? chunkO4F77VSO_cjs.quoteParts(quote.data.now) : null;
15578
+ const renewal = quote.data ? chunkO4F77VSO_cjs.quoteParts(quote.data.renewal) : null;
15579
+ const today = now ? { total: chunkO4F77VSO_cjs.money2(now.total), detail: chunkO4F77VSO_cjs.taxDetail(now) } : { total: price.now, detail: `incl. VAT (${price.nowExVat} + ${price.nowVat} VAT)` };
15580
15580
  const pricing = quote.isLoading;
15581
15581
  const confirm = () => {
15582
15582
  const before = blocksOf(kind, project);
@@ -15615,8 +15615,8 @@ function AddAddonDialog({
15615
15615
  isAnnual ? "yearly" : "monthly",
15616
15616
  " \xB7 no refund"
15617
15617
  ] }),
15618
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.MoreInfo, { title: "Adding a top-up", testId: "add-addon-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
15619
- chunkNJCK6V6U_cjs.MoreInfoList,
15618
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.MoreInfo, { title: "Adding a top-up", testId: "add-addon-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
15619
+ chunkL6APDO3Y_cjs.MoreInfoList,
15620
15620
  {
15621
15621
  items: [
15622
15622
  {
@@ -15631,7 +15631,7 @@ function AddAddonDialog({
15631
15631
  term: "Usage cap",
15632
15632
  text: "Adding by hand is never blocked by the usage cap; the cap limits automatic top-ups only."
15633
15633
  },
15634
- ...isAnnual && kind === "ai_usage" ? [{ term: "Annual", text: `${chunkTDO5UWXF_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : []
15634
+ ...isAnnual && kind === "ai_usage" ? [{ term: "Annual", text: `${chunkO4F77VSO_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : []
15635
15635
  ]
15636
15636
  }
15637
15637
  ) })
@@ -15654,7 +15654,7 @@ function AddAddonDialog({
15654
15654
  )
15655
15655
  ] }) }),
15656
15656
  !pricing && /* @__PURE__ */ jsxRuntime.jsxs(Row, { label: "Next charge", children: [
15657
- renewal ? chunkTDO5UWXF_cjs.totalWithTaxWord(renewal) : price.then.replace(/\/(month|year)/, ""),
15657
+ renewal ? chunkO4F77VSO_cjs.totalWithTaxWord(renewal) : price.then.replace(/\/(month|year)/, ""),
15658
15658
  nextCharge ? ` on ${nextCharge}` : " at renewal"
15659
15659
  ] })
15660
15660
  ] }) }),
@@ -15685,11 +15685,11 @@ function ReduceAddonDialog({
15685
15685
  const update = react.useUpdateProjectNextPeriodAddons();
15686
15686
  const addons = project.addons;
15687
15687
  if (!addons) return null;
15688
- const { min, next } = chunkTDO5UWXF_cjs.reduceBounds(kind, addons);
15688
+ const { min, next } = chunkO4F77VSO_cjs.reduceBounds(kind, addons);
15689
15689
  const keep2 = Math.max(min, next - 1);
15690
- const size = chunkTDO5UWXF_cjs.nextRemovedBlockSize(kind, addons);
15691
- const what = chunkTDO5UWXF_cjs.stepLabel(kind, size);
15692
- const from = chunkTDO5UWXF_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "your next renewal";
15690
+ const size = chunkO4F77VSO_cjs.nextRemovedBlockSize(kind, addons);
15691
+ const what = chunkO4F77VSO_cjs.stepLabel(kind, size);
15692
+ const from = chunkO4F77VSO_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "your next renewal";
15693
15693
  const fromShort = from.replace(/ \d{4}$/, "");
15694
15694
  const allowanceNext = kind === "ai_usage" ? addons.ai_allowance_next_gbp - size : addons.storage_allowance_next_gb - size;
15695
15695
  const allowanceNow = kind === "ai_usage" ? addons.ai_allowance_gbp : addons.storage_allowance_gb;
@@ -15697,7 +15697,7 @@ function ReduceAddonDialog({
15697
15697
  const save = () => update.mutate(
15698
15698
  {
15699
15699
  projectExtId: project.external_id,
15700
- body: chunkTDO5UWXF_cjs.nextPeriodBody(kind, keep2)
15700
+ body: chunkO4F77VSO_cjs.nextPeriodBody(kind, keep2)
15701
15701
  },
15702
15702
  {
15703
15703
  onSuccess: () => {
@@ -15725,7 +15725,7 @@ function ReduceAddonDialog({
15725
15725
  fromShort,
15726
15726
  " \xB7 no refund"
15727
15727
  ] }),
15728
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.MoreInfo, { title: "Reducing a top-up", testId: "reduce-addon-more-info", children: [
15728
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.MoreInfo, { title: "Reducing a top-up", testId: "reduce-addon-more-info", children: [
15729
15729
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
15730
15730
  "The reduction applies from your next renewal (",
15731
15731
  from,
@@ -15782,7 +15782,7 @@ function ReduceAddonDialog({
15782
15782
  }
15783
15783
  ) });
15784
15784
  }
15785
- var gbp = (pence) => chunkTDO5UWXF_cjs.formatMoney(pence, "gbp");
15785
+ var gbp = (pence) => chunkO4F77VSO_cjs.formatMoney(pence, "gbp");
15786
15786
  var gb2 = (n) => `${Math.round(n * 10) / 10} GB`;
15787
15787
  function formatShortDate(unix) {
15788
15788
  if (!unix) return null;
@@ -15793,20 +15793,20 @@ function AutoTopupThreshold({
15793
15793
  addons
15794
15794
  }) {
15795
15795
  const updateSettings = react.useUpdateProjectAddonSettings();
15796
- const min = addons.min_auto_topup_threshold_gbp || chunkTDO5UWXF_cjs.MIN_AUTO_TOPUP_THRESHOLD_GBP;
15796
+ const min = addons.min_auto_topup_threshold_gbp || chunkO4F77VSO_cjs.MIN_AUTO_TOPUP_THRESHOLD_GBP;
15797
15797
  const saved = addons.auto_topup_threshold_gbp;
15798
15798
  const [value, setValue] = react$1.useState(String(saved));
15799
15799
  react$1.useEffect(() => setValue(String(saved)), [saved]);
15800
15800
  const parsed = Number(value);
15801
15801
  const valid = Number.isFinite(parsed) && parsed >= min;
15802
15802
  const dirty = valid && parsed !== saved;
15803
- const off = chunkTDO5UWXF_cjs.isAddonBudgetZero(addons);
15803
+ const off = chunkO4F77VSO_cjs.isAddonBudgetZero(addons);
15804
15804
  const save = () => {
15805
15805
  if (!dirty) return;
15806
15806
  updateSettings.mutate(
15807
15807
  {
15808
15808
  projectExtId: project.external_id,
15809
- body: chunkTDO5UWXF_cjs.addonSettingsBody(addons, { auto_topup_threshold_gbp: parsed })
15809
+ body: chunkO4F77VSO_cjs.addonSettingsBody(addons, { auto_topup_threshold_gbp: parsed })
15810
15810
  },
15811
15811
  {
15812
15812
  onSuccess: () => shell.notify.success(`Auto-add below ${react.formatGbp(parsed)} of AI credits left`),
@@ -15903,10 +15903,10 @@ function ResourceMeter({
15903
15903
  const update = react.useUpdateProjectNextPeriodAddons();
15904
15904
  const isAi = kind === "ai_usage";
15905
15905
  const slug = isAi ? "ai-usage" : "storage";
15906
- const periodEnd = chunkTDO5UWXF_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
15906
+ const periodEnd = chunkO4F77VSO_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
15907
15907
  const from = periodEnd ?? "your next renewal";
15908
15908
  const fromShort = formatShortDate(addons.period_end ?? project.current_period_end) ?? "renewal";
15909
- const { min, current, next } = chunkTDO5UWXF_cjs.reduceBounds(kind, addons);
15909
+ const { min, current, next } = chunkO4F77VSO_cjs.reduceBounds(kind, addons);
15910
15910
  const fmt = (n) => isAi ? react.formatGbp(n) : gb2(n);
15911
15911
  const used = isAi ? addons.ai_used_gbp : addons.storage_used_gb;
15912
15912
  const allowance = isAi ? addons.ai_allowance_gbp : addons.storage_allowance_gb;
@@ -15914,15 +15914,15 @@ function ResourceMeter({
15914
15914
  const plan = isAi ? addons.plan_ai_gbp : addons.plan_storage_gb;
15915
15915
  const topUps = Math.max(0, allowance - plan);
15916
15916
  const blocks = isAi ? addons.ai_blocks : addons.storage_blocks;
15917
- const hasLegacy = chunkTDO5UWXF_cjs.splitBlocks(kind, blocks, addons).legacy > 0;
15918
- const room = chunkTDO5UWXF_cjs.autoRoom(kind, addons);
15919
- const capZero = chunkTDO5UWXF_cjs.isAddonBudgetZero(addons);
15920
- const resets = isAi ? formatShortDate(chunkTDO5UWXF_cjs.aiUsageResetTimestamp(project)) : null;
15921
- const removeSize = chunkTDO5UWXF_cjs.nextRemovedBlockSize(kind, addons);
15917
+ const hasLegacy = chunkO4F77VSO_cjs.splitBlocks(kind, blocks, addons).legacy > 0;
15918
+ const room = chunkO4F77VSO_cjs.autoRoom(kind, addons);
15919
+ const capZero = chunkO4F77VSO_cjs.isAddonBudgetZero(addons);
15920
+ const resets = isAi ? formatShortDate(chunkO4F77VSO_cjs.aiUsageResetTimestamp(project)) : null;
15921
+ const removeSize = chunkO4F77VSO_cjs.nextRemovedBlockSize(kind, addons);
15922
15922
  const undo = () => update.mutate(
15923
15923
  {
15924
15924
  projectExtId: project.external_id,
15925
- body: chunkTDO5UWXF_cjs.nextPeriodBody(kind, current)
15925
+ body: chunkO4F77VSO_cjs.nextPeriodBody(kind, current)
15926
15926
  },
15927
15927
  {
15928
15928
  onSuccess: () => shell.notify.success("Kept"),
@@ -15939,7 +15939,7 @@ function ResourceMeter({
15939
15939
  allowance: { used, plan, topUps, autoRoom: capZero ? 0 : room },
15940
15940
  legend: {
15941
15941
  plan: `Plan ${fmt(plan)}`,
15942
- topUps: topUps > 0 ? `Top-ups ${fmt(topUps)}${hasLegacy ? ` (${chunkTDO5UWXF_cjs.blocksLabel(kind, blocks, addons)})` : ""}` : void 0,
15942
+ topUps: topUps > 0 ? `Top-ups ${fmt(topUps)}${hasLegacy ? ` (${chunkO4F77VSO_cjs.blocksLabel(kind, blocks, addons)})` : ""}` : void 0,
15943
15943
  autoRoom: room != null && room > 0 && !capZero ? `Automatic up to ${fmt(room)}` : void 0
15944
15944
  },
15945
15945
  testId: `usage-meter-${slug}`,
@@ -15968,9 +15968,9 @@ function ResourceMeter({
15968
15968
  {
15969
15969
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-3.5" }),
15970
15970
  label: isAi ? react.formatGbp(addons.block_ai_gbp) : `${addons.block_storage_gb} GB`,
15971
- caption: chunkTDO5UWXF_cjs.addStepCaption(kind, addons),
15971
+ caption: chunkO4F77VSO_cjs.addStepCaption(kind, addons),
15972
15972
  onClick: onAdd,
15973
- ariaLabel: `Add ${chunkTDO5UWXF_cjs.stepLabel(kind, isAi ? addons.block_ai_gbp : addons.block_storage_gb)}`,
15973
+ ariaLabel: `Add ${chunkO4F77VSO_cjs.stepLabel(kind, isAi ? addons.block_ai_gbp : addons.block_storage_gb)}`,
15974
15974
  testId: isAi ? "add-ai-block-button" : "add-storage-block-button"
15975
15975
  }
15976
15976
  ),
@@ -15983,7 +15983,7 @@ function ResourceMeter({
15983
15983
  label: isAi ? react.formatGbp(removeSize) : `${removeSize} GB`,
15984
15984
  caption: `from ${fromShort}`,
15985
15985
  onClick: onReduce,
15986
- ariaLabel: `Remove ${chunkTDO5UWXF_cjs.stepLabel(kind, removeSize)} from ${from}`,
15986
+ ariaLabel: `Remove ${chunkO4F77VSO_cjs.stepLabel(kind, removeSize)} from ${from}`,
15987
15987
  testId: `reduce-${slug}-button`
15988
15988
  }
15989
15989
  )
@@ -15998,7 +15998,7 @@ function UsageCapEditor({ project, addons }) {
15998
15998
  const inputRef = react$1.useRef(null);
15999
15999
  const minimum = 0;
16000
16000
  const stepPence = addons.spend_cap_step_pence ?? 2500;
16001
- const saved = addons.spend_cap_pence ?? addons.default_spend_cap_pence ?? chunkTDO5UWXF_cjs.DEFAULT_SPEND_CAP_PENCE;
16001
+ const saved = addons.spend_cap_pence ?? addons.default_spend_cap_pence ?? chunkO4F77VSO_cjs.DEFAULT_SPEND_CAP_PENCE;
16002
16002
  const maximum = addons.maximum_spend_cap_pence ?? 5e4;
16003
16003
  const normalize = (n) => Math.max(0, Math.min(maximum, Math.floor(n / stepPence) * stepPence));
16004
16004
  const [value, setValue] = react$1.useState(normalize(saved));
@@ -16016,10 +16016,10 @@ function UsageCapEditor({ project, addons }) {
16016
16016
  const save = () => updateSettings.mutate(
16017
16017
  {
16018
16018
  projectExtId: project.external_id,
16019
- body: chunkTDO5UWXF_cjs.addonSettingsBody(addons, { spend_cap_pence: value })
16019
+ body: chunkO4F77VSO_cjs.addonSettingsBody(addons, { spend_cap_pence: value })
16020
16020
  },
16021
16021
  {
16022
- onSuccess: () => shell.notify.success(chunkTDO5UWXF_cjs.budgetSavedMessage(value)),
16022
+ onSuccess: () => shell.notify.success(chunkO4F77VSO_cjs.budgetSavedMessage(value)),
16023
16023
  onError: (error) => shell.notify.error(addonErrorMessage(error))
16024
16024
  }
16025
16025
  );
@@ -16056,8 +16056,8 @@ function UsageCapEditor({ project, addons }) {
16056
16056
  function UsageInfo({ addons, isAnnual }) {
16057
16057
  const period = isAnnual ? "year" : "month";
16058
16058
  const legacy = (addons.legacy_ai_blocks ?? 0) > 0 || (addons.legacy_storage_blocks ?? 0) > 0;
16059
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.MoreInfo, { title: "Usage and top-ups", testId: "usage-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
16060
- chunkNJCK6V6U_cjs.MoreInfoList,
16059
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.MoreInfo, { title: "Usage and top-ups", testId: "usage-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
16060
+ chunkL6APDO3Y_cjs.MoreInfoList,
16061
16061
  {
16062
16062
  items: [
16063
16063
  {
@@ -16072,7 +16072,7 @@ function UsageInfo({ addons, isAnnual }) {
16072
16072
  term: "Automatic top-ups",
16073
16073
  text: "One step is added when AI credits drops below your auto top-up level, or when an upload needs more storage."
16074
16074
  },
16075
- { term: "Usage cap", text: chunkTDO5UWXF_cjs.USAGE_CAP_HELP },
16075
+ { term: "Usage cap", text: chunkO4F77VSO_cjs.USAGE_CAP_HELP },
16076
16076
  {
16077
16077
  term: "Reducing",
16078
16078
  text: "\u2212 removes one step from your next renewal. You keep this period's allowance. No refunds."
@@ -16083,7 +16083,7 @@ function UsageInfo({ addons, isAnnual }) {
16083
16083
  text: "Top-ups bought on an earlier price keep their size and price until removed; they are removed last."
16084
16084
  }
16085
16085
  ] : [],
16086
- ...isAnnual ? [{ term: "Annual", text: `${chunkTDO5UWXF_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : [],
16086
+ ...isAnnual ? [{ term: "Annual", text: `${chunkO4F77VSO_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : [],
16087
16087
  {
16088
16088
  term: "Prices",
16089
16089
  text: "Shown ex VAT. The confirm step shows the total with VAT before you pay."
@@ -16176,7 +16176,7 @@ function formatShortDate2(unix) {
16176
16176
  if (!unix) return null;
16177
16177
  return new Date(unix * 1e3).toLocaleDateString("en-GB", { day: "numeric", month: "short" });
16178
16178
  }
16179
- var gbp2 = (pence) => chunkTDO5UWXF_cjs.formatMoney(pence, "gbp");
16179
+ var gbp2 = (pence) => chunkO4F77VSO_cjs.formatMoney(pence, "gbp");
16180
16180
  var gbNum = (n) => `${Math.round(n * 10) / 10}`;
16181
16181
  var pct = (used, limit) => limit > 0 ? Math.min(100, used / limit * 100) : 0;
16182
16182
  function Meter({
@@ -16194,15 +16194,15 @@ function Meter({
16194
16194
  ] });
16195
16195
  }
16196
16196
  function usePlanPrice(project) {
16197
- const { data: products } = react.useProducts({ enabled: chunkTDO5UWXF_cjs.isProProject(project) });
16198
- if (!chunkTDO5UWXF_cjs.isProProject(project)) return null;
16197
+ const { data: products } = react.useProducts({ enabled: chunkO4F77VSO_cjs.isProProject(project) });
16198
+ if (!chunkO4F77VSO_cjs.isProProject(project)) return null;
16199
16199
  const isAnnual = project.plan_interval === "year";
16200
16200
  if (project.amount != null) {
16201
16201
  return { incl: project.amount, ex: project.amount_ex_vat ?? null, isAnnual };
16202
16202
  }
16203
- if ((project.packs ?? chunkTDO5UWXF_cjs.PRO_PACKS) > chunkTDO5UWXF_cjs.PRO_PACKS) return null;
16204
- const prices = chunkTDO5UWXF_cjs.findProPrices(products);
16205
- const pp = chunkTDO5UWXF_cjs.packPrice(isAnnual ? prices.annual : prices.monthly);
16203
+ if ((project.packs ?? chunkO4F77VSO_cjs.PRO_PACKS) > chunkO4F77VSO_cjs.PRO_PACKS) return null;
16204
+ const prices = chunkO4F77VSO_cjs.findProPrices(products);
16205
+ const pp = chunkO4F77VSO_cjs.packPrice(isAnnual ? prices.annual : prices.monthly);
16206
16206
  return pp ? { incl: pp.amount, ex: pp.amount_ex_vat, isAnnual } : null;
16207
16207
  }
16208
16208
  function paidLine(payment, addons) {
@@ -16215,11 +16215,11 @@ function ProjectPlanCard({
16215
16215
  onChangePlan
16216
16216
  }) {
16217
16217
  const { quotas, addons } = project;
16218
- const isPro = chunkTDO5UWXF_cjs.isProProject(project);
16218
+ const isPro = chunkO4F77VSO_cjs.isProProject(project);
16219
16219
  const used = quotas?.ai_usage?.used ?? 0;
16220
16220
  const limit = quotas?.ai_usage?.limit ?? 0;
16221
- const resetDate = formatShortDate2(chunkTDO5UWXF_cjs.aiUsageResetTimestamp(project));
16222
- const periodEnd = chunkTDO5UWXF_cjs.formatPeriodEnd(addons?.period_end ?? project.current_period_end);
16221
+ const resetDate = formatShortDate2(chunkO4F77VSO_cjs.aiUsageResetTimestamp(project));
16222
+ const periodEnd = chunkO4F77VSO_cjs.formatPeriodEnd(addons?.period_end ?? project.current_period_end);
16223
16223
  const when2 = periodEnd ?? "the end of the period";
16224
16224
  const storageUsed = quotas?.storage_gb?.used ?? 0;
16225
16225
  const storageLimit = quotas?.storage_gb?.limit ?? 0;
@@ -16235,7 +16235,7 @@ function ProjectPlanCard({
16235
16235
  project.external_id,
16236
16236
  hasScheduledChange && addons ? { packs: packsNext ?? addons.packs, interval: pending ?? currentInterval } : null
16237
16237
  ).data;
16238
- const tier = isPro ? chunkTDO5UWXF_cjs.proTierName(project) : project.subscription === "dev" ? "Dev" : "Free";
16238
+ const tier = isPro ? chunkO4F77VSO_cjs.proTierName(project) : project.subscription === "dev" ? "Dev" : "Free";
16239
16239
  const pendingPayment = addons?.payment?.status === "pending" ? addons.payment : null;
16240
16240
  const confirmUrl = pendingPayment?.confirm_url ?? addons?.confirm_url;
16241
16241
  const paidPayment = addons?.payment?.status === "paid" ? addons.payment : null;
@@ -16269,7 +16269,7 @@ function ProjectPlanCard({
16269
16269
  isPro && " ",
16270
16270
  isPro && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1 text-sm font-normal text-muted-foreground", children: currentInterval === "year" ? "Annual" : "Monthly" })
16271
16271
  ] }),
16272
- isPro && periodEnd && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground", "data-testid": "project-plan-renews", children: isCanceling ? `Ends ${periodEnd}` : hasScheduledChange && nextBill ? `Next bill ${chunkTDO5UWXF_cjs.totalWithTaxWord({
16272
+ isPro && periodEnd && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground", "data-testid": "project-plan-renews", children: isCanceling ? `Ends ${periodEnd}` : hasScheduledChange && nextBill ? `Next bill ${chunkO4F77VSO_cjs.totalWithTaxWord({
16273
16273
  subtotal: nextBill.next_renewal_ex_vat_pence,
16274
16274
  tax: nextBill.next_renewal_tax_pence,
16275
16275
  total: nextBill.next_renewal_pence,
@@ -16278,7 +16278,7 @@ function ProjectPlanCard({
16278
16278
  ] }),
16279
16279
  price && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-auto text-right", "data-testid": "project-plan-price", children: [
16280
16280
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-lg font-semibold tabular-nums text-foreground", children: [
16281
- price.ex != null ? chunkTDO5UWXF_cjs.plusVat(price.ex) : gbp2(price.incl),
16281
+ price.ex != null ? chunkO4F77VSO_cjs.plusVat(price.ex) : gbp2(price.incl),
16282
16282
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-normal text-muted-foreground", children: price.isAnnual ? "/year" : "/month" })
16283
16283
  ] }),
16284
16284
  price.ex != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-xs text-muted-foreground", children: [
@@ -16316,7 +16316,7 @@ function ProjectPlanCard({
16316
16316
  undoTestId: "undo-plan-change-button",
16317
16317
  children: [
16318
16318
  "Changes to ",
16319
- chunkTDO5UWXF_cjs.planNameForPacks(packsNext),
16319
+ chunkO4F77VSO_cjs.planNameForPacks(packsNext),
16320
16320
  " on ",
16321
16321
  when2,
16322
16322
  "."
@@ -16361,8 +16361,8 @@ function ProjectPlanCard({
16361
16361
  }
16362
16362
  )
16363
16363
  ] }),
16364
- addons?.billing_error && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { tone: "error", testId: "plan-billing-error", children: addons.billing_error }),
16365
- confirmUrl ? /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PlanNotice, { testId: "plan-payment-state", children: [
16364
+ addons?.billing_error && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { tone: "error", testId: "plan-billing-error", children: addons.billing_error }),
16365
+ confirmUrl ? /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PlanNotice, { testId: "plan-payment-state", children: [
16366
16366
  "Waiting for your bank",
16367
16367
  pendingPayment?.amount_pence ? ` \xB7 ${gbp2(pendingPayment.amount_pence)}` : "",
16368
16368
  " \xB7",
@@ -16380,7 +16380,7 @@ function ProjectPlanCard({
16380
16380
  ]
16381
16381
  }
16382
16382
  )
16383
- ] }) : paidPayment && addons && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanNotice, { testId: "plan-payment-state", children: paidLine(paidPayment, addons) }),
16383
+ ] }) : paidPayment && addons && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanNotice, { testId: "plan-payment-state", children: paidLine(paidPayment, addons) }),
16384
16384
  isPro && /* @__PURE__ */ jsxRuntime.jsxs(
16385
16385
  "button",
16386
16386
  {
@@ -16407,7 +16407,7 @@ function ProjectBilling({
16407
16407
  const { addons } = project;
16408
16408
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", "data-testid": "project-billing", children: [
16409
16409
  /* @__PURE__ */ jsxRuntime.jsx(ProjectPlanCard, { project, onChangePlan }),
16410
- addons && chunkTDO5UWXF_cjs.isProProject(project) && /* @__PURE__ */ jsxRuntime.jsx(ProjectUsageCard, { project, addons })
16410
+ addons && chunkO4F77VSO_cjs.isProProject(project) && /* @__PURE__ */ jsxRuntime.jsx(ProjectUsageCard, { project, addons })
16411
16411
  ] });
16412
16412
  }
16413
16413
  var BREAKDOWN_LABELS = react.DEFAULT_USAGE_BREAKDOWN_SOURCE_LABELS.by;
@@ -16445,13 +16445,13 @@ function ProjectUsageContent({
16445
16445
  };
16446
16446
  const quotaPct = effectiveUsage && aiUsageLimit ? Math.round(effectiveUsage.total_spend / aiUsageLimit * 100) : 0;
16447
16447
  return /* @__PURE__ */ jsxRuntime.jsx(
16448
- chunkNJCK6V6U_cjs.UsagePanel,
16448
+ chunkL6APDO3Y_cjs.UsagePanel,
16449
16449
  {
16450
16450
  state,
16451
16451
  dateRange,
16452
16452
  emptyMessage: `No usage ${period === "current" ? "yet this month" : "last month"}.`,
16453
16453
  period: /* @__PURE__ */ jsxRuntime.jsx(
16454
- chunkNJCK6V6U_cjs.UsageToggle,
16454
+ chunkL6APDO3Y_cjs.UsageToggle,
16455
16455
  {
16456
16456
  ariaLabel: "Period",
16457
16457
  value: period,
@@ -16464,7 +16464,7 @@ function ProjectUsageContent({
16464
16464
  ),
16465
16465
  actions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
16466
16466
  effectiveUsage?.invoice_pdf && /* @__PURE__ */ jsxRuntime.jsx(
16467
- chunkNJCK6V6U_cjs.UsageActionButton,
16467
+ chunkL6APDO3Y_cjs.UsageActionButton,
16468
16468
  {
16469
16469
  label: "Download Stripe invoice PDF",
16470
16470
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Download, { className: "size-3.5" }),
@@ -16472,7 +16472,7 @@ function ProjectUsageContent({
16472
16472
  }
16473
16473
  ),
16474
16474
  /* @__PURE__ */ jsxRuntime.jsx(
16475
- chunkNJCK6V6U_cjs.UsageActionButton,
16475
+ chunkL6APDO3Y_cjs.UsageActionButton,
16476
16476
  {
16477
16477
  label: "Print usage summary",
16478
16478
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Printer, { className: "size-3.5" }),
@@ -16509,7 +16509,7 @@ function ProjectUsagePanels({
16509
16509
  [spend, panels.requests, panels.tokens].map((p) => /* @__PURE__ */ jsxRuntime.jsx(chunkUZHWXKS6_cjs.DashboardCell, { width: p.width, children: /* @__PURE__ */ jsxRuntime.jsx(chunkUZHWXKS6_cjs.DashboardPanel, { panel: p, testId: `project-usage-${p.id}` }) }, p.id)),
16510
16510
  /* @__PURE__ */ jsxRuntime.jsx(chunkUZHWXKS6_cjs.DashboardCell, { width: 12, children: /* @__PURE__ */ jsxRuntime.jsx(chunkUZHWXKS6_cjs.DashboardPanel, { panel: { ...panels.spendByModel, width: 12 } }) }),
16511
16511
  /* @__PURE__ */ jsxRuntime.jsx(chunkUZHWXKS6_cjs.DashboardCell, { width: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
16512
- chunkNJCK6V6U_cjs.UsageToggle,
16512
+ chunkL6APDO3Y_cjs.UsageToggle,
16513
16513
  {
16514
16514
  ariaLabel: "Breakdown by",
16515
16515
  size: "fill",
@@ -16524,7 +16524,7 @@ function ProjectUsagePanels({
16524
16524
  panel: panels.breakdown(breakdown, metric, 12),
16525
16525
  testId: "project-usage-breakdown",
16526
16526
  actions: /* @__PURE__ */ jsxRuntime.jsx(
16527
- chunkNJCK6V6U_cjs.UsageToggle,
16527
+ chunkL6APDO3Y_cjs.UsageToggle,
16528
16528
  {
16529
16529
  ariaLabel: "Breakdown metric",
16530
16530
  value: metric,
@@ -16540,13 +16540,13 @@ function ProjectUsagePanels({
16540
16540
  ] });
16541
16541
  }
16542
16542
  function ProjectDetail({ projectExtId, storage }) {
16543
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
16543
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
16544
16544
  const [planOpen, setPlanOpen] = react$1.useState(false);
16545
16545
  const [renameOpen, setRenameOpen] = react$1.useState(false);
16546
16546
  const [renameValue, setRenameValue] = react$1.useState("");
16547
16547
  const updateProject = react.useUpdateProjectFields();
16548
16548
  const { data: projects, isLoading } = react.useProjects();
16549
- const currentUserExtId = chunkTDO5UWXF_cjs.useSelfExtId();
16549
+ const currentUserExtId = chunkO4F77VSO_cjs.useSelfExtId();
16550
16550
  const project = projects?.find((p) => p.external_id === projectExtId);
16551
16551
  const handleSaveRename = react$1.useCallback(() => {
16552
16552
  const trimmed = renameValue.trim();
@@ -16584,7 +16584,7 @@ function ProjectDetail({ projectExtId, storage }) {
16584
16584
  }
16585
16585
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-6 space-y-6 max-w-4xl", "data-testid": `project-detail-${project.external_id}`, children: [
16586
16586
  /* @__PURE__ */ jsxRuntime.jsx(
16587
- chunkNJCK6V6U_cjs.ProjectDetailHeader,
16587
+ chunkL6APDO3Y_cjs.ProjectDetailHeader,
16588
16588
  {
16589
16589
  icon: /* @__PURE__ */ jsxRuntime.jsx(ui.EntityIcon, { entityType: "PROJECT" }),
16590
16590
  name: project.name,
@@ -16592,12 +16592,12 @@ function ProjectDetail({ projectExtId, storage }) {
16592
16592
  setRenameValue(project.name);
16593
16593
  setRenameOpen(true);
16594
16594
  },
16595
- badge: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanBadge, { ...chunkTDO5UWXF_cjs.planBadgeView(project), size: "md" }) : void 0
16595
+ badge: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanBadge, { ...chunkO4F77VSO_cjs.planBadgeView(project), size: "md" }) : void 0
16596
16596
  }
16597
16597
  ),
16598
16598
  hasBilling && project.subscription === "suspended" ? /* @__PURE__ */ jsxRuntime.jsx(SuspendedProjectRecovery, { project, onResubscribe: () => setPlanOpen(true) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
16599
16599
  hasBilling && /* @__PURE__ */ jsxRuntime.jsx(ProjectBilling, { project, onChangePlan: () => setPlanOpen(true) }),
16600
- /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.ProjectDetailSection, { title: hasBilling ? "Collaborator limits" : "Plan limits", children: [
16600
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.ProjectDetailSection, { title: hasBilling ? "Collaborator limits" : "Plan limits", children: [
16601
16601
  !hasBilling && /* @__PURE__ */ jsxRuntime.jsx(SubscriptionStatus, { project }),
16602
16602
  hasBilling && project.addons && /* @__PURE__ */ jsxRuntime.jsx(CollaboratorPlan, { project }),
16603
16603
  /* @__PURE__ */ jsxRuntime.jsxs(
@@ -16614,7 +16614,7 @@ function ProjectDetail({ projectExtId, storage }) {
16614
16614
  }
16615
16615
  )
16616
16616
  ] }),
16617
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.ProjectDetailSection, { title: "Usage", children: /* @__PURE__ */ jsxRuntime.jsx(
16617
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.ProjectDetailSection, { title: "Usage", children: /* @__PURE__ */ jsxRuntime.jsx(
16618
16618
  ProjectUsageContent,
16619
16619
  {
16620
16620
  projectExtId: project.external_id,
@@ -16625,7 +16625,7 @@ function ProjectDetail({ projectExtId, storage }) {
16625
16625
  storage
16626
16626
  ] }),
16627
16627
  /* @__PURE__ */ jsxRuntime.jsx(
16628
- chunkNJCK6V6U_cjs.RenameDialog,
16628
+ chunkL6APDO3Y_cjs.RenameDialog,
16629
16629
  {
16630
16630
  open: renameOpen,
16631
16631
  onClose: () => setRenameOpen(false),
@@ -16642,7 +16642,7 @@ function ProjectDetail({ projectExtId, storage }) {
16642
16642
  function useAutoRefreshPendingProjects() {
16643
16643
  const { data: projects } = react.useProjects();
16644
16644
  const refreshProject = react.useRefreshProject();
16645
- const currentUserExtId = chunkTDO5UWXF_cjs.useSelfExtId();
16645
+ const currentUserExtId = chunkO4F77VSO_cjs.useSelfExtId();
16646
16646
  const refreshedRef = react$1.useRef(/* @__PURE__ */ new Set());
16647
16647
  react$1.useEffect(() => {
16648
16648
  if (!projects || !currentUserExtId) return;
@@ -16673,7 +16673,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
16673
16673
  if (quotaProjectId) void refetchProjects();
16674
16674
  }, [quotaProjectId, refetchProjects]);
16675
16675
  const project = info?.projectExtId ? projects?.find((p) => p.external_id === info.projectExtId) : void 0;
16676
- const addons = project && chunkTDO5UWXF_cjs.isProProject(project) ? project.addons : null;
16676
+ const addons = project && chunkO4F77VSO_cjs.isProProject(project) ? project.addons : null;
16677
16677
  const handleUpgrade = () => {
16678
16678
  if (info?.projectExtId) {
16679
16679
  requestProjectBillingFocus({ projectExtId: info.projectExtId, openUpgrade: true });
@@ -16709,8 +16709,8 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
16709
16709
  /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {})
16710
16710
  );
16711
16711
  } else if (addons) {
16712
- const price = `${chunkTDO5UWXF_cjs.formatMoney(addons.ai_block_price_ex_vat_pence, "gbp")} ex VAT`;
16713
- const capZero = chunkTDO5UWXF_cjs.isAddonBudgetZero(addons);
16712
+ const price = `${chunkO4F77VSO_cjs.formatMoney(addons.ai_block_price_ex_vat_pence, "gbp")} ex VAT`;
16713
+ const capZero = chunkO4F77VSO_cjs.isAddonBudgetZero(addons);
16714
16714
  const addAiUsage = /* @__PURE__ */ jsxRuntime.jsxs(ui.Button, { onClick: handleAddAiUsage, "data-testid": "quota-add-ai-usage-button", children: [
16715
16715
  "Add ",
16716
16716
  react.formatGbp(addons.block_ai_gbp),
@@ -16718,7 +16718,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
16718
16718
  price
16719
16719
  ] });
16720
16720
  if (capZero || addons.cap_reached) {
16721
- message = capZero ? chunkTDO5UWXF_cjs.ZERO_BUDGET_MESSAGE : chunkTDO5UWXF_cjs.CAP_REACHED_MESSAGE;
16721
+ message = capZero ? chunkO4F77VSO_cjs.ZERO_BUDGET_MESSAGE : chunkO4F77VSO_cjs.CAP_REACHED_MESSAGE;
16722
16722
  actions = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
16723
16723
  addAiUsage,
16724
16724
  /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { variant: "outline", onClick: handleRaiseCap, "data-testid": "quota-raise-cap-button", children: capZero ? "Set cap" : "Raise cap" })
@@ -16731,7 +16731,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
16731
16731
  const addAiUsageProject = addAiUsageFor ? projects?.find((p) => p.external_id === addAiUsageFor) : void 0;
16732
16732
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
16733
16733
  /* @__PURE__ */ jsxRuntime.jsx(
16734
- chunkNJCK6V6U_cjs.QuotaExceededDialogView,
16734
+ chunkL6APDO3Y_cjs.QuotaExceededDialogView,
16735
16735
  {
16736
16736
  open,
16737
16737
  onClose: close,
@@ -16907,7 +16907,7 @@ function ConnectedWelcomeDialog({
16907
16907
  }) {
16908
16908
  const currentUser = react.useArbiSession().user;
16909
16909
  const { data: projects } = react.useProjects();
16910
- const balance = chunkTDO5UWXF_cjs.useRewardBalance();
16910
+ const balance = chunkO4F77VSO_cjs.useRewardBalance();
16911
16911
  const [showPlans, setShowPlans] = react$1.useState(false);
16912
16912
  const [showInvite, setShowInvite] = react$1.useState(false);
16913
16913
  const [selectedProjectId, setSelectedProjectId] = react$1.useState(null);
@@ -16928,21 +16928,21 @@ function ConnectedWelcomeDialog({
16928
16928
  return /* @__PURE__ */ jsxRuntime.jsx(ChangePlanDialog, { project: selectedProject, open, onOpenChange: handleOpenChange });
16929
16929
  }
16930
16930
  if (showInvite) {
16931
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.InviteContactsDialog, { open, onClose: () => handleOpenChange(false), children: /* @__PURE__ */ jsxRuntime.jsx(
16931
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.InviteContactsDialog, { open, onClose: () => handleOpenChange(false), children: /* @__PURE__ */ jsxRuntime.jsx(
16932
16932
  ConnectedAddContacts,
16933
16933
  {
16934
16934
  onClose: () => handleOpenChange(false),
16935
- rewardAmount: chunkTDO5UWXF_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
16935
+ rewardAmount: chunkO4F77VSO_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
16936
16936
  }
16937
16937
  ) });
16938
16938
  }
16939
16939
  const firstName = currentUser?.given_name;
16940
16940
  const hasBalance = balance !== null;
16941
- const quotaItems = chunkTDO5UWXF_cjs.getQuotaItems(selectedProject.quotas);
16942
- const resetTs = chunkTDO5UWXF_cjs.aiUsageResetTimestamp(selectedProject);
16943
- const aiUsageHint = resetTs ? `resets ${chunkTDO5UWXF_cjs.formatResetDate(resetTs)}` : void 0;
16941
+ const quotaItems = chunkO4F77VSO_cjs.getQuotaItems(selectedProject.quotas);
16942
+ const resetTs = chunkO4F77VSO_cjs.aiUsageResetTimestamp(selectedProject);
16943
+ const aiUsageHint = resetTs ? `resets ${chunkO4F77VSO_cjs.formatResetDate(resetTs)}` : void 0;
16944
16944
  return /* @__PURE__ */ jsxRuntime.jsx(
16945
- chunkNJCK6V6U_cjs.WelcomeDialog,
16945
+ chunkL6APDO3Y_cjs.WelcomeDialog,
16946
16946
  {
16947
16947
  open,
16948
16948
  onClose: () => handleOpenChange(false),
@@ -16957,7 +16957,7 @@ function ConnectedWelcomeDialog({
16957
16957
  onChange: setSelectedProjectId
16958
16958
  }
16959
16959
  ),
16960
- planBadge: /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PlanBadge, { ...chunkTDO5UWXF_cjs.planBadgeView(selectedProject), size: "md" }),
16960
+ planBadge: /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PlanBadge, { ...chunkO4F77VSO_cjs.planBadgeView(selectedProject), size: "md" }),
16961
16961
  quotas: quotaItems.map((q) => ({
16962
16962
  key: q.key,
16963
16963
  icon: q.icon,
@@ -16967,9 +16967,9 @@ function ConnectedWelcomeDialog({
16967
16967
  hint: q.key === "ai-usage" ? aiUsageHint : void 0
16968
16968
  })),
16969
16969
  onSeePlans: () => setShowPlans(true),
16970
- referralOfferLabel: `${chunkTDO5UWXF_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)} off your plan`,
16970
+ referralOfferLabel: `${chunkO4F77VSO_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)} off your plan`,
16971
16971
  onInvite: () => setShowInvite(true),
16972
- rewardBalanceLabel: hasBalance ? chunkTDO5UWXF_cjs.formatMoney(balance.amount, balance.currency) : void 0
16972
+ rewardBalanceLabel: hasBalance ? chunkO4F77VSO_cjs.formatMoney(balance.amount, balance.currency) : void 0
16973
16973
  }
16974
16974
  );
16975
16975
  }
@@ -17032,7 +17032,7 @@ function WorkspaceCardsView({
17032
17032
  createDisabledReason,
17033
17033
  workspaceState
17034
17034
  }) {
17035
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
17035
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
17036
17036
  const { hrefFor: hrefFor2 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
17037
17037
  const workspaceLabel = ui.getEntityLabel("WORKSPACE");
17038
17038
  const projectLabel = ui.getEntityLabel("PROJECT").toLowerCase();
@@ -17052,7 +17052,7 @@ function WorkspaceCardsView({
17052
17052
  }
17053
17053
  return /* @__PURE__ */ jsxRuntime.jsx(chunkCMGNRMPA_cjs.WorkspaceList, { testId: "workspace-cards-list", children: groups.map((group) => {
17054
17054
  const project = projects.find((p) => p.external_id === group.projectExtId);
17055
- const { breakdown, readout } = chunkTDO5UWXF_cjs.projectGroupBilling(project, {
17055
+ const { breakdown, readout } = chunkO4F77VSO_cjs.projectGroupBilling(project, {
17056
17056
  isOwned: group.isOwned,
17057
17057
  stripeEnabled
17058
17058
  });
@@ -17215,7 +17215,7 @@ function useConnectedWorkspaceList({
17215
17215
  [selfId, pinned]
17216
17216
  );
17217
17217
  const filtered = react$1.useMemo(
17218
- () => chunkNJCK6V6U_cjs.applyTriStateFilters(workspaces, filterMap, attributesOf),
17218
+ () => chunkL6APDO3Y_cjs.applyTriStateFilters(workspaces, filterMap, attributesOf),
17219
17219
  [workspaces, filterMap, attributesOf]
17220
17220
  );
17221
17221
  const groups = react$1.useMemo(
@@ -17281,7 +17281,7 @@ function useConnectedWorkspaceList({
17281
17281
  };
17282
17282
  }
17283
17283
  var WorkspaceTableView = react$1.lazy(
17284
- () => import('../WorkspaceTableView-J3C6VH4T.cjs').then((m) => ({ default: m.WorkspaceTableView }))
17284
+ () => import('../WorkspaceTableView-JCTDEMIL.cjs').then((m) => ({ default: m.WorkspaceTableView }))
17285
17285
  );
17286
17286
  var WORKSPACES_TAB_ID = "workspaces";
17287
17287
  var renderMember = (user, size) => /* @__PURE__ */ jsxRuntime.jsx(chunkQMIHLJMH_cjs.ConnectedUserEntity, { user, size, variant: "icon" });
@@ -17341,7 +17341,7 @@ function ConnectedWorkspaceList({
17341
17341
  }
17342
17342
  );
17343
17343
  }
17344
- if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, { message: "Loading workspaces..." });
17344
+ if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, { message: "Loading workspaces..." });
17345
17345
  if (list.error) {
17346
17346
  return /* @__PURE__ */ jsxRuntime.jsx(
17347
17347
  chunkH7PHOTX2_cjs.HomeLoadError,
@@ -17414,7 +17414,7 @@ function ConnectedWorkspaceList({
17414
17414
  workspaceState
17415
17415
  }
17416
17416
  ) })
17417
- ) : /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkH7PHOTX2_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
17417
+ ) : /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkH7PHOTX2_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
17418
17418
  WorkspaceTableView,
17419
17419
  {
17420
17420
  list,
@@ -17459,7 +17459,7 @@ function ConnectedProjectsPanel({
17459
17459
  const { data: projects } = react.useProjects();
17460
17460
  const canCreateProjects = react.useCanCreateProjects();
17461
17461
  const { userId } = chunkJR2YSBD5_cjs.useConnectedWorkspace();
17462
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
17462
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
17463
17463
  const billingPortal = useOpenBillingPortal();
17464
17464
  const [newProjectOpen, setNewProjectOpen] = react$1.useState(false);
17465
17465
  useAutoRefreshPendingProjects();
@@ -17486,15 +17486,15 @@ function ConnectedProjectsPanel({
17486
17486
  [ownedCount, tabs, projects]
17487
17487
  );
17488
17488
  const paidProject = projects?.find(isPaid);
17489
- const panel = /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PanelFrame, { className, testId: "projects-panel", children: [
17490
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
17489
+ const panel = /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PanelFrame, { className, testId: "projects-panel", children: [
17490
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
17491
17491
  chunkSJSGSHIT_cjs.TabHeader,
17492
17492
  {
17493
17493
  tabs: headerTabs,
17494
17494
  activeTabId: activeProjectId ?? PROJECTS_BASE_TAB_ID,
17495
17495
  onTabChange: (id) => tabs.onSelect(id === PROJECTS_BASE_TAB_ID ? null : id),
17496
17496
  afterTabs: (isCompact) => /* @__PURE__ */ jsxRuntime.jsx(
17497
- chunkNJCK6V6U_cjs.PanelAddButton,
17497
+ chunkL6APDO3Y_cjs.PanelAddButton,
17498
17498
  {
17499
17499
  label: `New ${ui.entityNoun("PROJECT")}`,
17500
17500
  onClick: () => setNewProjectOpen(true),
@@ -17509,15 +17509,15 @@ function ConnectedProjectsPanel({
17509
17509
  compactBreakpoint: 360
17510
17510
  }
17511
17511
  ) }),
17512
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrameBody, { children: activeProjectId ? /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
17512
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrameBody, { children: activeProjectId ? /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
17513
17513
  ProjectDetail,
17514
17514
  {
17515
17515
  projectExtId: activeProjectId,
17516
17516
  storage: /* @__PURE__ */ jsxRuntime.jsx(ConnectedProjectStorage, { projectExtId: activeProjectId })
17517
17517
  }
17518
- ) }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PanelScroll, { variant: "padded", children: [
17518
+ ) }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PanelScroll, { variant: "padded", children: [
17519
17519
  /* @__PURE__ */ jsxRuntime.jsx(ProjectsTable, {}),
17520
- stripeEnabled && paidProject && /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsxs(
17520
+ stripeEnabled && paidProject && /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsxs(
17521
17521
  ui.Button,
17522
17522
  {
17523
17523
  onClick: () => billingPortal.open(paidProject.external_id),
@@ -17604,7 +17604,7 @@ function ConnectedProjectsListPage({
17604
17604
  };
17605
17605
  const { openProject } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
17606
17606
  const [search, setSearch] = react$1.useState("");
17607
- const { projects, isLoading } = chunkB2HNNG25_cjs.useProjectSummaries();
17607
+ const { projects, isLoading } = chunkZCIQBHH5_cjs.useProjectSummaries();
17608
17608
  const rows = react$1.useMemo(() => {
17609
17609
  const q = search.trim().toLowerCase();
17610
17610
  if (!q) return projects;
@@ -17675,7 +17675,7 @@ function ConnectedProjectsListPage({
17675
17675
  }
17676
17676
  ),
17677
17677
  /* @__PURE__ */ jsxRuntime.jsx(
17678
- chunkNIE3N6OM_cjs.Toolbar,
17678
+ chunkMMVDVHKE_cjs.Toolbar,
17679
17679
  {
17680
17680
  search,
17681
17681
  onSearch: setSearch,
@@ -17737,7 +17737,7 @@ function ProjectDetailsForm({
17737
17737
  const labels = { ...DEFAULT_PROJECT_DETAILS_LABELS, ...given };
17738
17738
  const { notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
17739
17739
  const update = react.useUpdateProjectFields();
17740
- const workspace = chunkB2HNNG25_cjs.primaryProjectWorkspace(project);
17740
+ const workspace = chunkZCIQBHH5_cjs.primaryProjectWorkspace(project);
17741
17741
  const { data: members = [] } = react.useWorkspaceUsers(workspace?.id);
17742
17742
  const people = members.filter((m) => !m.user.external_id.startsWith("agt-"));
17743
17743
  const currency = project.budget?.currency ?? "GBP";
@@ -17862,7 +17862,7 @@ var COMPACT_BELOW = 132;
17862
17862
  var NO_DOCUMENTS = [];
17863
17863
  function useFilesWorkspace() {
17864
17864
  const { workspaceId, userId, live } = chunkJR2YSBD5_cjs.useConnectedWorkspace();
17865
- const { members, role } = chunkVGCTYTEW_cjs.useConnectedWorkspaceRole();
17865
+ const { members, role } = chunkK6AUKKUN_cjs.useConnectedWorkspaceRole();
17866
17866
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
17867
17867
  const workspaceName = workspaces?.find((w) => w.external_id === workspaceId)?.name;
17868
17868
  return {
@@ -18799,11 +18799,11 @@ function ConnectedProjectPage({
18799
18799
  figures: { ...DEFAULT_PROJECT_PAGE_LABELS.figures, ...given?.figures },
18800
18800
  threads: { ...DEFAULT_PROJECT_PAGE_LABELS.threads, ...given?.threads }
18801
18801
  };
18802
- const { project, usage, isLoading } = chunkB2HNNG25_cjs.useProjectSummary(projectId);
18802
+ const { project, usage, isLoading } = chunkZCIQBHH5_cjs.useProjectSummary(projectId);
18803
18803
  const { workspaceId } = chunkJR2YSBD5_cjs.useConnectedWorkspace();
18804
18804
  const { notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
18805
- const selectWorkspace = chunkY24V6HPR_cjs.useSelectWorkspace();
18806
- const workspace = project ? chunkB2HNNG25_cjs.primaryProjectWorkspace(project) : void 0;
18805
+ const selectWorkspace = chunkSUYPXUE6_cjs.useSelectWorkspace();
18806
+ const workspace = project ? chunkZCIQBHH5_cjs.primaryProjectWorkspace(project) : void 0;
18807
18807
  const open = !!workspace && workspace.id === workspaceId;
18808
18808
  react$1.useEffect(() => {
18809
18809
  if (!workspace || workspace.id === workspaceId) return;
@@ -21187,7 +21187,7 @@ function ConnectedMessengerThread({
21187
21187
  const activeIsSelf = !!activePeer && activePeer.external_id === meId;
21188
21188
  const groupTitle = active?.title ?? null;
21189
21189
  const presence = activePeer ? host.presenceOf?.(activePeer.external_id) : void 0;
21190
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PanelFrame, { testId, className, children: [
21190
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PanelFrame, { testId, className, children: [
21191
21191
  children,
21192
21192
  groupChat ? /* @__PURE__ */ jsxRuntime.jsx(
21193
21193
  chunkMOIZ2R5X_cjs.DmThreadHeader,
@@ -21237,7 +21237,7 @@ function ConnectedMessengerThread({
21237
21237
  groupChat.external_id
21238
21238
  ) : null,
21239
21239
  picker.element,
21240
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrameBody, { className: "flex flex-col overflow-visible", children: active ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedChatThread, { chat: active.chat, peer: activePeer, host }, activeId) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-4 text-sm text-muted-foreground", children: isLoading ? "Loading conversation\u2026" : "This conversation is no longer available." }) })
21240
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrameBody, { className: "flex flex-col overflow-visible", children: active ? /* @__PURE__ */ jsxRuntime.jsx(ConnectedChatThread, { chat: active.chat, peer: activePeer, host }, activeId) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-4 text-sm text-muted-foreground", children: isLoading ? "Loading conversation\u2026" : "This conversation is no longer available." }) })
21241
21241
  ] });
21242
21242
  }
21243
21243
  function ConnectedMessenger({
@@ -21259,7 +21259,7 @@ function ConnectedMessenger({
21259
21259
  testId: "dm-messenger"
21260
21260
  }
21261
21261
  );
21262
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrame, { testId: "dm-messenger", children: /* @__PURE__ */ jsxRuntime.jsx(
21262
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrame, { testId: "dm-messenger", children: /* @__PURE__ */ jsxRuntime.jsx(
21263
21263
  ConnectedMessengerList,
21264
21264
  {
21265
21265
  activeId: null,
@@ -21475,7 +21475,7 @@ function ConnectedContactsPanel({
21475
21475
  ];
21476
21476
  }, [contactCount, hasActiveFilters, tabActions, dmHeaderTabs]);
21477
21477
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ui.cn("flex flex-col h-full", className), children: [
21478
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
21478
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
21479
21479
  chunkSJSGSHIT_cjs.TabHeader,
21480
21480
  {
21481
21481
  tabs,
@@ -21510,10 +21510,10 @@ function ConnectedContactsPanel({
21510
21510
  function ConnectedConfigForm({ availableModels, ...rest }) {
21511
21511
  const hasModels = !!availableModels && availableModels.length > 0;
21512
21512
  const renderModelSelect = react$1.useCallback(
21513
- ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
21513
+ ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
21514
21514
  []
21515
21515
  );
21516
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
21516
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
21517
21517
  }
21518
21518
  function ConnectedAgentConfigForm({ agentExtId, agentName, onSaved }) {
21519
21519
  const { notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
@@ -21630,7 +21630,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
21630
21630
  }, [name, selectedWorkspaces, role, createAgent, addWorkspaceUsers, arbi, notify19]);
21631
21631
  if (editAgent) {
21632
21632
  return /* @__PURE__ */ jsxRuntime.jsx(
21633
- chunkDDIW4HLU_cjs.AgentEditView,
21633
+ chunkPVPRVI54_cjs.AgentEditView,
21634
21634
  {
21635
21635
  agentName: editAgent.name,
21636
21636
  config: /* @__PURE__ */ jsxRuntime.jsx(
@@ -21646,7 +21646,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
21646
21646
  }
21647
21647
  if (view === "main") {
21648
21648
  return /* @__PURE__ */ jsxRuntime.jsx(
21649
- chunkDDIW4HLU_cjs.AgentMainView,
21649
+ chunkPVPRVI54_cjs.AgentMainView,
21650
21650
  {
21651
21651
  onConnectExternal: () => setView("connect"),
21652
21652
  config: mainAgent ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -21662,11 +21662,11 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
21662
21662
  }
21663
21663
  if (result) {
21664
21664
  return /* @__PURE__ */ jsxRuntime.jsx(
21665
- chunkDDIW4HLU_cjs.AgentCreatedView,
21665
+ chunkPVPRVI54_cjs.AgentCreatedView,
21666
21666
  {
21667
21667
  email: result.email,
21668
21668
  signingKey: result.signingKey,
21669
- instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
21669
+ instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
21670
21670
  config: /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentConfigForm, { agentExtId: result.extId, agentName: result.name }),
21671
21671
  isConfigOpen: configOpen,
21672
21672
  onToggleConfig: () => setConfigOpen((v) => !v),
@@ -21675,7 +21675,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
21675
21675
  );
21676
21676
  }
21677
21677
  return /* @__PURE__ */ jsxRuntime.jsx(
21678
- chunkDDIW4HLU_cjs.AgentCreateView,
21678
+ chunkPVPRVI54_cjs.AgentCreateView,
21679
21679
  {
21680
21680
  name,
21681
21681
  onNameChange: setName,
@@ -21741,7 +21741,7 @@ function ConnectedInviteContactsDialog({
21741
21741
  ConnectedAddContacts,
21742
21742
  {
21743
21743
  onClose: handleClose,
21744
- rewardAmount: chunkTDO5UWXF_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
21744
+ rewardAmount: chunkO4F77VSO_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
21745
21745
  }
21746
21746
  ),
21747
21747
  isDeveloper && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -21870,7 +21870,7 @@ function ConnectedNewThreadDialog({
21870
21870
  });
21871
21871
  const parentOptions = react$1.useMemo(() => {
21872
21872
  const leaf = { external_id: "__new__" };
21873
- return chunkDDIW4HLU_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
21873
+ return chunkPVPRVI54_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
21874
21874
  id: t.external_id,
21875
21875
  name: t.title?.trim() || "Untitled task"
21876
21876
  }));
@@ -21917,7 +21917,7 @@ function ConnectedNewThreadDialog({
21917
21917
  }
21918
21918
  };
21919
21919
  return /* @__PURE__ */ jsxRuntime.jsx(
21920
- chunkDDIW4HLU_cjs.NewThreadDialog,
21920
+ chunkPVPRVI54_cjs.NewThreadDialog,
21921
21921
  {
21922
21922
  open,
21923
21923
  onOpenChange,
@@ -22038,12 +22038,12 @@ var TILE_TEST_IDS = {
22038
22038
  annotate: "workspace-dashboard-quick-action-annotate"
22039
22039
  };
22040
22040
  function DashboardStart({ addMenu, onCreateNew }) {
22041
- const { dashboard: workflows } = chunk6UTKM5AB_cjs.useWorkflowDefinitions();
22041
+ const { dashboard: workflows } = chunkJSQQV23D_cjs.useWorkflowDefinitions();
22042
22042
  const { isMember, role } = react.useCurrentWorkspace();
22043
22043
  const canWrite2 = isMember && role !== "guest";
22044
22044
  const [activeId, setActiveId] = react$1.useState(null);
22045
22045
  return /* @__PURE__ */ jsxRuntime.jsx(
22046
- chunk557MJ4IH_cjs.ConnectedWorkflowStart,
22046
+ chunkQOXK5O6M_cjs.ConnectedWorkflowStart,
22047
22047
  {
22048
22048
  workflows,
22049
22049
  caption: "Start",
@@ -22095,7 +22095,7 @@ function recentConversations(conversations) {
22095
22095
  return [...conversations].sort((a, b) => time(b.updated_at) - time(a.updated_at)).slice(0, RECENT_ROWS).map((c) => ({
22096
22096
  id: c.external_id,
22097
22097
  title: c.title?.trim() || "Untitled thread",
22098
- subtitle: c.status ? [chunkDDIW4HLU_cjs.STATUS_LABELS[chunkDDIW4HLU_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"}`,
22098
+ subtitle: c.status ? [chunkPVPRVI54_cjs.STATUS_LABELS[chunkPVPRVI54_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"}`,
22099
22099
  time: timeAndDate(c.updated_at)
22100
22100
  }));
22101
22101
  }
@@ -22481,7 +22481,7 @@ function ConnectedAskField({
22481
22481
  setPageFilter("");
22482
22482
  }, [setPageFilter]);
22483
22483
  const inputRef = react$1.useRef(null);
22484
- const slash = chunkT23UTIRI_cjs.useSlashField({ text, setText, inputRef, landing: "chat" });
22484
+ const slash = chunkKHAO7ZTO_cjs.useSlashField({ text, setText, inputRef, landing: "chat" });
22485
22485
  if (!workspaceId) return null;
22486
22486
  const submitTo = (handler) => (question) => {
22487
22487
  handler(question);
@@ -22494,7 +22494,7 @@ function ConnectedAskField({
22494
22494
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
22495
22495
  slash.launcher,
22496
22496
  /* @__PURE__ */ jsxRuntime.jsx(
22497
- chunkB3LZITVF_cjs.AskField,
22497
+ chunk3LNUQYAF_cjs.AskField,
22498
22498
  {
22499
22499
  value: text,
22500
22500
  onValueChange: setText,
@@ -22552,7 +22552,7 @@ function createBuiltinActions(environment, session) {
22552
22552
  const startWorkflowOnDocuments = (workflowId) => {
22553
22553
  const { viewingDocument, selectedDocumentIds } = session.getState();
22554
22554
  const documents = viewingDocument ? [viewingDocument.id] : [...selectedDocumentIds];
22555
- chunkDDIW4HLU_cjs.openWorkflowLaunch({ workflowId, context: { documents } });
22555
+ chunkPVPRVI54_cjs.openWorkflowLaunch({ workflowId, context: { documents } });
22556
22556
  };
22557
22557
  const setFilesView = (mode) => () => chunkYGXOKB5Z_cjs.useFilesPrefs.getState().setViewMode(mode);
22558
22558
  const actions = [
@@ -22920,7 +22920,7 @@ function ConnectedCommandPalette({
22920
22920
  isFeatureOn: react.useFeatureCheck()
22921
22921
  };
22922
22922
  const { ask, search } = useWorkspaceAsk();
22923
- const skillLauncher = chunk557MJ4IH_cjs.useSlashSkillWorkflows({ landing: "chat" });
22923
+ const skillLauncher = chunkQOXK5O6M_cjs.useSlashSkillWorkflows({ landing: "chat" });
22924
22924
  react$1.useEffect(() => {
22925
22925
  const onKey = (event) => {
22926
22926
  if (!isPaletteShortcut(event)) return;
@@ -23111,7 +23111,7 @@ function ConnectedRemoteControlConsent() {
23111
23111
  }
23112
23112
  function ConsentPrompt() {
23113
23113
  const pending = react.useRemoteControl((s) => s.pending);
23114
- const remote = chunkOEREKAAP_cjs.useRemoteControlActions();
23114
+ const remote = chunkOPH4UZQN_cjs.useRemoteControlActions();
23115
23115
  const onceRef = react$1.useRef(null);
23116
23116
  chunkORELHENJ_cjs.useMountedSurface("consent");
23117
23117
  const handleOpenChange = (next) => {
@@ -23202,11 +23202,11 @@ function ConnectedRemoteControlIndicator() {
23202
23202
  function Indicator() {
23203
23203
  const enabled = react.useRemoteControl((s) => s.enabled);
23204
23204
  const controllingAgent = react.useRemoteControl((s) => s.controllingAgent);
23205
- const remote = chunkOEREKAAP_cjs.useRemoteControlActions();
23205
+ const remote = chunkOPH4UZQN_cjs.useRemoteControlActions();
23206
23206
  if (!enabled && !controllingAgent) return null;
23207
23207
  const isActive = controllingAgent !== null;
23208
23208
  const label = isActive ? `${controllingAgent.name} is controlling your screen` : "Remote control on";
23209
- return /* @__PURE__ */ jsxRuntime.jsx(chunkB3LZITVF_cjs.RemoteControlPill, { isActive, label, onDisable: () => remote.disable() });
23209
+ return /* @__PURE__ */ jsxRuntime.jsx(chunk3LNUQYAF_cjs.RemoteControlPill, { isActive, label, onDisable: () => remote.disable() });
23210
23210
  }
23211
23211
  var VENDOR_PRODUCTS = {
23212
23212
  microsoft: [{ key: "outlook" }, { key: "onedrive", product: "onedrive" }],
@@ -23760,7 +23760,7 @@ function useDocumentFilters({
23760
23760
  [documentFilters]
23761
23761
  );
23762
23762
  const baseFilteredDocuments = react$1.useMemo(
23763
- () => chunkNJCK6V6U_cjs.applyInvertedIndexFilter(documents, documentFilters, invertedIndex, getDocId),
23763
+ () => chunkL6APDO3Y_cjs.applyInvertedIndexFilter(documents, documentFilters, invertedIndex, getDocId),
23764
23764
  [documents, documentFilters, invertedIndex]
23765
23765
  );
23766
23766
  const filteredDocuments = react$1.useMemo(() => {
@@ -27050,7 +27050,7 @@ function ConnectedSecureMailClaimPage({
27050
27050
  }) {
27051
27051
  const authenticated = react.useArbiSession().status === "signed-in";
27052
27052
  const { openMail } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
27053
- const { loading } = chunkOEREKAAP_cjs.useAuthPages();
27053
+ const { loading } = chunkOPH4UZQN_cjs.useAuthPages();
27054
27054
  const claim = react.useClaimSecureMail();
27055
27055
  const [, setFirstLoginWorkspaces] = react.useTransientView(FIRST_LOGIN_WORKSPACES_VIEW, null);
27056
27056
  const [failure, setFailure] = react$1.useState(null);
@@ -27090,7 +27090,7 @@ function ConnectedSecureMailClaimPage({
27090
27090
  }
27091
27091
  })();
27092
27092
  }, [authenticated, claimId, key]);
27093
- if (!error) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: loading ?? /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, { variant: "splash" }) });
27093
+ if (!error) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: loading ?? /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, { variant: "splash" }) });
27094
27094
  return /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-screen items-center justify-center bg-background p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "w-full max-w-md rounded-lg border border-border bg-card p-6", children: [
27095
27095
  /* @__PURE__ */ jsxRuntime.jsx("p", { role: "alert", className: "mb-4 text-sm text-destructive", children: error }),
27096
27096
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -33213,7 +33213,7 @@ function useBatchCompleteToasts() {
33213
33213
  }
33214
33214
  }, AI_FIELDS_NOTICE_WINDOW_MS);
33215
33215
  } else if (message.batch_type === "entity_extract") {
33216
- say(`${chunkNIE3N6OM_cjs.entitiesPhrase()} extracted from ${chunkNIE3N6OM_cjs.documentCount(docIds.length)}`, "success", {
33216
+ say(`${chunkMMVDVHKE_cjs.entitiesPhrase()} extracted from ${chunkMMVDVHKE_cjs.documentCount(docIds.length)}`, "success", {
33217
33217
  ...openTags && { action: { label: "View", onClick: openTags } }
33218
33218
  });
33219
33219
  } else if (message.batch_type === "upload") {
@@ -34036,13 +34036,13 @@ var TABLET_TABLE_BELOW = 860;
34036
34036
  var TABLET_VIEWPORT_BELOW = 1100;
34037
34037
  var NO_CONVERSATION_DOCUMENTS2 = [];
34038
34038
  var DocumentReviewCard = react$1.lazy(
34039
- () => import('../DocumentReviewCard-ZSBZBGFK.cjs').then((module) => ({ default: module.DocumentReviewCard }))
34039
+ () => import('../DocumentReviewCard-L472OMQS.cjs').then((module) => ({ default: module.DocumentReviewCard }))
34040
34040
  );
34041
34041
  var FilesViewerDialog = react$1.lazy(
34042
- () => import('../FilesViewerDialog-6UKR5WEF.cjs').then((module) => ({ default: module.FilesViewerDialog }))
34042
+ () => import('../FilesViewerDialog-JK25HKKF.cjs').then((module) => ({ default: module.FilesViewerDialog }))
34043
34043
  );
34044
34044
  function defaultReviewCard(props) {
34045
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
34045
+ return /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
34046
34046
  }
34047
34047
  function ConnectedFilesPage({
34048
34048
  isModal = false,
@@ -34085,7 +34085,7 @@ function ConnectedFilesPage({
34085
34085
  const deleteDocuments = react.useDeleteDocuments();
34086
34086
  const isDocumentsPending = isLoading && documents.length === 0;
34087
34087
  const { workspaceId, userId, live } = chunkJR2YSBD5_cjs.useConnectedWorkspace();
34088
- const { role, members } = chunkVGCTYTEW_cjs.useConnectedWorkspaceRole();
34088
+ const { role, members } = chunkK6AUKKUN_cjs.useConnectedWorkspaceRole();
34089
34089
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
34090
34090
  const workspace = workspaces?.find((w) => w.external_id === workspaceId);
34091
34091
  const workspaceName = workspace?.name;
@@ -34117,7 +34117,7 @@ function ConnectedFilesPage({
34117
34117
  [setPrefsViewMode, prefsKey]
34118
34118
  );
34119
34119
  const ownsViewer = !hostToggleDocument;
34120
- const viewerTabs = viewer?.tabs ?? chunkT23UTIRI_cjs.DEFAULT_DOCUMENT_VIEWER_TABS;
34120
+ const viewerTabs = viewer?.tabs ?? chunkKHAO7ZTO_cjs.DEFAULT_DOCUMENT_VIEWER_TABS;
34121
34121
  const [dialog, setDialog] = react$1.useState(null);
34122
34122
  const isDocumentViewerEnabled = ownsViewer ? dialog !== null : hostViewerDocumentId !== null;
34123
34123
  const shownPlaceRef = react$1.useRef(null);
@@ -34620,7 +34620,7 @@ function ConnectedFilesPage({
34620
34620
  viewMode === "grid" ? (
34621
34621
  // ‹ n / N › over the table's displayed rows; a step opens the document.
34622
34622
  /* @__PURE__ */ jsxRuntime.jsx(
34623
- chunkNIE3N6OM_cjs.GridRowNavigator,
34623
+ chunkMMVDVHKE_cjs.GridRowNavigator,
34624
34624
  {
34625
34625
  gridApi,
34626
34626
  selectedId: viewingDocumentId ?? selectedDocumentIds[0] ?? null,
@@ -34923,7 +34923,7 @@ function ProcessingSection({
34923
34923
  tasks,
34924
34924
  onDelete
34925
34925
  }) {
34926
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNNUK5ZM7_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.UploadTaskList, { tasks, title: "", onDelete, renderFileIcon: renderFileIcon2 }) });
34926
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkNNUK5ZM7_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.UploadTaskList, { tasks, title: "", onDelete, renderFileIcon: renderFileIcon2 }) });
34927
34927
  }
34928
34928
  function ConnectedDocumentProcessingPanel({
34929
34929
  workspaceId,
@@ -35214,7 +35214,7 @@ function ConnectedProcessingStatus({ onClick }) {
35214
35214
  const tone = pulse === "error" ? "error" : pulse === "success" ? "success" : "progress";
35215
35215
  const label = pulse === "error" ? `${failed} failed` : pulse === "success" ? "Processed" : `${active} processing`;
35216
35216
  return /* @__PURE__ */ jsxRuntime.jsx(
35217
- chunkB3LZITVF_cjs.StatusBadge,
35217
+ chunk3LNUQYAF_cjs.StatusBadge,
35218
35218
  {
35219
35219
  tone,
35220
35220
  label,
@@ -35813,7 +35813,7 @@ function DeveloperFooter({
35813
35813
  }, [configVersions, configToLoad, parentMessage?.config_ext_id]);
35814
35814
  const hasLoadedConfig = !!loadedConfigId && loadedConfigId !== "default";
35815
35815
  return /* @__PURE__ */ jsxRuntime.jsx(
35816
- chunkNJCK6V6U_cjs.ConfigSwitcherBar,
35816
+ chunkL6APDO3Y_cjs.ConfigSwitcherBar,
35817
35817
  {
35818
35818
  options,
35819
35819
  value: loadedConfigId || "default",
@@ -36082,8 +36082,8 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
36082
36082
  handleDeleteConfig,
36083
36083
  handleLoadConfig
36084
36084
  } = useDeveloperConfig();
36085
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkNJCK6V6U_cjs.PanelFrame, { testId: "developer-config", children: [
36086
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
36085
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkL6APDO3Y_cjs.PanelFrame, { testId: "developer-config", children: [
36086
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
36087
36087
  chunkSJSGSHIT_cjs.TabHeader,
36088
36088
  {
36089
36089
  tabs: [{ id: "config", label: "Developer Config", icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Code2, { className: "size-4" }) }],
@@ -36093,7 +36093,7 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
36093
36093
  rightContent: modeSwitcher
36094
36094
  }
36095
36095
  ) }),
36096
- /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: configSchema ? /* @__PURE__ */ jsxRuntime.jsx(
36096
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: configSchema ? /* @__PURE__ */ jsxRuntime.jsx(
36097
36097
  ConnectedConfigForm,
36098
36098
  {
36099
36099
  schema: configSchema,
@@ -36101,7 +36101,7 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
36101
36101
  onChange: handleConfigChange,
36102
36102
  availableModels: availableModels?.models
36103
36103
  }
36104
- ) : /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelNote, { children: "Loading configuration schema..." }) }),
36104
+ ) : /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelNote, { children: "Loading configuration schema..." }) }),
36105
36105
  /* @__PURE__ */ jsxRuntime.jsx(
36106
36106
  DeveloperFooter,
36107
36107
  {
@@ -36632,7 +36632,7 @@ function ConnectedAccountCluster({
36632
36632
  layout
36633
36633
  );
36634
36634
  return /* @__PURE__ */ jsxRuntime.jsx(
36635
- chunkB3LZITVF_cjs.ActionCluster,
36635
+ chunk3LNUQYAF_cjs.ActionCluster,
36636
36636
  {
36637
36637
  layout,
36638
36638
  status: layout === "bar" ? status : null,
@@ -36647,7 +36647,7 @@ function ConnectedAccountCluster({
36647
36647
  }
36648
36648
  );
36649
36649
  }
36650
- var gbp3 = (pence) => chunkTDO5UWXF_cjs.formatMoney(pence, "gbp");
36650
+ var gbp3 = (pence) => chunkO4F77VSO_cjs.formatMoney(pence, "gbp");
36651
36651
  function addonArrivalMessage(addons, added) {
36652
36652
  const parts = [];
36653
36653
  if (added.ai > 0) parts.push(`${react.formatGbp(added.ai * addons.block_ai_gbp)} of AI usage`);
@@ -37054,10 +37054,10 @@ var FreshChatModel = () => (useFreshChatModel(), null);
37054
37054
  var WorkspaceOpenMetrics = ({ measure }) => (useWorkspaceOpenMetrics(measure), null);
37055
37055
  var Prefetch = ({ loaders }) => (usePrefetchChunks(loaders), null);
37056
37056
  function GuidedRuns() {
37057
- chunkOEREKAAP_cjs.useRemoteControlSessionReset();
37057
+ chunkOPH4UZQN_cjs.useRemoteControlSessionReset();
37058
37058
  const { cursorMark } = chunkORELHENJ_cjs.useGuidedRuns();
37059
37059
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
37060
- /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.GuidedCursor, { markSrc: cursorMark }),
37060
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.GuidedCursor, { markSrc: cursorMark }),
37061
37061
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedRemoteControlConsent, {})
37062
37062
  ] });
37063
37063
  }
@@ -37068,7 +37068,7 @@ function ConnectedAppRuntime({
37068
37068
  prefetch
37069
37069
  }) {
37070
37070
  const on = (effect) => effects[effect] !== false;
37071
- const { stripeEnabled } = chunkTDO5UWXF_cjs.useBillingSupport();
37071
+ const { stripeEnabled } = chunkO4F77VSO_cjs.useBillingSupport();
37072
37072
  const welcomeDialog = on("welcomeDialog") && stripeEnabled;
37073
37073
  const resolveFirstLogin = () => {
37074
37074
  if (welcomeDialog) skipWelcomeDialogThisSession();
@@ -37091,7 +37091,7 @@ function ConnectedAppRuntime({
37091
37091
  on("pageTransition") && /* @__PURE__ */ jsxRuntime.jsx(PageTransition, {}),
37092
37092
  on("freshChatModel") && /* @__PURE__ */ jsxRuntime.jsx(FreshChatModel, {}),
37093
37093
  on("workspaceOpenMetrics") && measure && /* @__PURE__ */ jsxRuntime.jsx(WorkspaceOpenMetrics, { measure }),
37094
- on("prefetch") && /* @__PURE__ */ jsxRuntime.jsx(Prefetch, { loaders: [...prefetch ?? [], ...chunkNIE3N6OM_cjs.KIT_CHUNK_LOADERS] }),
37094
+ on("prefetch") && /* @__PURE__ */ jsxRuntime.jsx(Prefetch, { loaders: [...prefetch ?? [], ...chunkMMVDVHKE_cjs.KIT_CHUNK_LOADERS] }),
37095
37095
  on("guidedRuns") && /* @__PURE__ */ jsxRuntime.jsx(GuidedRuns, {})
37096
37096
  ] });
37097
37097
  }
@@ -38111,9 +38111,9 @@ function resolveLaunchInputs(workflow, request) {
38111
38111
  return { ...fromContext, ...fromScope, ...request.inputs };
38112
38112
  }
38113
38113
  function useWorkflowLaunch() {
38114
- const { skills } = chunk6UTKM5AB_cjs.useWorkflowDefinitions();
38114
+ const { skills } = chunkJSQQV23D_cjs.useWorkflowDefinitions();
38115
38115
  const launch = react$1.useCallback(
38116
- (workflowId, options = {}) => chunkDDIW4HLU_cjs.openWorkflowLaunch({ workflowId, ...options }),
38116
+ (workflowId, options = {}) => chunkPVPRVI54_cjs.openWorkflowLaunch({ workflowId, ...options }),
38117
38117
  []
38118
38118
  );
38119
38119
  const itemsFor = react$1.useCallback(
@@ -38142,10 +38142,10 @@ function useWorkflowLaunch() {
38142
38142
  return { launch, itemsFor, scopeItemsFor };
38143
38143
  }
38144
38144
  function Inner() {
38145
- const request = chunkDDIW4HLU_cjs.useWorkflowLaunchRequest();
38146
- const close = chunkDDIW4HLU_cjs.closeWorkflowLaunch;
38147
- const { skills } = chunk6UTKM5AB_cjs.useWorkflowDefinitions();
38148
- const run = chunk557MJ4IH_cjs.useLaunchWorkflow({ landing: request?.landing });
38145
+ const request = chunkPVPRVI54_cjs.useWorkflowLaunchRequest();
38146
+ const close = chunkPVPRVI54_cjs.closeWorkflowLaunch;
38147
+ const { skills } = chunkJSQQV23D_cjs.useWorkflowDefinitions();
38148
+ const run = chunkQOXK5O6M_cjs.useLaunchWorkflow({ landing: request?.landing });
38149
38149
  const workflow = skills.find((w) => w.id === request?.workflowId);
38150
38150
  const inputs = react$1.useMemo(
38151
38151
  () => workflow && request ? resolveLaunchInputs(workflow, request) : void 0,
@@ -38169,7 +38169,7 @@ function Inner() {
38169
38169
  }, [request, workflow, autoStart]);
38170
38170
  if (!request || !workflow || autoStart) return null;
38171
38171
  return /* @__PURE__ */ jsxRuntime.jsx(
38172
- chunk557MJ4IH_cjs.ConnectedWorkflowStart,
38172
+ chunkQOXK5O6M_cjs.ConnectedWorkflowStart,
38173
38173
  {
38174
38174
  workflows: skills,
38175
38175
  showTiles: false,
@@ -38181,7 +38181,7 @@ function Inner() {
38181
38181
  );
38182
38182
  }
38183
38183
  function WorkflowLaunchHost() {
38184
- return chunkDDIW4HLU_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
38184
+ return chunkPVPRVI54_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
38185
38185
  }
38186
38186
  function isNeedsConfirmationDetail(detail) {
38187
38187
  return typeof detail === "object" && detail !== null && detail.needs_confirmation === "resource_private";
@@ -38468,9 +38468,9 @@ function ConnectedConversationSettings() {
38468
38468
  });
38469
38469
  if (confirmed) settings.share();
38470
38470
  };
38471
- return /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrame, { testId: "conversation-settings", className: "bg-transparent", children: /* @__PURE__ */ jsxRuntime.jsx(chunkNJCK6V6U_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
38471
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrame, { testId: "conversation-settings", className: "bg-transparent", children: /* @__PURE__ */ jsxRuntime.jsx(chunkL6APDO3Y_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
38472
38472
  !settings.isNewConversation && /* @__PURE__ */ jsxRuntime.jsx(
38473
- chunkNJCK6V6U_cjs.ConversationTitleSection,
38473
+ chunkL6APDO3Y_cjs.ConversationTitleSection,
38474
38474
  {
38475
38475
  title: settings.title,
38476
38476
  onTitleChange: settings.setTitle,
@@ -38488,9 +38488,9 @@ function ConnectedConversationSettings() {
38488
38488
  }
38489
38489
  ),
38490
38490
  /* @__PURE__ */ jsxRuntime.jsx(
38491
- chunkNJCK6V6U_cjs.ModelSelectionSection,
38491
+ chunkL6APDO3Y_cjs.ModelSelectionSection,
38492
38492
  {
38493
- selector: /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedModelSelector, {}),
38493
+ selector: /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedModelSelector, {}),
38494
38494
  onUseDefaults: settings.resetToDefaults
38495
38495
  }
38496
38496
  )
@@ -38549,7 +38549,7 @@ var BUILTIN_GLOBAL_DIALOGS = {
38549
38549
  testId: "workspace-transfer-modal"
38550
38550
  }
38551
38551
  ),
38552
- logout: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedLogoutDialog, { open: props !== null, onClose }),
38552
+ logout: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedLogoutDialog, { open: props !== null, onClose }),
38553
38553
  conversationSettings: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedConversationSettingsDialog, { open: props !== null, onClose }),
38554
38554
  unarchiveWorkspace: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedUnarchiveWorkspaceDialog, { workspaceId: props?.workspaceId ?? null, onClose }),
38555
38555
  productionSet: ConnectedProductionSetDialog,
@@ -38626,7 +38626,7 @@ function WorkflowRunStatusCell({ conversation }) {
38626
38626
  return person ? ui.getUserDisplayName(person) : void 0;
38627
38627
  };
38628
38628
  return /* @__PURE__ */ jsxRuntime.jsx(
38629
- chunkDDIW4HLU_cjs.WorkflowRunStatus,
38629
+ chunkPVPRVI54_cjs.WorkflowRunStatus,
38630
38630
  {
38631
38631
  steps,
38632
38632
  states,
@@ -38660,7 +38660,7 @@ function ConversationStatusCell({ conversation }) {
38660
38660
  if (conversation.plan?.steps?.length && !isLiveGenerating)
38661
38661
  return /* @__PURE__ */ jsxRuntime.jsx(WorkflowRunStatusCell, { conversation });
38662
38662
  return /* @__PURE__ */ jsxRuntime.jsx(
38663
- chunkDDIW4HLU_cjs.ThreadStatusLine,
38663
+ chunkPVPRVI54_cjs.ThreadStatusLine,
38664
38664
  {
38665
38665
  state: threadStateOf(conversation, isLiveGenerating),
38666
38666
  className: "h-full",
@@ -38966,7 +38966,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
38966
38966
  const [draft, setDraft] = react$1.useState("");
38967
38967
  const input = react$1.useRef(null);
38968
38968
  const { openNewConversation } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
38969
- const slashWorkflows = chunk557MJ4IH_cjs.useSlashSkillWorkflows({ landing: "chat" });
38969
+ const slashWorkflows = chunkQOXK5O6M_cjs.useSlashSkillWorkflows({ landing: "chat" });
38970
38970
  const skills = react$1.useMemo(() => ({ openFor: slashWorkflows.openFor }), [slashWorkflows.openFor]);
38971
38971
  react$1.useEffect(() => {
38972
38972
  if (autoFocus) input.current?.focus();
@@ -38979,7 +38979,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
38979
38979
  return /* @__PURE__ */ jsxRuntime.jsxs(chunkM2FOXGJU_cjs.ComposerDock, { children: [
38980
38980
  slashWorkflows.launcher,
38981
38981
  /* @__PURE__ */ jsxRuntime.jsx(chunkM2FOXGJU_cjs.ComposerContainer, { className: "mx-auto max-w-[49rem] px-3 sm:px-6", children: /* @__PURE__ */ jsxRuntime.jsx(
38982
- chunkOEREKAAP_cjs.ConversationComposer,
38982
+ chunkOPH4UZQN_cjs.ConversationComposer,
38983
38983
  {
38984
38984
  value: draft,
38985
38985
  onValueChange: setDraft,
@@ -38988,7 +38988,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
38988
38988
  isConversationEmpty: true,
38989
38989
  shouldOfferFollowUp: false,
38990
38990
  skills,
38991
- modelSelector: /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedModelSelector, { variant: "compact" }),
38991
+ modelSelector: /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedModelSelector, { variant: "compact" }),
38992
38992
  rightButton: /* @__PURE__ */ jsxRuntime.jsx(chunkM2FOXGJU_cjs.ComposerSend, { onSend: send, disabled: !draft.trim() })
38993
38993
  }
38994
38994
  ) })
@@ -38997,9 +38997,9 @@ function ConnectedThreadLauncher({ autoFocus }) {
38997
38997
  var START_VISIBLE = 8;
38998
38998
  var START_SEARCH_ABOVE = 8;
38999
38999
  function ConnectedConversationStart() {
39000
- const { start } = chunk6UTKM5AB_cjs.useWorkflowDefinitions();
39000
+ const { start } = chunkJSQQV23D_cjs.useWorkflowDefinitions();
39001
39001
  const { openSkillsBrowser } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
39002
- const canBrowse = chunk6UTKM5AB_cjs.useCanBrowseSkills();
39002
+ const canBrowse = chunkJSQQV23D_cjs.useCanBrowseSkills();
39003
39003
  const [query, setQuery] = react$1.useState("");
39004
39004
  const q = query.trim().toLowerCase();
39005
39005
  const shown = react$1.useMemo(() => {
@@ -39037,7 +39037,7 @@ function ConnectedConversationStart() {
39037
39037
  )
39038
39038
  ] }),
39039
39039
  /* @__PURE__ */ jsxRuntime.jsx(
39040
- chunk557MJ4IH_cjs.ConnectedWorkflowStart,
39040
+ chunkQOXK5O6M_cjs.ConnectedWorkflowStart,
39041
39041
  {
39042
39042
  workflows: start,
39043
39043
  tileWorkflows: shown,
@@ -39119,7 +39119,7 @@ function AgentBarShell({
39119
39119
  }, [isStepsExpanded, steps]);
39120
39120
  const visibleStepCount = react$1.useMemo(() => browser.topLevelAgentSteps(steps ?? []).length, [steps]);
39121
39121
  return /* @__PURE__ */ jsxRuntime.jsx(
39122
- chunkDDIW4HLU_cjs.AgentBar,
39122
+ chunkPVPRVI54_cjs.AgentBar,
39123
39123
  {
39124
39124
  className,
39125
39125
  testId,
@@ -39131,7 +39131,7 @@ function AgentBarShell({
39131
39131
  drawerRef: scrollRef,
39132
39132
  onDrawerScroll: handleDrawerScroll,
39133
39133
  drawer: /* @__PURE__ */ jsxRuntime.jsx(
39134
- chunkOEREKAAP_cjs.AgentSteps,
39134
+ chunkOPH4UZQN_cjs.AgentSteps,
39135
39135
  {
39136
39136
  steps: stepList,
39137
39137
  isStreaming,
@@ -39183,7 +39183,7 @@ function AgentControlBar({
39183
39183
  const waitingOnChildren = runningLanes.length > 0 && ["sub_agent", "spawn_subagent", "deep_research", "run_skill"].includes(currentTool ?? "");
39184
39184
  const waitingLabel = runningLanes.length === 1 ? `Waiting on ${runningLanes[0].job}` : `Waiting on ${runningLanes.length} sub-agents`;
39185
39185
  const liveTimerNode = liveTimer && /* @__PURE__ */ jsxRuntime.jsx(
39186
- chunkOEREKAAP_cjs.MessageLiveSeconds,
39186
+ chunkOPH4UZQN_cjs.MessageLiveSeconds,
39187
39187
  {
39188
39188
  ...liveTimer,
39189
39189
  offsetSeconds: currentStep?.t ?? 0,
@@ -39192,7 +39192,7 @@ function AgentControlBar({
39192
39192
  }
39193
39193
  );
39194
39194
  const status = /* @__PURE__ */ jsxRuntime.jsx(
39195
- chunkDDIW4HLU_cjs.AgentBarStatus,
39195
+ chunkPVPRVI54_cjs.AgentBarStatus,
39196
39196
  {
39197
39197
  state: showState ? controlState : void 0,
39198
39198
  stateLabel: STATE_LABEL[controlState],
@@ -39234,7 +39234,7 @@ function AgentControlBar({
39234
39234
  ];
39235
39235
  const controls = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
39236
39236
  onStop && /* @__PURE__ */ jsxRuntime.jsx(
39237
- chunkDDIW4HLU_cjs.AgentBarIconButton,
39237
+ chunkPVPRVI54_cjs.AgentBarIconButton,
39238
39238
  {
39239
39239
  onClick: onStop,
39240
39240
  title: "Stop",
@@ -39243,22 +39243,22 @@ function AgentControlBar({
39243
39243
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Square, { className: "h-3 w-3", fill: "currentColor" })
39244
39244
  }
39245
39245
  ),
39246
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.AgentBarMenu, { items: menuItems })
39246
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.AgentBarMenu, { items: menuItems })
39247
39247
  ] });
39248
39248
  const displayedQueuedMessages = (transientQueuedMessages ?? []).filter(
39249
39249
  (message) => !message.serverId || !queuedMessages.some((queued) => queued.external_id === message.serverId)
39250
39250
  );
39251
39251
  const queuedNotes = displayedQueuedMessages.filter((message) => message.content);
39252
- const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.AgentBarNotes, { children: [
39252
+ const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.AgentBarNotes, { children: [
39253
39253
  queuedNotes.map((message, index) => /* @__PURE__ */ jsxRuntime.jsx(
39254
- chunkDDIW4HLU_cjs.AgentBarQueuedNote,
39254
+ chunkPVPRVI54_cjs.AgentBarQueuedNote,
39255
39255
  {
39256
39256
  text: message.content ?? "",
39257
39257
  isAcknowledged: message.acknowledged
39258
39258
  },
39259
39259
  index
39260
39260
  )),
39261
- probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
39261
+ probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
39262
39262
  ] }) : null;
39263
39263
  return /* @__PURE__ */ jsxRuntime.jsx(
39264
39264
  AgentBarShell,
@@ -40267,7 +40267,7 @@ function ConversationThread({
40267
40267
  react$1.useEffect(() => {
40268
40268
  if (!isGenerating) setFirstTurnPrompt(null);
40269
40269
  }, [isGenerating]);
40270
- const slashWorkflows = chunk557MJ4IH_cjs.useSlashSkillWorkflows({ landing: "current-chat" });
40270
+ const slashWorkflows = chunkQOXK5O6M_cjs.useSlashSkillWorkflows({ landing: "current-chat" });
40271
40271
  const composerSkills = react$1.useMemo(
40272
40272
  () => ({ openFor: slashWorkflows.openFor }),
40273
40273
  [slashWorkflows.openFor]
@@ -40373,7 +40373,7 @@ function ConversationThread({
40373
40373
  useStartRequestedDraft();
40374
40374
  const orphanedMessage = react.getOrphanedLastMessage(messageHistory, isGenerating, assistantMode);
40375
40375
  return /* @__PURE__ */ jsxRuntime.jsxs(chunkKLMNCBLY_cjs.ConversationBody, { children: [
40376
- /* @__PURE__ */ jsxRuntime.jsx(chunkKLMNCBLY_cjs.ConversationMain, { "data-testid": `conversation-${currentConversationId}`, children: threadsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkKLMNCBLY_cjs.ConversationLoading, {}) : messageHistory.length > 0 || isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.AskAgainContext.Provider, { value: handleAskAgain, children: /* @__PURE__ */ jsxRuntime.jsxs(chunkVJCSEMXT_cjs.TranscriptRunsContext.Provider, { value: transcriptRunInfo, children: [
40376
+ /* @__PURE__ */ jsxRuntime.jsx(chunkKLMNCBLY_cjs.ConversationMain, { "data-testid": `conversation-${currentConversationId}`, children: threadsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkKLMNCBLY_cjs.ConversationLoading, {}) : messageHistory.length > 0 || isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.AskAgainContext.Provider, { value: handleAskAgain, children: /* @__PURE__ */ jsxRuntime.jsxs(chunkVJCSEMXT_cjs.TranscriptRunsContext.Provider, { value: transcriptRunInfo, children: [
40377
40377
  meetingCallExtId && transcriptLineCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center py-2", children: /* @__PURE__ */ jsxRuntime.jsx(
40378
40378
  chunkZBP4ZSAJ_cjs.ConversationFilter,
40379
40379
  {
@@ -40391,7 +40391,7 @@ function ConversationThread({
40391
40391
  ]
40392
40392
  }
40393
40393
  ) }),
40394
- /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedMessageArea, { ref: containerRef, messages: visibleMessages }),
40394
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedMessageArea, { ref: containerRef, messages: visibleMessages }),
40395
40395
  showProvisional && /* @__PURE__ */ jsxRuntime.jsx(chunkBQ5RIWWT_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
40396
40396
  ] }) }) : meetingCallExtId ? (
40397
40397
  // A meeting thread with nothing yet: call-aware, not the upload prompt.
@@ -40399,7 +40399,7 @@ function ConversationThread({
40399
40399
  /* @__PURE__ */ jsxRuntime.jsx(chunkBQ5RIWWT_cjs.CallConversationEmpty, { callExtId: meetingCallExtId }),
40400
40400
  /* @__PURE__ */ jsxRuntime.jsx(chunkBQ5RIWWT_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
40401
40401
  ] })
40402
- ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(chunkOEREKAAP_cjs.ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
40402
+ ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(chunkOPH4UZQN_cjs.ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
40403
40403
  ConnectedConversationEmpty,
40404
40404
  {
40405
40405
  hasDocuments: allWorkspaceDocuments.length > 0,
@@ -40497,7 +40497,7 @@ function ConversationThread({
40497
40497
  }
40498
40498
  ),
40499
40499
  /* @__PURE__ */ jsxRuntime.jsx(
40500
- chunkOEREKAAP_cjs.ConversationComposer,
40500
+ chunkOPH4UZQN_cjs.ConversationComposer,
40501
40501
  {
40502
40502
  handleSendMessage: handleUserSend,
40503
40503
  placeholder: pendingAnswer ? assistant.answerPlaceholder : void 0,
@@ -40842,7 +40842,7 @@ function ConnectedThreadsPage({
40842
40842
  };
40843
40843
  const page = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-full min-h-0 flex-col", "data-testid": "threads-page", children: [
40844
40844
  /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-0 flex-1 flex-col bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(
40845
- chunkDDIW4HLU_cjs.ConversationListView,
40845
+ chunkPVPRVI54_cjs.ConversationListView,
40846
40846
  {
40847
40847
  showHeader,
40848
40848
  conversations: tasks,
@@ -40861,7 +40861,7 @@ function ConnectedThreadsPage({
40861
40861
  renderLabels: threadLabels.renderLabels,
40862
40862
  labelText: threadLabels.labelText,
40863
40863
  renderBy: (row2) => /* @__PURE__ */ jsxRuntime.jsx(
40864
- chunkDDIW4HLU_cjs.ConversationTurnSpeaker,
40864
+ chunkPVPRVI54_cjs.ConversationTurnSpeaker,
40865
40865
  {
40866
40866
  variant: "icon",
40867
40867
  role: row2.last_message_role,
@@ -40894,7 +40894,7 @@ function ConnectedThreadsPage({
40894
40894
  }
40895
40895
  ),
40896
40896
  /* @__PURE__ */ jsxRuntime.jsx(
40897
- chunkNJCK6V6U_cjs.RenameDialog,
40897
+ chunkL6APDO3Y_cjs.RenameDialog,
40898
40898
  {
40899
40899
  open: !!renaming,
40900
40900
  onClose: () => {
@@ -41742,7 +41742,7 @@ function ConnectedConversationPage({
41742
41742
  );
41743
41743
  const { data: workspaceTags = [] } = react.useTags();
41744
41744
  const { tagId: threadTagId, clear: clearThreadTag } = useThreadTagFilter();
41745
- const historyCount = chunkDDIW4HLU_cjs.filterConversationRows(
41745
+ const historyCount = chunkPVPRVI54_cjs.filterConversationRows(
41746
41746
  threadTagId ? conversations.filter((row2) => row2.label_ext_ids?.includes(threadTagId)) : conversations,
41747
41747
  threadFilter,
41748
41748
  (row2) => workspaceTags.filter((tag) => row2.label_ext_ids?.includes(tag.external_id)).map((tag) => tag.name).join(" "),
@@ -41824,7 +41824,7 @@ function ConnectedConversationPage({
41824
41824
  ] })
41825
41825
  }
41826
41826
  ),
41827
- isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunkB2HNNG25_cjs.ConnectedThreadTaskBar, { conversationId: currentConversationId })
41827
+ isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunkZCIQBHH5_cjs.ConnectedThreadTaskBar, { conversationId: currentConversationId })
41828
41828
  ] }),
41829
41829
  isInChat && /* @__PURE__ */ jsxRuntime.jsx(
41830
41830
  ConversationThread,
@@ -42033,7 +42033,7 @@ function SsoResendVerificationButton({
42033
42033
  onClick: async () => handleResendEmailVerification(),
42034
42034
  disabled: loading || disabled,
42035
42035
  "aria-label": "Resend verification email",
42036
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkNIE3N6OM_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
42036
+ children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkMMVDVHKE_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
42037
42037
  "Didn't get a verification email? ",
42038
42038
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold", children: "Resend" })
42039
42039
  ] })
@@ -42044,16 +42044,16 @@ function SsoResendVerificationButton({
42044
42044
  }
42045
42045
  var NO_RECOVERY_KEY_WARNING = "Without your password or a recovery key, we cannot recover your account or data.";
42046
42046
  function ConnectedSsoCallback() {
42047
- const sso = chunkOEREKAAP_cjs.useSsoSignIn();
42047
+ const sso = chunkOPH4UZQN_cjs.useSsoSignIn();
42048
42048
  const { isAuthenticated: isAuthenticated2, isLoading, user } = sso;
42049
- const auth = chunkOEREKAAP_cjs.useAuthPages();
42049
+ const auth = chunkOPH4UZQN_cjs.useAuthPages();
42050
42050
  const { notify: notify19, navigate } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
42051
42051
  const passwordRules = auth.passwordRules;
42052
42052
  const isProcessing = react$1.useRef(false);
42053
42053
  const hasCheckedStatus = react$1.useRef(false);
42054
42054
  const [accessToken, setAccessToken] = react$1.useState(null);
42055
42055
  const [ssoStatus, setSsoStatus] = react$1.useState(null);
42056
- const ssoName = react$1.useMemo(() => chunkOEREKAAP_cjs.resolveSsoName(user ?? {}, ssoStatus ?? {}), [user, ssoStatus]);
42056
+ const ssoName = react$1.useMemo(() => chunkOPH4UZQN_cjs.resolveSsoName(user ?? {}, ssoStatus ?? {}), [user, ssoStatus]);
42057
42057
  const [password, setPassword] = react$1.useState("");
42058
42058
  const [confirmPassword, setConfirmPassword] = react$1.useState("");
42059
42059
  const [error, setError] = react$1.useState(null);
@@ -42231,7 +42231,7 @@ function ConnectedSsoCallback() {
42231
42231
  setIsCheckingStatus(true);
42232
42232
  try {
42233
42233
  console.info("[SSO] Checking user status...");
42234
- const response = await chunkOEREKAAP_cjs.ssoAccountStatus(arbi, accessToken, user);
42234
+ const response = await chunkOPH4UZQN_cjs.ssoAccountStatus(arbi, accessToken, user);
42235
42235
  console.info("[SSO] User status:", response.status);
42236
42236
  setSsoStatus(response);
42237
42237
  } catch (error2) {
@@ -42275,7 +42275,7 @@ function ConnectedSsoCallback() {
42275
42275
  setIsSubmitting(true);
42276
42276
  setError(null);
42277
42277
  try {
42278
- const { login, registered, linked } = await chunkOEREKAAP_cjs.completeSsoSignIn(arbi, {
42278
+ const { login, registered, linked } = await chunkOPH4UZQN_cjs.completeSsoSignIn(arbi, {
42279
42279
  token: accessToken,
42280
42280
  user,
42281
42281
  status: ssoStatus,
@@ -42557,7 +42557,7 @@ function ConnectedSsoCallback() {
42557
42557
  ssoStatus.status !== "new_user" && auth.footer
42558
42558
  ] }),
42559
42559
  /* @__PURE__ */ jsxRuntime.jsx(
42560
- chunkOEREKAAP_cjs.ConnectedForgotPassword,
42560
+ chunkOPH4UZQN_cjs.ConnectedForgotPassword,
42561
42561
  {
42562
42562
  open: showForgotPasswordModal,
42563
42563
  onOpenChange: setShowForgotPasswordModal,
@@ -42565,7 +42565,7 @@ function ConnectedSsoCallback() {
42565
42565
  }
42566
42566
  ),
42567
42567
  /* @__PURE__ */ jsxRuntime.jsx(
42568
- chunkOEREKAAP_cjs.ConnectedPasswordChangeDialog,
42568
+ chunkOPH4UZQN_cjs.ConnectedPasswordChangeDialog,
42569
42569
  {
42570
42570
  open: showChangePasswordModal,
42571
42571
  onClose: () => setShowChangePasswordModal(false),
@@ -42724,27 +42724,27 @@ function ConnectedOAuthConsentPage({
42724
42724
  oauthErrorRedirect(params.redirectUri, params.state, "access_denied");
42725
42725
  }
42726
42726
  if (error && !params) {
42727
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
42727
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
42728
42728
  }
42729
42729
  if (!params) {
42730
42730
  return null;
42731
42731
  }
42732
42732
  if (clientInfo?.isLocalAgentFlow) {
42733
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_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." }) });
42733
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_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." }) });
42734
42734
  }
42735
42735
  if (!isAuthenticated2) {
42736
42736
  return null;
42737
42737
  }
42738
42738
  if (callbackUrl) {
42739
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentCard, { size: "md", children: [
42740
- /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
42739
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentCard, { size: "md", children: [
42740
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
42741
42741
  "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",
42742
42742
  " ",
42743
42743
  copied ? "it's already copied to your clipboard." : "copy it first."
42744
42744
  ] }),
42745
- /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentSection, { title: "Callback URL", children: [
42746
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
42747
- /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentText, { variant: "hint", children: [
42745
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentSection, { title: "Callback URL", children: [
42746
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
42747
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentText, { variant: "hint", children: [
42748
42748
  "In Claude Code, paste the URL at the prompt that says",
42749
42749
  " ",
42750
42750
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-foreground", children: '"paste the full redirect URL here"' }),
@@ -42753,17 +42753,17 @@ function ConnectedOAuthConsentPage({
42753
42753
  ] })
42754
42754
  ] }) });
42755
42755
  }
42756
- return /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentCard, { children: [
42757
- /* @__PURE__ */ jsxRuntime.jsxs(chunkDDIW4HLU_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
42758
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
42756
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentCard, { children: [
42757
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkPVPRVI54_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
42758
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
42759
42759
  " is requesting access to your ",
42760
42760
  appName,
42761
42761
  " workspace."
42762
42762
  ] }),
42763
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentPermissionList, { items: permissions }) }),
42764
- error && /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentNotice, { tone: "error", children: error }),
42765
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
42766
- /* @__PURE__ */ jsxRuntime.jsx(chunkDDIW4HLU_cjs.ConsentFootnote, { children: footnote })
42763
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentPermissionList, { items: permissions }) }),
42764
+ error && /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentNotice, { tone: "error", children: error }),
42765
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
42766
+ /* @__PURE__ */ jsxRuntime.jsx(chunkPVPRVI54_cjs.ConsentFootnote, { children: footnote })
42767
42767
  ] }) });
42768
42768
  }
42769
42769
  function ConnectedSharedFilesPage({
@@ -42885,7 +42885,7 @@ function useMainAreaPanel(panels) {
42885
42885
  }
42886
42886
  function useTogglePanel() {
42887
42887
  const { setFocusedArea } = react.useArbiSessionStore();
42888
- const { windows } = chunkB3LZITVF_cjs.usePanelHostSupport();
42888
+ const { windows } = chunk3LNUQYAF_cjs.usePanelHostSupport();
42889
42889
  return (panelId, isOpen, setOpen) => {
42890
42890
  if (isOpen && windows.focusPanelWindow(panelId)) {
42891
42891
  setFocusedArea(panelId);
@@ -42979,7 +42979,7 @@ function ConnectedShellSidebar({
42979
42979
  !brand && pin
42980
42980
  ] }),
42981
42981
  expanded ? ask : ask ? /* @__PURE__ */ jsxRuntime.jsx(
42982
- chunkB3LZITVF_cjs.AskTrigger,
42982
+ chunk3LNUQYAF_cjs.AskTrigger,
42983
42983
  {
42984
42984
  variant: "rail",
42985
42985
  onClick: controller.expand,
@@ -42988,7 +42988,7 @@ function ConnectedShellSidebar({
42988
42988
  ) : null
42989
42989
  ] });
42990
42990
  return /* @__PURE__ */ jsxRuntime.jsx(
42991
- chunkB3LZITVF_cjs.ShellSidebar,
42991
+ chunk3LNUQYAF_cjs.ShellSidebar,
42992
42992
  {
42993
42993
  controller,
42994
42994
  drawerLogo: logo,
@@ -43050,7 +43050,7 @@ function ConnectedShellTopbar({
43050
43050
  if (landing || !workspace && !hasNavigation)
43051
43051
  return /* @__PURE__ */ jsxRuntime.jsx(chunkNY3YUCOW_cjs.MobileAppBar, { onMenu: sidebar.openDrawer, logo, showMenu: false, actions });
43052
43052
  if (askExpanded && ask)
43053
- return /* @__PURE__ */ jsxRuntime.jsx(chunkB3LZITVF_cjs.AskRow, { onClose: () => setAskExpanded(false), children: ask({ autoFocus: true, onSubmitted: () => setAskExpanded(false) }) });
43053
+ return /* @__PURE__ */ jsxRuntime.jsx(chunk3LNUQYAF_cjs.AskRow, { onClose: () => setAskExpanded(false), children: ask({ autoFocus: true, onSubmitted: () => setAskExpanded(false) }) });
43054
43054
  return /* @__PURE__ */ jsxRuntime.jsx(
43055
43055
  chunkNY3YUCOW_cjs.MobileAppBar,
43056
43056
  {
@@ -43085,7 +43085,7 @@ function ConnectedShellTopbar({
43085
43085
  return /* @__PURE__ */ jsxRuntime.jsx(chunk6WMMZLEV_cjs.Shell.Topbar, { actions, children: landing });
43086
43086
  }
43087
43087
  var ConnectedAssistantDock2 = react$1.lazy(
43088
- () => import('../ai-IM4A23YT.cjs').then((m) => ({ default: m.ConnectedAssistantDock }))
43088
+ () => import('../ai-OBS67QV4.cjs').then((m) => ({ default: m.ConnectedAssistantDock }))
43089
43089
  );
43090
43090
  var DOCK_TOGGLE_LABEL = "Assistant chat";
43091
43091
  var DOCK_TOGGLE_TEST_ID = "shell-dock-toggle";
@@ -43310,7 +43310,7 @@ function ConnectedAppShell({
43310
43310
  const session = react.useArbiSessionStore();
43311
43311
  const dockedPanel = react.useArbiSessionState((state) => state.shell.panels.docked);
43312
43312
  const dockSqueezed = chunkFX3K6LNZ_cjs.useMediaQuery(sidebarPolicy?.dockedRailQuery ?? "(max-width: 0px)");
43313
- const sidebar = chunkB3LZITVF_cjs.useSidebarController({
43313
+ const sidebar = chunk3LNUQYAF_cjs.useSidebarController({
43314
43314
  ...useSessionSidebar(),
43315
43315
  forceRail: !!sidebarPolicy?.dockedRailQuery && dockSqueezed && dockedPanel !== null,
43316
43316
  hoverExpansion: sidebarPolicy?.hoverExpansion
@@ -43347,7 +43347,7 @@ function ConnectedAppShell({
43347
43347
  session.setFocusedArea("main");
43348
43348
  contentProps?.onClick?.(event);
43349
43349
  },
43350
- children: content.mode === "docked" ? /* @__PURE__ */ jsxRuntime.jsxs(chunkB3LZITVF_cjs.DockZone, { "data-testid": content.testId, children: [
43350
+ children: content.mode === "docked" ? /* @__PURE__ */ jsxRuntime.jsxs(chunk3LNUQYAF_cjs.DockZone, { "data-testid": content.testId, children: [
43351
43351
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: content.mainPanelVisible ? "hidden" : "h-full min-h-0", children: pageContent }),
43352
43352
  /* @__PURE__ */ jsxRuntime.jsx(
43353
43353
  "div",
@@ -43422,7 +43422,7 @@ function ConnectedTipBar({
43422
43422
  className,
43423
43423
  revealOnHover = false
43424
43424
  }) {
43425
- const { showHints, settingsLoaded, setShowHintsPersisted, setShowHints } = chunkOEREKAAP_cjs.useContextualHints();
43425
+ const { showHints, settingsLoaded, setShowHintsPersisted, setShowHints } = chunkOPH4UZQN_cjs.useContextualHints();
43426
43426
  const { dismissed, dismissTip } = react.useDismissedTips();
43427
43427
  const { notify: notify19 } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
43428
43428
  const { data: workspaces } = react.useWorkspaces();
@@ -43433,7 +43433,7 @@ function ConnectedTipBar({
43433
43433
  workspaceOpen,
43434
43434
  ...state
43435
43435
  };
43436
- const { tip, index, count: count2, previous, next, onHoverChange } = chunkNIE3N6OM_cjs.useTipsPlacement({
43436
+ const { tip, index, count: count2, previous, next, onHoverChange } = chunkMMVDVHKE_cjs.useTipsPlacement({
43437
43437
  registry,
43438
43438
  context,
43439
43439
  state: situation,
@@ -43466,7 +43466,7 @@ function ConnectedTipBar({
43466
43466
  });
43467
43467
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
43468
43468
  /* @__PURE__ */ jsxRuntime.jsx(
43469
- chunkB3LZITVF_cjs.TipCard,
43469
+ chunk3LNUQYAF_cjs.TipCard,
43470
43470
  {
43471
43471
  message: tip.message,
43472
43472
  index,
@@ -43511,7 +43511,7 @@ function useGettingStarted({
43511
43511
  const { user } = react.useArbiSession();
43512
43512
  const userExtId = user?.external_id;
43513
43513
  const temporaryOnly = user?.temporary_access_only === true;
43514
- const { showHints, settingsLoaded, setShowHints, setShowHintsPersisted } = chunkOEREKAAP_cjs.useContextualHints();
43514
+ const { showHints, settingsLoaded, setShowHints, setShowHintsPersisted } = chunkOPH4UZQN_cjs.useContextualHints();
43515
43515
  const { dismissed, loaded: dismissedLoaded, dismissTip } = react.useDismissedTips();
43516
43516
  const welcomeJourneyEnabled = react.useFeature("welcomeJourney");
43517
43517
  const session = react.useArbiSessionStore();
@@ -43733,55 +43733,55 @@ function ChromeInstallDialog({
43733
43733
 
43734
43734
  Object.defineProperty(exports, "CAP_REACHED_MESSAGE", {
43735
43735
  enumerable: true,
43736
- get: function () { return chunkTDO5UWXF_cjs.CAP_REACHED_MESSAGE; }
43736
+ get: function () { return chunkO4F77VSO_cjs.CAP_REACHED_MESSAGE; }
43737
43737
  });
43738
43738
  Object.defineProperty(exports, "ZERO_BUDGET_MESSAGE", {
43739
43739
  enumerable: true,
43740
- get: function () { return chunkTDO5UWXF_cjs.ZERO_BUDGET_MESSAGE; }
43740
+ get: function () { return chunkO4F77VSO_cjs.ZERO_BUDGET_MESSAGE; }
43741
43741
  });
43742
43742
  Object.defineProperty(exports, "aiUsageResetTimestamp", {
43743
43743
  enumerable: true,
43744
- get: function () { return chunkTDO5UWXF_cjs.aiUsageResetTimestamp; }
43744
+ get: function () { return chunkO4F77VSO_cjs.aiUsageResetTimestamp; }
43745
43745
  });
43746
43746
  Object.defineProperty(exports, "formatMoney", {
43747
43747
  enumerable: true,
43748
- get: function () { return chunkTDO5UWXF_cjs.formatMoney; }
43748
+ get: function () { return chunkO4F77VSO_cjs.formatMoney; }
43749
43749
  });
43750
43750
  Object.defineProperty(exports, "formatResetDate", {
43751
43751
  enumerable: true,
43752
- get: function () { return chunkTDO5UWXF_cjs.formatResetDate; }
43752
+ get: function () { return chunkO4F77VSO_cjs.formatResetDate; }
43753
43753
  });
43754
43754
  Object.defineProperty(exports, "getQuotaItems", {
43755
43755
  enumerable: true,
43756
- get: function () { return chunkTDO5UWXF_cjs.getQuotaItems; }
43756
+ get: function () { return chunkO4F77VSO_cjs.getQuotaItems; }
43757
43757
  });
43758
43758
  Object.defineProperty(exports, "isAddonBudgetZero", {
43759
43759
  enumerable: true,
43760
- get: function () { return chunkTDO5UWXF_cjs.isAddonBudgetZero; }
43760
+ get: function () { return chunkO4F77VSO_cjs.isAddonBudgetZero; }
43761
43761
  });
43762
43762
  Object.defineProperty(exports, "isProProject", {
43763
43763
  enumerable: true,
43764
- get: function () { return chunkTDO5UWXF_cjs.isProProject; }
43764
+ get: function () { return chunkO4F77VSO_cjs.isProProject; }
43765
43765
  });
43766
43766
  Object.defineProperty(exports, "planBadgeView", {
43767
43767
  enumerable: true,
43768
- get: function () { return chunkTDO5UWXF_cjs.planBadgeView; }
43768
+ get: function () { return chunkO4F77VSO_cjs.planBadgeView; }
43769
43769
  });
43770
43770
  Object.defineProperty(exports, "planName", {
43771
43771
  enumerable: true,
43772
- get: function () { return chunkTDO5UWXF_cjs.planName; }
43772
+ get: function () { return chunkO4F77VSO_cjs.planName; }
43773
43773
  });
43774
43774
  Object.defineProperty(exports, "projectGroupBilling", {
43775
43775
  enumerable: true,
43776
- get: function () { return chunkTDO5UWXF_cjs.projectGroupBilling; }
43776
+ get: function () { return chunkO4F77VSO_cjs.projectGroupBilling; }
43777
43777
  });
43778
43778
  Object.defineProperty(exports, "useBillingSupport", {
43779
43779
  enumerable: true,
43780
- get: function () { return chunkTDO5UWXF_cjs.useBillingSupport; }
43780
+ get: function () { return chunkO4F77VSO_cjs.useBillingSupport; }
43781
43781
  });
43782
43782
  Object.defineProperty(exports, "useRewardBalance", {
43783
43783
  enumerable: true,
43784
- get: function () { return chunkTDO5UWXF_cjs.useRewardBalance; }
43784
+ get: function () { return chunkO4F77VSO_cjs.useRewardBalance; }
43785
43785
  });
43786
43786
  Object.defineProperty(exports, "ConnectedMailInviteCard", {
43787
43787
  enumerable: true,
@@ -43801,355 +43801,355 @@ Object.defineProperty(exports, "useMemberLookup", {
43801
43801
  });
43802
43802
  Object.defineProperty(exports, "DEFAULT_ASK_SUGGESTIONS", {
43803
43803
  enumerable: true,
43804
- get: function () { return chunkT23UTIRI_cjs.DEFAULT_ASK_SUGGESTIONS; }
43804
+ get: function () { return chunkKHAO7ZTO_cjs.DEFAULT_ASK_SUGGESTIONS; }
43805
43805
  });
43806
43806
  Object.defineProperty(exports, "DEFAULT_DOCUMENT_VIEWER_LABELS", {
43807
43807
  enumerable: true,
43808
- get: function () { return chunkT23UTIRI_cjs.DEFAULT_DOCUMENT_VIEWER_LABELS; }
43808
+ get: function () { return chunkKHAO7ZTO_cjs.DEFAULT_DOCUMENT_VIEWER_LABELS; }
43809
43809
  });
43810
43810
  Object.defineProperty(exports, "DEFAULT_DOCUMENT_VIEWER_TABS", {
43811
43811
  enumerable: true,
43812
- get: function () { return chunkT23UTIRI_cjs.DEFAULT_DOCUMENT_VIEWER_TABS; }
43812
+ get: function () { return chunkKHAO7ZTO_cjs.DEFAULT_DOCUMENT_VIEWER_TABS; }
43813
43813
  });
43814
43814
  Object.defineProperty(exports, "ConnectedAssistantDock", {
43815
43815
  enumerable: true,
43816
- get: function () { return chunkKTQOGT2L_cjs.ConnectedAssistantDock; }
43816
+ get: function () { return chunkP2MOLUFO_cjs.ConnectedAssistantDock; }
43817
43817
  });
43818
43818
  Object.defineProperty(exports, "redlineStats", {
43819
43819
  enumerable: true,
43820
- get: function () { return chunkKTQOGT2L_cjs.redlineStats; }
43820
+ get: function () { return chunkP2MOLUFO_cjs.redlineStats; }
43821
43821
  });
43822
43822
  Object.defineProperty(exports, "textToArtifact", {
43823
43823
  enumerable: true,
43824
- get: function () { return chunkKTQOGT2L_cjs.textToArtifact; }
43824
+ get: function () { return chunkP2MOLUFO_cjs.textToArtifact; }
43825
43825
  });
43826
43826
  Object.defineProperty(exports, "toRedlineMarkdown", {
43827
43827
  enumerable: true,
43828
- get: function () { return chunkKTQOGT2L_cjs.toRedlineMarkdown; }
43828
+ get: function () { return chunkP2MOLUFO_cjs.toRedlineMarkdown; }
43829
43829
  });
43830
43830
  Object.defineProperty(exports, "useConnectedAiTask", {
43831
43831
  enumerable: true,
43832
- get: function () { return chunkKTQOGT2L_cjs.useConnectedAiTask; }
43832
+ get: function () { return chunkP2MOLUFO_cjs.useConnectedAiTask; }
43833
43833
  });
43834
43834
  Object.defineProperty(exports, "useConnectedChat", {
43835
43835
  enumerable: true,
43836
- get: function () { return chunkKTQOGT2L_cjs.useConnectedChat; }
43836
+ get: function () { return chunkP2MOLUFO_cjs.useConnectedChat; }
43837
43837
  });
43838
43838
  Object.defineProperty(exports, "useSemanticSearch", {
43839
43839
  enumerable: true,
43840
- get: function () { return chunkKTQOGT2L_cjs.useSemanticSearch; }
43840
+ get: function () { return chunkP2MOLUFO_cjs.useSemanticSearch; }
43841
43841
  });
43842
43842
  Object.defineProperty(exports, "useWorkspaceDocs", {
43843
43843
  enumerable: true,
43844
- get: function () { return chunkKTQOGT2L_cjs.useWorkspaceDocs; }
43844
+ get: function () { return chunkP2MOLUFO_cjs.useWorkspaceDocs; }
43845
43845
  });
43846
43846
  Object.defineProperty(exports, "ConnectedTaskActivityDialog", {
43847
43847
  enumerable: true,
43848
- get: function () { return chunkB2HNNG25_cjs.ConnectedTaskActivityDialog; }
43848
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedTaskActivityDialog; }
43849
43849
  });
43850
43850
  Object.defineProperty(exports, "ConnectedTaskComposer", {
43851
43851
  enumerable: true,
43852
- get: function () { return chunkB2HNNG25_cjs.ConnectedTaskComposer; }
43852
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedTaskComposer; }
43853
43853
  });
43854
43854
  Object.defineProperty(exports, "ConnectedThreadTaskBar", {
43855
43855
  enumerable: true,
43856
- get: function () { return chunkB2HNNG25_cjs.ConnectedThreadTaskBar; }
43856
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedThreadTaskBar; }
43857
43857
  });
43858
43858
  Object.defineProperty(exports, "ConnectedWorkflowHistory", {
43859
43859
  enumerable: true,
43860
- get: function () { return chunkB2HNNG25_cjs.ConnectedWorkflowHistory; }
43860
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedWorkflowHistory; }
43861
43861
  });
43862
43862
  Object.defineProperty(exports, "ConnectedWorkflowRunPage", {
43863
43863
  enumerable: true,
43864
- get: function () { return chunkB2HNNG25_cjs.ConnectedWorkflowRunPage; }
43864
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedWorkflowRunPage; }
43865
43865
  });
43866
43866
  Object.defineProperty(exports, "ConnectedWorkflowRunner", {
43867
43867
  enumerable: true,
43868
- get: function () { return chunkB2HNNG25_cjs.ConnectedWorkflowRunner; }
43868
+ get: function () { return chunkZCIQBHH5_cjs.ConnectedWorkflowRunner; }
43869
43869
  });
43870
43870
  Object.defineProperty(exports, "DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS", {
43871
43871
  enumerable: true,
43872
- get: function () { return chunkB2HNNG25_cjs.DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS; }
43872
+ get: function () { return chunkZCIQBHH5_cjs.DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS; }
43873
43873
  });
43874
43874
  Object.defineProperty(exports, "DEFAULT_WORKFLOW_RUN_PAGE_LABELS", {
43875
43875
  enumerable: true,
43876
- get: function () { return chunkB2HNNG25_cjs.DEFAULT_WORKFLOW_RUN_PAGE_LABELS; }
43876
+ get: function () { return chunkZCIQBHH5_cjs.DEFAULT_WORKFLOW_RUN_PAGE_LABELS; }
43877
43877
  });
43878
43878
  Object.defineProperty(exports, "WorkflowRunThread", {
43879
43879
  enumerable: true,
43880
- get: function () { return chunkB2HNNG25_cjs.WorkflowRunThread; }
43880
+ get: function () { return chunkZCIQBHH5_cjs.WorkflowRunThread; }
43881
43881
  });
43882
43882
  Object.defineProperty(exports, "WorkflowRunWorkspaceChangedError", {
43883
43883
  enumerable: true,
43884
- get: function () { return chunkB2HNNG25_cjs.WorkflowRunWorkspaceChangedError; }
43884
+ get: function () { return chunkZCIQBHH5_cjs.WorkflowRunWorkspaceChangedError; }
43885
43885
  });
43886
43886
  Object.defineProperty(exports, "buildProjectSummaries", {
43887
43887
  enumerable: true,
43888
- get: function () { return chunkB2HNNG25_cjs.buildProjectSummaries; }
43888
+ get: function () { return chunkZCIQBHH5_cjs.buildProjectSummaries; }
43889
43889
  });
43890
43890
  Object.defineProperty(exports, "primaryProjectWorkspace", {
43891
43891
  enumerable: true,
43892
- get: function () { return chunkB2HNNG25_cjs.primaryProjectWorkspace; }
43892
+ get: function () { return chunkZCIQBHH5_cjs.primaryProjectWorkspace; }
43893
43893
  });
43894
43894
  Object.defineProperty(exports, "useEnsureRequiredLabels", {
43895
43895
  enumerable: true,
43896
- get: function () { return chunkB2HNNG25_cjs.useEnsureRequiredLabels; }
43896
+ get: function () { return chunkZCIQBHH5_cjs.useEnsureRequiredLabels; }
43897
43897
  });
43898
43898
  Object.defineProperty(exports, "useProjectSummaries", {
43899
43899
  enumerable: true,
43900
- get: function () { return chunkB2HNNG25_cjs.useProjectSummaries; }
43900
+ get: function () { return chunkZCIQBHH5_cjs.useProjectSummaries; }
43901
43901
  });
43902
43902
  Object.defineProperty(exports, "useProjectSummary", {
43903
43903
  enumerable: true,
43904
- get: function () { return chunkB2HNNG25_cjs.useProjectSummary; }
43904
+ get: function () { return chunkZCIQBHH5_cjs.useProjectSummary; }
43905
43905
  });
43906
43906
  Object.defineProperty(exports, "useRenderTaskPerson", {
43907
43907
  enumerable: true,
43908
- get: function () { return chunkB2HNNG25_cjs.useRenderTaskPerson; }
43908
+ get: function () { return chunkZCIQBHH5_cjs.useRenderTaskPerson; }
43909
43909
  });
43910
43910
  Object.defineProperty(exports, "useRequiredLabels", {
43911
43911
  enumerable: true,
43912
- get: function () { return chunkB2HNNG25_cjs.useRequiredLabels; }
43912
+ get: function () { return chunkZCIQBHH5_cjs.useRequiredLabels; }
43913
43913
  });
43914
43914
  Object.defineProperty(exports, "useTaskPeople", {
43915
43915
  enumerable: true,
43916
- get: function () { return chunkB2HNNG25_cjs.useTaskPeople; }
43916
+ get: function () { return chunkZCIQBHH5_cjs.useTaskPeople; }
43917
43917
  });
43918
43918
  Object.defineProperty(exports, "useWorkflowsPageState", {
43919
43919
  enumerable: true,
43920
- get: function () { return chunkB2HNNG25_cjs.useWorkflowsPageState; }
43920
+ get: function () { return chunkZCIQBHH5_cjs.useWorkflowsPageState; }
43921
43921
  });
43922
43922
  Object.defineProperty(exports, "workflowRunView", {
43923
43923
  enumerable: true,
43924
- get: function () { return chunkB2HNNG25_cjs.workflowRunView; }
43924
+ get: function () { return chunkZCIQBHH5_cjs.workflowRunView; }
43925
43925
  });
43926
43926
  Object.defineProperty(exports, "AgentSteps", {
43927
43927
  enumerable: true,
43928
- get: function () { return chunkOEREKAAP_cjs.AgentSteps; }
43928
+ get: function () { return chunkOPH4UZQN_cjs.AgentSteps; }
43929
43929
  });
43930
43930
  Object.defineProperty(exports, "AnswerTable", {
43931
43931
  enumerable: true,
43932
- get: function () { return chunkOEREKAAP_cjs.AnswerTable; }
43932
+ get: function () { return chunkOPH4UZQN_cjs.AnswerTable; }
43933
43933
  });
43934
43934
  Object.defineProperty(exports, "ArbiChat", {
43935
43935
  enumerable: true,
43936
- get: function () { return chunkOEREKAAP_cjs.ArbiChat; }
43936
+ get: function () { return chunkOPH4UZQN_cjs.ArbiChat; }
43937
43937
  });
43938
43938
  Object.defineProperty(exports, "AskAgainContext", {
43939
43939
  enumerable: true,
43940
- get: function () { return chunkOEREKAAP_cjs.AskAgainContext; }
43940
+ get: function () { return chunkOPH4UZQN_cjs.AskAgainContext; }
43941
43941
  });
43942
43942
  Object.defineProperty(exports, "ConnectedBranchControls", {
43943
43943
  enumerable: true,
43944
- get: function () { return chunkOEREKAAP_cjs.ConnectedBranchControls; }
43944
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedBranchControls; }
43945
43945
  });
43946
43946
  Object.defineProperty(exports, "ConnectedCitationRenderer", {
43947
43947
  enumerable: true,
43948
- get: function () { return chunkOEREKAAP_cjs.ConnectedCitationRenderer; }
43948
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedCitationRenderer; }
43949
43949
  });
43950
43950
  Object.defineProperty(exports, "ConnectedCompactConversation", {
43951
43951
  enumerable: true,
43952
- get: function () { return chunkOEREKAAP_cjs.ConnectedCompactConversation; }
43952
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedCompactConversation; }
43953
43953
  });
43954
43954
  Object.defineProperty(exports, "ConnectedCompactLogin", {
43955
43955
  enumerable: true,
43956
- get: function () { return chunkOEREKAAP_cjs.ConnectedCompactLogin; }
43956
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedCompactLogin; }
43957
43957
  });
43958
43958
  Object.defineProperty(exports, "ConnectedConversationDocumentPicker", {
43959
43959
  enumerable: true,
43960
- get: function () { return chunkOEREKAAP_cjs.ConnectedConversationDocumentPicker; }
43960
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedConversationDocumentPicker; }
43961
43961
  });
43962
43962
  Object.defineProperty(exports, "ConnectedDangerZone", {
43963
43963
  enumerable: true,
43964
- get: function () { return chunkOEREKAAP_cjs.ConnectedDangerZone; }
43964
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedDangerZone; }
43965
43965
  });
43966
43966
  Object.defineProperty(exports, "ConnectedEmbeddedChat", {
43967
43967
  enumerable: true,
43968
- get: function () { return chunkOEREKAAP_cjs.ConnectedEmbeddedChat; }
43968
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedEmbeddedChat; }
43969
43969
  });
43970
43970
  Object.defineProperty(exports, "ConnectedForgotPassword", {
43971
43971
  enumerable: true,
43972
- get: function () { return chunkOEREKAAP_cjs.ConnectedForgotPassword; }
43972
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedForgotPassword; }
43973
43973
  });
43974
43974
  Object.defineProperty(exports, "ConnectedIdentityVerification", {
43975
43975
  enumerable: true,
43976
- get: function () { return chunkOEREKAAP_cjs.ConnectedIdentityVerification; }
43976
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedIdentityVerification; }
43977
43977
  });
43978
43978
  Object.defineProperty(exports, "ConnectedLoginPage", {
43979
43979
  enumerable: true,
43980
- get: function () { return chunkOEREKAAP_cjs.ConnectedLoginPage; }
43980
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedLoginPage; }
43981
43981
  });
43982
43982
  Object.defineProperty(exports, "ConnectedLogoutDialog", {
43983
43983
  enumerable: true,
43984
- get: function () { return chunkOEREKAAP_cjs.ConnectedLogoutDialog; }
43984
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedLogoutDialog; }
43985
43985
  });
43986
43986
  Object.defineProperty(exports, "ConnectedMessage", {
43987
43987
  enumerable: true,
43988
- get: function () { return chunkOEREKAAP_cjs.ConnectedMessage; }
43988
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedMessage; }
43989
43989
  });
43990
43990
  Object.defineProperty(exports, "ConnectedMessageArea", {
43991
43991
  enumerable: true,
43992
- get: function () { return chunkOEREKAAP_cjs.ConnectedMessageArea; }
43992
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedMessageArea; }
43993
43993
  });
43994
43994
  Object.defineProperty(exports, "ConnectedMessageList", {
43995
43995
  enumerable: true,
43996
- get: function () { return chunkOEREKAAP_cjs.ConnectedMessageList; }
43996
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedMessageList; }
43997
43997
  });
43998
43998
  Object.defineProperty(exports, "ConnectedModelSelector", {
43999
43999
  enumerable: true,
44000
- get: function () { return chunkOEREKAAP_cjs.ConnectedModelSelector; }
44000
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedModelSelector; }
44001
44001
  });
44002
44002
  Object.defineProperty(exports, "ConnectedNotificationPreferences", {
44003
44003
  enumerable: true,
44004
- get: function () { return chunkOEREKAAP_cjs.ConnectedNotificationPreferences; }
44004
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedNotificationPreferences; }
44005
44005
  });
44006
44006
  Object.defineProperty(exports, "ConnectedPasswordChangeDialog", {
44007
44007
  enumerable: true,
44008
- get: function () { return chunkOEREKAAP_cjs.ConnectedPasswordChangeDialog; }
44008
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedPasswordChangeDialog; }
44009
44009
  });
44010
44010
  Object.defineProperty(exports, "ConnectedProfileCard", {
44011
44011
  enumerable: true,
44012
- get: function () { return chunkOEREKAAP_cjs.ConnectedProfileCard; }
44012
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedProfileCard; }
44013
44013
  });
44014
44014
  Object.defineProperty(exports, "ConnectedSecuritySection", {
44015
44015
  enumerable: true,
44016
- get: function () { return chunkOEREKAAP_cjs.ConnectedSecuritySection; }
44016
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedSecuritySection; }
44017
44017
  });
44018
44018
  Object.defineProperty(exports, "ConnectedSessionsRow", {
44019
44019
  enumerable: true,
44020
- get: function () { return chunkOEREKAAP_cjs.ConnectedSessionsRow; }
44020
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedSessionsRow; }
44021
44021
  });
44022
44022
  Object.defineProperty(exports, "ConnectedThreadsPreview", {
44023
44023
  enumerable: true,
44024
- get: function () { return chunkOEREKAAP_cjs.ConnectedThreadsPreview; }
44024
+ get: function () { return chunkOPH4UZQN_cjs.ConnectedThreadsPreview; }
44025
44025
  });
44026
44026
  Object.defineProperty(exports, "ConversationComposer", {
44027
44027
  enumerable: true,
44028
- get: function () { return chunkOEREKAAP_cjs.ConversationComposer; }
44028
+ get: function () { return chunkOPH4UZQN_cjs.ConversationComposer; }
44029
44029
  });
44030
44030
  Object.defineProperty(exports, "EmbeddedChatPanel", {
44031
44031
  enumerable: true,
44032
- get: function () { return chunkOEREKAAP_cjs.EmbeddedChatPanel; }
44032
+ get: function () { return chunkOPH4UZQN_cjs.EmbeddedChatPanel; }
44033
44033
  });
44034
44034
  Object.defineProperty(exports, "MessageDetailsModal", {
44035
44035
  enumerable: true,
44036
- get: function () { return chunkOEREKAAP_cjs.MessageDetailsModal; }
44036
+ get: function () { return chunkOPH4UZQN_cjs.MessageDetailsModal; }
44037
44037
  });
44038
44038
  Object.defineProperty(exports, "MessageLiveSeconds", {
44039
44039
  enumerable: true,
44040
- get: function () { return chunkOEREKAAP_cjs.MessageLiveSeconds; }
44040
+ get: function () { return chunkOPH4UZQN_cjs.MessageLiveSeconds; }
44041
44041
  });
44042
44042
  Object.defineProperty(exports, "PENDING_RECOVERY_KEY", {
44043
44043
  enumerable: true,
44044
- get: function () { return chunkOEREKAAP_cjs.PENDING_RECOVERY_KEY; }
44044
+ get: function () { return chunkOPH4UZQN_cjs.PENDING_RECOVERY_KEY; }
44045
44045
  });
44046
44046
  Object.defineProperty(exports, "PREMIUM_TIER_TAG", {
44047
44047
  enumerable: true,
44048
- get: function () { return chunkOEREKAAP_cjs.PREMIUM_TIER_TAG; }
44048
+ get: function () { return chunkOPH4UZQN_cjs.PREMIUM_TIER_TAG; }
44049
44049
  });
44050
44050
  Object.defineProperty(exports, "RunningSubagents", {
44051
44051
  enumerable: true,
44052
- get: function () { return chunkOEREKAAP_cjs.RunningSubagents; }
44052
+ get: function () { return chunkOPH4UZQN_cjs.RunningSubagents; }
44053
44053
  });
44054
44054
  Object.defineProperty(exports, "STANDARD_TIER_TAG", {
44055
44055
  enumerable: true,
44056
- get: function () { return chunkOEREKAAP_cjs.STANDARD_TIER_TAG; }
44056
+ get: function () { return chunkOPH4UZQN_cjs.STANDARD_TIER_TAG; }
44057
44057
  });
44058
44058
  Object.defineProperty(exports, "WorkflowStepMessage", {
44059
44059
  enumerable: true,
44060
- get: function () { return chunkOEREKAAP_cjs.WorkflowStepMessage; }
44060
+ get: function () { return chunkOPH4UZQN_cjs.WorkflowStepMessage; }
44061
44061
  });
44062
44062
  Object.defineProperty(exports, "backUpOnSignup", {
44063
44063
  enumerable: true,
44064
- get: function () { return chunkOEREKAAP_cjs.backUpOnSignup; }
44064
+ get: function () { return chunkOPH4UZQN_cjs.backUpOnSignup; }
44065
44065
  });
44066
44066
  Object.defineProperty(exports, "createRemoteControl", {
44067
44067
  enumerable: true,
44068
- get: function () { return chunkOEREKAAP_cjs.createRemoteControl; }
44068
+ get: function () { return chunkOPH4UZQN_cjs.createRemoteControl; }
44069
44069
  });
44070
44070
  Object.defineProperty(exports, "defaultHost", {
44071
44071
  enumerable: true,
44072
- get: function () { return chunkOEREKAAP_cjs.defaultHost; }
44072
+ get: function () { return chunkOPH4UZQN_cjs.defaultHost; }
44073
44073
  });
44074
44074
  Object.defineProperty(exports, "renderConnectedUser", {
44075
44075
  enumerable: true,
44076
- get: function () { return chunkOEREKAAP_cjs.renderConnectedUser; }
44076
+ get: function () { return chunkOPH4UZQN_cjs.renderConnectedUser; }
44077
44077
  });
44078
44078
  Object.defineProperty(exports, "renderSessionStatusIcon", {
44079
44079
  enumerable: true,
44080
- get: function () { return chunkOEREKAAP_cjs.renderSessionStatusIcon; }
44080
+ get: function () { return chunkOPH4UZQN_cjs.renderSessionStatusIcon; }
44081
44081
  });
44082
44082
  Object.defineProperty(exports, "resolveSsoName", {
44083
44083
  enumerable: true,
44084
- get: function () { return chunkOEREKAAP_cjs.resolveSsoName; }
44084
+ get: function () { return chunkOPH4UZQN_cjs.resolveSsoName; }
44085
44085
  });
44086
44086
  Object.defineProperty(exports, "useAuthPages", {
44087
44087
  enumerable: true,
44088
- get: function () { return chunkOEREKAAP_cjs.useAuthPages; }
44088
+ get: function () { return chunkOPH4UZQN_cjs.useAuthPages; }
44089
44089
  });
44090
44090
  Object.defineProperty(exports, "useContextualHints", {
44091
44091
  enumerable: true,
44092
- get: function () { return chunkOEREKAAP_cjs.useContextualHints; }
44092
+ get: function () { return chunkOPH4UZQN_cjs.useContextualHints; }
44093
44093
  });
44094
44094
  Object.defineProperty(exports, "useModelPicker", {
44095
44095
  enumerable: true,
44096
- get: function () { return chunkOEREKAAP_cjs.useModelPicker; }
44096
+ get: function () { return chunkOPH4UZQN_cjs.useModelPicker; }
44097
44097
  });
44098
44098
  Object.defineProperty(exports, "useOpenChunk", {
44099
44099
  enumerable: true,
44100
- get: function () { return chunkOEREKAAP_cjs.useOpenChunk; }
44100
+ get: function () { return chunkOPH4UZQN_cjs.useOpenChunk; }
44101
44101
  });
44102
44102
  Object.defineProperty(exports, "useOpenWorkspaceIcon", {
44103
44103
  enumerable: true,
44104
- get: function () { return chunkOEREKAAP_cjs.useOpenWorkspaceIcon; }
44104
+ get: function () { return chunkOPH4UZQN_cjs.useOpenWorkspaceIcon; }
44105
44105
  });
44106
44106
  Object.defineProperty(exports, "useRemoteControlActions", {
44107
44107
  enumerable: true,
44108
- get: function () { return chunkOEREKAAP_cjs.useRemoteControlActions; }
44108
+ get: function () { return chunkOPH4UZQN_cjs.useRemoteControlActions; }
44109
44109
  });
44110
44110
  Object.defineProperty(exports, "useRemoteControlHandlers", {
44111
44111
  enumerable: true,
44112
- get: function () { return chunkOEREKAAP_cjs.useRemoteControlHandlers; }
44112
+ get: function () { return chunkOPH4UZQN_cjs.useRemoteControlHandlers; }
44113
44113
  });
44114
44114
  Object.defineProperty(exports, "useSsoSignIn", {
44115
44115
  enumerable: true,
44116
- get: function () { return chunkOEREKAAP_cjs.useSsoSignIn; }
44116
+ get: function () { return chunkOPH4UZQN_cjs.useSsoSignIn; }
44117
44117
  });
44118
44118
  Object.defineProperty(exports, "useWorkspaceDocTitles", {
44119
44119
  enumerable: true,
44120
- get: function () { return chunkOEREKAAP_cjs.useWorkspaceDocTitles; }
44120
+ get: function () { return chunkOPH4UZQN_cjs.useWorkspaceDocTitles; }
44121
44121
  });
44122
44122
  Object.defineProperty(exports, "ConnectedWorkflowStart", {
44123
44123
  enumerable: true,
44124
- get: function () { return chunk557MJ4IH_cjs.ConnectedWorkflowStart; }
44124
+ get: function () { return chunkQOXK5O6M_cjs.ConnectedWorkflowStart; }
44125
44125
  });
44126
44126
  Object.defineProperty(exports, "PROMPT_BINDINGS", {
44127
44127
  enumerable: true,
44128
- get: function () { return chunk557MJ4IH_cjs.PROMPT_BINDINGS; }
44128
+ get: function () { return chunkQOXK5O6M_cjs.PROMPT_BINDINGS; }
44129
44129
  });
44130
44130
  Object.defineProperty(exports, "parseTypedSkill", {
44131
44131
  enumerable: true,
44132
- get: function () { return chunk557MJ4IH_cjs.parseTypedSkill; }
44132
+ get: function () { return chunkQOXK5O6M_cjs.parseTypedSkill; }
44133
44133
  });
44134
44134
  Object.defineProperty(exports, "useLaunchWorkflow", {
44135
44135
  enumerable: true,
44136
- get: function () { return chunk557MJ4IH_cjs.useLaunchWorkflow; }
44136
+ get: function () { return chunkQOXK5O6M_cjs.useLaunchWorkflow; }
44137
44137
  });
44138
44138
  Object.defineProperty(exports, "useSlashItems", {
44139
44139
  enumerable: true,
44140
- get: function () { return chunk557MJ4IH_cjs.useSlashItems; }
44140
+ get: function () { return chunkQOXK5O6M_cjs.useSlashItems; }
44141
44141
  });
44142
44142
  Object.defineProperty(exports, "useSlashMenuItems", {
44143
44143
  enumerable: true,
44144
- get: function () { return chunk557MJ4IH_cjs.useSlashMenuItems; }
44144
+ get: function () { return chunkQOXK5O6M_cjs.useSlashMenuItems; }
44145
44145
  });
44146
44146
  Object.defineProperty(exports, "useSlashSkillWorkflows", {
44147
44147
  enumerable: true,
44148
- get: function () { return chunk557MJ4IH_cjs.useSlashSkillWorkflows; }
44148
+ get: function () { return chunkQOXK5O6M_cjs.useSlashSkillWorkflows; }
44149
44149
  });
44150
44150
  Object.defineProperty(exports, "useConnectedThreadActivity", {
44151
44151
  enumerable: true,
44152
- get: function () { return chunkY24V6HPR_cjs.useConnectedThreadActivity; }
44152
+ get: function () { return chunkSUYPXUE6_cjs.useConnectedThreadActivity; }
44153
44153
  });
44154
44154
  Object.defineProperty(exports, "DocumentUser", {
44155
44155
  enumerable: true,
@@ -44157,23 +44157,23 @@ Object.defineProperty(exports, "DocumentUser", {
44157
44157
  });
44158
44158
  Object.defineProperty(exports, "useCanBrowseSkills", {
44159
44159
  enumerable: true,
44160
- get: function () { return chunk6UTKM5AB_cjs.useCanBrowseSkills; }
44160
+ get: function () { return chunkJSQQV23D_cjs.useCanBrowseSkills; }
44161
44161
  });
44162
44162
  Object.defineProperty(exports, "useIsExternalAccount", {
44163
44163
  enumerable: true,
44164
- get: function () { return chunk6UTKM5AB_cjs.useIsExternalAccount; }
44164
+ get: function () { return chunkJSQQV23D_cjs.useIsExternalAccount; }
44165
44165
  });
44166
44166
  Object.defineProperty(exports, "useSkillsEnabled", {
44167
44167
  enumerable: true,
44168
- get: function () { return chunk6UTKM5AB_cjs.useSkillsEnabled; }
44168
+ get: function () { return chunkJSQQV23D_cjs.useSkillsEnabled; }
44169
44169
  });
44170
44170
  Object.defineProperty(exports, "useWorkflowDefinitions", {
44171
44171
  enumerable: true,
44172
- get: function () { return chunk6UTKM5AB_cjs.useWorkflowDefinitions; }
44172
+ get: function () { return chunkJSQQV23D_cjs.useWorkflowDefinitions; }
44173
44173
  });
44174
44174
  Object.defineProperty(exports, "useWorkflowTasks", {
44175
44175
  enumerable: true,
44176
- get: function () { return chunk6UTKM5AB_cjs.useWorkflowTasks; }
44176
+ get: function () { return chunkJSQQV23D_cjs.useWorkflowTasks; }
44177
44177
  });
44178
44178
  Object.defineProperty(exports, "EMBEDDED_SELECTED_DOCS_KEY", {
44179
44179
  enumerable: true,
@@ -44333,23 +44333,23 @@ Object.defineProperty(exports, "useDocumentFolders", {
44333
44333
  });
44334
44334
  Object.defineProperty(exports, "ConnectedWorkflowsTable", {
44335
44335
  enumerable: true,
44336
- get: function () { return chunkVGCTYTEW_cjs.ConnectedWorkflowsTable; }
44336
+ get: function () { return chunkK6AUKKUN_cjs.ConnectedWorkflowsTable; }
44337
44337
  });
44338
44338
  Object.defineProperty(exports, "DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS", {
44339
44339
  enumerable: true,
44340
- get: function () { return chunkVGCTYTEW_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
44340
+ get: function () { return chunkK6AUKKUN_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
44341
44341
  });
44342
44342
  Object.defineProperty(exports, "useConnectedWorkspaceRole", {
44343
44343
  enumerable: true,
44344
- get: function () { return chunkVGCTYTEW_cjs.useConnectedWorkspaceRole; }
44344
+ get: function () { return chunkK6AUKKUN_cjs.useConnectedWorkspaceRole; }
44345
44345
  });
44346
44346
  Object.defineProperty(exports, "useDocxCommentTarget", {
44347
44347
  enumerable: true,
44348
- get: function () { return chunkVGCTYTEW_cjs.useDocxCommentTarget; }
44348
+ get: function () { return chunkK6AUKKUN_cjs.useDocxCommentTarget; }
44349
44349
  });
44350
44350
  Object.defineProperty(exports, "useNativeDocxSupport", {
44351
44351
  enumerable: true,
44352
- get: function () { return chunkVGCTYTEW_cjs.useNativeDocxSupport; }
44352
+ get: function () { return chunkK6AUKKUN_cjs.useNativeDocxSupport; }
44353
44353
  });
44354
44354
  Object.defineProperty(exports, "useOpenWorkflow", {
44355
44355
  enumerable: true,