@arbidocs/blocks 0.5.79 → 0.5.80

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 (184) hide show
  1. package/dist/{ConnectedCallDock-QMNE6VLE.js → ConnectedCallDock-DIGOWCS7.js} +6 -6
  2. package/dist/{ConnectedCallDock-QMNE6VLE.js.map → ConnectedCallDock-DIGOWCS7.js.map} +1 -1
  3. package/dist/{ConnectedCallDock-7YJ42IDV.cjs → ConnectedCallDock-P42M6OVR.cjs} +15 -15
  4. package/dist/{ConnectedCallDock-7YJ42IDV.cjs.map → ConnectedCallDock-P42M6OVR.cjs.map} +1 -1
  5. package/dist/{ConnectedCallRoom-YDOASIWO.js → ConnectedCallRoom-AYNCZVWL.js} +6 -6
  6. package/dist/{ConnectedCallRoom-YDOASIWO.js.map → ConnectedCallRoom-AYNCZVWL.js.map} +1 -1
  7. package/dist/{ConnectedCallRoom-PUWWCV6W.cjs → ConnectedCallRoom-VFGV4X7I.cjs} +7 -7
  8. package/dist/{ConnectedCallRoom-PUWWCV6W.cjs.map → ConnectedCallRoom-VFGV4X7I.cjs.map} +1 -1
  9. package/dist/{ConnectedDocumentViewer-QW62ULRN.cjs → ConnectedDocumentViewer-EXR4XDRW.cjs} +22 -22
  10. package/dist/{ConnectedDocumentViewer-QW62ULRN.cjs.map → ConnectedDocumentViewer-EXR4XDRW.cjs.map} +1 -1
  11. package/dist/{ConnectedDocumentViewer-7QUKFBVM.js → ConnectedDocumentViewer-H7W6XQNJ.js} +21 -21
  12. package/dist/{ConnectedDocumentViewer-7QUKFBVM.js.map → ConnectedDocumentViewer-H7W6XQNJ.js.map} +1 -1
  13. package/dist/{ConnectedNativeDocxComparison-3YDCXF4V.js → ConnectedNativeDocxComparison-2W3NNA5C.js} +13 -13
  14. package/dist/ConnectedNativeDocxComparison-2W3NNA5C.js.map +1 -0
  15. package/dist/{ConnectedNativeDocxComparison-DFCBPV76.cjs → ConnectedNativeDocxComparison-UJWBGYOF.cjs} +14 -14
  16. package/dist/ConnectedNativeDocxComparison-UJWBGYOF.cjs.map +1 -0
  17. package/dist/{ConnectedNativeDocxEditor-Z2YVPZ3F.cjs → ConnectedNativeDocxEditor-672BRHOT.cjs} +14 -14
  18. package/dist/ConnectedNativeDocxEditor-672BRHOT.cjs.map +1 -0
  19. package/dist/{ConnectedNativeDocxEditor-JTB5GZ24.js → ConnectedNativeDocxEditor-QHVE5IR5.js} +12 -12
  20. package/dist/ConnectedNativeDocxEditor-QHVE5IR5.js.map +1 -0
  21. package/dist/{ConnectedStreamedWordArtifact-3Q54FIJO.cjs → ConnectedStreamedWordArtifact-3MNE42NH.cjs} +14 -14
  22. package/dist/ConnectedStreamedWordArtifact-3MNE42NH.cjs.map +1 -0
  23. package/dist/{ConnectedStreamedWordArtifact-4KQLOEP2.js → ConnectedStreamedWordArtifact-VI3S2YIG.js} +13 -13
  24. package/dist/ConnectedStreamedWordArtifact-VI3S2YIG.js.map +1 -0
  25. package/dist/{DocumentReviewCard-ODEJE27S.js → DocumentReviewCard-F26AXBYZ.js} +6 -6
  26. package/dist/{DocumentReviewCard-ODEJE27S.js.map → DocumentReviewCard-F26AXBYZ.js.map} +1 -1
  27. package/dist/{DocumentReviewCard-DQHW5W5T.cjs → DocumentReviewCard-XK77D3O4.cjs} +6 -6
  28. package/dist/{DocumentReviewCard-DQHW5W5T.cjs.map → DocumentReviewCard-XK77D3O4.cjs.map} +1 -1
  29. package/dist/{WorkspaceTableView-XDKMONPI.cjs → WorkspaceTableView-III5TFER.cjs} +9 -9
  30. package/dist/{WorkspaceTableView-XDKMONPI.cjs.map → WorkspaceTableView-III5TFER.cjs.map} +1 -1
  31. package/dist/{WorkspaceTableView-ZZW36JJV.js → WorkspaceTableView-JUQWTLXI.js} +7 -7
  32. package/dist/{WorkspaceTableView-ZZW36JJV.js.map → WorkspaceTableView-JUQWTLXI.js.map} +1 -1
  33. package/dist/agents/index.cjs +285 -285
  34. package/dist/agents/index.js +8 -8
  35. package/dist/calls/index.cjs +133 -133
  36. package/dist/calls/index.js +9 -9
  37. package/dist/chat/index.cjs +1 -1
  38. package/dist/chat/index.js +1 -1
  39. package/dist/{chunk-EN6IPLOI.cjs → chunk-276KHDQG.cjs} +67 -67
  40. package/dist/{chunk-EN6IPLOI.cjs.map → chunk-276KHDQG.cjs.map} +1 -1
  41. package/dist/{chunk-VUBYQKIR.js → chunk-2L4YFJ6U.js} +10 -10
  42. package/dist/{chunk-VUBYQKIR.js.map → chunk-2L4YFJ6U.js.map} +1 -1
  43. package/dist/{chunk-7ZHBRB3H.cjs → chunk-2MYWB55Z.cjs} +18 -18
  44. package/dist/{chunk-7ZHBRB3H.cjs.map → chunk-2MYWB55Z.cjs.map} +1 -1
  45. package/dist/{chunk-ICVUKTD3.cjs → chunk-3FKRE4BL.cjs} +11 -11
  46. package/dist/{chunk-ICVUKTD3.cjs.map → chunk-3FKRE4BL.cjs.map} +1 -1
  47. package/dist/{chunk-MN5DI5NZ.js → chunk-3TI4EVXB.js} +5 -5
  48. package/dist/{chunk-MN5DI5NZ.js.map → chunk-3TI4EVXB.js.map} +1 -1
  49. package/dist/{chunk-6RXH2H77.js → chunk-4FPFIDJE.js} +3 -3
  50. package/dist/{chunk-6RXH2H77.js.map → chunk-4FPFIDJE.js.map} +1 -1
  51. package/dist/{chunk-U5WK7WQS.js → chunk-4LIKVTSO.js} +3 -3
  52. package/dist/{chunk-U5WK7WQS.js.map → chunk-4LIKVTSO.js.map} +1 -1
  53. package/dist/{chunk-5OVCVCVZ.cjs → chunk-5S2N6HSA.cjs} +3 -3
  54. package/dist/{chunk-5OVCVCVZ.cjs.map → chunk-5S2N6HSA.cjs.map} +1 -1
  55. package/dist/{chunk-6CJNGKZQ.cjs → chunk-5V7JWZQ4.cjs} +55 -55
  56. package/dist/{chunk-6CJNGKZQ.cjs.map → chunk-5V7JWZQ4.cjs.map} +1 -1
  57. package/dist/{chunk-BNXZDIBF.js → chunk-6JDUM4R2.js} +11 -11
  58. package/dist/{chunk-BNXZDIBF.js.map → chunk-6JDUM4R2.js.map} +1 -1
  59. package/dist/{chunk-24DRVHN3.js → chunk-7IHMM6TG.js} +3 -3
  60. package/dist/{chunk-24DRVHN3.js.map → chunk-7IHMM6TG.js.map} +1 -1
  61. package/dist/{chunk-5DY5I2X4.js → chunk-AGC25AKG.js} +3 -3
  62. package/dist/{chunk-5DY5I2X4.js.map → chunk-AGC25AKG.js.map} +1 -1
  63. package/dist/{chunk-FNAM7AII.js → chunk-B7UCQEPD.js} +6 -6
  64. package/dist/{chunk-FNAM7AII.js.map → chunk-B7UCQEPD.js.map} +1 -1
  65. package/dist/{chunk-OKSRXXKP.js → chunk-BRY553LQ.js} +3 -3
  66. package/dist/{chunk-OKSRXXKP.js.map → chunk-BRY553LQ.js.map} +1 -1
  67. package/dist/{chunk-JCYGQHS7.js → chunk-CGVWWTEZ.js} +3 -3
  68. package/dist/{chunk-JCYGQHS7.js.map → chunk-CGVWWTEZ.js.map} +1 -1
  69. package/dist/{chunk-A3OM7LQI.cjs → chunk-D76PIWFN.cjs} +14 -14
  70. package/dist/{chunk-A3OM7LQI.cjs.map → chunk-D76PIWFN.cjs.map} +1 -1
  71. package/dist/{chunk-45D5RS6T.cjs → chunk-DL3XYTKI.cjs} +8 -8
  72. package/dist/{chunk-45D5RS6T.cjs.map → chunk-DL3XYTKI.cjs.map} +1 -1
  73. package/dist/{chunk-Y7SRZYJZ.js → chunk-E27367NI.js} +3 -3
  74. package/dist/{chunk-Y7SRZYJZ.js.map → chunk-E27367NI.js.map} +1 -1
  75. package/dist/{chunk-W6C2NOKI.js → chunk-GGY6GXVJ.js} +3 -3
  76. package/dist/{chunk-W6C2NOKI.js.map → chunk-GGY6GXVJ.js.map} +1 -1
  77. package/dist/{chunk-YYGYO6KB.js → chunk-H5IWMVS5.js} +3 -3
  78. package/dist/{chunk-YYGYO6KB.js.map → chunk-H5IWMVS5.js.map} +1 -1
  79. package/dist/{chunk-BI62XYJG.js → chunk-HJHLQPT2.js} +5 -5
  80. package/dist/{chunk-BI62XYJG.js.map → chunk-HJHLQPT2.js.map} +1 -1
  81. package/dist/{chunk-NWQ5RRNN.js → chunk-I2JQEXTG.js} +6 -6
  82. package/dist/{chunk-NWQ5RRNN.js.map → chunk-I2JQEXTG.js.map} +1 -1
  83. package/dist/{chunk-GX455LF3.cjs → chunk-IGMZN37B.cjs} +4 -4
  84. package/dist/{chunk-GX455LF3.cjs.map → chunk-IGMZN37B.cjs.map} +1 -1
  85. package/dist/{chunk-P34WL63W.cjs → chunk-JUP5PCLB.cjs} +6 -6
  86. package/dist/{chunk-P34WL63W.cjs.map → chunk-JUP5PCLB.cjs.map} +1 -1
  87. package/dist/{chunk-JRZQBFPS.js → chunk-KEWX6KFN.js} +3 -3
  88. package/dist/{chunk-JRZQBFPS.js.map → chunk-KEWX6KFN.js.map} +1 -1
  89. package/dist/{chunk-FWEDJBBV.cjs → chunk-KFXOZXZD.cjs} +4 -4
  90. package/dist/{chunk-FWEDJBBV.cjs.map → chunk-KFXOZXZD.cjs.map} +1 -1
  91. package/dist/{chunk-6V6C2OHX.js → chunk-KII2DCGW.js} +3 -3
  92. package/dist/{chunk-6V6C2OHX.js.map → chunk-KII2DCGW.js.map} +1 -1
  93. package/dist/{chunk-JUG2QEL7.cjs → chunk-KRWWRTDN.cjs} +3 -3
  94. package/dist/{chunk-JUG2QEL7.cjs.map → chunk-KRWWRTDN.cjs.map} +1 -1
  95. package/dist/{chunk-N6B6H4QV.cjs → chunk-L6DAJUDF.cjs} +22 -22
  96. package/dist/{chunk-N6B6H4QV.cjs.map → chunk-L6DAJUDF.cjs.map} +1 -1
  97. package/dist/{chunk-OVZ54T5M.cjs → chunk-LC7HFDCV.cjs} +25 -17
  98. package/dist/chunk-LC7HFDCV.cjs.map +1 -0
  99. package/dist/{chunk-YJOFSJYQ.cjs → chunk-LHQHK6MB.cjs} +10 -10
  100. package/dist/{chunk-YJOFSJYQ.cjs.map → chunk-LHQHK6MB.cjs.map} +1 -1
  101. package/dist/{chunk-JUO3S5OO.js → chunk-LXVFPIHM.js} +4 -4
  102. package/dist/{chunk-JUO3S5OO.js.map → chunk-LXVFPIHM.js.map} +1 -1
  103. package/dist/{chunk-MH2VQFAE.cjs → chunk-MA4RZFYH.cjs} +3 -3
  104. package/dist/{chunk-MH2VQFAE.cjs.map → chunk-MA4RZFYH.cjs.map} +1 -1
  105. package/dist/{chunk-DRDGSOO4.js → chunk-MEDTT4EK.js} +16 -8
  106. package/dist/chunk-MEDTT4EK.js.map +1 -0
  107. package/dist/{chunk-64GEEHKH.js → chunk-MQ2XHUAV.js} +3 -3
  108. package/dist/{chunk-64GEEHKH.js.map → chunk-MQ2XHUAV.js.map} +1 -1
  109. package/dist/{chunk-ZSBAE455.js → chunk-OAAG3TQ2.js} +3 -3
  110. package/dist/{chunk-ZSBAE455.js.map → chunk-OAAG3TQ2.js.map} +1 -1
  111. package/dist/{chunk-3VL64465.cjs → chunk-OAEJME5Q.cjs} +48 -48
  112. package/dist/{chunk-3VL64465.cjs.map → chunk-OAEJME5Q.cjs.map} +1 -1
  113. package/dist/{chunk-V4SRR4GE.cjs → chunk-ORIOOXUU.cjs} +5 -5
  114. package/dist/{chunk-V4SRR4GE.cjs.map → chunk-ORIOOXUU.cjs.map} +1 -1
  115. package/dist/{chunk-Y5RCJQ3A.cjs → chunk-QB7PNQDJ.cjs} +3 -3
  116. package/dist/{chunk-Y5RCJQ3A.cjs.map → chunk-QB7PNQDJ.cjs.map} +1 -1
  117. package/dist/{chunk-XUO32INL.cjs → chunk-QNDKLQYT.cjs} +3 -3
  118. package/dist/{chunk-XUO32INL.cjs.map → chunk-QNDKLQYT.cjs.map} +1 -1
  119. package/dist/{chunk-I7O7QWKX.cjs → chunk-QOV564TW.cjs} +4 -4
  120. package/dist/{chunk-I7O7QWKX.cjs.map → chunk-QOV564TW.cjs.map} +1 -1
  121. package/dist/{chunk-DBWDYPN2.js → chunk-QYILQJOD.js} +15 -15
  122. package/dist/{chunk-DBWDYPN2.js.map → chunk-QYILQJOD.js.map} +1 -1
  123. package/dist/{chunk-4VGZGM6M.cjs → chunk-QYRPFPQ7.cjs} +3 -3
  124. package/dist/{chunk-4VGZGM6M.cjs.map → chunk-QYRPFPQ7.cjs.map} +1 -1
  125. package/dist/{chunk-WLFHPXBA.js → chunk-RYSU62TM.js} +3 -3
  126. package/dist/{chunk-WLFHPXBA.js.map → chunk-RYSU62TM.js.map} +1 -1
  127. package/dist/{chunk-D4SDNNLX.cjs → chunk-UFGC77KR.cjs} +5 -5
  128. package/dist/{chunk-D4SDNNLX.cjs.map → chunk-UFGC77KR.cjs.map} +1 -1
  129. package/dist/{chunk-P7FHVWM7.cjs → chunk-UHP6AP6C.cjs} +10 -10
  130. package/dist/{chunk-P7FHVWM7.cjs.map → chunk-UHP6AP6C.cjs.map} +1 -1
  131. package/dist/{chunk-LMB5SJGW.js → chunk-UZER3JJX.js} +3 -3
  132. package/dist/{chunk-LMB5SJGW.js.map → chunk-UZER3JJX.js.map} +1 -1
  133. package/dist/{chunk-R33SPSXO.cjs → chunk-VGMK4F2E.cjs} +11 -11
  134. package/dist/{chunk-R33SPSXO.cjs.map → chunk-VGMK4F2E.cjs.map} +1 -1
  135. package/dist/{chunk-3STESMKX.cjs → chunk-WV6RHIFP.cjs} +3 -3
  136. package/dist/{chunk-3STESMKX.cjs.map → chunk-WV6RHIFP.cjs.map} +1 -1
  137. package/dist/{chunk-24JOY5V2.js → chunk-WWME52XL.js} +3 -3
  138. package/dist/{chunk-24JOY5V2.js.map → chunk-WWME52XL.js.map} +1 -1
  139. package/dist/{chunk-7SPVL54U.js → chunk-XAZUII52.js} +4 -4
  140. package/dist/{chunk-7SPVL54U.js.map → chunk-XAZUII52.js.map} +1 -1
  141. package/dist/{chunk-3XYTZG4F.js → chunk-YPTMALBZ.js} +3 -3
  142. package/dist/{chunk-3XYTZG4F.js.map → chunk-YPTMALBZ.js.map} +1 -1
  143. package/dist/{chunk-LYUS5I7M.cjs → chunk-ZK56K25Q.cjs} +7 -7
  144. package/dist/{chunk-LYUS5I7M.cjs.map → chunk-ZK56K25Q.cjs.map} +1 -1
  145. package/dist/{chunk-TANMVAB2.cjs → chunk-ZLDFQZSP.cjs} +4 -4
  146. package/dist/{chunk-TANMVAB2.cjs.map → chunk-ZLDFQZSP.cjs.map} +1 -1
  147. package/dist/collaboration/index.cjs +1 -1
  148. package/dist/collaboration/index.js +1 -1
  149. package/dist/connect/docx.cjs +16 -16
  150. package/dist/connect/docx.js +12 -12
  151. package/dist/connect/index.cjs +750 -750
  152. package/dist/connect/index.js +55 -55
  153. package/dist/connect/viewer.cjs +20 -20
  154. package/dist/connect/viewer.js +19 -19
  155. package/dist/embed/index.cjs +30 -30
  156. package/dist/embed/index.js +24 -24
  157. package/dist/facts/index.cjs +2 -2
  158. package/dist/facts/index.js +2 -2
  159. package/dist/files/index.cjs +1 -1
  160. package/dist/files/index.js +1 -1
  161. package/dist/home/index.cjs +31 -31
  162. package/dist/home/index.js +4 -4
  163. package/dist/index.cjs +1464 -1464
  164. package/dist/index.js +35 -35
  165. package/dist/settings/index.cjs +157 -157
  166. package/dist/settings/index.js +3 -3
  167. package/dist/shell/index.cjs +97 -97
  168. package/dist/shell/index.js +9 -9
  169. package/dist/studio/index.cjs +13 -13
  170. package/dist/studio/index.js +10 -10
  171. package/dist/workflow-canvas/index.cjs +44 -42
  172. package/dist/workflow-canvas/index.cjs.map +1 -1
  173. package/dist/workflow-canvas/index.js +29 -27
  174. package/dist/workflow-canvas/index.js.map +1 -1
  175. package/node_modules/@arbidocs/coedit/package.json +1 -1
  176. package/package.json +5 -5
  177. package/dist/ConnectedNativeDocxComparison-3YDCXF4V.js.map +0 -1
  178. package/dist/ConnectedNativeDocxComparison-DFCBPV76.cjs.map +0 -1
  179. package/dist/ConnectedNativeDocxEditor-JTB5GZ24.js.map +0 -1
  180. package/dist/ConnectedNativeDocxEditor-Z2YVPZ3F.cjs.map +0 -1
  181. package/dist/ConnectedStreamedWordArtifact-3Q54FIJO.cjs.map +0 -1
  182. package/dist/ConnectedStreamedWordArtifact-4KQLOEP2.js.map +0 -1
  183. package/dist/chunk-DRDGSOO4.js.map +0 -1
  184. package/dist/chunk-OVZ54T5M.cjs.map +0 -1
@@ -1,32 +1,32 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkV4SRR4GE_cjs = require('../chunk-V4SRR4GE.cjs');
4
+ var chunkORIOOXUU_cjs = require('../chunk-ORIOOXUU.cjs');
5
5
  var chunkCRSEWNDP_cjs = require('../chunk-CRSEWNDP.cjs');
6
- var chunkXUO32INL_cjs = require('../chunk-XUO32INL.cjs');
7
- var chunk6CJNGKZQ_cjs = require('../chunk-6CJNGKZQ.cjs');
6
+ var chunkQNDKLQYT_cjs = require('../chunk-QNDKLQYT.cjs');
7
+ var chunk5V7JWZQ4_cjs = require('../chunk-5V7JWZQ4.cjs');
8
8
  var chunkDF7ZATID_cjs = require('../chunk-DF7ZATID.cjs');
9
9
  var chunkFKFGRGKF_cjs = require('../chunk-FKFGRGKF.cjs');
10
10
  var chunkHYAYXLIZ_cjs = require('../chunk-HYAYXLIZ.cjs');
11
11
  var chunkKWJW5TMH_cjs = require('../chunk-KWJW5TMH.cjs');
12
12
  var chunkPSIKUQYM_cjs = require('../chunk-PSIKUQYM.cjs');
13
- var chunk3VL64465_cjs = require('../chunk-3VL64465.cjs');
14
- var chunk45D5RS6T_cjs = require('../chunk-45D5RS6T.cjs');
13
+ var chunkOAEJME5Q_cjs = require('../chunk-OAEJME5Q.cjs');
14
+ var chunkDL3XYTKI_cjs = require('../chunk-DL3XYTKI.cjs');
15
15
  var chunkR5KLIQXI_cjs = require('../chunk-R5KLIQXI.cjs');
16
16
  var chunkXD3M6ACK_cjs = require('../chunk-XD3M6ACK.cjs');
17
17
  var chunkXFL67STW_cjs = require('../chunk-XFL67STW.cjs');
18
- var chunkLYUS5I7M_cjs = require('../chunk-LYUS5I7M.cjs');
18
+ var chunkZK56K25Q_cjs = require('../chunk-ZK56K25Q.cjs');
19
19
  var chunkOU3RGQFX_cjs = require('../chunk-OU3RGQFX.cjs');
20
20
  require('../chunk-REH7PX3N.cjs');
21
21
  require('../chunk-H32DV7XS.cjs');
22
- var chunkY5RCJQ3A_cjs = require('../chunk-Y5RCJQ3A.cjs');
23
- var chunkP7FHVWM7_cjs = require('../chunk-P7FHVWM7.cjs');
24
- var chunkLYN5HGPZ_cjs = require('../chunk-LYN5HGPZ.cjs');
22
+ var chunkQB7PNQDJ_cjs = require('../chunk-QB7PNQDJ.cjs');
23
+ var chunkUHP6AP6C_cjs = require('../chunk-UHP6AP6C.cjs');
25
24
  var chunk464YPRAE_cjs = require('../chunk-464YPRAE.cjs');
26
25
  var chunkENT64S6W_cjs = require('../chunk-ENT64S6W.cjs');
26
+ var chunkLYN5HGPZ_cjs = require('../chunk-LYN5HGPZ.cjs');
27
27
  var chunkDDWLMYRO_cjs = require('../chunk-DDWLMYRO.cjs');
28
28
  var chunkDC5LNUIN_cjs = require('../chunk-DC5LNUIN.cjs');
29
- var chunk4VGZGM6M_cjs = require('../chunk-4VGZGM6M.cjs');
29
+ var chunkQYRPFPQ7_cjs = require('../chunk-QYRPFPQ7.cjs');
30
30
  var chunkICHTDJYH_cjs = require('../chunk-ICHTDJYH.cjs');
31
31
  var chunkSNUBQMIS_cjs = require('../chunk-SNUBQMIS.cjs');
32
32
  require('../chunk-324RBHCF.cjs');
@@ -38,8 +38,8 @@ require('../chunk-JH6JTI76.cjs');
38
38
  require('../chunk-UWIILWDI.cjs');
39
39
  var chunkQQMMCXBP_cjs = require('../chunk-QQMMCXBP.cjs');
40
40
  require('../chunk-ZESMRGDV.cjs');
41
- var chunkD4SDNNLX_cjs = require('../chunk-D4SDNNLX.cjs');
42
- var chunkP34WL63W_cjs = require('../chunk-P34WL63W.cjs');
41
+ var chunkUFGC77KR_cjs = require('../chunk-UFGC77KR.cjs');
42
+ var chunkJUP5PCLB_cjs = require('../chunk-JUP5PCLB.cjs');
43
43
  require('../chunk-NEGFHF3V.cjs');
44
44
  var chunkZ3LFF3YT_cjs = require('../chunk-Z3LFF3YT.cjs');
45
45
  var chunkC2ECYOPP_cjs = require('../chunk-C2ECYOPP.cjs');
@@ -58,24 +58,33 @@ var chunkJIOHDVWH_cjs = require('../chunk-JIOHDVWH.cjs');
58
58
  var chunkRC25WMVB_cjs = require('../chunk-RC25WMVB.cjs');
59
59
  var chunkMZZ3SBQL_cjs = require('../chunk-MZZ3SBQL.cjs');
60
60
  var chunkVWUNPAR2_cjs = require('../chunk-VWUNPAR2.cjs');
61
- var chunkTANMVAB2_cjs = require('../chunk-TANMVAB2.cjs');
62
- var chunk3STESMKX_cjs = require('../chunk-3STESMKX.cjs');
63
- var chunkJUG2QEL7_cjs = require('../chunk-JUG2QEL7.cjs');
64
- var chunkMNIQDXM6_cjs = require('../chunk-MNIQDXM6.cjs');
65
- var chunkDVZ3QW3O_cjs = require('../chunk-DVZ3QW3O.cjs');
61
+ var chunkZLDFQZSP_cjs = require('../chunk-ZLDFQZSP.cjs');
62
+ var chunkWV6RHIFP_cjs = require('../chunk-WV6RHIFP.cjs');
63
+ var chunkKRWWRTDN_cjs = require('../chunk-KRWWRTDN.cjs');
66
64
  require('../chunk-VLCY46K6.cjs');
67
65
  var chunkBTPIHXVX_cjs = require('../chunk-BTPIHXVX.cjs');
68
66
  var chunkZU2B2RZK_cjs = require('../chunk-ZU2B2RZK.cjs');
69
67
  var chunkNSD37OF5_cjs = require('../chunk-NSD37OF5.cjs');
70
68
  require('../chunk-72YEEUH7.cjs');
71
69
  require('../chunk-D54JXTPG.cjs');
72
- var chunkOVZ54T5M_cjs = require('../chunk-OVZ54T5M.cjs');
70
+ var chunk5SXODQEV_cjs = require('../chunk-5SXODQEV.cjs');
71
+ require('../chunk-DO6OJ2F3.cjs');
72
+ require('../chunk-4OFHXOMA.cjs');
73
+ var chunk3UP6ZOH7_cjs = require('../chunk-3UP6ZOH7.cjs');
74
+ var chunkGBXZPBTK_cjs = require('../chunk-GBXZPBTK.cjs');
75
+ var chunkONUY3NPW_cjs = require('../chunk-ONUY3NPW.cjs');
76
+ require('../chunk-Z2XZ2D4N.cjs');
77
+ var chunkMCXS6X37_cjs = require('../chunk-MCXS6X37.cjs');
78
+ var chunkEOCBELNK_cjs = require('../chunk-EOCBELNK.cjs');
79
+ require('../chunk-YZSQ7F5K.cjs');
80
+ require('../chunk-KQF7POTG.cjs');
81
+ var chunkLC7HFDCV_cjs = require('../chunk-LC7HFDCV.cjs');
73
82
  var chunkY37HQ4M2_cjs = require('../chunk-Y37HQ4M2.cjs');
74
83
  require('../chunk-I4IS6ST6.cjs');
75
84
  var chunkRFIBUWLF_cjs = require('../chunk-RFIBUWLF.cjs');
76
- var chunkYJOFSJYQ_cjs = require('../chunk-YJOFSJYQ.cjs');
85
+ var chunkLHQHK6MB_cjs = require('../chunk-LHQHK6MB.cjs');
77
86
  require('../chunk-3YEXZX4H.cjs');
78
- var chunk5OVCVCVZ_cjs = require('../chunk-5OVCVCVZ.cjs');
87
+ var chunk5S2N6HSA_cjs = require('../chunk-5S2N6HSA.cjs');
79
88
  var chunk4PA6VCCR_cjs = require('../chunk-4PA6VCCR.cjs');
80
89
  require('../chunk-SIB6C7P7.cjs');
81
90
  require('../chunk-DVUZTGVL.cjs');
@@ -84,44 +93,35 @@ require('../chunk-AHDJXIUB.cjs');
84
93
  var chunk6UZC4XVV_cjs = require('../chunk-6UZC4XVV.cjs');
85
94
  require('../chunk-FRQME5XS.cjs');
86
95
  var chunkLKK52DEY_cjs = require('../chunk-LKK52DEY.cjs');
96
+ require('../chunk-IN6ILI5A.cjs');
97
+ require('../chunk-P6TPVQRU.cjs');
98
+ var chunk555BS22J_cjs = require('../chunk-555BS22J.cjs');
99
+ require('../chunk-75BNMCUX.cjs');
100
+ require('../chunk-32HW2Q33.cjs');
101
+ var chunkFX3K6LNZ_cjs = require('../chunk-FX3K6LNZ.cjs');
87
102
  var chunkU2FFG2B3_cjs = require('../chunk-U2FFG2B3.cjs');
88
103
  var chunkVYJF4ZQY_cjs = require('../chunk-VYJF4ZQY.cjs');
89
104
  var chunkM74FWYNL_cjs = require('../chunk-M74FWYNL.cjs');
90
105
  var chunkW3PSIIMN_cjs = require('../chunk-W3PSIIMN.cjs');
91
106
  var chunkQUMUAJ2P_cjs = require('../chunk-QUMUAJ2P.cjs');
92
107
  var chunkVZOOGA47_cjs = require('../chunk-VZOOGA47.cjs');
93
- var chunkN6B6H4QV_cjs = require('../chunk-N6B6H4QV.cjs');
94
- var chunkI7O7QWKX_cjs = require('../chunk-I7O7QWKX.cjs');
95
- require('../chunk-A3OM7LQI.cjs');
96
- require('../chunk-MH2VQFAE.cjs');
108
+ var chunkL6DAJUDF_cjs = require('../chunk-L6DAJUDF.cjs');
109
+ var chunkQOV564TW_cjs = require('../chunk-QOV564TW.cjs');
110
+ require('../chunk-D76PIWFN.cjs');
111
+ require('../chunk-MA4RZFYH.cjs');
97
112
  var chunkLUBZHVZK_cjs = require('../chunk-LUBZHVZK.cjs');
98
113
  var chunkXCZYMSDV_cjs = require('../chunk-XCZYMSDV.cjs');
99
114
  var chunkMOIZ2R5X_cjs = require('../chunk-MOIZ2R5X.cjs');
100
115
  var chunkLUO46ELJ_cjs = require('../chunk-LUO46ELJ.cjs');
101
- var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
102
- var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
103
- var chunk5SXODQEV_cjs = require('../chunk-5SXODQEV.cjs');
104
- require('../chunk-DO6OJ2F3.cjs');
105
- require('../chunk-4OFHXOMA.cjs');
106
- var chunk3UP6ZOH7_cjs = require('../chunk-3UP6ZOH7.cjs');
107
- var chunkGBXZPBTK_cjs = require('../chunk-GBXZPBTK.cjs');
108
- var chunkONUY3NPW_cjs = require('../chunk-ONUY3NPW.cjs');
109
- require('../chunk-Z2XZ2D4N.cjs');
110
- var chunkMCXS6X37_cjs = require('../chunk-MCXS6X37.cjs');
111
- var chunkEOCBELNK_cjs = require('../chunk-EOCBELNK.cjs');
112
- require('../chunk-YZSQ7F5K.cjs');
113
- require('../chunk-KQF7POTG.cjs');
114
- require('../chunk-IN6ILI5A.cjs');
115
- require('../chunk-P6TPVQRU.cjs');
116
- var chunk555BS22J_cjs = require('../chunk-555BS22J.cjs');
117
- require('../chunk-75BNMCUX.cjs');
118
- require('../chunk-32HW2Q33.cjs');
119
- var chunkUFEXJIEY_cjs = require('../chunk-UFEXJIEY.cjs');
120
- var chunkFX3K6LNZ_cjs = require('../chunk-FX3K6LNZ.cjs');
121
116
  var chunkC5YZWJCC_cjs = require('../chunk-C5YZWJCC.cjs');
122
117
  require('../chunk-MCD5TKG7.cjs');
123
118
  var chunk725OETK3_cjs = require('../chunk-725OETK3.cjs');
119
+ var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
120
+ var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
124
121
  require('../chunk-PPCATBOY.cjs');
122
+ var chunkMNIQDXM6_cjs = require('../chunk-MNIQDXM6.cjs');
123
+ var chunkDVZ3QW3O_cjs = require('../chunk-DVZ3QW3O.cjs');
124
+ var chunkUFEXJIEY_cjs = require('../chunk-UFEXJIEY.cjs');
125
125
  var chunk25AIWOR6_cjs = require('../chunk-25AIWOR6.cjs');
126
126
  var chunkD3PWVA7Y_cjs = require('../chunk-D3PWVA7Y.cjs');
127
127
  var chunkULWRNGGE_cjs = require('../chunk-ULWRNGGE.cjs');
@@ -234,7 +234,7 @@ function ConnectedWorkspaceActivity({
234
234
  [feed.data]
235
235
  );
236
236
  return /* @__PURE__ */ jsxRuntime.jsx(
237
- chunkD4SDNNLX_cjs.WorkspaceActivityList,
237
+ chunkUFGC77KR_cjs.WorkspaceActivityList,
238
238
  {
239
239
  ...listProps,
240
240
  items,
@@ -939,7 +939,7 @@ function NotificationCenter({
939
939
  }
940
940
  ];
941
941
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col h-full bg-background", "data-testid": "notifications-page", children: [
942
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
942
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
943
943
  chunkSJSGSHIT_cjs.TabHeader,
944
944
  {
945
945
  tabs,
@@ -1061,7 +1061,7 @@ function WorkspaceBadge({ workspace }) {
1061
1061
  ui.ShieldIcon,
1062
1062
  {
1063
1063
  char: workspace.name.charAt(0),
1064
- workspaceColor: chunk3STESMKX_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
1064
+ workspaceColor: chunkWV6RHIFP_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
1065
1065
  size: 16
1066
1066
  }
1067
1067
  ),
@@ -1365,7 +1365,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1365
1365
  onChange: (e) => {
1366
1366
  const file = e.target.files?.[0];
1367
1367
  e.target.value = "";
1368
- if (file) void add(() => chunkOVZ54T5M_cjs.importSkillFile(file));
1368
+ if (file) void add(() => chunkLC7HFDCV_cjs.importSkillFile(file));
1369
1369
  }
1370
1370
  }
1371
1371
  ),
@@ -1390,7 +1390,7 @@ function ConnectedSkillUpload({ onDone, labels, className }) {
1390
1390
  className: "space-y-2",
1391
1391
  onSubmit: (e) => {
1392
1392
  e.preventDefault();
1393
- if (url.trim()) void add(() => chunkOVZ54T5M_cjs.importSkillFromUrl(url));
1393
+ if (url.trim()) void add(() => chunkLC7HFDCV_cjs.importSkillFromUrl(url));
1394
1394
  },
1395
1395
  children: [
1396
1396
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "skills-add-url", children: l.fromLink }),
@@ -1453,9 +1453,9 @@ function ConnectedSkillsLibrary({
1453
1453
  const [type, setType] = react$1.useState("all");
1454
1454
  const [view, setView] = react$1.useState("gallery");
1455
1455
  const [isBusy, setIsBusy] = react$1.useState(false);
1456
- const all = react$1.useMemo(() => chunkOVZ54T5M_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1456
+ const all = react$1.useMemo(() => chunkLC7HFDCV_cjs.buildLibrarySkills(builtins, listings ?? []), [builtins, listings]);
1457
1457
  const shown = react$1.useMemo(
1458
- () => chunkOVZ54T5M_cjs.filterLibrarySkills(all, { query, source, type }),
1458
+ () => chunkLC7HFDCV_cjs.filterLibrarySkills(all, { query, source, type }),
1459
1459
  [all, query, source, type]
1460
1460
  );
1461
1461
  const current = all.find((s) => s.slug === selected) ?? null;
@@ -1466,21 +1466,21 @@ function ConnectedSkillsLibrary({
1466
1466
  const count2 = (s) => all.filter((x) => x.source === s).length;
1467
1467
  const sourceOptions = [
1468
1468
  { id: "all", label: "All", count: all.length },
1469
- { id: "builtin", label: chunkOVZ54T5M_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1470
- { id: "mine", label: chunkOVZ54T5M_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1471
- { id: "shared", label: chunkOVZ54T5M_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1469
+ { id: "builtin", label: chunkLC7HFDCV_cjs.SKILL_SOURCE_LABELS.builtin, count: count2("builtin") },
1470
+ { id: "mine", label: chunkLC7HFDCV_cjs.SKILL_SOURCE_LABELS.mine, count: count2("mine") },
1471
+ { id: "shared", label: chunkLC7HFDCV_cjs.SKILL_SOURCE_LABELS.shared, count: count2("shared") }
1472
1472
  ];
1473
1473
  const types = [...new Set(all.map((s) => s.type))];
1474
1474
  const typeOptions = [
1475
1475
  { id: "all", label: "Any kind" },
1476
- ...types.map((t) => ({ id: t, label: chunkOVZ54T5M_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1476
+ ...types.map((t) => ({ id: t, label: chunkLC7HFDCV_cjs.SKILL_TYPE_LABELS[t] ?? t }))
1477
1477
  ];
1478
1478
  const pick = (slug) => {
1479
1479
  setSelected(slug);
1480
1480
  setMode("detail");
1481
1481
  };
1482
1482
  const markdownOf = async (skill) => {
1483
- if (!skill.docExtId) return chunkOVZ54T5M_cjs.workflowToSkillMarkdown(skill.workflow);
1483
+ if (!skill.docExtId) return chunkLC7HFDCV_cjs.workflowToSkillMarkdown(skill.workflow);
1484
1484
  const response = await arbi.documents.download(skill.docExtId);
1485
1485
  if (!response.ok) throw new Error(`Could not read the skill (${response.status})`);
1486
1486
  return response.text();
@@ -1544,7 +1544,7 @@ function ConnectedSkillsLibrary({
1544
1544
  try {
1545
1545
  documentTools.downloadBlob(
1546
1546
  new Blob([await markdownOf(skill)], { type: "text/markdown" }),
1547
- chunkOVZ54T5M_cjs.SKILL_MAIN_FILENAME
1547
+ chunkLC7HFDCV_cjs.SKILL_MAIN_FILENAME
1548
1548
  );
1549
1549
  } catch (error) {
1550
1550
  notify17(errorText(error, "Could not export the skill"), "error");
@@ -1585,10 +1585,10 @@ function ConnectedSkillsLibrary({
1585
1585
  }
1586
1586
  )
1587
1587
  ] }),
1588
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.SkillViewToggle, { value: view, onChange: setView })
1588
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.SkillViewToggle, { value: view, onChange: setView })
1589
1589
  ] }),
1590
1590
  /* @__PURE__ */ jsxRuntime.jsx(
1591
- chunkOVZ54T5M_cjs.SkillFilterChips,
1591
+ chunkLC7HFDCV_cjs.SkillFilterChips,
1592
1592
  {
1593
1593
  label: "Show",
1594
1594
  value: source,
@@ -1597,7 +1597,7 @@ function ConnectedSkillsLibrary({
1597
1597
  }
1598
1598
  ),
1599
1599
  types.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
1600
- chunkOVZ54T5M_cjs.SkillFilterChips,
1600
+ chunkLC7HFDCV_cjs.SkillFilterChips,
1601
1601
  {
1602
1602
  label: "Kind",
1603
1603
  value: type,
@@ -1644,12 +1644,12 @@ function ConnectedSkillsLibrary({
1644
1644
  view === "gallery" ? "grid grid-cols-[repeat(auto-fill,minmax(9.5rem,1fr))]" : "flex flex-col"
1645
1645
  ),
1646
1646
  children: shown.map((skill) => /* @__PURE__ */ jsxRuntime.jsx(
1647
- chunkOVZ54T5M_cjs.SkillTile,
1647
+ chunkLC7HFDCV_cjs.SkillTile,
1648
1648
  {
1649
1649
  name: skill.title,
1650
1650
  testId: `skill-tile-${skill.slug}`,
1651
1651
  description: skill.description,
1652
- sourceLabel: skill.isShared ? `${chunkOVZ54T5M_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkOVZ54T5M_cjs.SKILL_SOURCE_LABELS[skill.source],
1652
+ sourceLabel: skill.isShared ? `${chunkLC7HFDCV_cjs.SKILL_SOURCE_LABELS.mine}, shared` : chunkLC7HFDCV_cjs.SKILL_SOURCE_LABELS[skill.source],
1653
1653
  type: skill.type,
1654
1654
  icon,
1655
1655
  layout: view,
@@ -1684,7 +1684,7 @@ function ConnectedSkillsLibrary({
1684
1684
  }
1685
1685
  ),
1686
1686
  mode === "new" && /* @__PURE__ */ jsxRuntime.jsx(
1687
- chunkOVZ54T5M_cjs.SkillGenerateForm,
1687
+ chunkLC7HFDCV_cjs.SkillGenerateForm,
1688
1688
  {
1689
1689
  icon,
1690
1690
  onGenerate: (desc) => {
@@ -1711,11 +1711,11 @@ function ConnectedSkillsLibrary({
1711
1711
  ),
1712
1712
  mode === "add" && /* @__PURE__ */ jsxRuntime.jsx(ConnectedSkillUpload, { onDone: done }),
1713
1713
  mode === "detail" && current && /* @__PURE__ */ jsxRuntime.jsx(
1714
- chunkOVZ54T5M_cjs.SkillLibraryDetail,
1714
+ chunkLC7HFDCV_cjs.SkillLibraryDetail,
1715
1715
  {
1716
1716
  skill: current,
1717
1717
  icon,
1718
- instructions: current.docExtId ? currentText ? chunkOVZ54T5M_cjs.parseSkillFrontmatter(currentText, chunkOVZ54T5M_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1718
+ instructions: current.docExtId ? currentText ? chunkLC7HFDCV_cjs.parseSkillFrontmatter(currentText, chunkLC7HFDCV_cjs.SKILL_MAIN_FILENAME).content : "" : current.workflow.run.kind === "prompt" ? current.workflow.run.promptTemplate : "",
1719
1719
  isLoading: !!current.docExtId && textLoading,
1720
1720
  actions: {
1721
1721
  onRun: () => onRun(current.slug),
@@ -1750,7 +1750,7 @@ function SkillEditor({
1750
1750
  const [seeded, setSeeded] = react$1.useState(!isEditing);
1751
1751
  const [nameError, setNameError] = react$1.useState(null);
1752
1752
  if (isEditing && !seeded && text2 !== void 0) {
1753
- const parsed = chunkOVZ54T5M_cjs.parseSkillFrontmatter(text2, chunkOVZ54T5M_cjs.SKILL_MAIN_FILENAME);
1753
+ const parsed = chunkLC7HFDCV_cjs.parseSkillFrontmatter(text2, chunkLC7HFDCV_cjs.SKILL_MAIN_FILENAME);
1754
1754
  setDescription(parsed.description ?? "");
1755
1755
  setBody(parsed.content ?? "");
1756
1756
  setSeeded(true);
@@ -1764,15 +1764,15 @@ function SkillEditor({
1764
1764
  notify17("Add a short description.", "error");
1765
1765
  return;
1766
1766
  }
1767
- const slug = chunkOVZ54T5M_cjs.skillSlug(name);
1767
+ const slug = chunkLC7HFDCV_cjs.skillSlug(name);
1768
1768
  try {
1769
- await onSave(slug, chunkOVZ54T5M_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1769
+ await onSave(slug, chunkLC7HFDCV_cjs.serializeSkill({ name: slug, description, body }), isEditing);
1770
1770
  } catch (err) {
1771
1771
  notify17(errorText(err, "Could not save the skill"), "error");
1772
1772
  }
1773
1773
  };
1774
1774
  return /* @__PURE__ */ jsxRuntime.jsx(
1775
- chunkOVZ54T5M_cjs.SkillEditForm,
1775
+ chunkLC7HFDCV_cjs.SkillEditForm,
1776
1776
  {
1777
1777
  name,
1778
1778
  onNameChange: setName,
@@ -1811,7 +1811,7 @@ var DEFAULT_CONNECTED_SKILLS_BROWSER_LABELS = {
1811
1811
  function ConnectedSkillsBrowser({
1812
1812
  props,
1813
1813
  onClose: close,
1814
- builtins = chunkOVZ54T5M_cjs.BUILTIN_SKILLS,
1814
+ builtins = chunkLC7HFDCV_cjs.BUILTIN_SKILLS,
1815
1815
  renderEditor,
1816
1816
  labels
1817
1817
  }) {
@@ -1864,7 +1864,7 @@ function ConnectedSkillsBrowser({
1864
1864
  }
1865
1865
  ) }),
1866
1866
  runSkillId && /* @__PURE__ */ jsxRuntime.jsx(
1867
- chunk6CJNGKZQ_cjs.ConnectedTaskComposer,
1867
+ chunk5V7JWZQ4_cjs.ConnectedTaskComposer,
1868
1868
  {
1869
1869
  kind: "workflow",
1870
1870
  open: true,
@@ -1888,9 +1888,9 @@ function ConnectedAgentCreator({
1888
1888
  agent,
1889
1889
  initialName,
1890
1890
  onSaved,
1891
- capabilities = chunkOVZ54T5M_cjs.DEFAULT_AGENT_CAPABILITIES,
1892
- templates = chunkOVZ54T5M_cjs.DEFAULT_AGENT_TEMPLATES,
1893
- types = chunkOVZ54T5M_cjs.DEFAULT_AGENT_TYPES,
1891
+ capabilities = chunkLC7HFDCV_cjs.DEFAULT_AGENT_CAPABILITIES,
1892
+ templates = chunkLC7HFDCV_cjs.DEFAULT_AGENT_TEMPLATES,
1893
+ types = chunkLC7HFDCV_cjs.DEFAULT_AGENT_TYPES,
1894
1894
  canRevokeWorkspaces = false,
1895
1895
  labels
1896
1896
  }) {
@@ -1932,7 +1932,7 @@ function ConnectedAgentCreator({
1932
1932
  const initialValues = react$1.useMemo(
1933
1933
  () => ({
1934
1934
  name: agent?.given_name ?? initialName ?? "",
1935
- persona: isEdit ? chunkOVZ54T5M_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
1935
+ persona: isEdit ? chunkLC7HFDCV_cjs.stripPersonaPreamble(String(agents.PERSONA ?? "")) : "",
1936
1936
  modelName: String(agents.AGENT_MODEL_NAME ?? ""),
1937
1937
  capabilities: Object.fromEntries(capabilities.map(({ key }) => [key, Boolean(agents[key])])),
1938
1938
  type: "builtin",
@@ -1951,7 +1951,7 @@ function ConnectedAgentCreator({
1951
1951
  try {
1952
1952
  let agentExtId = agent?.external_id ?? early?.id ?? "";
1953
1953
  if (!agentExtId) {
1954
- if (!chunkOVZ54T5M_cjs.isValidAgentName(values.name)) {
1954
+ if (!chunkLC7HFDCV_cjs.isValidAgentName(values.name)) {
1955
1955
  notify17("Give the agent a name first.", "error");
1956
1956
  return;
1957
1957
  }
@@ -1987,7 +1987,7 @@ function ConnectedAgentCreator({
1987
1987
  title: `agent-${name}`,
1988
1988
  sections: {
1989
1989
  Agents: {
1990
- PERSONA: chunkOVZ54T5M_cjs.composePersona(name, values.persona),
1990
+ PERSONA: chunkLC7HFDCV_cjs.composePersona(name, values.persona),
1991
1991
  ...values.modelName ? { AGENT_MODEL_NAME: values.modelName } : {},
1992
1992
  ...Object.fromEntries(capabilities.map(({ key }) => [key, !!values.capabilities[key]])),
1993
1993
  ENABLED_SKILLS: values.capabilities.SKILLS_ENABLED && skills.length ? skills : null,
@@ -2010,7 +2010,7 @@ function ConnectedAgentCreator({
2010
2010
  };
2011
2011
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2012
2012
  /* @__PURE__ */ jsxRuntime.jsx(
2013
- chunkOVZ54T5M_cjs.AgentCreator,
2013
+ chunkLC7HFDCV_cjs.AgentCreator,
2014
2014
  {
2015
2015
  open: ready,
2016
2016
  onOpenChange,
@@ -2026,11 +2026,11 @@ function ConnectedAgentCreator({
2026
2026
  ) : void 0,
2027
2027
  revokingWorkspaceId: revokeAccess.isPending ? revokeAccess.variables?.workspaceId : void 0,
2028
2028
  avatar: (values) => /* @__PURE__ */ jsxRuntime.jsx(
2029
- chunkOVZ54T5M_cjs.AgentAvatarField,
2029
+ chunkLC7HFDCV_cjs.AgentAvatarField,
2030
2030
  {
2031
2031
  picture,
2032
2032
  isBusy: avatarBusy,
2033
- canGenerate: isEdit || chunkOVZ54T5M_cjs.isValidAgentName(values.name),
2033
+ canGenerate: isEdit || chunkLC7HFDCV_cjs.isValidAgentName(values.name),
2034
2034
  onGenerate: () => handleGenerateAvatar(values)
2035
2035
  }
2036
2036
  ),
@@ -2082,7 +2082,7 @@ function ConnectedAgentCreator({
2082
2082
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogTitle, { children: "Connect your agent" }),
2083
2083
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { children: "This key is shown once. Run the script on the machine that will host the agent." })
2084
2084
  ] }),
2085
- connect && /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2085
+ connect && /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.AgentConnectInstructions, { email: connect.email, signingKey: connect.signingKey })
2086
2086
  ]
2087
2087
  }
2088
2088
  ) })
@@ -2229,7 +2229,7 @@ function AgentChat({ agentId, workspaceId, onOpenFull }) {
2229
2229
  placeholder: "Ask your agent\u2026",
2230
2230
  conversations: "Agent chats"
2231
2231
  },
2232
- renderContent: (message) => /* @__PURE__ */ jsxRuntime.jsx(chunk4VGZGM6M_cjs.DocumentWorkspaceContext.Provider, { value: workspaceId, children: /* @__PURE__ */ jsxRuntime.jsx(chunk4VGZGM6M_cjs.ConnectedMarkdown, { isStreaming: message.status === "streaming", children: message.content }) })
2232
+ renderContent: (message) => /* @__PURE__ */ jsxRuntime.jsx(chunkQYRPFPQ7_cjs.DocumentWorkspaceContext.Provider, { value: workspaceId, children: /* @__PURE__ */ jsxRuntime.jsx(chunkQYRPFPQ7_cjs.ConnectedMarkdown, { isStreaming: message.status === "streaming", children: message.content }) })
2233
2233
  }
2234
2234
  )
2235
2235
  ] });
@@ -2474,7 +2474,7 @@ function useMemoryCount(enabled) {
2474
2474
  }
2475
2475
  function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2476
2476
  const { notify: notify17, openConversation, openDocument } = chunk25AIWOR6_cjs.useBlocksEnvironment();
2477
- const people = chunk6CJNGKZQ_cjs.useTaskPeople();
2477
+ const people = chunk5V7JWZQ4_cjs.useTaskPeople();
2478
2478
  const canEditShared = react.useCanEditShared();
2479
2479
  const isWorkspaceOwner = react.useIsWorkspaceOwner();
2480
2480
  const { data: workflows = [] } = react.useWorkflows({ live: true });
@@ -2500,7 +2500,7 @@ function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2500
2500
  }, [documents]);
2501
2501
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2502
2502
  /* @__PURE__ */ jsxRuntime.jsx(
2503
- chunkOVZ54T5M_cjs.TaskTable,
2503
+ chunkLC7HFDCV_cjs.TaskTable,
2504
2504
  {
2505
2505
  tasks,
2506
2506
  isLoading,
@@ -2527,7 +2527,7 @@ function AgentsTasks({ tasks, isLoading, agents, labels: l, onCompose }) {
2527
2527
  }
2528
2528
  ),
2529
2529
  activityFor && /* @__PURE__ */ jsxRuntime.jsx(
2530
- chunk6CJNGKZQ_cjs.ConnectedTaskActivityDialog,
2530
+ chunk5V7JWZQ4_cjs.ConnectedTaskActivityDialog,
2531
2531
  {
2532
2532
  conversationId: activityFor.external_id,
2533
2533
  taskName: activityFor.title || l.untitledTask,
@@ -2543,7 +2543,7 @@ function AgentsLauncher({ workflows, renderIcon, labels: l, testId }) {
2543
2543
  const { notify: notify17, openConversation } = chunk25AIWOR6_cjs.useBlocksEnvironment();
2544
2544
  const { workspaceId, ensureWorkspaceOpen } = chunkXCZYMSDV_cjs.useConnectedWorkspace();
2545
2545
  const { data: skills = [] } = react.useSkills({ enabled: !!workspaceId, live: true });
2546
- const workflowTasks = chunk6CJNGKZQ_cjs.useWorkflowTasks();
2546
+ const workflowTasks = chunk5V7JWZQ4_cjs.useWorkflowTasks();
2547
2547
  const launchable = react$1.useMemo(
2548
2548
  () => [
2549
2549
  ...workflows,
@@ -2566,7 +2566,7 @@ function AgentsLauncher({ workflows, renderIcon, labels: l, testId }) {
2566
2566
  [workflows, skills, l.skillFiles]
2567
2567
  );
2568
2568
  const launch = async ({ workflow, inputs, agentId }) => {
2569
- const values = chunkOVZ54T5M_cjs.defaultTaskComposerValues(launchable, {
2569
+ const values = chunkLC7HFDCV_cjs.defaultTaskComposerValues(launchable, {
2570
2570
  workflowId: workflow.id,
2571
2571
  assignee: "agent",
2572
2572
  inputs,
@@ -2587,7 +2587,7 @@ function AgentsLauncher({ workflows, renderIcon, labels: l, testId }) {
2587
2587
  }
2588
2588
  };
2589
2589
  return /* @__PURE__ */ jsxRuntime.jsx(
2590
- chunkP7FHVWM7_cjs.ConnectedWorkflowLauncher,
2590
+ chunkUHP6AP6C_cjs.ConnectedWorkflowLauncher,
2591
2591
  {
2592
2592
  workflows: launchable,
2593
2593
  onLaunch: launch,
@@ -2686,7 +2686,7 @@ function ConnectedAgentsPageScope(props) {
2686
2686
  children,
2687
2687
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentCreator, { ...management.editorProps, ...agentOptions.creator }),
2688
2688
  taskDialog && /* @__PURE__ */ jsxRuntime.jsx(
2689
- chunk6CJNGKZQ_cjs.ConnectedTaskComposer,
2689
+ chunk5V7JWZQ4_cjs.ConnectedTaskComposer,
2690
2690
  {
2691
2691
  open: true,
2692
2692
  onOpenChange: (open) => !open && setTaskDialog(null),
@@ -2708,7 +2708,7 @@ function AgentsGallery() {
2708
2708
  cardTestIds
2709
2709
  } = agentOptions;
2710
2710
  const { openConversation } = chunk25AIWOR6_cjs.useBlocksEnvironment();
2711
- const tasksByAgent = react$1.useMemo(() => chunkOVZ54T5M_cjs.groupAgentTasks(tasks), [tasks]);
2711
+ const tasksByAgent = react$1.useMemo(() => chunkLC7HFDCV_cjs.groupAgentTasks(tasks), [tasks]);
2712
2712
  const behaviour = useAgentBehaviour(l.defaultBehaviour, details.includes("behaviour"));
2713
2713
  const { agents } = management;
2714
2714
  const cardDetails = (agent) => details.map(
@@ -2723,7 +2723,7 @@ function AgentsGallery() {
2723
2723
  ) : 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)
2724
2724
  );
2725
2725
  return /* @__PURE__ */ jsxRuntime.jsx(
2726
- chunkOVZ54T5M_cjs.AgentGallery,
2726
+ chunkLC7HFDCV_cjs.AgentGallery,
2727
2727
  {
2728
2728
  count: agents.length,
2729
2729
  onCreate: management.create,
@@ -2733,9 +2733,9 @@ function AgentsGallery() {
2733
2733
  const agentTasks = tasksByAgent.get(agent.external_id) ?? [];
2734
2734
  const running = agentTasks.filter((t) => t.in_progress);
2735
2735
  const watchConversationId = running[0]?.external_id ?? null;
2736
- const progress = agentTasks[0] ? chunkOVZ54T5M_cjs.goalProgress(agentTasks[0]) : null;
2736
+ const progress = agentTasks[0] ? chunkLC7HFDCV_cjs.goalProgress(agentTasks[0]) : null;
2737
2737
  return /* @__PURE__ */ jsxRuntime.jsx(
2738
- chunkOVZ54T5M_cjs.AgentCard,
2738
+ chunkLC7HFDCV_cjs.AgentCard,
2739
2739
  {
2740
2740
  name: displayName(agent),
2741
2741
  avatar: /* @__PURE__ */ jsxRuntime.jsx(AgentInitialsAvatar, { agent }),
@@ -2843,7 +2843,7 @@ function AgentsSectionBody({ id }) {
2843
2843
  ) });
2844
2844
  case "scheduled":
2845
2845
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-[min(32rem,70dvh)] min-h-64 flex-col", children: /* @__PURE__ */ jsxRuntime.jsx(
2846
- chunkP7FHVWM7_cjs.ConnectedWorkflowsTable,
2846
+ chunkUHP6AP6C_cjs.ConnectedWorkflowsTable,
2847
2847
  {
2848
2848
  filter: "scheduled",
2849
2849
  onEdit: (w) => openWorkflow?.(w.external_id),
@@ -2905,7 +2905,7 @@ function ConnectedAgentsPage({
2905
2905
  className: "flex h-full flex-col",
2906
2906
  "data-testid": scope.testIds?.root ?? DEFAULT_TEST_IDS.root,
2907
2907
  children: [
2908
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
2908
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
2909
2909
  chunkSJSGSHIT_cjs.TabHeader,
2910
2910
  {
2911
2911
  tabs: [
@@ -3017,10 +3017,10 @@ function cascadeTagCombination(tags, previous, next) {
3017
3017
  function tagCombinationMatches(combination, items) {
3018
3018
  if (!isCombining(combination)) return void 0;
3019
3019
  const pass = (list) => new Set(
3020
- chunkY5RCJQ3A_cjs.applyInvertedIndexFilter(
3020
+ chunkQB7PNQDJ_cjs.applyInvertedIndexFilter(
3021
3021
  [...list],
3022
3022
  combination,
3023
- chunkY5RCJQ3A_cjs.buildInvertedIndex(
3023
+ chunkQB7PNQDJ_cjs.buildInvertedIndex(
3024
3024
  [...list],
3025
3025
  (item) => item.id,
3026
3026
  (item) => item.tagIds
@@ -3147,7 +3147,7 @@ function ConnectedTagTable({
3147
3147
  const fail2 = (fallback) => (e) => notify17(browser.refusalReason(e, fallback), "error");
3148
3148
  const snapshot2 = (data) => {
3149
3149
  const title = exportTitle ?? ui.tagKindTitle(kind, { plural: true });
3150
- const bytes = chunkD4SDNNLX_cjs.tagTableDocx(data, {
3150
+ const bytes = chunkUFGC77KR_cjs.tagTableDocx(data, {
3151
3151
  title,
3152
3152
  nameOf: (id) => people.find((p) => p.value === id)?.label
3153
3153
  });
@@ -3156,7 +3156,7 @@ function ConnectedTagTable({
3156
3156
  return { blob: new Blob([bytes], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }), name };
3157
3157
  };
3158
3158
  return /* @__PURE__ */ jsxRuntime.jsx(
3159
- chunkD4SDNNLX_cjs.TagTable,
3159
+ chunkUFGC77KR_cjs.TagTable,
3160
3160
  {
3161
3161
  ...props,
3162
3162
  table,
@@ -3294,9 +3294,9 @@ function GlossaryExport({ labelId, nameOf }) {
3294
3294
  const narrowed = agreements.find((a) => a.id === narrowTo);
3295
3295
  const title = narrowed ? `Glossary - ${narrowed.name}` : "Glossary";
3296
3296
  const download = (format) => {
3297
- const entries = chunkD4SDNNLX_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3298
- const blob = format === "docx" ? new Blob([chunkD4SDNNLX_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunkD4SDNNLX_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3299
- documentTools.downloadBlob(blob, chunkD4SDNNLX_cjs.glossaryFileName(title, format));
3297
+ const entries = chunkUFGC77KR_cjs.glossaryEntries(sources, { labelId: narrowed?.id });
3298
+ const blob = format === "docx" ? new Blob([chunkUFGC77KR_cjs.glossaryDocx(entries, { title })], { type: chunkJIOHDVWH_cjs.DOCX_MIME_TYPE }) : new Blob([chunkUFGC77KR_cjs.glossaryMarkdown(entries, { title })], { type: "text/markdown" });
3299
+ documentTools.downloadBlob(blob, chunkUFGC77KR_cjs.glossaryFileName(title, format));
3300
3300
  };
3301
3301
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", "data-testid": "tags-glossary", children: [
3302
3302
  agreements.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3715,7 +3715,7 @@ function TagFilterChips({
3715
3715
  const name = (id) => tags.find((t) => t.external_id === id)?.name ?? id;
3716
3716
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-1.5", "data-testid": "tags-filter-chips", children: [
3717
3717
  set.map(([id, state]) => /* @__PURE__ */ jsxRuntime.jsx(
3718
- chunkY5RCJQ3A_cjs.FilterChip,
3718
+ chunkQB7PNQDJ_cjs.FilterChip,
3719
3719
  {
3720
3720
  label: name(id),
3721
3721
  labelContent: /* @__PURE__ */ jsxRuntime.jsx(
@@ -3781,7 +3781,7 @@ function KindSection({
3781
3781
  {
3782
3782
  testId: `tags-kind-${kind}`,
3783
3783
  title: ui.tagKindTitle(kind, { plural: true }),
3784
- description: chunkD4SDNNLX_cjs.tagKindDescription(kind),
3784
+ description: chunkUFGC77KR_cjs.tagKindDescription(kind),
3785
3785
  children: [
3786
3786
  browser.isEntityTag({ kind }) && extractingCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
3787
3787
  "p",
@@ -3791,9 +3791,9 @@ function KindSection({
3791
3791
  children: [
3792
3792
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "size-4 animate-spin" }),
3793
3793
  "Extracting ",
3794
- chunkD4SDNNLX_cjs.entitiesPhrase().toLowerCase(),
3794
+ chunkUFGC77KR_cjs.entitiesPhrase().toLowerCase(),
3795
3795
  " from ",
3796
- chunkD4SDNNLX_cjs.documentCount(extractingCount),
3796
+ chunkUFGC77KR_cjs.documentCount(extractingCount),
3797
3797
  "\u2026"
3798
3798
  ]
3799
3799
  }
@@ -3811,7 +3811,7 @@ function KindSection({
3811
3811
  onOpenTag: ctx.onOpenTag,
3812
3812
  onOpenRow: ctx.onOpenTag,
3813
3813
  onOpenTaggedItems: ctx.onOpenTaggedItems,
3814
- labels: chunkD4SDNNLX_cjs.tagTableLabels(kind),
3814
+ labels: chunkUFGC77KR_cjs.tagTableLabels(kind),
3815
3815
  testId: `tags-table-${kind}`
3816
3816
  }
3817
3817
  )
@@ -3921,15 +3921,15 @@ function TagSection({
3921
3921
  onOpenTag: ctx.onOpenTag,
3922
3922
  onOpenRow: ctx.onOpenTag,
3923
3923
  onOpenTaggedItems: ctx.onOpenTaggedItems,
3924
- labels: chunkD4SDNNLX_cjs.tagTableLabels(tag.kind),
3924
+ labels: chunkUFGC77KR_cjs.tagTableLabels(tag.kind),
3925
3925
  testId: "tags-rows"
3926
3926
  }
3927
3927
  ),
3928
3928
  /* @__PURE__ */ jsxRuntime.jsx(
3929
- chunkD4SDNNLX_cjs.TagDetail,
3929
+ chunkUFGC77KR_cjs.TagDetail,
3930
3930
  {
3931
3931
  onOpenTaggedItems: ctx.onOpenTaggedItems,
3932
- fieldLabels: chunkD4SDNNLX_cjs.tagTableLabels(tag.kind),
3932
+ fieldLabels: chunkUFGC77KR_cjs.tagTableLabels(tag.kind),
3933
3933
  row: ctx.onOpenTaggedItems ? detailRow : detailRow && narrowTagRow(detailRow, ctx.filter.matches),
3934
3934
  fields: schema.data?.fields ?? [],
3935
3935
  isLoading: detail.isLoading,
@@ -3940,10 +3940,10 @@ function TagSection({
3940
3940
  onOpenDocument: (id) => openDocument(id),
3941
3941
  onOpenFact: ctx.onOpenFact,
3942
3942
  onOpenThread: (id) => openConversation(id),
3943
- noteLabel: chunkD4SDNNLX_cjs.tagNoteLabel(tag.kind),
3943
+ noteLabel: chunkUFGC77KR_cjs.tagNoteLabel(tag.kind),
3944
3944
  noteIsValue: tag.kind === "annotation",
3945
3945
  renderPassages: (d, label) => renderPassages(d.doc_ext_id, label),
3946
- labels: chunkD4SDNNLX_cjs.tagDetailLabels(),
3946
+ labels: chunkUFGC77KR_cjs.tagDetailLabels(),
3947
3947
  testId: "tags-detail"
3948
3948
  }
3949
3949
  )
@@ -4014,7 +4014,7 @@ function ConnectedTagsPage({
4014
4014
  const onDelete = async (t) => {
4015
4015
  const nested = browser.getChildTags([...tags], t.external_id);
4016
4016
  const uses = browser.tagUseCount(t);
4017
- const n2 = chunkD4SDNNLX_cjs.tagsPageNouns();
4017
+ const n2 = chunkUFGC77KR_cjs.tagsPageNouns();
4018
4018
  const tagNoun = (count2) => (count2 === 1 ? n2.tag : n2.tags).toLowerCase();
4019
4019
  const carriers = uses === 1 ? `${n2.document}, ${n2.fact} or ${n2.thread}` : `${n2.documents}, ${n2.facts} and ${n2.threads}`;
4020
4020
  const message = `Delete ${ui.tagKindNouns(t.kind).singular} "${t.name}"?` + (uses > 0 ? `
@@ -4035,11 +4035,11 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4035
4035
  try {
4036
4036
  await extract.mutateAsync(docIds);
4037
4037
  notify17(
4038
- `Extracting ${chunkD4SDNNLX_cjs.entitiesPhrase().toLowerCase()} from ${chunkD4SDNNLX_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4038
+ `Extracting ${chunkUFGC77KR_cjs.entitiesPhrase().toLowerCase()} from ${chunkUFGC77KR_cjs.documentCount(docIds.length)}. You will be notified when it is done.`,
4039
4039
  "info"
4040
4040
  );
4041
4041
  } catch (error) {
4042
- notify17(browser.refusalReason(error, `Could not extract ${chunkD4SDNNLX_cjs.entitiesPhrase().toLowerCase()}`), "error");
4042
+ notify17(browser.refusalReason(error, `Could not extract ${chunkUFGC77KR_cjs.entitiesPhrase().toLowerCase()}`), "error");
4043
4043
  throw error;
4044
4044
  }
4045
4045
  };
@@ -4054,10 +4054,10 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4054
4054
  onOpenFact,
4055
4055
  onOpenTaggedItems
4056
4056
  };
4057
- const n = chunkD4SDNNLX_cjs.tagsPageNouns();
4057
+ const n = chunkUFGC77KR_cjs.tagsPageNouns();
4058
4058
  const action = view === "person" || view === "organisation" ? {
4059
4059
  label: "Extract",
4060
- title: `Extract ${chunkD4SDNNLX_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4060
+ title: `Extract ${chunkUFGC77KR_cjs.entitiesPhrase().toLowerCase()} from ${n.documents.toLowerCase()}`,
4061
4061
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "h-4 w-4" }),
4062
4062
  run: () => setExtracting(true),
4063
4063
  testId: "tags-extract-entities"
@@ -4232,7 +4232,7 @@ ${nested.length} nested ${tagNoun(nested.length)} ${nested.length === 1 ? "moves
4232
4232
  }
4233
4233
  ),
4234
4234
  /* @__PURE__ */ jsxRuntime.jsx(
4235
- chunkD4SDNNLX_cjs.ExtractEntitiesDialog,
4235
+ chunkUFGC77KR_cjs.ExtractEntitiesDialog,
4236
4236
  {
4237
4237
  open: extracting,
4238
4238
  onOpenChange: setExtracting,
@@ -5027,10 +5027,10 @@ function useFactFilters(notes, view, chat) {
5027
5027
  );
5028
5028
  const setFactFilters = view.setFilters;
5029
5029
  const quickFilteredNotes = react$1.useMemo(
5030
- () => chunkY5RCJQ3A_cjs.applyInvertedIndexFilter(
5030
+ () => chunkQB7PNQDJ_cjs.applyInvertedIndexFilter(
5031
5031
  notes,
5032
5032
  factFilters,
5033
- chunkY5RCJQ3A_cjs.buildInvertedIndex(
5033
+ chunkQB7PNQDJ_cjs.buildInvertedIndex(
5034
5034
  notes,
5035
5035
  (f) => f.external_id,
5036
5036
  (f) => Object.entries(getFactFilterAttributes(f)).filter(([id, on]) => on && factFilterIds.includes(id)).map(([id]) => id)
@@ -5924,7 +5924,7 @@ function ConnectedExportPanel({
5924
5924
  ui.ShieldIcon,
5925
5925
  {
5926
5926
  char: w.name.charAt(0),
5927
- workspaceColor: chunk3STESMKX_cjs.workspaceKindColor(react.getWorkspaceKind(w)),
5927
+ workspaceColor: chunkWV6RHIFP_cjs.workspaceKindColor(react.getWorkspaceKind(w)),
5928
5928
  size: 32,
5929
5929
  isSelected: false
5930
5930
  }
@@ -6111,7 +6111,7 @@ function OpenExportDialog({
6111
6111
  ui.ShieldIcon,
6112
6112
  {
6113
6113
  char: workspace.name.charAt(0),
6114
- workspaceColor: chunk3STESMKX_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
6114
+ workspaceColor: chunkWV6RHIFP_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
6115
6115
  size: 20,
6116
6116
  isSelected: false
6117
6117
  }
@@ -6324,7 +6324,7 @@ function ConnectedFactsPage({
6324
6324
  onNewFact: composing && !editingId ? () => void 0 : composer.startNewFact,
6325
6325
  navSlotRef: setNavSlot,
6326
6326
  navigator: view === "table" ? /* @__PURE__ */ jsxRuntime.jsx(
6327
- chunkD4SDNNLX_cjs.GridRowNavigator,
6327
+ chunkUFGC77KR_cjs.GridRowNavigator,
6328
6328
  {
6329
6329
  gridApi,
6330
6330
  selectedId: editingId,
@@ -6598,7 +6598,7 @@ function useConnectedShellWorkspaces(options2 = {}) {
6598
6598
  function ConnectedSsoDisconnect() {
6599
6599
  const { client } = react.useAccountClient();
6600
6600
  const { data: profile } = react.useProfile();
6601
- const auth = chunk3VL64465_cjs.useAuthPages();
6601
+ const auth = chunkOAEJME5Q_cjs.useAuthPages();
6602
6602
  const { notify: notify17 } = chunk25AIWOR6_cjs.useBlocksEnvironment();
6603
6603
  const [open, setOpen] = react$1.useState(false);
6604
6604
  const [step, setStep] = react$1.useState("email");
@@ -6743,7 +6743,7 @@ function ConnectedBoxPortalSection() {
6743
6743
  function ServerConnectionRow({ onRefresh, ...status }) {
6744
6744
  const { runtimeConfig } = chunk25AIWOR6_cjs.useBlocksEnvironment();
6745
6745
  const [isRefreshing, setIsRefreshing] = react$1.useState(false);
6746
- const view = chunkY5RCJQ3A_cjs.serverConnectionView(status, runtimeConfig.deploymentDomain || "server");
6746
+ const view = chunkQB7PNQDJ_cjs.serverConnectionView(status, runtimeConfig.deploymentDomain || "server");
6747
6747
  const refresh = async () => {
6748
6748
  setIsRefreshing(true);
6749
6749
  try {
@@ -6753,7 +6753,7 @@ function ServerConnectionRow({ onRefresh, ...status }) {
6753
6753
  }
6754
6754
  };
6755
6755
  return /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsRow, { label: "Server connection", description: view.description, children: /* @__PURE__ */ jsxRuntime.jsx(
6756
- chunkY5RCJQ3A_cjs.ServerConnectionButton,
6756
+ chunkQB7PNQDJ_cjs.ServerConnectionButton,
6757
6757
  {
6758
6758
  state: view.state,
6759
6759
  label: view.label,
@@ -6777,15 +6777,15 @@ function ConnectedAccountSettings({
6777
6777
  }) {
6778
6778
  const [logoutOpen, setLogoutOpen] = react$1.useState(false);
6779
6779
  return /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsPanel, { className: "max-w-2xl", children: [
6780
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedProfileCard, { avatarClassName, nameBadge: profileBadge }),
6780
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedProfileCard, { avatarClassName, nameBadge: profileBadge }),
6781
6781
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedBoxPortalSection, {}),
6782
6782
  afterProfile,
6783
6783
  /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsDisclosure, { title: "More", testId: "account-more-settings", children: [
6784
6784
  /* @__PURE__ */ jsxRuntime.jsx(ConnectedSsoDisconnect, {}),
6785
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedSecuritySection, { children: securityRows }),
6785
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedSecuritySection, { children: securityRows }),
6786
6786
  moreSettings,
6787
6787
  /* @__PURE__ */ jsxRuntime.jsx(
6788
- chunk3VL64465_cjs.ConnectedIdentityVerification,
6788
+ chunkOAEJME5Q_cjs.ConnectedIdentityVerification,
6789
6789
  {
6790
6790
  collapsible: true,
6791
6791
  onManageBilling,
@@ -6795,7 +6795,7 @@ function ConnectedAccountSettings({
6795
6795
  ] }),
6796
6796
  /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsSection, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Wifi, {}), title: "Session", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkQQMMCXBP_cjs.SettingsCard, { children: [
6797
6797
  connection && /* @__PURE__ */ jsxRuntime.jsx(ServerConnectionRow, { ...connection }),
6798
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedSessionsRow, { renderSessionIcon }),
6798
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedSessionsRow, { renderSessionIcon }),
6799
6799
  /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsRow, { label: "Logout", description: "Sign out of your account on this device.", children: /* @__PURE__ */ jsxRuntime.jsxs(
6800
6800
  ui.Button,
6801
6801
  {
@@ -6812,9 +6812,9 @@ function ConnectedAccountSettings({
6812
6812
  }
6813
6813
  ) })
6814
6814
  ] }) }),
6815
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedDangerZone, { renderSubscriptionLink }),
6815
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedDangerZone, { renderSubscriptionLink }),
6816
6816
  !onLogout && /* @__PURE__ */ jsxRuntime.jsx(
6817
- chunk3VL64465_cjs.ConnectedLogoutDialog,
6817
+ chunkOAEJME5Q_cjs.ConnectedLogoutDialog,
6818
6818
  {
6819
6819
  open: logoutOpen,
6820
6820
  onClose: () => setLogoutOpen(false),
@@ -7122,7 +7122,7 @@ function ConnectedPrivacySettings({
7122
7122
  }
7123
7123
  )
7124
7124
  ] }) }),
7125
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedNotificationPreferences, {})
7125
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedNotificationPreferences, {})
7126
7126
  ] });
7127
7127
  }
7128
7128
  var PROVIDER_NAMES = {
@@ -7163,13 +7163,13 @@ var COLUMNS = [
7163
7163
  flex: 1,
7164
7164
  minWidth: 120,
7165
7165
  cellRenderer: (params) => isStandard(params.data) ? /* @__PURE__ */ jsxRuntime.jsx(
7166
- chunkY5RCJQ3A_cjs.ModelProviderLabel,
7166
+ chunkQB7PNQDJ_cjs.ModelProviderLabel,
7167
7167
  {
7168
7168
  logo: /* @__PURE__ */ jsxRuntime.jsx(ui.ArbiIcon, { size: 14, "aria-label": "ARBI", className: "flex-shrink-0 rounded-sm" }),
7169
7169
  children: "ARBI CITY"
7170
7170
  }
7171
7171
  ) : /* @__PURE__ */ jsxRuntime.jsx(
7172
- chunkY5RCJQ3A_cjs.ModelProviderLabel,
7172
+ chunkQB7PNQDJ_cjs.ModelProviderLabel,
7173
7173
  {
7174
7174
  logo: /* @__PURE__ */ jsxRuntime.jsx(ui.ProviderIcon, { modelName: params.data?.model_name, provider: params.value, size: 14 }),
7175
7175
  children: PROVIDER_NAMES[params.value ?? ""] || params.value || "\u2014"
@@ -7246,7 +7246,7 @@ function ConnectedPremiumModels() {
7246
7246
  );
7247
7247
  if (premiumModels.length === 0) return null;
7248
7248
  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(
7249
- chunkY5RCJQ3A_cjs.PremiumModelsFrame,
7249
+ chunkQB7PNQDJ_cjs.PremiumModelsFrame,
7250
7250
  {
7251
7251
  enabled: premiumModel !== "",
7252
7252
  onEnabledChange: (enabled) => {
@@ -7574,10 +7574,10 @@ function ConnectedAppsSettings({
7574
7574
  }
7575
7575
  };
7576
7576
  if (isLoading) {
7577
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ConnectionsLoading, { message: "Loading connected apps\u2026" });
7577
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ConnectionsLoading, { message: "Loading connected apps\u2026" });
7578
7578
  }
7579
7579
  if (catalogError) {
7580
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ConnectionsError, { message: "Failed to load connector catalog. Please refresh and try again." });
7580
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ConnectionsError, { message: "Failed to load connector catalog. Please refresh and try again." });
7581
7581
  }
7582
7582
  const visibleCatalog = catalog.filter((c) => isVendorVisible(c.vendor_key));
7583
7583
  const sharePointVisible = isVendorVisible("microsoft_sharepoint");
@@ -7586,7 +7586,7 @@ function ConnectedAppsSettings({
7586
7586
  (c) => !react.isMailboxSyncVendor(c.vendor_key) && !react.isSharePointVendor(c.vendor_key)
7587
7587
  );
7588
7588
  const renderCard = (entry) => /* @__PURE__ */ jsxRuntime.jsx(
7589
- chunkY5RCJQ3A_cjs.ConnectionCard,
7589
+ chunkQB7PNQDJ_cjs.ConnectionCard,
7590
7590
  {
7591
7591
  connection: toConnectionCardView(entry, connectedByVendor[entry.vendor_key], {
7592
7592
  isDisconnecting: disconnect.isPending && disconnect.variables?.vendorKey === entry.vendor_key,
@@ -7714,7 +7714,7 @@ function ConnectedAppsSettings({
7714
7714
  }
7715
7715
  )
7716
7716
  ] }),
7717
- catalog.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsCard, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ConnectionsEmpty, { message: "No connectors available yet." }) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7717
+ catalog.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQQMMCXBP_cjs.SettingsCard, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ConnectionsEmpty, { message: "No connectors available yet." }) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7718
7718
  renderGroup("Email & Drive", EMAIL_AND_DRIVE_SUBTITLE, /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Mail, {}), emailCatalog),
7719
7719
  renderGroup(
7720
7720
  "Apps & Integrations (MCP)",
@@ -8167,7 +8167,7 @@ function ConnectedStorageProjectCard({
8167
8167
  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." })
8168
8168
  ] }),
8169
8169
  /* @__PURE__ */ jsxRuntime.jsx(
8170
- chunkY5RCJQ3A_cjs.UsageToggle,
8170
+ chunkQB7PNQDJ_cjs.UsageToggle,
8171
8171
  {
8172
8172
  value: view,
8173
8173
  onChange: setView,
@@ -8252,7 +8252,7 @@ function ConnectedStorageProjectCard({
8252
8252
  ] })
8253
8253
  ] }),
8254
8254
  view === "largest" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
8255
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.UsageToggle, { value: kind, onChange: setKind, options: KIND_FILTERS, ariaLabel: "Kind" }),
8255
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.UsageToggle, { value: kind, onChange: setKind, options: KIND_FILTERS, ariaLabel: "Kind" }),
8256
8256
  largest.isLoading ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: "Loading\u2026" }) : /* @__PURE__ */ jsxRuntime.jsx(
8257
8257
  StorageItemsTable,
8258
8258
  {
@@ -8511,7 +8511,7 @@ function ConnectedSettingsPage({
8511
8511
  }, [requested]);
8512
8512
  const controlled = section !== void 0;
8513
8513
  return /* @__PURE__ */ jsxRuntime.jsx(
8514
- chunkY5RCJQ3A_cjs.SettingsPage,
8514
+ chunkQB7PNQDJ_cjs.SettingsPage,
8515
8515
  {
8516
8516
  ...page,
8517
8517
  sections,
@@ -8543,7 +8543,7 @@ function UsageSettings({ icon: icon2 }) {
8543
8543
  description: "AI usage today, in \xA3 (ex VAT).",
8544
8544
  testId: "settings-usage",
8545
8545
  children: /* @__PURE__ */ jsxRuntime.jsx(
8546
- chunkY5RCJQ3A_cjs.UsageSummary,
8546
+ chunkQB7PNQDJ_cjs.UsageSummary,
8547
8547
  {
8548
8548
  stats: [
8549
8549
  {
@@ -8644,7 +8644,7 @@ function AppearanceSection({
8644
8644
  description,
8645
8645
  testId: appearance ? "settings-appearance-theme" : "settings-appearance",
8646
8646
  children: /* @__PURE__ */ jsxRuntime.jsx(
8647
- chunkP34WL63W_cjs.ThemeEditor,
8647
+ chunkJUP5PCLB_cjs.ThemeEditor,
8648
8648
  {
8649
8649
  bundle: theme,
8650
8650
  variant: "collapsed",
@@ -8661,7 +8661,7 @@ function ReaderAppearance({ bundle }) {
8661
8661
  const { defaults } = bundle;
8662
8662
  const isDefault = state.pairingId === defaults.pairingId && state.colorScheme === defaults.colorScheme && state.textSize === defaults.textSize;
8663
8663
  return /* @__PURE__ */ jsxRuntime.jsx(
8664
- chunkY5RCJQ3A_cjs.AppearanceSettings,
8664
+ chunkQB7PNQDJ_cjs.AppearanceSettings,
8665
8665
  {
8666
8666
  colorScheme: state.colorScheme,
8667
8667
  onColorSchemeChange: state.setColorScheme,
@@ -8722,7 +8722,7 @@ function SwitchRow({ row: row2 }) {
8722
8722
  const { on, set } = react.useFeatureSwitch(row2.feature);
8723
8723
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
8724
8724
  /* @__PURE__ */ jsxRuntime.jsx(
8725
- chunkY5RCJQ3A_cjs.SettingsSwitchRow,
8725
+ chunkQB7PNQDJ_cjs.SettingsSwitchRow,
8726
8726
  {
8727
8727
  id: row2.id ?? row2.feature,
8728
8728
  testId: row2.testId ?? `toggle-${row2.feature}`,
@@ -8733,14 +8733,14 @@ function SwitchRow({ row: row2 }) {
8733
8733
  onCheckedChange: set
8734
8734
  }
8735
8735
  ),
8736
- on && row2.rows && row2.rows.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SettingsSwitchGroup, { children: row2.rows.map((sub) => /* @__PURE__ */ jsxRuntime.jsx(FeatureRow, { row: sub }, sub.feature)) })
8736
+ on && row2.rows && row2.rows.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SettingsSwitchGroup, { children: row2.rows.map((sub) => /* @__PURE__ */ jsxRuntime.jsx(FeatureRow, { row: sub }, sub.feature)) })
8737
8737
  ] });
8738
8738
  }
8739
8739
  function CallsRow({ row: row2 }) {
8740
8740
  const { on, set } = react.useFeatureSwitch(row2.feature);
8741
- const state = chunkY5RCJQ3A_cjs.callsSwitchState(react.useCallsConfig(), on);
8741
+ const state = chunkQB7PNQDJ_cjs.callsSwitchState(react.useCallsConfig(), on);
8742
8742
  return /* @__PURE__ */ jsxRuntime.jsx(
8743
- chunkY5RCJQ3A_cjs.SettingsSwitchRow,
8743
+ chunkQB7PNQDJ_cjs.SettingsSwitchRow,
8744
8744
  {
8745
8745
  id: row2.id ?? row2.feature,
8746
8746
  testId: row2.testId ?? `toggle-${row2.feature}`,
@@ -8871,7 +8871,7 @@ function ConnectedDeploymentStorage() {
8871
8871
  deployment.unattributed_bytes > 0 && ` \xB7 ${chunk2VJBIBPE_cjs.formatBytes(deployment.unattributed_bytes)} not owned by any ${ui.entityNoun("PROJECT")}`
8872
8872
  ] }),
8873
8873
  trend.dates.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
8874
- chunkY5RCJQ3A_cjs.UsageLineChart,
8874
+ chunkQB7PNQDJ_cjs.UsageLineChart,
8875
8875
  {
8876
8876
  dates: trend.dates,
8877
8877
  series: trend.series,
@@ -8880,7 +8880,7 @@ function ConnectedDeploymentStorage() {
8880
8880
  }
8881
8881
  ),
8882
8882
  /* @__PURE__ */ jsxRuntime.jsx(
8883
- chunkY5RCJQ3A_cjs.UsageToggle,
8883
+ chunkQB7PNQDJ_cjs.UsageToggle,
8884
8884
  {
8885
8885
  value: view,
8886
8886
  onChange: setView,
@@ -9346,7 +9346,7 @@ function ConnectedWorkspaceEntity({
9346
9346
  ...shieldProps
9347
9347
  }) {
9348
9348
  const name = workspace.name;
9349
- const workspaceColor = chunk3STESMKX_cjs.workspaceKindColor(react.getWorkspaceKind(workspace));
9349
+ const workspaceColor = chunkWV6RHIFP_cjs.workspaceKindColor(react.getWorkspaceKind(workspace));
9350
9350
  const shield = /* @__PURE__ */ jsxRuntime.jsx(
9351
9351
  ui.ShieldIcon,
9352
9352
  {
@@ -9612,7 +9612,7 @@ function ConnectedPeopleMultiSelect({
9612
9612
  identity: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9613
9613
  selected.user ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9614
9614
  /* @__PURE__ */ jsxRuntime.jsx(
9615
- chunk3VL64465_cjs.ConnectedUserEntity,
9615
+ chunkOAEJME5Q_cjs.ConnectedUserEntity,
9616
9616
  {
9617
9617
  user: selected.user,
9618
9618
  size: "xs",
@@ -9640,7 +9640,7 @@ function ConnectedPeopleMultiSelect({
9640
9640
  }
9641
9641
  ),
9642
9642
  person.user ? /* @__PURE__ */ jsxRuntime.jsx(
9643
- chunk3VL64465_cjs.ConnectedUserEntity,
9643
+ chunkOAEJME5Q_cjs.ConnectedUserEntity,
9644
9644
  {
9645
9645
  user: person.user,
9646
9646
  size: "xs",
@@ -9913,13 +9913,13 @@ function ConnectedWorkspaceSettings({
9913
9913
  const [membersExpanded, setMembersExpanded] = react$1.useState(false);
9914
9914
  const [shareOpen, setShareOpen] = react$1.useState(false);
9915
9915
  if (!workspace) {
9916
- return /* @__PURE__ */ jsxRuntime.jsx(chunkFKFGRGKF_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9916
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkFKFGRGKF_cjs.PageLoading, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, { message: "Loading workspace..." }) });
9917
9917
  }
9918
9918
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9919
9919
  /* @__PURE__ */ jsxRuntime.jsxs(chunkFKFGRGKF_cjs.WorkspacePageFrame, { testId, children: [
9920
9920
  /* @__PURE__ */ jsxRuntime.jsxs(chunkFKFGRGKF_cjs.WorkspaceIdentityPanel, { children: [
9921
9921
  /* @__PURE__ */ jsxRuntime.jsx(
9922
- chunkD4SDNNLX_cjs.EntityIdentityBar,
9922
+ chunkUFGC77KR_cjs.EntityIdentityBar,
9923
9923
  {
9924
9924
  testId: "workspace-identity-bar",
9925
9925
  canEdit: isOwner,
@@ -9936,12 +9936,12 @@ function ConnectedWorkspaceSettings({
9936
9936
  label: "Name",
9937
9937
  value: workspace.name,
9938
9938
  placeholder: "Untitled",
9939
- maxLength: chunkD4SDNNLX_cjs.IDENTITY_NAME_MAX_LENGTH,
9939
+ maxLength: chunkUFGC77KR_cjs.IDENTITY_NAME_MAX_LENGTH,
9940
9940
  valueClassName: "truncate text-base font-semibold",
9941
9941
  testId: "workspace-home-title",
9942
9942
  hideLabel: true,
9943
9943
  leading: /* @__PURE__ */ jsxRuntime.jsx(
9944
- chunk3STESMKX_cjs.WorkspaceIdentity,
9944
+ chunkWV6RHIFP_cjs.WorkspaceIdentity,
9945
9945
  {
9946
9946
  workspace: {
9947
9947
  ...react.toShellWorkspace(workspace),
@@ -10227,20 +10227,20 @@ function ConnectedEmailWorkspaceDialog({
10227
10227
  else if (activeSession)
10228
10228
  access = {
10229
10229
  kind: "session",
10230
- expiresIn: chunkY5RCJQ3A_cjs.formatSessionTtl(activeSession.ttl),
10230
+ expiresIn: chunkQB7PNQDJ_cjs.formatSessionTtl(activeSession.ttl),
10231
10231
  isEnding: terminateSession.isPending,
10232
10232
  onEnd: handleEndSession
10233
10233
  };
10234
10234
  else
10235
10235
  access = {
10236
10236
  kind: "idle",
10237
- defaultTtl: limits ? chunkY5RCJQ3A_cjs.formatSessionTtl(limits.default_ttl_seconds) : void 0,
10237
+ defaultTtl: limits ? chunkQB7PNQDJ_cjs.formatSessionTtl(limits.default_ttl_seconds) : void 0,
10238
10238
  isAuthorizing: grantAgentAccess.isPending && grantAgentAccess.variables?.mode?.kind === "temporary",
10239
10239
  onAuthorize: handleAuthorize
10240
10240
  };
10241
10241
  }
10242
10242
  return /* @__PURE__ */ jsxRuntime.jsx(
10243
- chunkY5RCJQ3A_cjs.EmailWorkspaceDialogView,
10243
+ chunkQB7PNQDJ_cjs.EmailWorkspaceDialogView,
10244
10244
  {
10245
10245
  open,
10246
10246
  onOpenChange,
@@ -10790,7 +10790,7 @@ function StripeCheckoutModal({
10790
10790
  const [clientSecret, setClientSecret] = react$1.useState(null);
10791
10791
  const [isCreating, setIsCreating] = react$1.useState(false);
10792
10792
  const [stripe, setStripe] = react$1.useState(null);
10793
- const { stripeEnabled, checkout } = chunkV4SRR4GE_cjs.useBillingSupport();
10793
+ const { stripeEnabled, checkout } = chunkORIOOXUU_cjs.useBillingSupport();
10794
10794
  const createCheckout = react.useCreateProjectCheckout();
10795
10795
  const refreshProject = react.useRefreshProject();
10796
10796
  const invalidateProjects = react.useInvalidateProjects();
@@ -10819,7 +10819,7 @@ function StripeCheckoutModal({
10819
10819
  projectExtId,
10820
10820
  body: {
10821
10821
  interval,
10822
- packs: chunkV4SRR4GE_cjs.PRO_PACKS,
10822
+ packs: chunkORIOOXUU_cjs.PRO_PACKS,
10823
10823
  ai_blocks: aiBlocks,
10824
10824
  storage_blocks: storageBlocks,
10825
10825
  addon_budget_pence: addonBudgetPence,
@@ -10835,7 +10835,7 @@ function StripeCheckoutModal({
10835
10835
  },
10836
10836
  onError: (error) => {
10837
10837
  console.error("Failed to create checkout session:", error);
10838
- const reason = chunkV4SRR4GE_cjs.apiErrorDetail(error)?.message;
10838
+ const reason = chunkORIOOXUU_cjs.apiErrorDetail(error)?.message;
10839
10839
  shell.notify.error(
10840
10840
  reason ? `Checkout didn't start: ${reason}` : "Checkout didn't start. Try again."
10841
10841
  );
@@ -10868,9 +10868,9 @@ function StripeCheckoutModal({
10868
10868
  }
10869
10869
  }, [open]);
10870
10870
  const isStripeConfigured = stripeEnabled;
10871
- const vatNote = quote ? `${chunkV4SRR4GE_cjs.checkoutItemsLabel(aiBlocks, storageBlocks)} \xB7 ${chunkV4SRR4GE_cjs.quoteTotalLine(quote)}` : null;
10871
+ const vatNote = quote ? `${chunkORIOOXUU_cjs.checkoutItemsLabel(aiBlocks, storageBlocks)} \xB7 ${chunkORIOOXUU_cjs.quoteTotalLine(quote)}` : null;
10872
10872
  return /* @__PURE__ */ jsxRuntime.jsx(
10873
- chunkY5RCJQ3A_cjs.CheckoutDialogFrame,
10873
+ chunkQB7PNQDJ_cjs.CheckoutDialogFrame,
10874
10874
  {
10875
10875
  open,
10876
10876
  onOpenChange,
@@ -10880,7 +10880,7 @@ function StripeCheckoutModal({
10880
10880
  children: clientSecret && !!stripe && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10881
10881
  vatNote && /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-vat-note", className: "mb-4 text-sm text-muted-foreground", children: vatNote }),
10882
10882
  checkout?.render(stripe, { clientSecret, onComplete: handleComplete }),
10883
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.MoreInfo, { title: "Paying", label: "Payment help", testId: "checkout-payment-help", children: [
10883
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.MoreInfo, { title: "Paying", label: "Payment help", testId: "checkout-payment-help", children: [
10884
10884
  /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-decline-note", children: "Card declined? Nothing was charged. Try again or use another card." }),
10885
10885
  /* @__PURE__ */ jsxRuntime.jsx("p", { "data-testid": "checkout-vat-id-note", children: "No VAT number? Leave \u2018purchasing as a business\u2019 unticked." }),
10886
10886
  /* @__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." })
@@ -10922,31 +10922,31 @@ function defaultBillingCountry(languages = typeof navigator === "undefined" ? []
10922
10922
  }
10923
10923
  var choiceForPacks = (packs) => packs > 0 ? "pro" : "free";
10924
10924
  function proCard(selected, isAnnual, prices) {
10925
- const packs = chunkV4SRR4GE_cjs.PLAN_CHOICE_PACKS.pro;
10925
+ const packs = chunkORIOOXUU_cjs.PLAN_CHOICE_PACKS.pro;
10926
10926
  const currency = prices.monthly?.currency ?? prices.annual?.currency ?? "gbp";
10927
- const monthly = chunkV4SRR4GE_cjs.packPrice(prices.monthly, packs);
10928
- const annual = chunkV4SRR4GE_cjs.packPrice(prices.annual, packs);
10927
+ const monthly = chunkORIOOXUU_cjs.packPrice(prices.monthly, packs);
10928
+ const annual = chunkORIOOXUU_cjs.packPrice(prices.annual, packs);
10929
10929
  const current = isAnnual ? annual : monthly;
10930
10930
  const effectiveMonthly = current ? isAnnual ? current.amount_ex_vat / 12 : current.amount_ex_vat : null;
10931
10931
  return {
10932
10932
  id: packs,
10933
- name: chunkV4SRR4GE_cjs.planNameForPacks(packs),
10933
+ name: chunkORIOOXUU_cjs.planNameForPacks(packs),
10934
10934
  isSelected: selected === "pro",
10935
10935
  price: current && effectiveMonthly != null ? {
10936
10936
  annual: isAnnual,
10937
- yearlyStrike: isAnnual && monthly && monthly.amount_ex_vat * 12 > current.amount_ex_vat ? chunkV4SRR4GE_cjs.formatMoney(monthly.amount_ex_vat * 12, currency) : void 0,
10938
- yearlyTotal: isAnnual ? chunkV4SRR4GE_cjs.formatMoney(current.amount_ex_vat, currency) : void 0,
10937
+ yearlyStrike: isAnnual && monthly && monthly.amount_ex_vat * 12 > current.amount_ex_vat ? chunkORIOOXUU_cjs.formatMoney(monthly.amount_ex_vat * 12, currency) : void 0,
10938
+ yearlyTotal: isAnnual ? chunkORIOOXUU_cjs.formatMoney(current.amount_ex_vat, currency) : void 0,
10939
10939
  intervalLabel: isAnnual ? "/yr + VAT" : "/mo",
10940
- monthly: chunkV4SRR4GE_cjs.formatMoney(Math.round(effectiveMonthly), currency),
10940
+ monthly: chunkORIOOXUU_cjs.formatMoney(Math.round(effectiveMonthly), currency),
10941
10941
  taxLabel: "+ VAT",
10942
10942
  // The inclusive figure for a UK customer, right under the headline.
10943
- note: `${chunkV4SRR4GE_cjs.formatMoney(current.amount, currency)}${isAnnual ? "/yr" : "/mo"} incl. UK VAT`
10943
+ note: `${chunkORIOOXUU_cjs.formatMoney(current.amount, currency)}${isAnnual ? "/yr" : "/mo"} incl. UK VAT`
10944
10944
  } : void 0,
10945
10945
  features: [
10946
- `${react.formatGbp(chunkV4SRR4GE_cjs.PRO_AI_GBP)} of AI usage / month`,
10947
- `${chunkV4SRR4GE_cjs.PRO_STORAGE_GB} GB storage`,
10946
+ `${react.formatGbp(chunkORIOOXUU_cjs.PRO_AI_GBP)} of AI usage / month`,
10947
+ `${chunkORIOOXUU_cjs.PRO_STORAGE_GB} GB storage`,
10948
10948
  "Unlimited collaborators",
10949
- ...isAnnual ? [chunkV4SRR4GE_cjs.ANNUAL_PREMIUM_AI_NOTE] : []
10949
+ ...isAnnual ? [chunkORIOOXUU_cjs.ANNUAL_PREMIUM_AI_NOTE] : []
10950
10950
  ]
10951
10951
  };
10952
10952
  }
@@ -10958,9 +10958,9 @@ function buildPlanCards(selected, isAnnual, prices, isOnFree) {
10958
10958
  isCurrent: isOnFree,
10959
10959
  isSelected: selected === "free" && !isOnFree,
10960
10960
  features: [
10961
- `${react.formatGbp(chunkV4SRR4GE_cjs.FREE_AI_GBP)} of AI usage / month`,
10962
- `${chunkV4SRR4GE_cjs.FREE_STORAGE_MB.toLocaleString("en-US")} MB storage`,
10963
- chunkV4SRR4GE_cjs.FREE_COLLABORATORS === 0 ? "Just you" : `${chunkV4SRR4GE_cjs.FREE_COLLABORATORS} collaborators`
10961
+ `${react.formatGbp(chunkORIOOXUU_cjs.FREE_AI_GBP)} of AI usage / month`,
10962
+ `${chunkORIOOXUU_cjs.FREE_STORAGE_MB.toLocaleString("en-US")} MB storage`,
10963
+ chunkORIOOXUU_cjs.FREE_COLLABORATORS === 0 ? "Just you" : `${chunkORIOOXUU_cjs.FREE_COLLABORATORS} collaborators`
10964
10964
  ]
10965
10965
  };
10966
10966
  return [free, proCard(selected, isAnnual, prices)];
@@ -10973,7 +10973,7 @@ function PlanChoiceCards({
10973
10973
  isOnFree = false
10974
10974
  }) {
10975
10975
  return /* @__PURE__ */ jsxRuntime.jsx(
10976
- chunkY5RCJQ3A_cjs.PlanCardGrid,
10976
+ chunkQB7PNQDJ_cjs.PlanCardGrid,
10977
10977
  {
10978
10978
  plans: buildPlanCards(selected, isAnnual, prices, isOnFree),
10979
10979
  onSelect: (id) => onSelect(choiceForPacks(id))
@@ -10982,13 +10982,13 @@ function PlanChoiceCards({
10982
10982
  }
10983
10983
  function PlanInfoPopover2() {
10984
10984
  const { openSettings } = chunk25AIWOR6_cjs.useBlocksEnvironment();
10985
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanInfoPopover, { onOpenModelList: () => openSettings("chat") });
10985
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanInfoPopover, { onOpenModelList: () => openSettings("chat") });
10986
10986
  }
10987
10987
  function CheckoutAddonBudget({
10988
10988
  value,
10989
10989
  onChange
10990
10990
  }) {
10991
- const budget = chunkV4SRR4GE_cjs.parseBudgetPounds(value);
10991
+ const budget = chunkORIOOXUU_cjs.parseBudgetPounds(value);
10992
10992
  return /* @__PURE__ */ jsxRuntime.jsxs(
10993
10993
  "div",
10994
10994
  {
@@ -11011,7 +11011,7 @@ function CheckoutAddonBudget({
11011
11011
  step: 25,
11012
11012
  className: "h-8 w-24",
11013
11013
  value,
11014
- placeholder: String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100),
11014
+ placeholder: String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100),
11015
11015
  onChange: (e) => onChange(e.target.value),
11016
11016
  "aria-invalid": budget === void 0,
11017
11017
  "data-testid": "checkout-addon-budget-input"
@@ -11029,7 +11029,7 @@ function BlockStepper({
11029
11029
  onChange,
11030
11030
  testId
11031
11031
  }) {
11032
- const set = (n) => onChange(Math.max(0, Math.min(chunkV4SRR4GE_cjs.MAX_CHECKOUT_BLOCKS, n)));
11032
+ const set = (n) => onChange(Math.max(0, Math.min(chunkORIOOXUU_cjs.MAX_CHECKOUT_BLOCKS, n)));
11033
11033
  return /* @__PURE__ */ jsxRuntime.jsxs(
11034
11034
  "div",
11035
11035
  {
@@ -11073,7 +11073,7 @@ function BlockStepper({
11073
11073
  className: "size-8",
11074
11074
  "aria-label": `More: ${label}`,
11075
11075
  onClick: () => set(value + 1),
11076
- disabled: value >= chunkV4SRR4GE_cjs.MAX_CHECKOUT_BLOCKS,
11076
+ disabled: value >= chunkORIOOXUU_cjs.MAX_CHECKOUT_BLOCKS,
11077
11077
  "data-testid": `${testId}-increment`,
11078
11078
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-4" })
11079
11079
  }
@@ -11090,8 +11090,8 @@ function CheckoutAddonBlocks({
11090
11090
  onStorageBlocksChange,
11091
11091
  price
11092
11092
  }) {
11093
- const ai = chunkV4SRR4GE_cjs.addonPrice(price, "ai_usage");
11094
- const storage = chunkV4SRR4GE_cjs.addonPrice(price, "storage");
11093
+ const ai = chunkORIOOXUU_cjs.addonPrice(price, "ai_usage");
11094
+ const storage = chunkORIOOXUU_cjs.addonPrice(price, "storage");
11095
11095
  return /* @__PURE__ */ jsxRuntime.jsxs(
11096
11096
  "div",
11097
11097
  {
@@ -11101,8 +11101,8 @@ function CheckoutAddonBlocks({
11101
11101
  /* @__PURE__ */ jsxRuntime.jsx(
11102
11102
  BlockStepper,
11103
11103
  {
11104
- label: `+${react.formatGbp(ai?.ai_gbp || chunkV4SRR4GE_cjs.ADDON_BLOCK_AI_GBP)} of AI usage`,
11105
- priceText: chunkV4SRR4GE_cjs.checkoutBlockPriceText(price, "ai_usage"),
11104
+ label: `+${react.formatGbp(ai?.ai_gbp || chunkORIOOXUU_cjs.ADDON_BLOCK_AI_GBP)} of AI usage`,
11105
+ priceText: chunkORIOOXUU_cjs.checkoutBlockPriceText(price, "ai_usage"),
11106
11106
  value: aiBlocks,
11107
11107
  onChange: onAiBlocksChange,
11108
11108
  testId: "checkout-ai-blocks"
@@ -11111,8 +11111,8 @@ function CheckoutAddonBlocks({
11111
11111
  /* @__PURE__ */ jsxRuntime.jsx(
11112
11112
  BlockStepper,
11113
11113
  {
11114
- label: `+${storage?.storage_gb || chunkV4SRR4GE_cjs.STORAGE_BLOCK_GB} GB storage`,
11115
- priceText: chunkV4SRR4GE_cjs.checkoutBlockPriceText(price, "storage"),
11114
+ label: `+${storage?.storage_gb || chunkORIOOXUU_cjs.STORAGE_BLOCK_GB} GB storage`,
11115
+ priceText: chunkORIOOXUU_cjs.checkoutBlockPriceText(price, "storage"),
11116
11116
  value: storageBlocks,
11117
11117
  onChange: onStorageBlocksChange,
11118
11118
  testId: "checkout-storage-blocks"
@@ -11174,7 +11174,7 @@ function CheckoutTotal({
11174
11174
  className: "text-sm font-medium text-foreground",
11175
11175
  "data-testid": "checkout-total",
11176
11176
  "aria-live": "polite",
11177
- children: state.quote && !state.isLoading ? chunkV4SRR4GE_cjs.quoteTotalLine(state.quote) : state.isLoading ? "Calculating total\u2026" : state.error
11177
+ children: state.quote && !state.isLoading ? chunkORIOOXUU_cjs.quoteTotalLine(state.quote) : state.isLoading ? "Calculating total\u2026" : state.error
11178
11178
  }
11179
11179
  )
11180
11180
  ] });
@@ -11207,13 +11207,13 @@ function useCheckoutQuote({
11207
11207
  ...aiBlocks || storageBlocks ? { addons: { ai_usage: aiBlocks, storage: storageBlocks } } : {}
11208
11208
  } : null
11209
11209
  );
11210
- const { code, message } = query.isError ? chunkV4SRR4GE_cjs.quoteError(query.error) : {};
11211
- const locationInvalid = code === chunkV4SRR4GE_cjs.TAX_LOCATION_INVALID;
11210
+ const { code, message } = query.isError ? chunkORIOOXUU_cjs.quoteError(query.error) : {};
11211
+ const locationInvalid = code === chunkORIOOXUU_cjs.TAX_LOCATION_INVALID;
11212
11212
  const isLoading = enabled && (query.isLoading || postal !== postalCode.trim());
11213
11213
  return {
11214
11214
  quote: query.data,
11215
11215
  isLoading,
11216
- showPostcode: chunkV4SRR4GE_cjs.POSTCODE_COUNTRIES.includes(country) || locationInvalid || postalCode !== "",
11216
+ showPostcode: chunkORIOOXUU_cjs.POSTCODE_COUNTRIES.includes(country) || locationInvalid || postalCode !== "",
11217
11217
  error: query.isError ? locationInvalid ? message ?? "Enter your ZIP / postal code to see the total." : message ?? "Couldn't calculate tax. Stripe shows the total next." : null,
11218
11218
  canContinue: !isLoading && (!!query.data || query.isError && !locationInvalid)
11219
11219
  };
@@ -11244,14 +11244,14 @@ function ConnectedReferralRewardSummary({
11244
11244
  if (!reward) return null;
11245
11245
  const applied = totalCents != null && currency ? applyReferralReward(totalCents, reward, currency) : null;
11246
11246
  return /* @__PURE__ */ jsxRuntime.jsx(
11247
- chunkY5RCJQ3A_cjs.ReferralRewardSummary,
11247
+ chunkQB7PNQDJ_cjs.ReferralRewardSummary,
11248
11248
  {
11249
- amountLabel: chunkV4SRR4GE_cjs.formatMoney(reward.amount, reward.currency),
11249
+ amountLabel: chunkORIOOXUU_cjs.formatMoney(reward.amount, reward.currency),
11250
11250
  breakdown: applied && totalCents != null && currency ? {
11251
- subtotal: chunkV4SRR4GE_cjs.formatMoney(totalCents, currency),
11252
- reward: chunkV4SRR4GE_cjs.formatMoney(applied.bonus, currency),
11253
- youPay: chunkV4SRR4GE_cjs.formatMoney(applied.youPay, currency),
11254
- rollover: applied.remaining > 0 ? chunkV4SRR4GE_cjs.formatMoney(applied.remaining, currency) : void 0
11251
+ subtotal: chunkORIOOXUU_cjs.formatMoney(totalCents, currency),
11252
+ reward: chunkORIOOXUU_cjs.formatMoney(applied.bonus, currency),
11253
+ youPay: chunkORIOOXUU_cjs.formatMoney(applied.youPay, currency),
11254
+ rollover: applied.remaining > 0 ? chunkORIOOXUU_cjs.formatMoney(applied.remaining, currency) : void 0
11255
11255
  } : void 0
11256
11256
  }
11257
11257
  );
@@ -11259,10 +11259,10 @@ function ConnectedReferralRewardSummary({
11259
11259
  function ConnectedReferralRewardNote() {
11260
11260
  const reward = useReferralReward();
11261
11261
  if (!reward) return null;
11262
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ReferralRewardNote, { amountLabel: chunkV4SRR4GE_cjs.formatMoney(reward.amount, reward.currency) });
11262
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ReferralRewardNote, { amountLabel: chunkORIOOXUU_cjs.formatMoney(reward.amount, reward.currency) });
11263
11263
  }
11264
11264
  function createProjectErrorMessage(error, fallback = `Failed to create ${ui.entityNoun("PROJECT")}`) {
11265
- const detail = chunkV4SRR4GE_cjs.apiErrorDetail(error);
11265
+ const detail = chunkORIOOXUU_cjs.apiErrorDetail(error);
11266
11266
  if (typeof detail === "string" && detail) return detail;
11267
11267
  const message = detail?.message;
11268
11268
  return typeof message === "string" && message ? message : fallback;
@@ -11272,7 +11272,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11272
11272
  const [plan, setPlan] = react$1.useState("pro");
11273
11273
  const [isAnnual, setIsAnnual] = react$1.useState(false);
11274
11274
  const [promoCode, setPromoCode] = react$1.useState("");
11275
- const [addonBudget, setAddonBudget] = react$1.useState(String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
11275
+ const [addonBudget, setAddonBudget] = react$1.useState(String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
11276
11276
  const [checkoutBudget, setCheckoutBudget] = react$1.useState(null);
11277
11277
  const [aiBlocks, setAiBlocks] = react$1.useState(0);
11278
11278
  const [storageBlocks, setStorageBlocks] = react$1.useState(0);
@@ -11286,7 +11286,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11286
11286
  const [checkoutProjectName, setCheckoutProjectName] = react$1.useState("");
11287
11287
  const [checkoutInterval, setCheckoutInterval] = react$1.useState("month");
11288
11288
  const paymentCompletedRef = react$1.useRef(false);
11289
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
11289
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
11290
11290
  const { data: products, isLoading: productsLoading } = react.useProducts({
11291
11291
  enabled: stripeEnabled
11292
11292
  });
@@ -11315,18 +11315,18 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11315
11315
  setPlan("pro");
11316
11316
  setPromoCode("");
11317
11317
  setPostalCode("");
11318
- setAddonBudget(String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
11318
+ setAddonBudget(String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
11319
11319
  setAiBlocks(0);
11320
11320
  setStorageBlocks(0);
11321
11321
  setIsCreating(false);
11322
11322
  }
11323
11323
  onOpenChange(newOpen);
11324
11324
  };
11325
- const prices = chunkV4SRR4GE_cjs.findProPrices(products);
11325
+ const prices = chunkORIOOXUU_cjs.findProPrices(products);
11326
11326
  const intervalPrice = isAnnual ? prices.annual : prices.monthly;
11327
- const selectedPrice = chunkV4SRR4GE_cjs.packPrice(intervalPrice);
11327
+ const selectedPrice = chunkORIOOXUU_cjs.packPrice(intervalPrice);
11328
11328
  const currency = intervalPrice?.currency ?? "gbp";
11329
- const savingsPercent = chunkV4SRR4GE_cjs.calcSavingsPercent(prices.monthly, prices.annual);
11329
+ const savingsPercent = chunkORIOOXUU_cjs.calcSavingsPercent(prices.monthly, prices.annual);
11330
11330
  const isPro = stripeEnabled && plan !== "free";
11331
11331
  const quote = useCheckoutQuote({
11332
11332
  interval: isAnnual ? "year" : "month",
@@ -11336,14 +11336,14 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11336
11336
  storageBlocks,
11337
11337
  enabled: open && isPro && !!selectedPrice
11338
11338
  });
11339
- const canSubmit = !!projectName.trim() && !isCreating && !createProject.isPending && (!isPro || !!selectedPrice && chunkV4SRR4GE_cjs.parseBudgetPounds(addonBudget) !== void 0 && quote.canContinue);
11339
+ const canSubmit = !!projectName.trim() && !isCreating && !createProject.isPending && (!isPro || !!selectedPrice && chunkORIOOXUU_cjs.parseBudgetPounds(addonBudget) !== void 0 && quote.canContinue);
11340
11340
  const handleCreateFree = () => {
11341
11341
  setIsCreating(true);
11342
11342
  createProject.mutate(
11343
11343
  {
11344
11344
  name: projectName.trim(),
11345
11345
  plan: "free",
11346
- daily_cap_per_user: chunkV4SRR4GE_cjs.SUGGESTED_DAILY_CAP_PER_USER
11346
+ daily_cap_per_user: chunkORIOOXUU_cjs.SUGGESTED_DAILY_CAP_PER_USER
11347
11347
  },
11348
11348
  {
11349
11349
  onSuccess: () => {
@@ -11360,14 +11360,14 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11360
11360
  };
11361
11361
  const handleSubscribe = () => {
11362
11362
  const interval = isAnnual ? "year" : "month";
11363
- const parsed = chunkV4SRR4GE_cjs.parseBudgetPounds(addonBudget);
11364
- const budgetToSend = parsed == null || parsed === chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE ? null : parsed;
11363
+ const parsed = chunkORIOOXUU_cjs.parseBudgetPounds(addonBudget);
11364
+ const budgetToSend = parsed == null || parsed === chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE ? null : parsed;
11365
11365
  setIsCreating(true);
11366
11366
  createProject.mutate(
11367
11367
  {
11368
11368
  name: projectName.trim(),
11369
11369
  plan: "pro",
11370
- daily_cap_per_user: chunkV4SRR4GE_cjs.SUGGESTED_DAILY_CAP_PER_USER
11370
+ daily_cap_per_user: chunkORIOOXUU_cjs.SUGGESTED_DAILY_CAP_PER_USER
11371
11371
  },
11372
11372
  {
11373
11373
  onSuccess: (newProject) => {
@@ -11408,8 +11408,8 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11408
11408
  description: stripeEnabled ? "Name it and pick a plan." : `${ui.getEntityLabel("PROJECT", "PLURAL")} group your ${ui.entityNoun("WORKSPACE", "PLURAL")}.`,
11409
11409
  showDescription: true,
11410
11410
  size: "xl",
11411
- children: /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanStack, { gap: 5, children: [
11412
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanStack, { gap: 2, children: [
11411
+ children: /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanStack, { gap: 5, children: [
11412
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanStack, { gap: 2, children: [
11413
11413
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { htmlFor: "new-project-name", children: "Name" }),
11414
11414
  /* @__PURE__ */ jsxRuntime.jsx(
11415
11415
  ui.Input,
@@ -11425,16 +11425,16 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11425
11425
  }
11426
11426
  )
11427
11427
  ] }),
11428
- stripeEnabled && (productsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { children: "Loading plans\u2026" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
11429
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanPickerCard, { children: [
11428
+ stripeEnabled && (productsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { children: "Loading plans\u2026" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
11429
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanPickerCard, { children: [
11430
11430
  /* @__PURE__ */ jsxRuntime.jsx(
11431
- chunkY5RCJQ3A_cjs.PlanPickerHeader,
11431
+ chunkQB7PNQDJ_cjs.PlanPickerHeader,
11432
11432
  {
11433
11433
  title: "Plan",
11434
11434
  info: /* @__PURE__ */ jsxRuntime.jsx(PlanInfoPopover2, {}),
11435
11435
  infoPlacement: "toggle",
11436
11436
  toggle: plan !== "free" ? /* @__PURE__ */ jsxRuntime.jsx(
11437
- chunkY5RCJQ3A_cjs.PricingToggle,
11437
+ chunkQB7PNQDJ_cjs.PricingToggle,
11438
11438
  {
11439
11439
  isAnnual,
11440
11440
  onToggle: () => setIsAnnual(!isAnnual),
@@ -11472,7 +11472,7 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11472
11472
  currency
11473
11473
  }
11474
11474
  ),
11475
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PromoCodeInput, { value: promoCode, onChange: setPromoCode }),
11475
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PromoCodeInput, { value: promoCode, onChange: setPromoCode }),
11476
11476
  /* @__PURE__ */ jsxRuntime.jsx(
11477
11477
  CheckoutCountrySelect,
11478
11478
  {
@@ -11491,10 +11491,10 @@ function NewProjectFlow({ open, onOpenChange, defaultName }) {
11491
11491
  onPostalCodeChange: setPostalCode
11492
11492
  }
11493
11493
  )
11494
- ] }) : /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { children: "Pro isn't available right now." }))
11494
+ ] }) : /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { children: "Pro isn't available right now." }))
11495
11495
  ] })),
11496
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanActionButton, { onClick: submit, disabled: !canSubmit, children: isCreating ? "Creating\u2026" : isPro ? "Continue to payment" : `Create ${ui.entityNoun("PROJECT")}` }),
11497
- isSlow && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { className: "text-xs", testId: "new-project-still-working", children: "Still working. We'll update here." })
11496
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanActionButton, { onClick: submit, disabled: !canSubmit, children: isCreating ? "Creating\u2026" : isPro ? "Continue to payment" : `Create ${ui.entityNoun("PROJECT")}` }),
11497
+ isSlow && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { className: "text-xs", testId: "new-project-still-working", children: "Still working. We'll update here." })
11498
11498
  ] })
11499
11499
  }
11500
11500
  ),
@@ -11524,7 +11524,7 @@ function ConnectedProjectEntity({
11524
11524
  subscription = "none",
11525
11525
  ...props
11526
11526
  }) {
11527
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
11527
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
11528
11528
  return /* @__PURE__ */ jsxRuntime.jsx(
11529
11529
  ui.ProjectEntity,
11530
11530
  {
@@ -11549,7 +11549,7 @@ function ConnectedProjectSelector({
11549
11549
  readOnly,
11550
11550
  className
11551
11551
  }) {
11552
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
11552
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
11553
11553
  return /* @__PURE__ */ jsxRuntime.jsx(
11554
11554
  chunkHYAYXLIZ_cjs.ProjectPicker,
11555
11555
  {
@@ -11925,9 +11925,9 @@ function ConnectedMailboxSyncDialog({
11925
11925
  showDescription: true,
11926
11926
  className: "w-[92vw] sm:max-w-lg",
11927
11927
  children: [
11928
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncDialogBody, { children: [
11929
- !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncField, { label: "Target workspace", htmlFor: "sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
11930
- chunkY5RCJQ3A_cjs.SyncSelect,
11928
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncDialogBody, { children: [
11929
+ !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncField, { label: "Target workspace", htmlFor: "sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
11930
+ chunkQB7PNQDJ_cjs.SyncSelect,
11931
11931
  {
11932
11932
  id: "sync-workspace",
11933
11933
  value: workspaceExtId,
@@ -11936,9 +11936,9 @@ function ConnectedMailboxSyncDialog({
11936
11936
  options: memberWorkspaces.map((w) => ({ value: w.external_id, label: w.name }))
11937
11937
  }
11938
11938
  ) }),
11939
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncField, { label: "Backfill window", htmlFor: "sync-backfill", children: [
11939
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncField, { label: "Backfill window", htmlFor: "sync-backfill", children: [
11940
11940
  /* @__PURE__ */ jsxRuntime.jsx(
11941
- chunkY5RCJQ3A_cjs.SyncSelect,
11941
+ chunkQB7PNQDJ_cjs.SyncSelect,
11942
11942
  {
11943
11943
  id: "sync-backfill",
11944
11944
  value: backfill,
@@ -11958,17 +11958,17 @@ function ConnectedMailboxSyncDialog({
11958
11958
  "aria-label": "Import emails since date"
11959
11959
  }
11960
11960
  ),
11961
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncSmallNote, { children: "Emails are always imported from this date onward \u2014 the start point never moves." })
11961
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncSmallNote, { children: "Emails are always imported from this date onward \u2014 the start point never moves." })
11962
11962
  ] })
11963
11963
  ] }),
11964
11964
  /* @__PURE__ */ jsxRuntime.jsx(
11965
- chunkY5RCJQ3A_cjs.SyncField,
11965
+ chunkQB7PNQDJ_cjs.SyncField,
11966
11966
  {
11967
11967
  label: `Folders to import${selectedFolders.length > 0 ? ` (${selectedFolders.length})` : ""}`,
11968
11968
  hint: "Select at least one folder to import.",
11969
- actions: folders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncLinkRow, { children: [
11969
+ actions: folders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncLinkRow, { children: [
11970
11970
  /* @__PURE__ */ jsxRuntime.jsx(
11971
- chunkY5RCJQ3A_cjs.SyncLinkButton,
11971
+ chunkQB7PNQDJ_cjs.SyncLinkButton,
11972
11972
  {
11973
11973
  onClick: () => setExpandAllNonce((n) => n + 1),
11974
11974
  testId: "mail-folders-expand-all",
@@ -11976,20 +11976,20 @@ function ConnectedMailboxSyncDialog({
11976
11976
  }
11977
11977
  ),
11978
11978
  /* @__PURE__ */ jsxRuntime.jsx(
11979
- chunkY5RCJQ3A_cjs.SyncLinkButton,
11979
+ chunkQB7PNQDJ_cjs.SyncLinkButton,
11980
11980
  {
11981
11981
  onClick: () => setCollapseAllNonce((n) => n + 1),
11982
11982
  testId: "mail-folders-collapse-all",
11983
11983
  children: "Collapse all"
11984
11984
  }
11985
11985
  ),
11986
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncLinkButton, { onClick: toggleAllFolders, children: allSelected ? "Clear all" : "Select all" })
11986
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncLinkButton, { onClick: toggleAllFolders, children: allSelected ? "Clear all" : "Select all" })
11987
11987
  ] }),
11988
- children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncLoading, { children: "Loading folders\u2026" }) : foldersError ? (
11988
+ children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncLoading, { children: "Loading folders\u2026" }) : foldersError ? (
11989
11989
  // A failed fetch is not an empty mailbox: it hides auth/scope errors (e.g. a Gmail
11990
11990
  // account needing reconnect).
11991
11991
  /* @__PURE__ */ jsxRuntime.jsx(
11992
- chunkY5RCJQ3A_cjs.SyncReconnectNotice,
11992
+ chunkQB7PNQDJ_cjs.SyncReconnectNotice,
11993
11993
  {
11994
11994
  message: `Couldn\u2019t load folders from ${catalog.display_name}. Reconnect the account and try again.`,
11995
11995
  onReconnect: () => void reconnect(),
@@ -11997,7 +11997,7 @@ function ConnectedMailboxSyncDialog({
11997
11997
  testId: "folders-reconnect"
11998
11998
  }
11999
11999
  )
12000
- ) : folders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx(
12000
+ ) : folders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx(
12001
12001
  chunkB2NMLA7W_cjs.MailFolderTree,
12002
12002
  {
12003
12003
  nodes: folderTree,
@@ -12009,9 +12009,9 @@ function ConnectedMailboxSyncDialog({
12009
12009
  ) })
12010
12010
  }
12011
12011
  ),
12012
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncOptions, { children: [
12012
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncOptions, { children: [
12013
12013
  /* @__PURE__ */ jsxRuntime.jsx(
12014
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12014
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12015
12015
  {
12016
12016
  checked: skipDuplicates,
12017
12017
  onCheckedChange: setSkipDuplicates,
@@ -12021,7 +12021,7 @@ function ConnectedMailboxSyncDialog({
12021
12021
  }
12022
12022
  ),
12023
12023
  /* @__PURE__ */ jsxRuntime.jsx(
12024
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12024
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12025
12025
  {
12026
12026
  checked: autoRename,
12027
12027
  onCheckedChange: setAutoRename,
@@ -12031,7 +12031,7 @@ function ConnectedMailboxSyncDialog({
12031
12031
  }
12032
12032
  ),
12033
12033
  /* @__PURE__ */ jsxRuntime.jsx(
12034
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12034
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12035
12035
  {
12036
12036
  checked: shared,
12037
12037
  onCheckedChange: setShared,
@@ -12041,7 +12041,7 @@ function ConnectedMailboxSyncDialog({
12041
12041
  }
12042
12042
  ),
12043
12043
  /* @__PURE__ */ jsxRuntime.jsx(
12044
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12044
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12045
12045
  {
12046
12046
  checked: autoSync,
12047
12047
  onCheckedChange: setAutoSync,
@@ -12053,7 +12053,7 @@ function ConnectedMailboxSyncDialog({
12053
12053
  ] })
12054
12054
  ] }),
12055
12055
  /* @__PURE__ */ jsxRuntime.jsx(
12056
- chunkY5RCJQ3A_cjs.SyncDialogFooter,
12056
+ chunkQB7PNQDJ_cjs.SyncDialogFooter,
12057
12057
  {
12058
12058
  onCancel: () => onOpenChange(false),
12059
12059
  onSave: handleEnableSubmit,
@@ -12115,7 +12115,7 @@ function DriveFolderNode({
12115
12115
  const mightHaveChildren = docCount == null || docCount > 0;
12116
12116
  const orderedChildren = [...children].sort((a, b) => a.name.localeCompare(b.name));
12117
12117
  return /* @__PURE__ */ jsxRuntime.jsx(
12118
- chunkY5RCJQ3A_cjs.SyncFolderRow,
12118
+ chunkQB7PNQDJ_cjs.SyncFolderRow,
12119
12119
  {
12120
12120
  id: folder.id,
12121
12121
  name: folder.name,
@@ -12129,7 +12129,7 @@ function DriveFolderNode({
12129
12129
  onCheckedChange: () => onToggle(folder.id),
12130
12130
  count: typeof docCount === "number" ? docCount : void 0,
12131
12131
  isCountLoading: isSelectable && countLoading,
12132
- children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncFolderStatus, { depth, kind: "loading" }) : orderedChildren.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncFolderStatus, { depth, kind: "empty" }) : orderedChildren.map((child) => /* @__PURE__ */ jsxRuntime.jsx(
12132
+ children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncFolderStatus, { depth, kind: "loading" }) : orderedChildren.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncFolderStatus, { depth, kind: "empty" }) : orderedChildren.map((child) => /* @__PURE__ */ jsxRuntime.jsx(
12133
12133
  DriveFolderNode,
12134
12134
  {
12135
12135
  vendorKey,
@@ -12275,9 +12275,9 @@ function ConnectedDriveSyncDialog({
12275
12275
  showDescription: true,
12276
12276
  className: "w-[92vw] sm:max-w-lg",
12277
12277
  children: [
12278
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncDialogBody, { children: [
12279
- !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncField, { label: "Target workspace", htmlFor: "drive-sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
12280
- chunkY5RCJQ3A_cjs.SyncSelect,
12278
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncDialogBody, { children: [
12279
+ !lockedWorkspaceExtId && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncField, { label: "Target workspace", htmlFor: "drive-sync-workspace", children: /* @__PURE__ */ jsxRuntime.jsx(
12280
+ chunkQB7PNQDJ_cjs.SyncSelect,
12281
12281
  {
12282
12282
  id: "drive-sync-workspace",
12283
12283
  value: workspaceExtId,
@@ -12287,13 +12287,13 @@ function ConnectedDriveSyncDialog({
12287
12287
  }
12288
12288
  ) }),
12289
12289
  /* @__PURE__ */ jsxRuntime.jsx(
12290
- chunkY5RCJQ3A_cjs.SyncField,
12290
+ chunkQB7PNQDJ_cjs.SyncField,
12291
12291
  {
12292
12292
  label: `Folders to import${selectedFolders.length > 0 ? ` (${selectedFolders.length})` : ""}`,
12293
12293
  hint: "Select at least one folder. Importing a folder includes everything inside it.",
12294
- actions: orderedFolders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncLinkRow, { children: [
12294
+ actions: orderedFolders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncLinkRow, { children: [
12295
12295
  /* @__PURE__ */ jsxRuntime.jsx(
12296
- chunkY5RCJQ3A_cjs.SyncLinkButton,
12296
+ chunkQB7PNQDJ_cjs.SyncLinkButton,
12297
12297
  {
12298
12298
  onClick: () => setExpandAllNonce((n) => n + 1),
12299
12299
  testId: "drive-folders-expand-all",
@@ -12301,7 +12301,7 @@ function ConnectedDriveSyncDialog({
12301
12301
  }
12302
12302
  ),
12303
12303
  /* @__PURE__ */ jsxRuntime.jsx(
12304
- chunkY5RCJQ3A_cjs.SyncLinkButton,
12304
+ chunkQB7PNQDJ_cjs.SyncLinkButton,
12305
12305
  {
12306
12306
  onClick: () => setCollapseAllNonce((n) => n + 1),
12307
12307
  testId: "drive-folders-collapse-all",
@@ -12309,19 +12309,19 @@ function ConnectedDriveSyncDialog({
12309
12309
  }
12310
12310
  )
12311
12311
  ] }),
12312
- children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncLoading, { children: "Loading folders\u2026" }) : needsReconnect ? /* @__PURE__ */ jsxRuntime.jsx(
12313
- chunkY5RCJQ3A_cjs.SyncReconnectNotice,
12312
+ children: foldersLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncLoading, { children: "Loading folders\u2026" }) : needsReconnect ? /* @__PURE__ */ jsxRuntime.jsx(
12313
+ chunkQB7PNQDJ_cjs.SyncReconnectNotice,
12314
12314
  {
12315
12315
  ...reconnectButtonProps,
12316
12316
  message: `Reconnect ${catalog.display_name} to enable ${productName} \u2014 your account needs to grant file access.`
12317
12317
  }
12318
12318
  ) : foldersError ? /* @__PURE__ */ jsxRuntime.jsx(
12319
- chunkY5RCJQ3A_cjs.SyncReconnectNotice,
12319
+ chunkQB7PNQDJ_cjs.SyncReconnectNotice,
12320
12320
  {
12321
12321
  ...reconnectButtonProps,
12322
12322
  message: `Couldn\u2019t load folders from ${productName}. Reconnect the account and try again.`
12323
12323
  }
12324
- ) : orderedFolders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", "data-testid": "drive-folder-tree", children: orderedFolders.map((f) => /* @__PURE__ */ jsxRuntime.jsx(
12324
+ ) : orderedFolders.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncNote, { children: "No folders found." }) : /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.SyncTreeFrame, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", "data-testid": "drive-folder-tree", children: orderedFolders.map((f) => /* @__PURE__ */ jsxRuntime.jsx(
12325
12325
  DriveFolderNode,
12326
12326
  {
12327
12327
  vendorKey: catalog.vendor_key,
@@ -12338,9 +12338,9 @@ function ConnectedDriveSyncDialog({
12338
12338
  )) }) })
12339
12339
  }
12340
12340
  ),
12341
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.SyncOptions, { children: [
12341
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.SyncOptions, { children: [
12342
12342
  /* @__PURE__ */ jsxRuntime.jsx(
12343
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12343
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12344
12344
  {
12345
12345
  checked: skipDuplicates,
12346
12346
  onCheckedChange: setSkipDuplicates,
@@ -12349,7 +12349,7 @@ function ConnectedDriveSyncDialog({
12349
12349
  }
12350
12350
  ),
12351
12351
  /* @__PURE__ */ jsxRuntime.jsx(
12352
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12352
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12353
12353
  {
12354
12354
  checked: autoRename,
12355
12355
  onCheckedChange: setAutoRename,
@@ -12358,7 +12358,7 @@ function ConnectedDriveSyncDialog({
12358
12358
  }
12359
12359
  ),
12360
12360
  /* @__PURE__ */ jsxRuntime.jsx(
12361
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12361
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12362
12362
  {
12363
12363
  checked: shared,
12364
12364
  onCheckedChange: setShared,
@@ -12367,7 +12367,7 @@ function ConnectedDriveSyncDialog({
12367
12367
  }
12368
12368
  ),
12369
12369
  /* @__PURE__ */ jsxRuntime.jsx(
12370
- chunkY5RCJQ3A_cjs.SyncOptionToggle,
12370
+ chunkQB7PNQDJ_cjs.SyncOptionToggle,
12371
12371
  {
12372
12372
  checked: autoSync,
12373
12373
  onCheckedChange: setAutoSync,
@@ -12379,7 +12379,7 @@ function ConnectedDriveSyncDialog({
12379
12379
  ] })
12380
12380
  ] }),
12381
12381
  /* @__PURE__ */ jsxRuntime.jsx(
12382
- chunkY5RCJQ3A_cjs.SyncDialogFooter,
12382
+ chunkQB7PNQDJ_cjs.SyncDialogFooter,
12383
12383
  {
12384
12384
  onCancel: () => onOpenChange(false),
12385
12385
  onSave: handleEnableSubmit,
@@ -12400,36 +12400,36 @@ function ConnectedSharePointAdminConsentPage({
12400
12400
  const result = givenResult === void 0 ? queryResult : givenResult;
12401
12401
  const { apiBaseUrl } = chunk25AIWOR6_cjs.useBlocksEnvironment().runtimeConfig;
12402
12402
  const consentUrl = `${apiBaseUrl}/v1/connectors/microsoft_sharepoint/admin-consent`;
12403
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentCard, { size: "md", children: [
12403
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentCard, { size: "md", children: [
12404
12404
  /* @__PURE__ */ jsxRuntime.jsx(
12405
- chunkOVZ54T5M_cjs.ConsentHeader,
12405
+ chunkLC7HFDCV_cjs.ConsentHeader,
12406
12406
  {
12407
12407
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkICHTDJYH_cjs.VendorLogo, { vendorKey: "microsoft_sharepoint", product: "sharepoint" }),
12408
12408
  title: "Approve ARBI for SharePoint access",
12409
12409
  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."
12410
12410
  }
12411
12411
  ),
12412
- result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_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." }),
12413
- result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_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." }),
12414
- /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentSection, { title: "What you are approving", children: [
12412
+ result === "granted" && /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_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." }),
12413
+ result === "declined" && /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_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." }),
12414
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentSection, { title: "What you are approving", children: [
12415
12415
  /* @__PURE__ */ jsxRuntime.jsx(
12416
- chunkOVZ54T5M_cjs.ConsentBulletList,
12416
+ chunkLC7HFDCV_cjs.ConsentBulletList,
12417
12417
  {
12418
12418
  items: [
12419
12419
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12420
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
12420
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentStrong, { children: "Read SharePoint sites and files" }),
12421
12421
  " \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."
12422
12422
  ] }),
12423
12423
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12424
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
12424
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentStrong, { children: "Sign users in and keep access" }),
12425
12425
  " \u2014 standard sign-in (openid, profile, email) and offline access so syncs keep working between sessions."
12426
12426
  ] })
12427
12427
  ]
12428
12428
  }
12429
12429
  ),
12430
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_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." }),
12430
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_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." }),
12431
12431
  /* @__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" }) }),
12432
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_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." })
12432
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_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." })
12433
12433
  ] })
12434
12434
  ] }) });
12435
12435
  }
@@ -12451,7 +12451,7 @@ function BillingProjectEntity({
12451
12451
  subscription = "none",
12452
12452
  ...props
12453
12453
  }) {
12454
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
12454
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
12455
12455
  const isPaid2 = stripeEnabled && (subscription === "active" || subscription === "past_due" || subscription === "dev");
12456
12456
  return /* @__PURE__ */ jsxRuntime.jsx(ui.ProjectEntity, { ...props, subscription, isPaid: isPaid2 });
12457
12457
  }
@@ -12478,8 +12478,8 @@ function InvoicesModal({
12478
12478
  key: inv.number ?? String(i),
12479
12479
  date: formatInvoiceDate(inv.date),
12480
12480
  kind: KIND_LABELS2[inv.kind],
12481
- amount: chunkV4SRR4GE_cjs.formatMoney(inv.amount, inv.currency),
12482
- amountNote: inv.amount_ex_vat != null && inv.amount_ex_vat !== inv.amount ? `${chunkV4SRR4GE_cjs.formatMoney(inv.amount_ex_vat, inv.currency)} ex VAT` : void 0,
12481
+ amount: chunkORIOOXUU_cjs.formatMoney(inv.amount, inv.currency),
12482
+ amountNote: inv.amount_ex_vat != null && inv.amount_ex_vat !== inv.amount ? `${chunkORIOOXUU_cjs.formatMoney(inv.amount_ex_vat, inv.currency)} ex VAT` : void 0,
12483
12483
  status: inv.status,
12484
12484
  isPaid: isPaid2,
12485
12485
  href: inv.hosted_invoice_url ?? inv.url ?? inv.pdf_url ?? void 0,
@@ -12487,7 +12487,7 @@ function InvoicesModal({
12487
12487
  };
12488
12488
  });
12489
12489
  return /* @__PURE__ */ jsxRuntime.jsx(
12490
- chunkY5RCJQ3A_cjs.InvoicesDialog,
12490
+ chunkQB7PNQDJ_cjs.InvoicesDialog,
12491
12491
  {
12492
12492
  open,
12493
12493
  onOpenChange,
@@ -12501,7 +12501,7 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
12501
12501
  const { data: products, isLoading, error } = react.useProducts();
12502
12502
  const [isAnnual, setIsAnnual] = react$1.useState(false);
12503
12503
  const [promoCode, setPromoCode] = react$1.useState("");
12504
- const [addonBudget, setAddonBudget] = react$1.useState(String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
12504
+ const [addonBudget, setAddonBudget] = react$1.useState(String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
12505
12505
  const [checkoutBudget, setCheckoutBudget] = react$1.useState(null);
12506
12506
  const [aiBlocks, setAiBlocks] = react$1.useState(0);
12507
12507
  const [storageBlocks, setStorageBlocks] = react$1.useState(0);
@@ -12519,31 +12519,31 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
12519
12519
  storageBlocks,
12520
12520
  enabled: !!products?.length
12521
12521
  });
12522
- if (isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { children: "Loading plans\u2026" });
12523
- if (error) return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { tone: "error", children: "Plans didn't load. Try again." });
12524
- if (!products || products.length === 0) return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { children: "No plans available." });
12525
- const prices = chunkV4SRR4GE_cjs.findProPrices(products);
12522
+ if (isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { children: "Loading plans\u2026" });
12523
+ if (error) return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { tone: "error", children: "Plans didn't load. Try again." });
12524
+ if (!products || products.length === 0) return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { children: "No plans available." });
12525
+ const prices = chunkORIOOXUU_cjs.findProPrices(products);
12526
12526
  const intervalPrice = isAnnual ? prices.annual : prices.monthly;
12527
- const selectedPrice = chunkV4SRR4GE_cjs.packPrice(intervalPrice);
12527
+ const selectedPrice = chunkORIOOXUU_cjs.packPrice(intervalPrice);
12528
12528
  if (!intervalPrice) return null;
12529
12529
  const interval = isAnnual ? "year" : "month";
12530
- const savingsPercent = chunkV4SRR4GE_cjs.calcSavingsPercent(prices.monthly, prices.annual);
12530
+ const savingsPercent = chunkORIOOXUU_cjs.calcSavingsPercent(prices.monthly, prices.annual);
12531
12531
  const handleSubscribe = () => {
12532
12532
  setCheckoutInterval(interval);
12533
- const parsed = chunkV4SRR4GE_cjs.parseBudgetPounds(addonBudget);
12534
- setCheckoutBudget(parsed == null || parsed === chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE ? null : parsed);
12533
+ const parsed = chunkORIOOXUU_cjs.parseBudgetPounds(addonBudget);
12534
+ setCheckoutBudget(parsed == null || parsed === chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE ? null : parsed);
12535
12535
  setCheckoutQuote(quote.quote);
12536
12536
  setIsCheckoutModalOpen(true);
12537
12537
  };
12538
12538
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
12539
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanStack, { children: [
12539
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanStack, { children: [
12540
12540
  /* @__PURE__ */ jsxRuntime.jsx(
12541
- chunkY5RCJQ3A_cjs.PlanPickerHeader,
12541
+ chunkQB7PNQDJ_cjs.PlanPickerHeader,
12542
12542
  {
12543
12543
  title: "Plan",
12544
12544
  info: /* @__PURE__ */ jsxRuntime.jsx(PlanInfoPopover2, {}),
12545
12545
  toggle: /* @__PURE__ */ jsxRuntime.jsx(
12546
- chunkY5RCJQ3A_cjs.PricingToggle,
12546
+ chunkQB7PNQDJ_cjs.PricingToggle,
12547
12547
  {
12548
12548
  isAnnual,
12549
12549
  onToggle: () => setIsAnnual(!isAnnual),
@@ -12580,7 +12580,7 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
12580
12580
  currency: intervalPrice.currency
12581
12581
  }
12582
12582
  ),
12583
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PromoCodeInput, { value: promoCode, onChange: setPromoCode }),
12583
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PromoCodeInput, { value: promoCode, onChange: setPromoCode }),
12584
12584
  /* @__PURE__ */ jsxRuntime.jsx(
12585
12585
  CheckoutCountrySelect,
12586
12586
  {
@@ -12592,9 +12592,9 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
12592
12592
  }
12593
12593
  ),
12594
12594
  /* @__PURE__ */ jsxRuntime.jsx(CheckoutTotal, { state: quote, postalCode, onPostalCodeChange: setPostalCode }),
12595
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanActionRow, { children: [
12595
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanActionRow, { children: [
12596
12596
  onDismiss && /* @__PURE__ */ jsxRuntime.jsx(
12597
- chunkY5RCJQ3A_cjs.PlanActionButton,
12597
+ chunkQB7PNQDJ_cjs.PlanActionButton,
12598
12598
  {
12599
12599
  tone: "muted",
12600
12600
  fill: true,
@@ -12605,11 +12605,11 @@ function SubscriptionPlans({ projectExtId, onDismiss }) {
12605
12605
  }
12606
12606
  ),
12607
12607
  /* @__PURE__ */ jsxRuntime.jsx(
12608
- chunkY5RCJQ3A_cjs.PlanActionButton,
12608
+ chunkQB7PNQDJ_cjs.PlanActionButton,
12609
12609
  {
12610
12610
  fill: true,
12611
12611
  onClick: handleSubscribe,
12612
- disabled: !selectedPrice || chunkV4SRR4GE_cjs.parseBudgetPounds(addonBudget) === void 0 || !quote.canContinue,
12612
+ disabled: !selectedPrice || chunkORIOOXUU_cjs.parseBudgetPounds(addonBudget) === void 0 || !quote.canContinue,
12613
12613
  size: "sm",
12614
12614
  "data-testid": "subscribe-button",
12615
12615
  children: "Continue to payment"
@@ -12668,7 +12668,7 @@ var FALLBACK_MESSAGES = {
12668
12668
  BILLING_ADDRESS_REQUIRED: "Add a billing address first."
12669
12669
  };
12670
12670
  function addonErrorMessage(error) {
12671
- const detail = chunkV4SRR4GE_cjs.apiErrorDetail(error);
12671
+ const detail = chunkORIOOXUU_cjs.apiErrorDetail(error);
12672
12672
  if (detail && typeof detail === "object") {
12673
12673
  const { code, message } = detail;
12674
12674
  if (message) return message;
@@ -12694,14 +12694,14 @@ function chargeRefusalMessage(error) {
12694
12694
  return code ? REFUSALS[code] : null;
12695
12695
  }
12696
12696
  function addonErrorCode(error) {
12697
- const detail = chunkV4SRR4GE_cjs.apiErrorDetail(error);
12697
+ const detail = chunkORIOOXUU_cjs.apiErrorDetail(error);
12698
12698
  if (detail && typeof detail === "object") {
12699
12699
  const code = detail.code;
12700
12700
  if (code && code in FALLBACK_MESSAGES) return code;
12701
12701
  }
12702
12702
  return null;
12703
12703
  }
12704
- var addedMessage = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `${react.formatGbp(blockAiGbp ?? chunkV4SRR4GE_cjs.ADDON_BLOCK_AI_GBP)} of AI usage added` : `${blockStorageGb ?? chunkV4SRR4GE_cjs.STORAGE_BLOCK_GB} GB added`;
12704
+ var addedMessage = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `${react.formatGbp(blockAiGbp ?? chunkORIOOXUU_cjs.ADDON_BLOCK_AI_GBP)} of AI usage added` : `${blockStorageGb ?? chunkORIOOXUU_cjs.STORAGE_BLOCK_GB} GB added`;
12705
12705
  function useAddonPurchase() {
12706
12706
  const addBlock = react.useAddProjectAddonBlock();
12707
12707
  const { mutate } = addBlock;
@@ -12753,7 +12753,7 @@ function PlanChangeLines({
12753
12753
  isError,
12754
12754
  className
12755
12755
  }) {
12756
- const lines = preview ? chunkV4SRR4GE_cjs.planPreviewLines(preview) : [{ id: "pay-today", text: isError ? chunkV4SRR4GE_cjs.PAY_TODAY_UNPRICED : "Checking price\u2026" }];
12756
+ const lines = preview ? chunkORIOOXUU_cjs.planPreviewLines(preview) : [{ id: "pay-today", text: isError ? chunkORIOOXUU_cjs.PAY_TODAY_UNPRICED : "Checking price\u2026" }];
12757
12757
  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)) });
12758
12758
  }
12759
12759
  var BANK_CONFIRM_PLAN_CHANGE = "Confirm with your bank. Nothing is charged until you do.";
@@ -12761,13 +12761,13 @@ function notifyPlanChange(data, fallback, planName2) {
12761
12761
  const outcome = data?.plan_change;
12762
12762
  switch (outcome?.result) {
12763
12763
  case "upgraded": {
12764
- const plan = chunkV4SRR4GE_cjs.planNameForPacks(data?.addons?.packs ?? data?.packs);
12765
- const charged = outcome.charged_pence > 0 ? ` \xB7 ${chunkV4SRR4GE_cjs.formatMoney(outcome.charged_pence, "gbp")} charged` : "";
12764
+ const plan = chunkORIOOXUU_cjs.planNameForPacks(data?.addons?.packs ?? data?.packs);
12765
+ const charged = outcome.charged_pence > 0 ? ` \xB7 ${chunkORIOOXUU_cjs.formatMoney(outcome.charged_pence, "gbp")} charged` : "";
12766
12766
  shell.notify.success(`Upgraded to ${plan}${charged}`);
12767
12767
  break;
12768
12768
  }
12769
12769
  case "scheduled": {
12770
- const when2 = chunkV4SRR4GE_cjs.formatPeriodEnd(data?.addons?.period_end ?? data?.current_period_end);
12770
+ const when2 = chunkORIOOXUU_cjs.formatPeriodEnd(data?.addons?.period_end ?? data?.current_period_end);
12771
12771
  shell.notify.success(when2 ? `Scheduled for ${when2}` : fallback);
12772
12772
  break;
12773
12773
  }
@@ -12800,23 +12800,23 @@ function ChangeProPlan({
12800
12800
  const { data: products } = react.useProducts();
12801
12801
  const changePlan = react.useChangeProjectPlan();
12802
12802
  const cancel = react.useCancelProjectSubscription();
12803
- const prices = chunkV4SRR4GE_cjs.findProPrices(products);
12803
+ const prices = chunkORIOOXUU_cjs.findProPrices(products);
12804
12804
  const addons = project.addons;
12805
12805
  const isCanceling = project.cancel_at_period_end === true || project.subscription === "canceled";
12806
- const currentPacks = Math.max(addons?.packs ?? project.packs ?? chunkV4SRR4GE_cjs.PRO_PACKS, chunkV4SRR4GE_cjs.PRO_PACKS);
12807
- const isLegacyMultiPack = currentPacks > chunkV4SRR4GE_cjs.PRO_PACKS;
12806
+ const currentPacks = Math.max(addons?.packs ?? project.packs ?? chunkORIOOXUU_cjs.PRO_PACKS, chunkORIOOXUU_cjs.PRO_PACKS);
12807
+ const isLegacyMultiPack = currentPacks > chunkORIOOXUU_cjs.PRO_PACKS;
12808
12808
  const currentInterval = project.plan_interval === "year" ? "year" : "month";
12809
12809
  const scheduledPacks = isCanceling ? 0 : addons?.packs_next ?? currentPacks;
12810
12810
  const scheduledInterval = addons?.pending_interval ?? currentInterval;
12811
12811
  const [targetPacks, setTargetPacks] = react$1.useState(scheduledPacks);
12812
12812
  const [chosenInterval, setChosenInterval] = react$1.useState(scheduledInterval);
12813
- const targetInterval = targetPacks > chunkV4SRR4GE_cjs.PRO_PACKS ? currentInterval : chosenInterval;
12813
+ const targetInterval = targetPacks > chunkORIOOXUU_cjs.PRO_PACKS ? currentInterval : chosenInterval;
12814
12814
  const periodEnd = formatDate(addons?.period_end ?? project.current_period_end);
12815
12815
  const when2 = periodEnd ?? "the end of the period";
12816
12816
  const shortWhen = periodEnd ? periodEnd.replace(/ \d{4}$/, "") : "period end";
12817
12817
  const isPending = changePlan.isPending || cancel.isPending;
12818
12818
  const sameAsScheduled = targetPacks === scheduledPacks && (targetPacks === 0 || targetInterval === scheduledInterval);
12819
- const packOptions = isLegacyMultiPack ? [currentPacks, chunkV4SRR4GE_cjs.PRO_PACKS, 0] : [chunkV4SRR4GE_cjs.PRO_PACKS, 0];
12819
+ const packOptions = isLegacyMultiPack ? [currentPacks, chunkORIOOXUU_cjs.PRO_PACKS, 0] : [chunkORIOOXUU_cjs.PRO_PACKS, 0];
12820
12820
  const intervalPrice = targetInterval === "year" ? prices.annual : prices.monthly;
12821
12821
  const currency = intervalPrice?.currency ?? project.currency ?? "gbp";
12822
12822
  const preview = react.usePreviewProjectPlanChange(
@@ -12824,7 +12824,7 @@ function ChangeProPlan({
12824
12824
  sameAsScheduled || targetPacks === 0 ? null : { packs: targetPacks, interval: targetInterval }
12825
12825
  );
12826
12826
  const noChange = sameAsScheduled || preview.data?.unchanged === true;
12827
- const nameFor = (packs) => packs === currentPacks && packs > 0 ? chunkV4SRR4GE_cjs.proTierName(project) : chunkV4SRR4GE_cjs.planNameForPacks(packs);
12827
+ const nameFor = (packs) => packs === currentPacks && packs > 0 ? chunkORIOOXUU_cjs.proTierName(project) : chunkORIOOXUU_cjs.planNameForPacks(packs);
12828
12828
  const effects = [];
12829
12829
  const target = nameFor(targetPacks);
12830
12830
  if (targetPacks === 0) {
@@ -12834,7 +12834,7 @@ function ChangeProPlan({
12834
12834
  if (targetPacks < currentPacks) {
12835
12835
  effects.push(`Changes to one Pro licence on ${when2}. No refund.`);
12836
12836
  } else if (!isCanceling && addons?.packs_next != null) {
12837
- effects.push(`Cancels the change to ${chunkV4SRR4GE_cjs.planNameForPacks(addons.packs_next)}.`);
12837
+ effects.push(`Cancels the change to ${chunkORIOOXUU_cjs.planNameForPacks(addons.packs_next)}.`);
12838
12838
  }
12839
12839
  if (targetInterval !== currentInterval) {
12840
12840
  effects.push(`${targetInterval === "year" ? "Annual" : "Monthly"} billing from ${when2}.`);
@@ -12873,33 +12873,33 @@ function ChangeProPlan({
12873
12873
  if (packs === 0) {
12874
12874
  return {
12875
12875
  total: "\xA30",
12876
- summary: `${react.formatGbp(chunkV4SRR4GE_cjs.FREE_AI_GBP)} of AI usage \xB7 ${chunkV4SRR4GE_cjs.FREE_STORAGE_MB} MB \xB7 just you`
12876
+ summary: `${react.formatGbp(chunkORIOOXUU_cjs.FREE_AI_GBP)} of AI usage \xB7 ${chunkORIOOXUU_cjs.FREE_STORAGE_MB} MB \xB7 just you`
12877
12877
  };
12878
12878
  }
12879
- const allowance = `${react.formatGbp(chunkV4SRR4GE_cjs.PRO_AI_GBP * packs)} of AI usage \xB7 ${chunkV4SRR4GE_cjs.PRO_STORAGE_GB * packs} GB`;
12880
- const legacy = packs > chunkV4SRR4GE_cjs.PRO_PACKS;
12881
- const exVat = legacy ? project.amount_ex_vat : chunkV4SRR4GE_cjs.packPrice(intervalPrice)?.amount_ex_vat;
12879
+ const allowance = `${react.formatGbp(chunkORIOOXUU_cjs.PRO_AI_GBP * packs)} of AI usage \xB7 ${chunkORIOOXUU_cjs.PRO_STORAGE_GB * packs} GB`;
12880
+ const legacy = packs > chunkORIOOXUU_cjs.PRO_PACKS;
12881
+ const exVat = legacy ? project.amount_ex_vat : chunkORIOOXUU_cjs.packPrice(intervalPrice)?.amount_ex_vat;
12882
12882
  return {
12883
- total: exVat != null ? chunkV4SRR4GE_cjs.plusVat(exVat, currency) : void 0,
12883
+ total: exVat != null ? chunkORIOOXUU_cjs.plusVat(exVat, currency) : void 0,
12884
12884
  summary: allowance
12885
12885
  };
12886
12886
  };
12887
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanStack, { gap: 4, testId: "change-pro-plan", children: [
12887
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanStack, { gap: 4, testId: "change-pro-plan", children: [
12888
12888
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [
12889
12889
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-foreground", children: "Billing" }),
12890
- targetPacks > chunkV4SRR4GE_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(
12891
- chunkY5RCJQ3A_cjs.PricingToggle,
12890
+ targetPacks > chunkORIOOXUU_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(
12891
+ chunkQB7PNQDJ_cjs.PricingToggle,
12892
12892
  {
12893
12893
  isAnnual: targetInterval === "year",
12894
12894
  onToggle: () => setChosenInterval(targetInterval === "year" ? "month" : "year"),
12895
- savingsPercent: chunkV4SRR4GE_cjs.calcSavingsPercent(prices.monthly, prices.annual)
12895
+ savingsPercent: chunkORIOOXUU_cjs.calcSavingsPercent(prices.monthly, prices.annual)
12896
12896
  }
12897
12897
  )
12898
12898
  ] }),
12899
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanStack, { gap: 2, children: packOptions.map((packs) => {
12899
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanStack, { gap: 2, children: packOptions.map((packs) => {
12900
12900
  const { total, summary } = optionFor(packs);
12901
12901
  return /* @__PURE__ */ jsxRuntime.jsx(
12902
- chunkY5RCJQ3A_cjs.PlanTierOption,
12902
+ chunkQB7PNQDJ_cjs.PlanTierOption,
12903
12903
  {
12904
12904
  onSelect: setTargetPacks,
12905
12905
  option: {
@@ -12916,13 +12916,13 @@ function ChangeProPlan({
12916
12916
  );
12917
12917
  }) }),
12918
12918
  isLegacyMultiPack && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1", children: [
12919
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanNotice, { className: "text-xs", testId: "change-plan-legacy-note", children: [
12920
- chunkV4SRR4GE_cjs.proTierName(project),
12919
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanNotice, { className: "text-xs", testId: "change-plan-legacy-note", children: [
12920
+ chunkORIOOXUU_cjs.proTierName(project),
12921
12921
  " is no longer sold"
12922
12922
  ] }),
12923
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.MoreInfo, { title: "Legacy plan", testId: "change-plan-legacy-more-info", children: [
12923
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.MoreInfo, { title: "Legacy plan", testId: "change-plan-legacy-more-info", children: [
12924
12924
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
12925
- chunkV4SRR4GE_cjs.proTierName(project),
12925
+ chunkORIOOXUU_cjs.proTierName(project),
12926
12926
  " keeps renewing at its own price, with its allowance and add-ons, until you change it."
12927
12927
  ] }),
12928
12928
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
@@ -12943,7 +12943,7 @@ function ChangeProPlan({
12943
12943
  ),
12944
12944
  targetPacks > 0 && /* @__PURE__ */ jsxRuntime.jsx(ConnectedReferralRewardNote, {}),
12945
12945
  /* @__PURE__ */ jsxRuntime.jsx(
12946
- chunkY5RCJQ3A_cjs.PlanActionButton,
12946
+ chunkQB7PNQDJ_cjs.PlanActionButton,
12947
12947
  {
12948
12948
  onClick: apply,
12949
12949
  disabled: noChange || isPending,
@@ -12954,9 +12954,9 @@ function ChangeProPlan({
12954
12954
  ] });
12955
12955
  }
12956
12956
  function ChangePlanDialog({ project, open, onOpenChange }) {
12957
- const isPro = !!project && chunkV4SRR4GE_cjs.isProProject(project);
12957
+ const isPro = !!project && chunkORIOOXUU_cjs.isProProject(project);
12958
12958
  return /* @__PURE__ */ jsxRuntime.jsx(
12959
- chunkY5RCJQ3A_cjs.PlanDialogFrame,
12959
+ chunkQB7PNQDJ_cjs.PlanDialogFrame,
12960
12960
  {
12961
12961
  open,
12962
12962
  onOpenChange,
@@ -12976,14 +12976,14 @@ function ChangePlanDialog({ project, open, onOpenChange }) {
12976
12976
  }
12977
12977
  function ProjectsTable() {
12978
12978
  const { data: projects, isLoading } = react.useProjects();
12979
- const currentUserExtId = chunkV4SRR4GE_cjs.useSelfExtId();
12979
+ const currentUserExtId = chunkORIOOXUU_cjs.useSelfExtId();
12980
12980
  const { openProject } = chunk25AIWOR6_cjs.useBlocksEnvironment();
12981
12981
  const updateProject = react.useUpdateProjectFields();
12982
12982
  const [renameTarget, setRenameTarget] = react$1.useState(null);
12983
12983
  const [renameValue, setRenameValue] = react$1.useState("");
12984
12984
  const [invoicesTarget, setInvoicesTarget] = react$1.useState(null);
12985
12985
  const [upgradeTarget, setUpgradeTarget] = react$1.useState(null);
12986
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
12986
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
12987
12987
  const ownedProjects = react$1.useMemo(
12988
12988
  () => (projects ?? []).filter((p) => p.created_by === currentUserExtId),
12989
12989
  [projects, currentUserExtId]
@@ -13022,13 +13022,13 @@ function ProjectsTable() {
13022
13022
  const hasPaid = p.subscription === "active" || p.subscription === "past_due";
13023
13023
  const canUpgrade = stripeEnabled && !hasPaid && p.subscription !== "canceled" && p.subscription !== "dev";
13024
13024
  return /* @__PURE__ */ jsxRuntime.jsx(
13025
- chunkY5RCJQ3A_cjs.ProjectRow,
13025
+ chunkQB7PNQDJ_cjs.ProjectRow,
13026
13026
  {
13027
13027
  testId: `project-row-${p.external_id}`,
13028
13028
  onOpen: () => openProject(p.external_id),
13029
13029
  identity: /* @__PURE__ */ jsxRuntime.jsx(BillingProjectEntity, { name: p.name, relation: "mine", subscription: p.subscription, size: "sm" }),
13030
- summary: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center whitespace-nowrap", children: /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanBadge, { ...chunkV4SRR4GE_cjs.planBadgeView(p) }) }) : void 0,
13031
- usage: p.quotas ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.QuotaMeter, { items: chunkV4SRR4GE_cjs.getQuotaItems(p.quotas), size: "lg" }) : void 0,
13030
+ summary: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center whitespace-nowrap", children: /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanBadge, { ...chunkORIOOXUU_cjs.planBadgeView(p) }) }) : void 0,
13031
+ usage: p.quotas ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.QuotaMeter, { items: chunkORIOOXUU_cjs.getQuotaItems(p.quotas), size: "lg" }) : void 0,
13032
13032
  actions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
13033
13033
  canUpgrade && /* @__PURE__ */ jsxRuntime.jsxs(
13034
13034
  ui.Button,
@@ -13062,9 +13062,9 @@ function ProjectsTable() {
13062
13062
  );
13063
13063
  };
13064
13064
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
13065
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ProjectList, { isLoading, isEmpty: ownedProjects.length === 0, isFilteredOut: false, children: ownedProjects.map(renderRow) }),
13065
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ProjectList, { isLoading, isEmpty: ownedProjects.length === 0, isFilteredOut: false, children: ownedProjects.map(renderRow) }),
13066
13066
  /* @__PURE__ */ jsxRuntime.jsx(
13067
- chunkY5RCJQ3A_cjs.RenameDialog,
13067
+ chunkQB7PNQDJ_cjs.RenameDialog,
13068
13068
  {
13069
13069
  open: !!renameTarget,
13070
13070
  onClose: () => setRenameTarget(null),
@@ -13095,7 +13095,7 @@ function ProjectsTable() {
13095
13095
  }
13096
13096
  function SharedProjects() {
13097
13097
  const { data: projects } = react.useProjects();
13098
- const currentUserExtId = chunkV4SRR4GE_cjs.useSelfExtId();
13098
+ const currentUserExtId = chunkORIOOXUU_cjs.useSelfExtId();
13099
13099
  const { data: usageToday } = react.useUserUsageToday();
13100
13100
  const shared = react$1.useMemo(
13101
13101
  () => (projects ?? []).filter((p) => p.created_by !== currentUserExtId),
@@ -13104,13 +13104,13 @@ function SharedProjects() {
13104
13104
  if (shared.length === 0) return null;
13105
13105
  const usedToday = usageToday?.used_gbp ?? 0;
13106
13106
  return /* @__PURE__ */ jsxRuntime.jsx(
13107
- chunkY5RCJQ3A_cjs.SharedProjectsSection,
13107
+ chunkQB7PNQDJ_cjs.SharedProjectsSection,
13108
13108
  {
13109
13109
  footnote: `Your daily AI usage allowance in ${ui.entityNoun("PROJECT", "PLURAL")} other people run \u2014 their plan and billing are theirs.`,
13110
13110
  children: shared.map((p) => {
13111
13111
  const cap = p.daily_cap_per_user;
13112
13112
  return /* @__PURE__ */ jsxRuntime.jsx(
13113
- chunkY5RCJQ3A_cjs.SharedProjectRow,
13113
+ chunkQB7PNQDJ_cjs.SharedProjectRow,
13114
13114
  {
13115
13115
  testId: `shared-project-${p.external_id}`,
13116
13116
  identity: /* @__PURE__ */ jsxRuntime.jsx(BillingProjectEntity, { name: p.name, relation: "other", size: "sm" }),
@@ -13156,7 +13156,7 @@ function DailyCapEditor({ project }) {
13156
13156
  );
13157
13157
  };
13158
13158
  return /* @__PURE__ */ jsxRuntime.jsx(
13159
- chunkY5RCJQ3A_cjs.DailyCapField,
13159
+ chunkQB7PNQDJ_cjs.DailyCapField,
13160
13160
  {
13161
13161
  value,
13162
13162
  onChange: setValue,
@@ -13169,11 +13169,11 @@ function DailyCapEditor({ project }) {
13169
13169
  function SubscriptionStatus({ project }) {
13170
13170
  const { quotas, cancel_at_period_end, subscription, current_period_end, addons } = project;
13171
13171
  return /* @__PURE__ */ jsxRuntime.jsx(
13172
- chunkY5RCJQ3A_cjs.SubscriptionStatusView,
13172
+ chunkQB7PNQDJ_cjs.SubscriptionStatusView,
13173
13173
  {
13174
- resetDate: chunkV4SRR4GE_cjs.formatResetDate(addons?.ai_usage_reset_at ?? current_period_end),
13174
+ resetDate: chunkORIOOXUU_cjs.formatResetDate(addons?.ai_usage_reset_at ?? current_period_end),
13175
13175
  isCanceling: subscription === "canceled" || cancel_at_period_end === true,
13176
- meters: chunkV4SRR4GE_cjs.getQuotaItems(quotas).map((q) => ({
13176
+ meters: chunkORIOOXUU_cjs.getQuotaItems(quotas).map((q) => ({
13177
13177
  key: q.key,
13178
13178
  icon: q.icon,
13179
13179
  label: q.label,
@@ -13237,7 +13237,7 @@ function PendingChange({
13237
13237
  }
13238
13238
  );
13239
13239
  }
13240
- var titleFor = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `Add ${react.formatGbp(blockAiGbp ?? chunkV4SRR4GE_cjs.ADDON_BLOCK_AI_GBP)} of AI usage` : `Add ${blockStorageGb ?? chunkV4SRR4GE_cjs.STORAGE_BLOCK_GB} GB storage`;
13240
+ var titleFor = (kind, blockAiGbp, blockStorageGb) => kind === "ai_usage" ? `Add ${react.formatGbp(blockAiGbp ?? chunkORIOOXUU_cjs.ADDON_BLOCK_AI_GBP)} of AI usage` : `Add ${blockStorageGb ?? chunkORIOOXUU_cjs.STORAGE_BLOCK_GB} GB storage`;
13241
13241
  var blocksOf = (kind, project) => (kind === "ai_usage" ? project.addons?.ai_blocks : project.addons?.storage_blocks) ?? 0;
13242
13242
  function Row({ label, children }) {
13243
13243
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-baseline justify-between gap-4", children: [
@@ -13258,11 +13258,11 @@ function AddAddonDialog({
13258
13258
  const addons = project.addons;
13259
13259
  if (!addons) return null;
13260
13260
  const isAnnual = project.plan_interval === "year";
13261
- const price = chunkV4SRR4GE_cjs.addonCharge(kind, addons, isAnnual, addons.period_end ?? project.current_period_end);
13262
- const nextCharge = chunkV4SRR4GE_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
13263
- const now = quote.data ? chunkV4SRR4GE_cjs.quoteParts(quote.data.now) : null;
13264
- const renewal = quote.data ? chunkV4SRR4GE_cjs.quoteParts(quote.data.renewal) : null;
13265
- const today = now ? { total: chunkV4SRR4GE_cjs.money2(now.total), detail: chunkV4SRR4GE_cjs.taxDetail(now) } : { total: price.now, detail: `incl. VAT (${price.nowExVat} + ${price.nowVat} VAT)` };
13261
+ const price = chunkORIOOXUU_cjs.addonCharge(kind, addons, isAnnual, addons.period_end ?? project.current_period_end);
13262
+ const nextCharge = chunkORIOOXUU_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
13263
+ const now = quote.data ? chunkORIOOXUU_cjs.quoteParts(quote.data.now) : null;
13264
+ const renewal = quote.data ? chunkORIOOXUU_cjs.quoteParts(quote.data.renewal) : null;
13265
+ const today = now ? { total: chunkORIOOXUU_cjs.money2(now.total), detail: chunkORIOOXUU_cjs.taxDetail(now) } : { total: price.now, detail: `incl. VAT (${price.nowExVat} + ${price.nowVat} VAT)` };
13266
13266
  const pricing = quote.isLoading;
13267
13267
  const confirm = () => {
13268
13268
  const before = blocksOf(kind, project);
@@ -13301,8 +13301,8 @@ function AddAddonDialog({
13301
13301
  isAnnual ? "yearly" : "monthly",
13302
13302
  " \xB7 no refund"
13303
13303
  ] }),
13304
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.MoreInfo, { title: "Adding a top-up", testId: "add-addon-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
13305
- chunkY5RCJQ3A_cjs.MoreInfoList,
13304
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.MoreInfo, { title: "Adding a top-up", testId: "add-addon-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
13305
+ chunkQB7PNQDJ_cjs.MoreInfoList,
13306
13306
  {
13307
13307
  items: [
13308
13308
  {
@@ -13317,7 +13317,7 @@ function AddAddonDialog({
13317
13317
  term: "Usage cap",
13318
13318
  text: "Adding by hand is never blocked by the usage cap; the cap limits automatic top-ups only."
13319
13319
  },
13320
- ...isAnnual && kind === "ai_usage" ? [{ term: "Annual", text: `${chunkV4SRR4GE_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : []
13320
+ ...isAnnual && kind === "ai_usage" ? [{ term: "Annual", text: `${chunkORIOOXUU_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : []
13321
13321
  ]
13322
13322
  }
13323
13323
  ) })
@@ -13340,7 +13340,7 @@ function AddAddonDialog({
13340
13340
  )
13341
13341
  ] }) }),
13342
13342
  !pricing && /* @__PURE__ */ jsxRuntime.jsxs(Row, { label: "Next charge", children: [
13343
- renewal ? chunkV4SRR4GE_cjs.totalWithTaxWord(renewal) : price.then.replace(/\/(month|year)/, ""),
13343
+ renewal ? chunkORIOOXUU_cjs.totalWithTaxWord(renewal) : price.then.replace(/\/(month|year)/, ""),
13344
13344
  nextCharge ? ` on ${nextCharge}` : " at renewal"
13345
13345
  ] })
13346
13346
  ] }) }),
@@ -13371,11 +13371,11 @@ function ReduceAddonDialog({
13371
13371
  const update = react.useUpdateProjectNextPeriodAddons();
13372
13372
  const addons = project.addons;
13373
13373
  if (!addons) return null;
13374
- const { min, next } = chunkV4SRR4GE_cjs.reduceBounds(kind, addons);
13374
+ const { min, next } = chunkORIOOXUU_cjs.reduceBounds(kind, addons);
13375
13375
  const keep2 = Math.max(min, next - 1);
13376
- const size = chunkV4SRR4GE_cjs.nextRemovedBlockSize(kind, addons);
13377
- const what = chunkV4SRR4GE_cjs.stepLabel(kind, size);
13378
- const from = chunkV4SRR4GE_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "your next renewal";
13376
+ const size = chunkORIOOXUU_cjs.nextRemovedBlockSize(kind, addons);
13377
+ const what = chunkORIOOXUU_cjs.stepLabel(kind, size);
13378
+ const from = chunkORIOOXUU_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end) ?? "your next renewal";
13379
13379
  const fromShort = from.replace(/ \d{4}$/, "");
13380
13380
  const allowanceNext = kind === "ai_usage" ? addons.ai_allowance_next_gbp - size : addons.storage_allowance_next_gb - size;
13381
13381
  const allowanceNow = kind === "ai_usage" ? addons.ai_allowance_gbp : addons.storage_allowance_gb;
@@ -13383,7 +13383,7 @@ function ReduceAddonDialog({
13383
13383
  const save = () => update.mutate(
13384
13384
  {
13385
13385
  projectExtId: project.external_id,
13386
- body: chunkV4SRR4GE_cjs.nextPeriodBody(kind, keep2)
13386
+ body: chunkORIOOXUU_cjs.nextPeriodBody(kind, keep2)
13387
13387
  },
13388
13388
  {
13389
13389
  onSuccess: () => {
@@ -13411,7 +13411,7 @@ function ReduceAddonDialog({
13411
13411
  fromShort,
13412
13412
  " \xB7 no refund"
13413
13413
  ] }),
13414
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.MoreInfo, { title: "Reducing a top-up", testId: "reduce-addon-more-info", children: [
13414
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.MoreInfo, { title: "Reducing a top-up", testId: "reduce-addon-more-info", children: [
13415
13415
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
13416
13416
  "The reduction applies from your next renewal (",
13417
13417
  from,
@@ -13450,7 +13450,7 @@ function ReduceAddonDialog({
13450
13450
  }
13451
13451
  ) });
13452
13452
  }
13453
- var gbp = (pence) => chunkV4SRR4GE_cjs.formatMoney(pence, "gbp");
13453
+ var gbp = (pence) => chunkORIOOXUU_cjs.formatMoney(pence, "gbp");
13454
13454
  var gb2 = (n) => `${Math.round(n * 10) / 10} GB`;
13455
13455
  var pct = (used, limit) => limit > 0 ? Math.min(100, used / limit * 100) : 0;
13456
13456
  function formatShortDate(unix) {
@@ -13462,20 +13462,20 @@ function AutoTopupThreshold({
13462
13462
  addons
13463
13463
  }) {
13464
13464
  const updateSettings = react.useUpdateProjectAddonSettings();
13465
- const min = addons.min_auto_topup_threshold_gbp || chunkV4SRR4GE_cjs.MIN_AUTO_TOPUP_THRESHOLD_GBP;
13465
+ const min = addons.min_auto_topup_threshold_gbp || chunkORIOOXUU_cjs.MIN_AUTO_TOPUP_THRESHOLD_GBP;
13466
13466
  const saved = addons.auto_topup_threshold_gbp;
13467
13467
  const [value, setValue] = react$1.useState(String(saved));
13468
13468
  react$1.useEffect(() => setValue(String(saved)), [saved]);
13469
13469
  const parsed = Number(value);
13470
13470
  const valid = Number.isFinite(parsed) && parsed >= min;
13471
13471
  const dirty = valid && parsed !== saved;
13472
- const off = chunkV4SRR4GE_cjs.isAddonBudgetZero(addons);
13472
+ const off = chunkORIOOXUU_cjs.isAddonBudgetZero(addons);
13473
13473
  const save = () => {
13474
13474
  if (!dirty) return;
13475
13475
  updateSettings.mutate(
13476
13476
  {
13477
13477
  projectExtId: project.external_id,
13478
- body: chunkV4SRR4GE_cjs.addonSettingsBody(addons, { auto_topup_threshold_gbp: parsed })
13478
+ body: chunkORIOOXUU_cjs.addonSettingsBody(addons, { auto_topup_threshold_gbp: parsed })
13479
13479
  },
13480
13480
  {
13481
13481
  onSuccess: () => shell.notify.success(`Auto-add below ${react.formatGbp(parsed)} of AI usage left`),
@@ -13572,10 +13572,10 @@ function ResourceMeter({
13572
13572
  const update = react.useUpdateProjectNextPeriodAddons();
13573
13573
  const isAi = kind === "ai_usage";
13574
13574
  const slug = isAi ? "ai-usage" : "storage";
13575
- const periodEnd = chunkV4SRR4GE_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
13575
+ const periodEnd = chunkORIOOXUU_cjs.formatPeriodEnd(addons.period_end ?? project.current_period_end);
13576
13576
  const from = periodEnd ?? "your next renewal";
13577
13577
  const fromShort = formatShortDate(addons.period_end ?? project.current_period_end) ?? "renewal";
13578
- const { min, current, next } = chunkV4SRR4GE_cjs.reduceBounds(kind, addons);
13578
+ const { min, current, next } = chunkORIOOXUU_cjs.reduceBounds(kind, addons);
13579
13579
  const fmt = (n) => isAi ? react.formatGbp(n) : gb2(n);
13580
13580
  const used = isAi ? addons.ai_used_gbp : addons.storage_used_gb;
13581
13581
  const allowance = isAi ? addons.ai_allowance_gbp : addons.storage_allowance_gb;
@@ -13583,15 +13583,15 @@ function ResourceMeter({
13583
13583
  const plan = isAi ? addons.plan_ai_gbp : addons.plan_storage_gb;
13584
13584
  const topUps = Math.max(0, allowance - plan);
13585
13585
  const blocks = isAi ? addons.ai_blocks : addons.storage_blocks;
13586
- const hasLegacy = chunkV4SRR4GE_cjs.splitBlocks(kind, blocks, addons).legacy > 0;
13587
- const room = chunkV4SRR4GE_cjs.autoRoom(kind, addons);
13588
- const capZero = chunkV4SRR4GE_cjs.isAddonBudgetZero(addons);
13589
- const resets = isAi ? formatShortDate(chunkV4SRR4GE_cjs.aiUsageResetTimestamp(project)) : null;
13590
- const removeSize = chunkV4SRR4GE_cjs.nextRemovedBlockSize(kind, addons);
13586
+ const hasLegacy = chunkORIOOXUU_cjs.splitBlocks(kind, blocks, addons).legacy > 0;
13587
+ const room = chunkORIOOXUU_cjs.autoRoom(kind, addons);
13588
+ const capZero = chunkORIOOXUU_cjs.isAddonBudgetZero(addons);
13589
+ const resets = isAi ? formatShortDate(chunkORIOOXUU_cjs.aiUsageResetTimestamp(project)) : null;
13590
+ const removeSize = chunkORIOOXUU_cjs.nextRemovedBlockSize(kind, addons);
13591
13591
  const undo = () => update.mutate(
13592
13592
  {
13593
13593
  projectExtId: project.external_id,
13594
- body: chunkV4SRR4GE_cjs.nextPeriodBody(kind, current)
13594
+ body: chunkORIOOXUU_cjs.nextPeriodBody(kind, current)
13595
13595
  },
13596
13596
  {
13597
13597
  onSuccess: () => shell.notify.success("Kept"),
@@ -13608,7 +13608,7 @@ function ResourceMeter({
13608
13608
  allowance: { used, plan, topUps, autoRoom: capZero ? 0 : room },
13609
13609
  legend: {
13610
13610
  plan: `Plan ${fmt(plan)}`,
13611
- topUps: topUps > 0 ? `Top-ups ${fmt(topUps)}${hasLegacy ? ` (${chunkV4SRR4GE_cjs.blocksLabel(kind, blocks, addons)})` : ""}` : void 0,
13611
+ topUps: topUps > 0 ? `Top-ups ${fmt(topUps)}${hasLegacy ? ` (${chunkORIOOXUU_cjs.blocksLabel(kind, blocks, addons)})` : ""}` : void 0,
13612
13612
  autoRoom: room != null && room > 0 && !capZero ? `Automatic up to ${fmt(room)}` : void 0
13613
13613
  },
13614
13614
  testId: `usage-meter-${slug}`,
@@ -13637,9 +13637,9 @@ function ResourceMeter({
13637
13637
  {
13638
13638
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-3.5" }),
13639
13639
  label: isAi ? react.formatGbp(addons.block_ai_gbp) : `${addons.block_storage_gb} GB`,
13640
- caption: chunkV4SRR4GE_cjs.addStepCaption(kind, addons),
13640
+ caption: chunkORIOOXUU_cjs.addStepCaption(kind, addons),
13641
13641
  onClick: onAdd,
13642
- ariaLabel: `Add ${chunkV4SRR4GE_cjs.stepLabel(kind, isAi ? addons.block_ai_gbp : addons.block_storage_gb)}`,
13642
+ ariaLabel: `Add ${chunkORIOOXUU_cjs.stepLabel(kind, isAi ? addons.block_ai_gbp : addons.block_storage_gb)}`,
13643
13643
  testId: isAi ? "add-ai-block-button" : "add-storage-block-button"
13644
13644
  }
13645
13645
  ),
@@ -13650,7 +13650,7 @@ function ResourceMeter({
13650
13650
  label: isAi ? react.formatGbp(removeSize) : `${removeSize} GB`,
13651
13651
  caption: `from ${fromShort}`,
13652
13652
  onClick: onReduce,
13653
- ariaLabel: `Remove ${chunkV4SRR4GE_cjs.stepLabel(kind, removeSize)} from ${from}`,
13653
+ ariaLabel: `Remove ${chunkORIOOXUU_cjs.stepLabel(kind, removeSize)} from ${from}`,
13654
13654
  testId: `reduce-${slug}-button`
13655
13655
  }
13656
13656
  )
@@ -13689,10 +13689,10 @@ function UsageCapEditor({ project, addons }) {
13689
13689
  updateSettings.mutate(
13690
13690
  {
13691
13691
  projectExtId: project.external_id,
13692
- body: chunkV4SRR4GE_cjs.addonSettingsBody(addons, { spend_cap_pence: nextCap })
13692
+ body: chunkORIOOXUU_cjs.addonSettingsBody(addons, { spend_cap_pence: nextCap })
13693
13693
  },
13694
13694
  {
13695
- onSuccess: () => shell.notify.success(chunkV4SRR4GE_cjs.budgetSavedMessage(nextCap)),
13695
+ onSuccess: () => shell.notify.success(chunkORIOOXUU_cjs.budgetSavedMessage(nextCap)),
13696
13696
  onError: (error) => shell.notify.error(addonErrorMessage(error))
13697
13697
  }
13698
13698
  );
@@ -13703,14 +13703,14 @@ function UsageCapEditor({ project, addons }) {
13703
13703
  /* @__PURE__ */ jsxRuntime.jsx(
13704
13704
  chunkQZTNTP75_cjs.UsageMeter,
13705
13705
  {
13706
- label: chunkV4SRR4GE_cjs.USAGE_CAP_LABEL,
13706
+ label: chunkORIOOXUU_cjs.USAGE_CAP_LABEL,
13707
13707
  hint: spendResets && savedCap !== 0 ? `resets ${spendResets}` : void 0,
13708
13708
  value: readout,
13709
13709
  pct: savedCap != null && savedCap > 0 ? pct(spent, savedCap) : 0,
13710
13710
  testId: "addon-spend"
13711
13711
  }
13712
13712
  ),
13713
- addons.cap_reached && savedCap != null && savedCap > 0 && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", "data-testid": "addon-cap-reached", children: chunkV4SRR4GE_cjs.CAP_REACHED_MESSAGE }),
13713
+ addons.cap_reached && savedCap != null && savedCap > 0 && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", "data-testid": "addon-cap-reached", children: chunkORIOOXUU_cjs.CAP_REACHED_MESSAGE }),
13714
13714
  addons.manual_spent_pence > 0 && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs text-muted-foreground", "data-testid": "addon-manual-spend", children: [
13715
13715
  "Added by hand this month: ",
13716
13716
  gbp(addons.manual_spent_pence),
@@ -13731,7 +13731,7 @@ function UsageCapEditor({ project, addons }) {
13731
13731
  step: 25,
13732
13732
  className: "h-9 w-28",
13733
13733
  value: noCap ? "" : value,
13734
- placeholder: noCap ? "No limit" : String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100),
13734
+ placeholder: noCap ? "No limit" : String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100),
13735
13735
  disabled: noCap,
13736
13736
  onChange: (e) => setValue(e.target.value),
13737
13737
  onKeyDown: (e) => e.key === "Enter" && save(),
@@ -13757,7 +13757,7 @@ function UsageCapEditor({ project, addons }) {
13757
13757
  checked: noCap,
13758
13758
  onCheckedChange: (checked) => {
13759
13759
  setNoCap(checked);
13760
- if (!checked && value === "") setValue(String(chunkV4SRR4GE_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
13760
+ if (!checked && value === "") setValue(String(chunkORIOOXUU_cjs.DEFAULT_SPEND_CAP_PENCE / 100));
13761
13761
  },
13762
13762
  "data-testid": "no-cap-switch"
13763
13763
  }
@@ -13770,8 +13770,8 @@ function UsageCapEditor({ project, addons }) {
13770
13770
  function UsageInfo({ addons, isAnnual }) {
13771
13771
  const period = isAnnual ? "year" : "month";
13772
13772
  const legacy = (addons.legacy_ai_blocks ?? 0) > 0 || (addons.legacy_storage_blocks ?? 0) > 0;
13773
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.MoreInfo, { title: "Usage and top-ups", testId: "usage-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
13774
- chunkY5RCJQ3A_cjs.MoreInfoList,
13773
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.MoreInfo, { title: "Usage and top-ups", testId: "usage-more-info", children: /* @__PURE__ */ jsxRuntime.jsx(
13774
+ chunkQB7PNQDJ_cjs.MoreInfoList,
13775
13775
  {
13776
13776
  items: [
13777
13777
  {
@@ -13786,7 +13786,7 @@ function UsageInfo({ addons, isAnnual }) {
13786
13786
  term: "Automatic top-ups",
13787
13787
  text: "One step is added when AI usage drops below your auto top-up level, or when an upload needs more storage."
13788
13788
  },
13789
- { term: "Usage cap", text: chunkV4SRR4GE_cjs.USAGE_CAP_HELP },
13789
+ { term: "Usage cap", text: chunkORIOOXUU_cjs.USAGE_CAP_HELP },
13790
13790
  {
13791
13791
  term: "Reducing",
13792
13792
  text: "\u2212 removes one step from your next renewal. You keep this period's allowance. No refunds."
@@ -13797,7 +13797,7 @@ function UsageInfo({ addons, isAnnual }) {
13797
13797
  text: "Top-ups bought on an earlier price keep their size and price until removed; they are removed last."
13798
13798
  }
13799
13799
  ] : [],
13800
- ...isAnnual ? [{ term: "Annual", text: `${chunkV4SRR4GE_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : [],
13800
+ ...isAnnual ? [{ term: "Annual", text: `${chunkORIOOXUU_cjs.ANNUAL_PREMIUM_AI_NOTE}.` }] : [],
13801
13801
  {
13802
13802
  term: "Prices",
13803
13803
  text: "Shown ex VAT. The confirm step shows the total with VAT before you pay."
@@ -13889,7 +13889,7 @@ function formatShortDate2(unix) {
13889
13889
  if (!unix) return null;
13890
13890
  return new Date(unix * 1e3).toLocaleDateString("en-GB", { day: "numeric", month: "short" });
13891
13891
  }
13892
- var gbp2 = (pence) => chunkV4SRR4GE_cjs.formatMoney(pence, "gbp");
13892
+ var gbp2 = (pence) => chunkORIOOXUU_cjs.formatMoney(pence, "gbp");
13893
13893
  var gbNum = (n) => `${Math.round(n * 10) / 10}`;
13894
13894
  var pct2 = (used, limit) => limit > 0 ? Math.min(100, used / limit * 100) : 0;
13895
13895
  function Meter({
@@ -13907,15 +13907,15 @@ function Meter({
13907
13907
  ] });
13908
13908
  }
13909
13909
  function usePlanPrice(project) {
13910
- const { data: products } = react.useProducts({ enabled: chunkV4SRR4GE_cjs.isProProject(project) });
13911
- if (!chunkV4SRR4GE_cjs.isProProject(project)) return null;
13910
+ const { data: products } = react.useProducts({ enabled: chunkORIOOXUU_cjs.isProProject(project) });
13911
+ if (!chunkORIOOXUU_cjs.isProProject(project)) return null;
13912
13912
  const isAnnual = project.plan_interval === "year";
13913
13913
  if (project.amount != null) {
13914
13914
  return { incl: project.amount, ex: project.amount_ex_vat ?? null, isAnnual };
13915
13915
  }
13916
- if ((project.packs ?? chunkV4SRR4GE_cjs.PRO_PACKS) > chunkV4SRR4GE_cjs.PRO_PACKS) return null;
13917
- const prices = chunkV4SRR4GE_cjs.findProPrices(products);
13918
- const pp = chunkV4SRR4GE_cjs.packPrice(isAnnual ? prices.annual : prices.monthly);
13916
+ if ((project.packs ?? chunkORIOOXUU_cjs.PRO_PACKS) > chunkORIOOXUU_cjs.PRO_PACKS) return null;
13917
+ const prices = chunkORIOOXUU_cjs.findProPrices(products);
13918
+ const pp = chunkORIOOXUU_cjs.packPrice(isAnnual ? prices.annual : prices.monthly);
13919
13919
  return pp ? { incl: pp.amount, ex: pp.amount_ex_vat, isAnnual } : null;
13920
13920
  }
13921
13921
  function paidLine(payment, addons) {
@@ -13928,11 +13928,11 @@ function ProjectPlanCard({
13928
13928
  onChangePlan
13929
13929
  }) {
13930
13930
  const { quotas, addons } = project;
13931
- const isPro = chunkV4SRR4GE_cjs.isProProject(project);
13931
+ const isPro = chunkORIOOXUU_cjs.isProProject(project);
13932
13932
  const used = quotas?.ai_usage?.used ?? 0;
13933
13933
  const limit = quotas?.ai_usage?.limit ?? 0;
13934
- const resetDate = formatShortDate2(chunkV4SRR4GE_cjs.aiUsageResetTimestamp(project));
13935
- const periodEnd = chunkV4SRR4GE_cjs.formatPeriodEnd(addons?.period_end ?? project.current_period_end);
13934
+ const resetDate = formatShortDate2(chunkORIOOXUU_cjs.aiUsageResetTimestamp(project));
13935
+ const periodEnd = chunkORIOOXUU_cjs.formatPeriodEnd(addons?.period_end ?? project.current_period_end);
13936
13936
  const when2 = periodEnd ?? "the end of the period";
13937
13937
  const storageUsed = quotas?.storage_gb?.used ?? 0;
13938
13938
  const storageLimit = quotas?.storage_gb?.limit ?? 0;
@@ -13948,7 +13948,7 @@ function ProjectPlanCard({
13948
13948
  project.external_id,
13949
13949
  hasScheduledChange && addons ? { packs: packsNext ?? addons.packs, interval: pending ?? currentInterval } : null
13950
13950
  ).data;
13951
- const tier = isPro ? chunkV4SRR4GE_cjs.proTierName(project) : project.subscription === "dev" ? "Dev" : "Free";
13951
+ const tier = isPro ? chunkORIOOXUU_cjs.proTierName(project) : project.subscription === "dev" ? "Dev" : "Free";
13952
13952
  const pendingPayment = addons?.payment?.status === "pending" ? addons.payment : null;
13953
13953
  const confirmUrl = pendingPayment?.confirm_url ?? addons?.confirm_url;
13954
13954
  const paidPayment = addons?.payment?.status === "paid" ? addons.payment : null;
@@ -13982,7 +13982,7 @@ function ProjectPlanCard({
13982
13982
  isPro && " ",
13983
13983
  isPro && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1 text-sm font-normal text-muted-foreground", children: currentInterval === "year" ? "Annual" : "Monthly" })
13984
13984
  ] }),
13985
- 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 ${chunkV4SRR4GE_cjs.totalWithTaxWord({
13985
+ 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 ${chunkORIOOXUU_cjs.totalWithTaxWord({
13986
13986
  subtotal: nextBill.next_renewal_ex_vat_pence,
13987
13987
  tax: nextBill.next_renewal_tax_pence,
13988
13988
  total: nextBill.next_renewal_pence,
@@ -13991,7 +13991,7 @@ function ProjectPlanCard({
13991
13991
  ] }),
13992
13992
  price && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-auto text-right", "data-testid": "project-plan-price", children: [
13993
13993
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-lg font-semibold tabular-nums text-foreground", children: [
13994
- price.ex != null ? chunkV4SRR4GE_cjs.plusVat(price.ex) : gbp2(price.incl),
13994
+ price.ex != null ? chunkORIOOXUU_cjs.plusVat(price.ex) : gbp2(price.incl),
13995
13995
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-normal text-muted-foreground", children: price.isAnnual ? "/year" : "/month" })
13996
13996
  ] }),
13997
13997
  price.ex != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-xs text-muted-foreground", children: [
@@ -14029,7 +14029,7 @@ function ProjectPlanCard({
14029
14029
  undoTestId: "undo-plan-change-button",
14030
14030
  children: [
14031
14031
  "Changes to ",
14032
- chunkV4SRR4GE_cjs.planNameForPacks(packsNext),
14032
+ chunkORIOOXUU_cjs.planNameForPacks(packsNext),
14033
14033
  " on ",
14034
14034
  when2,
14035
14035
  "."
@@ -14074,8 +14074,8 @@ function ProjectPlanCard({
14074
14074
  }
14075
14075
  )
14076
14076
  ] }),
14077
- addons?.billing_error && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { tone: "error", testId: "plan-billing-error", children: addons.billing_error }),
14078
- confirmUrl ? /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PlanNotice, { testId: "plan-payment-state", children: [
14077
+ addons?.billing_error && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { tone: "error", testId: "plan-billing-error", children: addons.billing_error }),
14078
+ confirmUrl ? /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PlanNotice, { testId: "plan-payment-state", children: [
14079
14079
  "Waiting for your bank",
14080
14080
  pendingPayment?.amount_pence ? ` \xB7 ${gbp2(pendingPayment.amount_pence)}` : "",
14081
14081
  " \xB7",
@@ -14093,7 +14093,7 @@ function ProjectPlanCard({
14093
14093
  ]
14094
14094
  }
14095
14095
  )
14096
- ] }) : paidPayment && addons && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanNotice, { testId: "plan-payment-state", children: paidLine(paidPayment, addons) }),
14096
+ ] }) : paidPayment && addons && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanNotice, { testId: "plan-payment-state", children: paidLine(paidPayment, addons) }),
14097
14097
  isPro && /* @__PURE__ */ jsxRuntime.jsxs(
14098
14098
  "button",
14099
14099
  {
@@ -14120,7 +14120,7 @@ function ProjectBilling({
14120
14120
  const { addons } = project;
14121
14121
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", "data-testid": "project-billing", children: [
14122
14122
  /* @__PURE__ */ jsxRuntime.jsx(ProjectPlanCard, { project, onChangePlan }),
14123
- addons && chunkV4SRR4GE_cjs.isProProject(project) && /* @__PURE__ */ jsxRuntime.jsx(ProjectUsageCard, { project, addons })
14123
+ addons && chunkORIOOXUU_cjs.isProProject(project) && /* @__PURE__ */ jsxRuntime.jsx(ProjectUsageCard, { project, addons })
14124
14124
  ] });
14125
14125
  }
14126
14126
  var BREAKDOWN_LABELS = {
@@ -14251,13 +14251,13 @@ function ProjectUsageContent({
14251
14251
  };
14252
14252
  const quotaPct = effectiveUsage && aiUsageLimit ? Math.round(effectiveUsage.total_spend / aiUsageLimit * 100) : 0;
14253
14253
  return /* @__PURE__ */ jsxRuntime.jsx(
14254
- chunkY5RCJQ3A_cjs.UsagePanel,
14254
+ chunkQB7PNQDJ_cjs.UsagePanel,
14255
14255
  {
14256
14256
  state,
14257
14257
  dateRange,
14258
14258
  emptyMessage: `No usage ${period === "current" ? "yet this month" : "last month"}.`,
14259
14259
  period: /* @__PURE__ */ jsxRuntime.jsx(
14260
- chunkY5RCJQ3A_cjs.UsageToggle,
14260
+ chunkQB7PNQDJ_cjs.UsageToggle,
14261
14261
  {
14262
14262
  ariaLabel: "Period",
14263
14263
  value: period,
@@ -14270,7 +14270,7 @@ function ProjectUsageContent({
14270
14270
  ),
14271
14271
  actions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14272
14272
  effectiveUsage?.invoice_pdf && /* @__PURE__ */ jsxRuntime.jsx(
14273
- chunkY5RCJQ3A_cjs.UsageActionButton,
14273
+ chunkQB7PNQDJ_cjs.UsageActionButton,
14274
14274
  {
14275
14275
  label: "Download Stripe invoice PDF",
14276
14276
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Download, { className: "size-3.5" }),
@@ -14278,7 +14278,7 @@ function ProjectUsageContent({
14278
14278
  }
14279
14279
  ),
14280
14280
  /* @__PURE__ */ jsxRuntime.jsx(
14281
- chunkY5RCJQ3A_cjs.UsageActionButton,
14281
+ chunkQB7PNQDJ_cjs.UsageActionButton,
14282
14282
  {
14283
14283
  label: "Print usage summary",
14284
14284
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Printer, { className: "size-3.5" }),
@@ -14288,7 +14288,7 @@ function ProjectUsageContent({
14288
14288
  ] }),
14289
14289
  children: effectiveUsage && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14290
14290
  /* @__PURE__ */ jsxRuntime.jsx(
14291
- chunkY5RCJQ3A_cjs.UsageSummary,
14291
+ chunkQB7PNQDJ_cjs.UsageSummary,
14292
14292
  {
14293
14293
  stats: [
14294
14294
  {
@@ -14296,7 +14296,7 @@ function ProjectUsageContent({
14296
14296
  value: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: react.formatGbp(effectiveUsage.total_spend) }),
14297
14297
  label: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14298
14298
  "AI usage",
14299
- quotaPct > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.UsageQuotaHint, { children: [
14299
+ quotaPct > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.UsageQuotaHint, { children: [
14300
14300
  "(",
14301
14301
  quotaPct,
14302
14302
  "% of quota)"
@@ -14317,7 +14317,7 @@ function ProjectUsageContent({
14317
14317
  }
14318
14318
  ),
14319
14319
  /* @__PURE__ */ jsxRuntime.jsx(
14320
- chunkY5RCJQ3A_cjs.UsageToggle,
14320
+ chunkQB7PNQDJ_cjs.UsageToggle,
14321
14321
  {
14322
14322
  ariaLabel: "Breakdown by",
14323
14323
  size: "fill",
@@ -14330,12 +14330,12 @@ function ProjectUsageContent({
14330
14330
  }
14331
14331
  ),
14332
14332
  /* @__PURE__ */ jsxRuntime.jsx(
14333
- chunkY5RCJQ3A_cjs.UsageSection,
14333
+ chunkQB7PNQDJ_cjs.UsageSection,
14334
14334
  {
14335
- footer: /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.UsageLegend, { series }),
14335
+ footer: /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.UsageLegend, { series }),
14336
14336
  title: `Daily AI usage${breakdown === "model" ? ` by ${BREAKDOWN_LABELS[breakdown]}` : ""}`,
14337
14337
  children: /* @__PURE__ */ jsxRuntime.jsx(
14338
- chunkY5RCJQ3A_cjs.UsageLineChart,
14338
+ chunkQB7PNQDJ_cjs.UsageLineChart,
14339
14339
  {
14340
14340
  dates,
14341
14341
  series,
@@ -14346,12 +14346,12 @@ function ProjectUsageContent({
14346
14346
  }
14347
14347
  ),
14348
14348
  /* @__PURE__ */ jsxRuntime.jsx(
14349
- chunkY5RCJQ3A_cjs.UsageSection,
14349
+ chunkQB7PNQDJ_cjs.UsageSection,
14350
14350
  {
14351
14351
  title: "Breakdown",
14352
14352
  gap: "md",
14353
14353
  action: /* @__PURE__ */ jsxRuntime.jsx(
14354
- chunkY5RCJQ3A_cjs.UsageToggle,
14354
+ chunkQB7PNQDJ_cjs.UsageToggle,
14355
14355
  {
14356
14356
  ariaLabel: "Breakdown metric",
14357
14357
  value: metric,
@@ -14363,7 +14363,7 @@ function ProjectUsageContent({
14363
14363
  }
14364
14364
  ),
14365
14365
  children: /* @__PURE__ */ jsxRuntime.jsx(
14366
- chunkY5RCJQ3A_cjs.UsageProportionBar,
14366
+ chunkQB7PNQDJ_cjs.UsageProportionBar,
14367
14367
  {
14368
14368
  metric,
14369
14369
  items: breakdownItems.map((item) => ({
@@ -14381,13 +14381,13 @@ function ProjectUsageContent({
14381
14381
  );
14382
14382
  }
14383
14383
  function ProjectDetail({ projectExtId, storage }) {
14384
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
14384
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
14385
14385
  const [planOpen, setPlanOpen] = react$1.useState(false);
14386
14386
  const [renameOpen, setRenameOpen] = react$1.useState(false);
14387
14387
  const [renameValue, setRenameValue] = react$1.useState("");
14388
14388
  const updateProject = react.useUpdateProjectFields();
14389
14389
  const { data: projects, isLoading } = react.useProjects();
14390
- const currentUserExtId = chunkV4SRR4GE_cjs.useSelfExtId();
14390
+ const currentUserExtId = chunkORIOOXUU_cjs.useSelfExtId();
14391
14391
  const project = projects?.find((p) => p.external_id === projectExtId);
14392
14392
  const handleSaveRename = react$1.useCallback(() => {
14393
14393
  const trimmed = renameValue.trim();
@@ -14425,7 +14425,7 @@ function ProjectDetail({ projectExtId, storage }) {
14425
14425
  }
14426
14426
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-6 space-y-6 max-w-4xl", "data-testid": `project-detail-${project.external_id}`, children: [
14427
14427
  /* @__PURE__ */ jsxRuntime.jsx(
14428
- chunkY5RCJQ3A_cjs.ProjectDetailHeader,
14428
+ chunkQB7PNQDJ_cjs.ProjectDetailHeader,
14429
14429
  {
14430
14430
  icon: /* @__PURE__ */ jsxRuntime.jsx(ui.EntityIcon, { entityType: "PROJECT" }),
14431
14431
  name: project.name,
@@ -14433,11 +14433,11 @@ function ProjectDetail({ projectExtId, storage }) {
14433
14433
  setRenameValue(project.name);
14434
14434
  setRenameOpen(true);
14435
14435
  },
14436
- badge: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanBadge, { ...chunkV4SRR4GE_cjs.planBadgeView(project), size: "md" }) : void 0
14436
+ badge: stripeEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanBadge, { ...chunkORIOOXUU_cjs.planBadgeView(project), size: "md" }) : void 0
14437
14437
  }
14438
14438
  ),
14439
14439
  hasBilling && /* @__PURE__ */ jsxRuntime.jsx(ProjectBilling, { project, onChangePlan: () => setPlanOpen(true) }),
14440
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.ProjectDetailSection, { title: hasBilling ? "Collaborator limits" : "Plan limits", children: [
14440
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.ProjectDetailSection, { title: hasBilling ? "Collaborator limits" : "Plan limits", children: [
14441
14441
  !hasBilling && /* @__PURE__ */ jsxRuntime.jsx(SubscriptionStatus, { project }),
14442
14442
  /* @__PURE__ */ jsxRuntime.jsxs(
14443
14443
  "div",
@@ -14453,7 +14453,7 @@ function ProjectDetail({ projectExtId, storage }) {
14453
14453
  }
14454
14454
  )
14455
14455
  ] }),
14456
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.ProjectDetailSection, { title: "Usage", children: /* @__PURE__ */ jsxRuntime.jsx(
14456
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.ProjectDetailSection, { title: "Usage", children: /* @__PURE__ */ jsxRuntime.jsx(
14457
14457
  ProjectUsageContent,
14458
14458
  {
14459
14459
  projectExtId: project.external_id,
@@ -14463,7 +14463,7 @@ function ProjectDetail({ projectExtId, storage }) {
14463
14463
  ) }),
14464
14464
  storage,
14465
14465
  /* @__PURE__ */ jsxRuntime.jsx(
14466
- chunkY5RCJQ3A_cjs.RenameDialog,
14466
+ chunkQB7PNQDJ_cjs.RenameDialog,
14467
14467
  {
14468
14468
  open: renameOpen,
14469
14469
  onClose: () => setRenameOpen(false),
@@ -14480,7 +14480,7 @@ function ProjectDetail({ projectExtId, storage }) {
14480
14480
  function useAutoRefreshPendingProjects() {
14481
14481
  const { data: projects } = react.useProjects();
14482
14482
  const refreshProject = react.useRefreshProject();
14483
- const currentUserExtId = chunkV4SRR4GE_cjs.useSelfExtId();
14483
+ const currentUserExtId = chunkORIOOXUU_cjs.useSelfExtId();
14484
14484
  const refreshedRef = react$1.useRef(/* @__PURE__ */ new Set());
14485
14485
  react$1.useEffect(() => {
14486
14486
  if (!projects || !currentUserExtId) return;
@@ -14511,7 +14511,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
14511
14511
  if (quotaProjectId) void refetchProjects();
14512
14512
  }, [quotaProjectId, refetchProjects]);
14513
14513
  const project = info?.projectExtId ? projects?.find((p) => p.external_id === info.projectExtId) : void 0;
14514
- const addons = project && chunkV4SRR4GE_cjs.isProProject(project) ? project.addons : null;
14514
+ const addons = project && chunkORIOOXUU_cjs.isProProject(project) ? project.addons : null;
14515
14515
  const handleUpgrade = () => {
14516
14516
  if (info?.projectExtId) {
14517
14517
  requestProjectBillingFocus({ projectExtId: info.projectExtId, openUpgrade: true });
@@ -14547,8 +14547,8 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
14547
14547
  /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {})
14548
14548
  );
14549
14549
  } else if (addons) {
14550
- const price = `${chunkV4SRR4GE_cjs.formatMoney(addons.ai_block_price_ex_vat_pence, "gbp")} + VAT`;
14551
- const capZero = chunkV4SRR4GE_cjs.isAddonBudgetZero(addons);
14550
+ const price = `${chunkORIOOXUU_cjs.formatMoney(addons.ai_block_price_ex_vat_pence, "gbp")} + VAT`;
14551
+ const capZero = chunkORIOOXUU_cjs.isAddonBudgetZero(addons);
14552
14552
  const addAiUsage = /* @__PURE__ */ jsxRuntime.jsxs(ui.Button, { onClick: handleAddAiUsage, "data-testid": "quota-add-ai-usage-button", children: [
14553
14553
  "Add ",
14554
14554
  react.formatGbp(addons.block_ai_gbp),
@@ -14556,7 +14556,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
14556
14556
  price
14557
14557
  ] });
14558
14558
  if (capZero || addons.cap_reached) {
14559
- message = capZero ? chunkV4SRR4GE_cjs.ZERO_BUDGET_MESSAGE : chunkV4SRR4GE_cjs.CAP_REACHED_MESSAGE;
14559
+ message = capZero ? chunkORIOOXUU_cjs.ZERO_BUDGET_MESSAGE : chunkORIOOXUU_cjs.CAP_REACHED_MESSAGE;
14560
14560
  actions = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14561
14561
  addAiUsage,
14562
14562
  /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { variant: "outline", onClick: handleRaiseCap, "data-testid": "quota-raise-cap-button", children: capZero ? "Set cap" : "Raise cap" })
@@ -14569,7 +14569,7 @@ function ConnectedQuotaDialog({ info, onClose: close }) {
14569
14569
  const addAiUsageProject = addAiUsageFor ? projects?.find((p) => p.external_id === addAiUsageFor) : void 0;
14570
14570
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14571
14571
  /* @__PURE__ */ jsxRuntime.jsx(
14572
- chunkY5RCJQ3A_cjs.QuotaExceededDialogView,
14572
+ chunkQB7PNQDJ_cjs.QuotaExceededDialogView,
14573
14573
  {
14574
14574
  open,
14575
14575
  onClose: close,
@@ -14743,7 +14743,7 @@ function ConnectedWelcomeDialog({
14743
14743
  }) {
14744
14744
  const currentUser = react.useArbiSession().user;
14745
14745
  const { data: projects } = react.useProjects();
14746
- const balance = chunkV4SRR4GE_cjs.useRewardBalance();
14746
+ const balance = chunkORIOOXUU_cjs.useRewardBalance();
14747
14747
  const [showPlans, setShowPlans] = react$1.useState(false);
14748
14748
  const [showInvite, setShowInvite] = react$1.useState(false);
14749
14749
  const [selectedProjectId, setSelectedProjectId] = react$1.useState(null);
@@ -14764,21 +14764,21 @@ function ConnectedWelcomeDialog({
14764
14764
  return /* @__PURE__ */ jsxRuntime.jsx(ChangePlanDialog, { project: selectedProject, open, onOpenChange: handleOpenChange });
14765
14765
  }
14766
14766
  if (showInvite) {
14767
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.InviteContactsDialog, { open, onClose: () => handleOpenChange(false), children: /* @__PURE__ */ jsxRuntime.jsx(
14767
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.InviteContactsDialog, { open, onClose: () => handleOpenChange(false), children: /* @__PURE__ */ jsxRuntime.jsx(
14768
14768
  ConnectedAddContacts,
14769
14769
  {
14770
14770
  onClose: () => handleOpenChange(false),
14771
- rewardAmount: chunkV4SRR4GE_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
14771
+ rewardAmount: chunkORIOOXUU_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)
14772
14772
  }
14773
14773
  ) });
14774
14774
  }
14775
14775
  const firstName = currentUser?.given_name;
14776
14776
  const hasBalance = balance !== null;
14777
- const quotaItems = chunkV4SRR4GE_cjs.getQuotaItems(selectedProject.quotas);
14778
- const resetTs = chunkV4SRR4GE_cjs.aiUsageResetTimestamp(selectedProject);
14779
- const aiUsageHint = resetTs ? `resets ${chunkV4SRR4GE_cjs.formatResetDate(resetTs)}` : void 0;
14777
+ const quotaItems = chunkORIOOXUU_cjs.getQuotaItems(selectedProject.quotas);
14778
+ const resetTs = chunkORIOOXUU_cjs.aiUsageResetTimestamp(selectedProject);
14779
+ const aiUsageHint = resetTs ? `resets ${chunkORIOOXUU_cjs.formatResetDate(resetTs)}` : void 0;
14780
14780
  return /* @__PURE__ */ jsxRuntime.jsx(
14781
- chunkY5RCJQ3A_cjs.WelcomeDialog,
14781
+ chunkQB7PNQDJ_cjs.WelcomeDialog,
14782
14782
  {
14783
14783
  open,
14784
14784
  onClose: () => handleOpenChange(false),
@@ -14793,7 +14793,7 @@ function ConnectedWelcomeDialog({
14793
14793
  onChange: setSelectedProjectId
14794
14794
  }
14795
14795
  ),
14796
- planBadge: /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PlanBadge, { ...chunkV4SRR4GE_cjs.planBadgeView(selectedProject), size: "md" }),
14796
+ planBadge: /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PlanBadge, { ...chunkORIOOXUU_cjs.planBadgeView(selectedProject), size: "md" }),
14797
14797
  quotas: quotaItems.map((q) => ({
14798
14798
  key: q.key,
14799
14799
  icon: q.icon,
@@ -14803,9 +14803,9 @@ function ConnectedWelcomeDialog({
14803
14803
  hint: q.key === "ai-usage" ? aiUsageHint : void 0
14804
14804
  })),
14805
14805
  onSeePlans: () => setShowPlans(true),
14806
- referralOfferLabel: `${chunkV4SRR4GE_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)} off your plan`,
14806
+ referralOfferLabel: `${chunkORIOOXUU_cjs.formatMoney(REFERRAL_OFFER.amount, REFERRAL_OFFER.currency)} off your plan`,
14807
14807
  onInvite: () => setShowInvite(true),
14808
- rewardBalanceLabel: hasBalance ? chunkV4SRR4GE_cjs.formatMoney(balance.amount, balance.currency) : void 0
14808
+ rewardBalanceLabel: hasBalance ? chunkORIOOXUU_cjs.formatMoney(balance.amount, balance.currency) : void 0
14809
14809
  }
14810
14810
  );
14811
14811
  }
@@ -14842,14 +14842,14 @@ function WorkspaceCardsView({
14842
14842
  createDisabledReason,
14843
14843
  workspaceState
14844
14844
  }) {
14845
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
14845
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
14846
14846
  const { hrefFor } = chunk25AIWOR6_cjs.useBlocksEnvironment();
14847
14847
  const workspaceLabel = ui.getEntityLabel("WORKSPACE");
14848
14848
  const projectLabel = ui.getEntityLabel("PROJECT").toLowerCase();
14849
14849
  const { groups, projects, selfId } = list;
14850
14850
  if (groups.length === 0) {
14851
14851
  return /* @__PURE__ */ jsxRuntime.jsx(chunkFKFGRGKF_cjs.WorkspaceList, { testId: "workspace-cards-list", className: "gap-0", children: /* @__PURE__ */ jsxRuntime.jsx(
14852
- chunkLYUS5I7M_cjs.CreateTile,
14852
+ chunkZK56K25Q_cjs.CreateTile,
14853
14853
  {
14854
14854
  label: `New ${workspaceLabel.toLowerCase()}`,
14855
14855
  ariaLabel: `Create ${workspaceLabel}`,
@@ -14862,7 +14862,7 @@ function WorkspaceCardsView({
14862
14862
  }
14863
14863
  return /* @__PURE__ */ jsxRuntime.jsx(chunkFKFGRGKF_cjs.WorkspaceList, { testId: "workspace-cards-list", children: groups.map((group) => {
14864
14864
  const project = projects.find((p) => p.external_id === group.projectExtId);
14865
- const { breakdown, readout } = chunkV4SRR4GE_cjs.projectGroupBilling(project, {
14865
+ const { breakdown, readout } = chunkORIOOXUU_cjs.projectGroupBilling(project, {
14866
14866
  isOwned: group.isOwned,
14867
14867
  stripeEnabled
14868
14868
  });
@@ -14894,7 +14894,7 @@ function WorkspaceCardsView({
14894
14894
  onToggle: () => list.toggleGroup(group.key),
14895
14895
  children: [
14896
14896
  group.isOwned && group.projectExtId && /* @__PURE__ */ jsxRuntime.jsx(
14897
- chunkLYUS5I7M_cjs.CreateTile,
14897
+ chunkZK56K25Q_cjs.CreateTile,
14898
14898
  {
14899
14899
  label: `New ${workspaceLabel.toLowerCase()}`,
14900
14900
  ariaLabel: `Create ${workspaceLabel}`,
@@ -14922,7 +14922,7 @@ function WorkspaceCardsView({
14922
14922
  ui.ShieldIcon,
14923
14923
  {
14924
14924
  char: workspace.name.charAt(0),
14925
- workspaceColor: chunk3STESMKX_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
14925
+ workspaceColor: chunkWV6RHIFP_cjs.workspaceKindColor(react.getWorkspaceKind(workspace)),
14926
14926
  size: 28,
14927
14927
  isSelected: true
14928
14928
  }
@@ -15025,7 +15025,7 @@ function useConnectedWorkspaceList({
15025
15025
  [selfId, pinned]
15026
15026
  );
15027
15027
  const filtered = react$1.useMemo(
15028
- () => chunkY5RCJQ3A_cjs.applyTriStateFilters(workspaces, filterMap, attributesOf),
15028
+ () => chunkQB7PNQDJ_cjs.applyTriStateFilters(workspaces, filterMap, attributesOf),
15029
15029
  [workspaces, filterMap, attributesOf]
15030
15030
  );
15031
15031
  const groups = react$1.useMemo(
@@ -15091,7 +15091,7 @@ function useConnectedWorkspaceList({
15091
15091
  };
15092
15092
  }
15093
15093
  var WorkspaceTableView = react$1.lazy(
15094
- () => import('../WorkspaceTableView-XDKMONPI.cjs').then((m) => ({ default: m.WorkspaceTableView }))
15094
+ () => import('../WorkspaceTableView-III5TFER.cjs').then((m) => ({ default: m.WorkspaceTableView }))
15095
15095
  );
15096
15096
  var WORKSPACES_TAB_ID = "workspaces";
15097
15097
  var defaultRenderMember2 = (user, size) => {
@@ -15144,10 +15144,10 @@ function ConnectedWorkspaceList({
15144
15144
  else void openWorkspace(workspace.external_id, { name: workspace.name });
15145
15145
  };
15146
15146
  const createDisabledReason = list.canCreateProjects === false ? react.PROJECT_CREATION_DENIED_REASON : void 0;
15147
- if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, { message: "Loading workspaces..." });
15147
+ if (list.isLoading) return /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, { message: "Loading workspaces..." });
15148
15148
  if (list.error) {
15149
15149
  return /* @__PURE__ */ jsxRuntime.jsx(
15150
- chunkLYUS5I7M_cjs.HomeLoadError,
15150
+ chunkZK56K25Q_cjs.HomeLoadError,
15151
15151
  {
15152
15152
  title: "Unable to load workspaces",
15153
15153
  body: "Failed to connect to the server. Please check your connection and try again."
@@ -15167,7 +15167,7 @@ function ConnectedWorkspaceList({
15167
15167
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "mr-0.5 size-4" }),
15168
15168
  "New"
15169
15169
  ] });
15170
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkLYUS5I7M_cjs.HomeFrame, { children: [
15170
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZK56K25Q_cjs.HomeFrame, { children: [
15171
15171
  /* @__PURE__ */ jsxRuntime.jsx(
15172
15172
  chunkSJSGSHIT_cjs.TabHeader,
15173
15173
  {
@@ -15203,9 +15203,9 @@ function ConnectedWorkspaceList({
15203
15203
  ),
15204
15204
  showList && // Above whichever view shows: both draw the same filtered groups.
15205
15205
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mx-auto w-full max-w-6xl px-4 pb-3 sm:px-8", children: /* @__PURE__ */ jsxRuntime.jsx(WorkspaceFilterMenu, { list }) }),
15206
- /* @__PURE__ */ jsxRuntime.jsx(chunkLYUS5I7M_cjs.HomeMain, { children: !showList ? children : shownView === "cards" ? (
15206
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZK56K25Q_cjs.HomeMain, { children: !showList ? children : shownView === "cards" ? (
15207
15207
  // Full-width scroller (its scrollbar rides the window edge) around a centred column.
15208
- /* @__PURE__ */ jsxRuntime.jsx(chunkLYUS5I7M_cjs.HomeCenteredScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
15208
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZK56K25Q_cjs.HomeCenteredScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
15209
15209
  WorkspaceCardsView,
15210
15210
  {
15211
15211
  list,
@@ -15217,7 +15217,7 @@ function ConnectedWorkspaceList({
15217
15217
  workspaceState
15218
15218
  }
15219
15219
  ) })
15220
- ) : /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkLYUS5I7M_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
15220
+ ) : /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, { message: "Loading grid..." }), children: /* @__PURE__ */ jsxRuntime.jsx(chunkZK56K25Q_cjs.HomeCenteredColumn, { children: /* @__PURE__ */ jsxRuntime.jsx(
15221
15221
  WorkspaceTableView,
15222
15222
  {
15223
15223
  list,
@@ -15262,7 +15262,7 @@ function ConnectedProjectsPanel({
15262
15262
  const { data: projects } = react.useProjects();
15263
15263
  const canCreateProjects = react.useCanCreateProjects();
15264
15264
  const { userId } = chunkXCZYMSDV_cjs.useConnectedWorkspace();
15265
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
15265
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
15266
15266
  const billingPortal = useOpenBillingPortal();
15267
15267
  const [newProjectOpen, setNewProjectOpen] = react$1.useState(false);
15268
15268
  useAutoRefreshPendingProjects();
@@ -15289,15 +15289,15 @@ function ConnectedProjectsPanel({
15289
15289
  [ownedCount, tabs, projects]
15290
15290
  );
15291
15291
  const paidProject = projects?.find(isPaid);
15292
- const panel = /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PanelFrame, { className, testId: "projects-panel", children: [
15293
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
15292
+ const panel = /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PanelFrame, { className, testId: "projects-panel", children: [
15293
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
15294
15294
  chunkSJSGSHIT_cjs.TabHeader,
15295
15295
  {
15296
15296
  tabs: headerTabs,
15297
15297
  activeTabId: activeProjectId ?? PROJECTS_BASE_TAB_ID,
15298
15298
  onTabChange: (id) => tabs.onSelect(id === PROJECTS_BASE_TAB_ID ? null : id),
15299
15299
  afterTabs: (isCompact) => /* @__PURE__ */ jsxRuntime.jsx(
15300
- chunkY5RCJQ3A_cjs.PanelAddButton,
15300
+ chunkQB7PNQDJ_cjs.PanelAddButton,
15301
15301
  {
15302
15302
  label: `New ${ui.entityNoun("PROJECT")}`,
15303
15303
  onClick: () => setNewProjectOpen(true),
@@ -15312,15 +15312,15 @@ function ConnectedProjectsPanel({
15312
15312
  compactBreakpoint: 360
15313
15313
  }
15314
15314
  ) }),
15315
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelFrameBody, { children: activeProjectId ? /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
15315
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelFrameBody, { children: activeProjectId ? /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelScroll, { children: /* @__PURE__ */ jsxRuntime.jsx(
15316
15316
  ProjectDetail,
15317
15317
  {
15318
15318
  projectExtId: activeProjectId,
15319
15319
  storage: /* @__PURE__ */ jsxRuntime.jsx(ConnectedProjectStorage, { projectExtId: activeProjectId })
15320
15320
  }
15321
- ) }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PanelScroll, { variant: "padded", children: [
15321
+ ) }) : /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PanelScroll, { variant: "padded", children: [
15322
15322
  /* @__PURE__ */ jsxRuntime.jsx(ProjectsTable, {}),
15323
- stripeEnabled && paidProject && /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsxs(
15323
+ stripeEnabled && paidProject && /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelActionsRow, { children: /* @__PURE__ */ jsxRuntime.jsxs(
15324
15324
  ui.Button,
15325
15325
  {
15326
15326
  onClick: () => billingPortal.open(paidProject.external_id),
@@ -15407,7 +15407,7 @@ function ConnectedProjectsListPage({
15407
15407
  };
15408
15408
  const { openProject } = chunk25AIWOR6_cjs.useBlocksEnvironment();
15409
15409
  const [search, setSearch] = react$1.useState("");
15410
- const { projects, isLoading } = chunk6CJNGKZQ_cjs.useProjectSummaries();
15410
+ const { projects, isLoading } = chunk5V7JWZQ4_cjs.useProjectSummaries();
15411
15411
  const rows = react$1.useMemo(() => {
15412
15412
  const q = search.trim().toLowerCase();
15413
15413
  if (!q) return projects;
@@ -15478,7 +15478,7 @@ function ConnectedProjectsListPage({
15478
15478
  }
15479
15479
  ),
15480
15480
  /* @__PURE__ */ jsxRuntime.jsx(
15481
- chunkD4SDNNLX_cjs.Toolbar,
15481
+ chunkUFGC77KR_cjs.Toolbar,
15482
15482
  {
15483
15483
  search,
15484
15484
  onSearch: setSearch,
@@ -15540,7 +15540,7 @@ function ProjectDetailsForm({
15540
15540
  const labels = { ...DEFAULT_PROJECT_DETAILS_LABELS, ...given };
15541
15541
  const { notify: notify17 } = chunk25AIWOR6_cjs.useBlocksEnvironment();
15542
15542
  const update = react.useUpdateProjectFields();
15543
- const workspace = chunk6CJNGKZQ_cjs.primaryProjectWorkspace(project);
15543
+ const workspace = chunk5V7JWZQ4_cjs.primaryProjectWorkspace(project);
15544
15544
  const { data: members = [] } = react.useWorkspaceUsers(workspace?.id);
15545
15545
  const people = members.filter((m) => !m.user.external_id.startsWith("agt-"));
15546
15546
  const currency = project.budget?.currency ?? "GBP";
@@ -15665,7 +15665,7 @@ var COMPACT_BELOW = 132;
15665
15665
  var NO_DOCUMENTS = [];
15666
15666
  function useFilesWorkspace() {
15667
15667
  const { workspaceId, userId, live } = chunkXCZYMSDV_cjs.useConnectedWorkspace();
15668
- const { members, role } = chunkP7FHVWM7_cjs.useConnectedWorkspaceRole();
15668
+ const { members, role } = chunkUHP6AP6C_cjs.useConnectedWorkspaceRole();
15669
15669
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
15670
15670
  const workspaceName = workspaces?.find((w) => w.external_id === workspaceId)?.name;
15671
15671
  return {
@@ -16599,11 +16599,11 @@ function ConnectedProjectPage({
16599
16599
  figures: { ...DEFAULT_PROJECT_PAGE_LABELS.figures, ...given?.figures },
16600
16600
  threads: { ...DEFAULT_PROJECT_PAGE_LABELS.threads, ...given?.threads }
16601
16601
  };
16602
- const { project, usage, isLoading } = chunk6CJNGKZQ_cjs.useProjectSummary(projectId);
16602
+ const { project, usage, isLoading } = chunk5V7JWZQ4_cjs.useProjectSummary(projectId);
16603
16603
  const { workspaceId } = chunkXCZYMSDV_cjs.useConnectedWorkspace();
16604
16604
  const { notify: notify17 } = chunk25AIWOR6_cjs.useBlocksEnvironment();
16605
- const selectWorkspace = chunk45D5RS6T_cjs.useSelectWorkspace();
16606
- const workspace = project ? chunk6CJNGKZQ_cjs.primaryProjectWorkspace(project) : void 0;
16605
+ const selectWorkspace = chunkDL3XYTKI_cjs.useSelectWorkspace();
16606
+ const workspace = project ? chunk5V7JWZQ4_cjs.primaryProjectWorkspace(project) : void 0;
16607
16607
  const open = !!workspace && workspace.id === workspaceId;
16608
16608
  react$1.useEffect(() => {
16609
16609
  if (!workspace || workspace.id === workspaceId) return;
@@ -17498,7 +17498,7 @@ function recentConversations(conversations) {
17498
17498
  return [...conversations].sort((a, b) => time(b.updated_at) - time(a.updated_at)).slice(0, RECENT_ROWS).map((c) => ({
17499
17499
  id: c.external_id,
17500
17500
  title: c.title?.trim() || "Untitled thread",
17501
- subtitle: c.status ? [chunkOVZ54T5M_cjs.STATUS_LABELS[chunkOVZ54T5M_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"}`,
17501
+ subtitle: c.status ? [chunkLC7HFDCV_cjs.STATUS_LABELS[chunkLC7HFDCV_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"}`,
17502
17502
  time: timeAndDate(c.updated_at)
17503
17503
  }));
17504
17504
  }
@@ -17564,19 +17564,19 @@ function ConnectedWorkspaceDashboard({
17564
17564
  const { upcoming: upcoming2, recent: recent2 } = splitFacts(facts);
17565
17565
  const toRow = (row2) => ({
17566
17566
  ...row2,
17567
- leading: /* @__PURE__ */ jsxRuntime.jsx(chunkLYUS5I7M_cjs.FactMark, {}),
17567
+ leading: /* @__PURE__ */ jsxRuntime.jsx(chunkZK56K25Q_cjs.FactMark, {}),
17568
17568
  // The item, not the list: the Facts page scrolls to this fact.
17569
17569
  onSelect: () => actions.openFact(row2.id)
17570
17570
  });
17571
17571
  return { upcoming: upcoming2.map(toRow), recent: recent2.map(toRow) };
17572
17572
  }, [facts, actions]);
17573
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkLYUS5I7M_cjs.DashboardRoot, { testId, children: [
17574
- start && /* @__PURE__ */ jsxRuntime.jsx(chunkLYUS5I7M_cjs.DashboardBand, { kind: "start", children: start }),
17575
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLYUS5I7M_cjs.DashboardBand, { kind: "recent", children: [
17576
- /* @__PURE__ */ jsxRuntime.jsx(chunk5OVCVCVZ_cjs.SectionLabel, { testId: `${testId}-recent-caption`, children: "Recent" }),
17577
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLYUS5I7M_cjs.DashboardColumns, { children: [
17573
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZK56K25Q_cjs.DashboardRoot, { testId, children: [
17574
+ start && /* @__PURE__ */ jsxRuntime.jsx(chunkZK56K25Q_cjs.DashboardBand, { kind: "start", children: start }),
17575
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkZK56K25Q_cjs.DashboardBand, { kind: "recent", children: [
17576
+ /* @__PURE__ */ jsxRuntime.jsx(chunk5S2N6HSA_cjs.SectionLabel, { testId: `${testId}-recent-caption`, children: "Recent" }),
17577
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkZK56K25Q_cjs.DashboardColumns, { children: [
17578
17578
  /* @__PURE__ */ jsxRuntime.jsx(
17579
- chunkLYUS5I7M_cjs.RecentList,
17579
+ chunkZK56K25Q_cjs.RecentList,
17580
17580
  {
17581
17581
  testId: `${testId}-docs`,
17582
17582
  icon: lucideReact.FileText,
@@ -17595,7 +17595,7 @@ function ConnectedWorkspaceDashboard({
17595
17595
  }
17596
17596
  ),
17597
17597
  /* @__PURE__ */ jsxRuntime.jsx(
17598
- chunkLYUS5I7M_cjs.RecentList,
17598
+ chunkZK56K25Q_cjs.RecentList,
17599
17599
  {
17600
17600
  testId: `${testId}-chats`,
17601
17601
  icon: lucideReact.MessagesSquare,
@@ -17604,7 +17604,7 @@ function ConnectedWorkspaceDashboard({
17604
17604
  onOpen: () => actions.openSection("threads"),
17605
17605
  action: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1", children: [
17606
17606
  /* @__PURE__ */ jsxRuntime.jsx(
17607
- chunkLYUS5I7M_cjs.DashboardAction,
17607
+ chunkZK56K25Q_cjs.DashboardAction,
17608
17608
  {
17609
17609
  emphasis: "primary",
17610
17610
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-4" }),
@@ -17614,7 +17614,7 @@ function ConnectedWorkspaceDashboard({
17614
17614
  }
17615
17615
  ),
17616
17616
  /* @__PURE__ */ jsxRuntime.jsx(
17617
- chunkLYUS5I7M_cjs.DashboardAction,
17617
+ chunkZK56K25Q_cjs.DashboardAction,
17618
17618
  {
17619
17619
  emphasis: "quiet",
17620
17620
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-4" }),
@@ -17636,9 +17636,9 @@ function ConnectedWorkspaceDashboard({
17636
17636
  )
17637
17637
  ] })
17638
17638
  ] }),
17639
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLYUS5I7M_cjs.DashboardColumns, { children: [
17639
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkZK56K25Q_cjs.DashboardColumns, { children: [
17640
17640
  /* @__PURE__ */ jsxRuntime.jsx(
17641
- chunkLYUS5I7M_cjs.FactsStrip,
17641
+ chunkZK56K25Q_cjs.FactsStrip,
17642
17642
  {
17643
17643
  testId: `${testId}-facts`,
17644
17644
  icon: lucideReact.Milestone,
@@ -17646,7 +17646,7 @@ function ConnectedWorkspaceDashboard({
17646
17646
  count: facts.length,
17647
17647
  onOpen: () => actions.openSection("facts"),
17648
17648
  action: /* @__PURE__ */ jsxRuntime.jsx(
17649
- chunkLYUS5I7M_cjs.DashboardAction,
17649
+ chunkZK56K25Q_cjs.DashboardAction,
17650
17650
  {
17651
17651
  emphasis: "quiet",
17652
17652
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "size-4" }),
@@ -19933,7 +19933,7 @@ function ConnectedSecureMailClaimPage({
19933
19933
  }) {
19934
19934
  const authenticated = react.useArbiSession().status === "signed-in";
19935
19935
  const { openMail } = chunk25AIWOR6_cjs.useBlocksEnvironment();
19936
- const { loading } = chunk3VL64465_cjs.useAuthPages();
19936
+ const { loading } = chunkOAEJME5Q_cjs.useAuthPages();
19937
19937
  const claim = react.useClaimSecureMail();
19938
19938
  const [, setFirstLoginWorkspaces] = react.useTransientView(FIRST_LOGIN_WORKSPACES_VIEW, null);
19939
19939
  const [failure, setFailure] = react$1.useState(null);
@@ -19973,7 +19973,7 @@ function ConnectedSecureMailClaimPage({
19973
19973
  }
19974
19974
  })();
19975
19975
  }, [authenticated, claimId, key]);
19976
- if (!error) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: loading ?? /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, { variant: "splash" }) });
19976
+ if (!error) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: loading ?? /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, { variant: "splash" }) });
19977
19977
  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: [
19978
19978
  /* @__PURE__ */ jsxRuntime.jsx("p", { role: "alert", className: "mb-4 text-sm text-destructive", children: error }),
19979
19979
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -21364,7 +21364,7 @@ function EventEditorDialog({
21364
21364
  const { notify: notify17, runtimeConfig } = chunk25AIWOR6_cjs.useBlocksEnvironment();
21365
21365
  const attachmentDocuments = documents.map((document2) => ({
21366
21366
  doc_id: document2.external_id,
21367
- title: chunkP7FHVWM7_cjs.toWorkflowFieldDocument(document2).title,
21367
+ title: chunkUHP6AP6C_cjs.toWorkflowFieldDocument(document2).title,
21368
21368
  url: chunk725OETK3_cjs.buildDeepLinkUrl(
21369
21369
  { workspaceId: workspaceId ?? void 0, documentId: document2.external_id },
21370
21370
  runtimeConfig.deploymentDomain
@@ -25743,7 +25743,7 @@ function useDocumentFilters({
25743
25743
  [documentFilters]
25744
25744
  );
25745
25745
  const baseFilteredDocuments = react$1.useMemo(
25746
- () => chunkY5RCJQ3A_cjs.applyInvertedIndexFilter(documents, documentFilters, invertedIndex, getDocId),
25746
+ () => chunkQB7PNQDJ_cjs.applyInvertedIndexFilter(documents, documentFilters, invertedIndex, getDocId),
25747
25747
  [documents, documentFilters, invertedIndex]
25748
25748
  );
25749
25749
  const filteredDocuments = react$1.useMemo(() => {
@@ -26321,7 +26321,7 @@ function useBatchCompleteToasts() {
26321
26321
  }
26322
26322
  }, AI_FIELDS_NOTICE_WINDOW_MS);
26323
26323
  } else if (message.batch_type === "entity_extract") {
26324
- say(`${chunkD4SDNNLX_cjs.entitiesPhrase()} extracted from ${chunkD4SDNNLX_cjs.documentCount(docIds.length)}`, "success", {
26324
+ say(`${chunkUFGC77KR_cjs.entitiesPhrase()} extracted from ${chunkUFGC77KR_cjs.documentCount(docIds.length)}`, "success", {
26325
26325
  ...openTags && { action: { label: "View", onClick: openTags } }
26326
26326
  });
26327
26327
  } else if (message.batch_type === "upload") {
@@ -27024,7 +27024,7 @@ function ConnectedFieldsManager({
27024
27024
  ) });
27025
27025
  }
27026
27026
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col h-full", children: [
27027
- /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.DraggableHeader, { children: [
27027
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.DraggableHeader, { children: [
27028
27028
  /* @__PURE__ */ jsxRuntime.jsx(chunkICHTDJYH_cjs.FieldsManagerTitle, { title, className: "px-4 pt-3.5 pb-2" }),
27029
27029
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-3", children: tabHeader })
27030
27030
  ] }),
@@ -27814,15 +27814,15 @@ var TABLET_TABLE_BELOW = 860;
27814
27814
  var TABLET_VIEWPORT_BELOW = 1100;
27815
27815
  var NO_CONVERSATION_DOCUMENTS = [];
27816
27816
  var DocumentReviewCard = react$1.lazy(
27817
- () => import('../DocumentReviewCard-DQHW5W5T.cjs').then((module) => ({ default: module.DocumentReviewCard }))
27817
+ () => import('../DocumentReviewCard-XK77D3O4.cjs').then((module) => ({ default: module.DocumentReviewCard }))
27818
27818
  );
27819
27819
  var ConnectedDocumentViewer = react$1.lazy(
27820
- () => import('../ConnectedDocumentViewer-QW62ULRN.cjs').then((module) => ({
27820
+ () => import('../ConnectedDocumentViewer-EXR4XDRW.cjs').then((module) => ({
27821
27821
  default: module.ConnectedDocumentViewer
27822
27822
  }))
27823
27823
  );
27824
27824
  function defaultReviewCard(props) {
27825
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
27825
+ return /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsxRuntime.jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
27826
27826
  }
27827
27827
  function ConnectedFilesPage({
27828
27828
  isModal = false,
@@ -27868,7 +27868,7 @@ function ConnectedFilesPage({
27868
27868
  const deleteDocuments = react.useDeleteDocuments();
27869
27869
  const isDocumentsPending = isLoading && documents.length === 0;
27870
27870
  const { workspaceId, userId, live } = chunkXCZYMSDV_cjs.useConnectedWorkspace();
27871
- const { role, members } = chunkP7FHVWM7_cjs.useConnectedWorkspaceRole();
27871
+ const { role, members } = chunkUHP6AP6C_cjs.useConnectedWorkspaceRole();
27872
27872
  const { data: workspaces } = react.useWorkspaces({ enabled: live });
27873
27873
  const workspaceName = workspaces?.find((w) => w.external_id === workspaceId)?.name;
27874
27874
  const isMember = role != null;
@@ -28358,7 +28358,7 @@ function ConnectedFilesPage({
28358
28358
  viewMode === "grid" ? (
28359
28359
  // ‹ n / N › over the table's displayed rows; a step opens the document.
28360
28360
  /* @__PURE__ */ jsxRuntime.jsx(
28361
- chunkD4SDNNLX_cjs.GridRowNavigator,
28361
+ chunkUFGC77KR_cjs.GridRowNavigator,
28362
28362
  {
28363
28363
  gridApi,
28364
28364
  selectedId: viewingDocumentId ?? selectedDocumentIds[0] ?? null,
@@ -29516,7 +29516,7 @@ function ProcessingSection({
29516
29516
  tasks,
29517
29517
  onDelete
29518
29518
  }) {
29519
- return /* @__PURE__ */ jsxRuntime.jsx(chunkICHTDJYH_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.UploadTaskList, { tasks, title: "", onDelete, renderFileIcon: renderFileIcon2 }) });
29519
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkICHTDJYH_cjs.TaskSection, { title, count: count2, status, tooltip: SECTION_TOOLTIPS[status], children: /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.UploadTaskList, { tasks, title: "", onDelete, renderFileIcon: renderFileIcon2 }) });
29520
29520
  }
29521
29521
  function ConnectedDocumentProcessingPanel({
29522
29522
  workspaceId,
@@ -30381,7 +30381,7 @@ function ChatAttachmentList({ files, error }) {
30381
30381
  ] });
30382
30382
  }
30383
30383
  function MessageText({ message }) {
30384
- const workspaceId = chunk4VGZGM6M_cjs.useDocumentWorkspace();
30384
+ const workspaceId = chunkQYRPFPQ7_cjs.useDocumentWorkspace();
30385
30385
  const selectedWorkspaceId = react.useArbiSessionState((s) => s.workspaceId);
30386
30386
  const documentIds = react$1.useMemo(
30387
30387
  () => workspaceId === selectedWorkspaceId ? Array.from(
@@ -30396,11 +30396,11 @@ function MessageText({ message }) {
30396
30396
  );
30397
30397
  const thumbnails = react.useDocumentThumbnails(documentIds);
30398
30398
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
30399
- /* @__PURE__ */ jsxRuntime.jsx(chunk4VGZGM6M_cjs.ConnectedMarkdown, { children: message }),
30399
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQYRPFPQ7_cjs.ConnectedMarkdown, { children: message }),
30400
30400
  workspaceId && documentIds.map((docId) => {
30401
30401
  const thumbnail = thumbnails.get(docId);
30402
30402
  return thumbnail ? /* @__PURE__ */ jsxRuntime.jsx(
30403
- chunk4VGZGM6M_cjs.WorkspaceDocumentReference,
30403
+ chunkQYRPFPQ7_cjs.WorkspaceDocumentReference,
30404
30404
  {
30405
30405
  workspaceId,
30406
30406
  docId,
@@ -30421,13 +30421,13 @@ function MessageText({ message }) {
30421
30421
  }
30422
30422
  function ConnectedChatMessageBody({ text: text2, workspaceId }) {
30423
30423
  const documentWorkspace = workspaceId ?? Array.from(text2.matchAll(/\/(wrk-[a-zA-Z0-9]{8})\/con-[a-zA-Z0-9]{8}/g)).at(-1)?.[1] ?? null;
30424
- return /* @__PURE__ */ jsxRuntime.jsx(chunk4VGZGM6M_cjs.DocumentWorkspaceContext.Provider, { value: documentWorkspace, children: /* @__PURE__ */ jsxRuntime.jsx(MessageText, { message: text2 }) });
30424
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQYRPFPQ7_cjs.DocumentWorkspaceContext.Provider, { value: documentWorkspace, children: /* @__PURE__ */ jsxRuntime.jsx(MessageText, { message: text2 }) });
30425
30425
  }
30426
30426
  function renderMessengerUser(user, variant) {
30427
30427
  switch (variant) {
30428
30428
  case "avatar":
30429
30429
  return /* @__PURE__ */ jsxRuntime.jsx(
30430
- chunk3VL64465_cjs.ConnectedUserEntity,
30430
+ chunkOAEJME5Q_cjs.ConnectedUserEntity,
30431
30431
  {
30432
30432
  user,
30433
30433
  size: "lg",
@@ -30438,7 +30438,7 @@ function renderMessengerUser(user, variant) {
30438
30438
  );
30439
30439
  case "small-avatar":
30440
30440
  return /* @__PURE__ */ jsxRuntime.jsx(
30441
- chunk3VL64465_cjs.ConnectedUserEntity,
30441
+ chunkOAEJME5Q_cjs.ConnectedUserEntity,
30442
30442
  {
30443
30443
  user,
30444
30444
  size: "sm",
@@ -30448,9 +30448,9 @@ function renderMessengerUser(user, variant) {
30448
30448
  }
30449
30449
  );
30450
30450
  case "author":
30451
- return /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedUserEntity, { user, size: "sm", variant: "pill" });
30451
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedUserEntity, { user, size: "sm", variant: "pill" });
30452
30452
  case "member":
30453
- return /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedUserEntity, { user, size: "sm", variant: "pill", interactive: false });
30453
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedUserEntity, { user, size: "sm", variant: "pill", interactive: false });
30454
30454
  }
30455
30455
  }
30456
30456
  var THREAD_ACCESSORS = {
@@ -31175,7 +31175,7 @@ function ConnectedRecipientSelector({
31175
31175
  setSelectorOpen(false);
31176
31176
  setSearchValue("");
31177
31177
  };
31178
- const identity = (user) => /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedUserEntity, { user, size: "xs", variant: "pill", showPresence: true, interactive: false });
31178
+ const identity = (user) => /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedUserEntity, { user, size: "xs", variant: "pill", showPresence: true, interactive: false });
31179
31179
  const selected = selectedRecipients.flatMap((id) => {
31180
31180
  const user = getUserById(id);
31181
31181
  if (!user) return [];
@@ -31415,7 +31415,7 @@ function ConnectedDmGrantAccessDialog({
31415
31415
  }
31416
31416
  );
31417
31417
  }
31418
- var ThreadHistory = (props) => /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.ConnectedCallChatHistory, { ...props });
31418
+ var ThreadHistory = (props) => /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.ConnectedCallChatHistory, { ...props });
31419
31419
  function ConnectedPeerActions({ peer, addPeople }) {
31420
31420
  const [accessOpen, setAccessOpen] = react$1.useState(false);
31421
31421
  const [grantOpen, setGrantOpen] = react$1.useState(false);
@@ -31429,8 +31429,8 @@ function ConnectedPeerActions({ peer, addPeople }) {
31429
31429
  )
31430
31430
  ];
31431
31431
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
31432
- !ui.isAgent(peer) && /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.DmCallButton, { peer }),
31433
- !ui.isAgent(peer) && /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.ScheduleCallButton, { peer }),
31432
+ !ui.isAgent(peer) && /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.DmCallButton, { peer }),
31433
+ !ui.isAgent(peer) && /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.ScheduleCallButton, { peer }),
31434
31434
  /* @__PURE__ */ jsxRuntime.jsx(
31435
31435
  ConnectedContactMenu,
31436
31436
  {
@@ -31455,14 +31455,14 @@ function ConnectedPeerActions({ peer, addPeople }) {
31455
31455
  }
31456
31456
  var fullDirectActions = (peer, { addPeople }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedPeerActions, { peer, addPeople });
31457
31457
  var fullGroupActions = (chat, title) => /* @__PURE__ */ jsxRuntime.jsx(
31458
- chunkN6B6H4QV_cjs.GroupCallButton,
31458
+ chunkL6DAJUDF_cjs.GroupCallButton,
31459
31459
  {
31460
31460
  chatExtId: chat.external_id,
31461
31461
  title,
31462
31462
  members: chat.members.map((m) => m.user)
31463
31463
  }
31464
31464
  );
31465
- var fullListActions = /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.NewCallChip, {});
31465
+ var fullListActions = /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.NewCallChip, {});
31466
31466
  function fullMessengerHost(arbi, presence) {
31467
31467
  return {
31468
31468
  presenceOf: (id) => presence?.[id] === "online" ? "connected" : "disconnected",
@@ -31736,7 +31736,7 @@ function ConnectedMessengerThread({
31736
31736
  const activeIsSelf = !!activePeer && activePeer.external_id === meId;
31737
31737
  const groupTitle = active?.title ?? null;
31738
31738
  const presence = activePeer ? host.presenceOf?.(activePeer.external_id) : void 0;
31739
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PanelFrame, { testId, className, children: [
31739
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PanelFrame, { testId, className, children: [
31740
31740
  children,
31741
31741
  groupChat ? /* @__PURE__ */ jsxRuntime.jsx(
31742
31742
  chunkMOIZ2R5X_cjs.DmThreadHeader,
@@ -31786,7 +31786,7 @@ function ConnectedMessengerThread({
31786
31786
  groupChat.external_id
31787
31787
  ) : null,
31788
31788
  picker.element,
31789
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_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." }) })
31789
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_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." }) })
31790
31790
  ] });
31791
31791
  }
31792
31792
  function ConnectedMessenger({
@@ -31808,7 +31808,7 @@ function ConnectedMessenger({
31808
31808
  testId: "dm-messenger"
31809
31809
  }
31810
31810
  );
31811
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelFrame, { testId: "dm-messenger", children: /* @__PURE__ */ jsxRuntime.jsx(
31811
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelFrame, { testId: "dm-messenger", children: /* @__PURE__ */ jsxRuntime.jsx(
31812
31812
  ConnectedMessengerList,
31813
31813
  {
31814
31814
  activeId: null,
@@ -31836,10 +31836,10 @@ function useChatMessageToasts() {
31836
31836
  function ConnectedConfigForm({ availableModels, ...rest }) {
31837
31837
  const hasModels = !!availableModels && availableModels.length > 0;
31838
31838
  const renderModelSelect = react$1.useCallback(
31839
- ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
31839
+ ({ value, onChange }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedModelSelector, { value, onValueChange: onChange, className: "w-full" }),
31840
31840
  []
31841
31841
  );
31842
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
31842
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConfigForm, { ...rest, renderModelSelect: hasModels ? renderModelSelect : void 0 });
31843
31843
  }
31844
31844
  function ConnectedAgentConfigForm({ agentExtId, agentName, onSaved }) {
31845
31845
  const { notify: notify17 } = chunk25AIWOR6_cjs.useBlocksEnvironment();
@@ -31956,7 +31956,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31956
31956
  }, [name, selectedWorkspaces, role, createAgent, addWorkspaceUsers, arbi, notify17]);
31957
31957
  if (editAgent) {
31958
31958
  return /* @__PURE__ */ jsxRuntime.jsx(
31959
- chunkOVZ54T5M_cjs.AgentEditView,
31959
+ chunkLC7HFDCV_cjs.AgentEditView,
31960
31960
  {
31961
31961
  agentName: editAgent.name,
31962
31962
  config: /* @__PURE__ */ jsxRuntime.jsx(
@@ -31972,7 +31972,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31972
31972
  }
31973
31973
  if (view === "main") {
31974
31974
  return /* @__PURE__ */ jsxRuntime.jsx(
31975
- chunkOVZ54T5M_cjs.AgentMainView,
31975
+ chunkLC7HFDCV_cjs.AgentMainView,
31976
31976
  {
31977
31977
  onConnectExternal: () => setView("connect"),
31978
31978
  config: mainAgent ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -31988,11 +31988,11 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
31988
31988
  }
31989
31989
  if (result) {
31990
31990
  return /* @__PURE__ */ jsxRuntime.jsx(
31991
- chunkOVZ54T5M_cjs.AgentCreatedView,
31991
+ chunkLC7HFDCV_cjs.AgentCreatedView,
31992
31992
  {
31993
31993
  email: result.email,
31994
31994
  signingKey: result.signingKey,
31995
- instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
31995
+ instructions: /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.AgentConnectInstructions, { email: result.email, signingKey: result.signingKey }),
31996
31996
  config: /* @__PURE__ */ jsxRuntime.jsx(ConnectedAgentConfigForm, { agentExtId: result.extId, agentName: result.name }),
31997
31997
  isConfigOpen: configOpen,
31998
31998
  onToggleConfig: () => setConfigOpen((v) => !v),
@@ -32001,7 +32001,7 @@ function ConnectedAuthorizeAgent({ onClose, editAgent }) {
32001
32001
  );
32002
32002
  }
32003
32003
  return /* @__PURE__ */ jsxRuntime.jsx(
32004
- chunkOVZ54T5M_cjs.AgentCreateView,
32004
+ chunkLC7HFDCV_cjs.AgentCreateView,
32005
32005
  {
32006
32006
  name,
32007
32007
  onNameChange: setName,
@@ -32057,7 +32057,7 @@ function DeveloperFooter({
32057
32057
  }, [configVersions, configToLoad, parentMessage?.config_ext_id]);
32058
32058
  const hasLoadedConfig = !!loadedConfigId && loadedConfigId !== "default";
32059
32059
  return /* @__PURE__ */ jsxRuntime.jsx(
32060
- chunkY5RCJQ3A_cjs.ConfigSwitcherBar,
32060
+ chunkQB7PNQDJ_cjs.ConfigSwitcherBar,
32061
32061
  {
32062
32062
  options: options2,
32063
32063
  value: loadedConfigId || "default",
@@ -32326,8 +32326,8 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
32326
32326
  handleDeleteConfig,
32327
32327
  handleLoadConfig
32328
32328
  } = useDeveloperConfig();
32329
- return /* @__PURE__ */ jsxRuntime.jsxs(chunkY5RCJQ3A_cjs.PanelFrame, { testId: "developer-config", children: [
32330
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
32329
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkQB7PNQDJ_cjs.PanelFrame, { testId: "developer-config", children: [
32330
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.DraggableHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(
32331
32331
  chunkSJSGSHIT_cjs.TabHeader,
32332
32332
  {
32333
32333
  tabs: [{ id: "config", label: "Developer Config", icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Code2, { className: "size-4" }) }],
@@ -32337,7 +32337,7 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
32337
32337
  rightContent: modeSwitcher
32338
32338
  }
32339
32339
  ) }),
32340
- /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: configSchema ? /* @__PURE__ */ jsxRuntime.jsx(
32340
+ /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: configSchema ? /* @__PURE__ */ jsxRuntime.jsx(
32341
32341
  ConnectedConfigForm,
32342
32342
  {
32343
32343
  schema: configSchema,
@@ -32345,7 +32345,7 @@ function ConnectedDeveloperConfig({ modeSwitcher } = {}) {
32345
32345
  onChange: handleConfigChange,
32346
32346
  availableModels: availableModels?.models
32347
32347
  }
32348
- ) : /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelNote, { children: "Loading configuration schema..." }) }),
32348
+ ) : /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelNote, { children: "Loading configuration schema..." }) }),
32349
32349
  /* @__PURE__ */ jsxRuntime.jsx(
32350
32350
  DeveloperFooter,
32351
32351
  {
@@ -32704,7 +32704,7 @@ function ConnectedAccountCluster({
32704
32704
  if (!open) return null;
32705
32705
  const current = activePage === page;
32706
32706
  return /* @__PURE__ */ jsxRuntime.jsx(
32707
- chunkJUG2QEL7_cjs.SidebarBadgeRow,
32707
+ chunkKRWWRTDN_cjs.SidebarBadgeRow,
32708
32708
  {
32709
32709
  icon: icon2,
32710
32710
  label,
@@ -32721,7 +32721,7 @@ function ConnectedAccountCluster({
32721
32721
  );
32722
32722
  };
32723
32723
  const bell = layout === "drawer" ? /* @__PURE__ */ jsxRuntime.jsx(
32724
- chunkJUG2QEL7_cjs.SidebarBadgeRow,
32724
+ chunkKRWWRTDN_cjs.SidebarBadgeRow,
32725
32725
  {
32726
32726
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Bell, { className: "size-5" }),
32727
32727
  label: "Notifications",
@@ -32763,7 +32763,7 @@ function ConnectedAccountCluster({
32763
32763
  side,
32764
32764
  align,
32765
32765
  renderTrigger: layout === "bar" ? void 0 : ({ unread, ariaLabel, testId }) => /* @__PURE__ */ jsxRuntime.jsx(
32766
- chunkJUG2QEL7_cjs.SidebarBadgeRow,
32766
+ chunkKRWWRTDN_cjs.SidebarBadgeRow,
32767
32767
  {
32768
32768
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Bell, { className: "size-5" }),
32769
32769
  label: "Notifications",
@@ -32776,7 +32776,7 @@ function ConnectedAccountCluster({
32776
32776
  }
32777
32777
  );
32778
32778
  const contacts = showContacts && openContacts ? /* @__PURE__ */ jsxRuntime.jsx(
32779
- chunkJUG2QEL7_cjs.SidebarBadgeRow,
32779
+ chunkKRWWRTDN_cjs.SidebarBadgeRow,
32780
32780
  {
32781
32781
  icon: /* @__PURE__ */ jsxRuntime.jsx(ContactIcon, { className: "size-5" }),
32782
32782
  label: "Contacts",
@@ -32813,7 +32813,7 @@ function ConnectedAccountCluster({
32813
32813
  layout
32814
32814
  );
32815
32815
  return /* @__PURE__ */ jsxRuntime.jsx(
32816
- chunkTANMVAB2_cjs.ActionCluster,
32816
+ chunkZLDFQZSP_cjs.ActionCluster,
32817
32817
  {
32818
32818
  layout,
32819
32819
  status: layout === "bar" ? status : null,
@@ -32828,7 +32828,7 @@ function ConnectedAccountCluster({
32828
32828
  }
32829
32829
  );
32830
32830
  }
32831
- var gbp3 = (pence) => chunkV4SRR4GE_cjs.formatMoney(pence, "gbp");
32831
+ var gbp3 = (pence) => chunkORIOOXUU_cjs.formatMoney(pence, "gbp");
32832
32832
  function addonArrivalMessage(addons, added) {
32833
32833
  const parts = [];
32834
32834
  if (added.ai > 0) parts.push(`${react.formatGbp(added.ai * addons.block_ai_gbp)} of AI usage`);
@@ -33110,7 +33110,7 @@ function usePrefetchChunks(loaders) {
33110
33110
  if (cancelled) return;
33111
33111
  const load = queue.shift();
33112
33112
  if (!load) return;
33113
- void chunk3STESMKX_cjs.prefetchChunk(load).finally(() => {
33113
+ void chunkWV6RHIFP_cjs.prefetchChunk(load).finally(() => {
33114
33114
  handle = idle(next);
33115
33115
  });
33116
33116
  };
@@ -33223,7 +33223,7 @@ function ConnectedAppRuntime({
33223
33223
  prefetch
33224
33224
  }) {
33225
33225
  const on = (effect) => effects[effect] !== false;
33226
- const { stripeEnabled } = chunkV4SRR4GE_cjs.useBillingSupport();
33226
+ const { stripeEnabled } = chunkORIOOXUU_cjs.useBillingSupport();
33227
33227
  const welcomeDialog = on("welcomeDialog") && stripeEnabled;
33228
33228
  const resolveFirstLogin = () => {
33229
33229
  if (welcomeDialog) skipWelcomeDialogThisSession();
@@ -33978,7 +33978,7 @@ function ConnectedReportProblem({
33978
33978
  const bar = layout === "bar";
33979
33979
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
33980
33980
  /* @__PURE__ */ jsxRuntime.jsx(
33981
- chunkJUG2QEL7_cjs.SidebarBadgeRow,
33981
+ chunkKRWWRTDN_cjs.SidebarBadgeRow,
33982
33982
  {
33983
33983
  icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageCircleQuestionMark, { className: "size-5" }),
33984
33984
  label: "Contact support",
@@ -34011,14 +34011,14 @@ var referencesOf = (inputs) => {
34011
34011
  return value?.documents ?? [];
34012
34012
  };
34013
34013
  var PROMPT_BINDINGS = {
34014
- [chunkOVZ54T5M_cjs.GENERATE_IMAGE_ID]: {
34014
+ [chunkLC7HFDCV_cjs.GENERATE_IMAGE_ID]: {
34015
34015
  attachScope: false,
34016
34016
  tools: (inputs) => {
34017
34017
  const aspectRatio = typeof inputs.aspect_ratio === "string" ? inputs.aspect_ratio : "";
34018
34018
  return {
34019
34019
  retrieval_chunk: browser.buildRetrievalChunkTool([]),
34020
34020
  retrieval_full_context: browser.buildRetrievalFullContextTool(referencesOf(inputs)),
34021
- ...aspectRatio && aspectRatio !== chunkOVZ54T5M_cjs.IMAGE_ASPECT_AUTO ? {
34021
+ ...aspectRatio && aspectRatio !== chunkLC7HFDCV_cjs.IMAGE_ASPECT_AUTO ? {
34022
34022
  image_generation: {
34023
34023
  name: "image_generation",
34024
34024
  description: "image generation",
@@ -34039,19 +34039,19 @@ var text = (inputs, name) => {
34039
34039
  function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
34040
34040
  const { data: documents = [] } = react.useDocuments();
34041
34041
  const { data: workspaceTags = [] } = react.useTags();
34042
- const tags = react$1.useMemo(() => chunkYJOFSJYQ_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
34042
+ const tags = react$1.useMemo(() => chunkLHQHK6MB_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
34043
34043
  const createTag = react.useCreateTag();
34044
34044
  const updateTag = react.useUpdateTag();
34045
34045
  const generate = react.useGenerateDocTags();
34046
- const { create: createTask } = chunk6CJNGKZQ_cjs.useWorkflowTasks();
34046
+ const { create: createTask } = chunk5V7JWZQ4_cjs.useWorkflowTasks();
34047
34047
  const applyModel = react.useApplyChatModel();
34048
34048
  const session = react.useArbiSessionStore();
34049
34049
  const { notify: notify17, openFiles, openNewConversation } = chunk25AIWOR6_cjs.useBlocksEnvironment();
34050
34050
  const annotate = react$1.useCallback(
34051
34051
  async ({ inputs, scope }) => {
34052
34052
  const description = text(inputs, "description");
34053
- const name = text(inputs, "name") || chunkOVZ54T5M_cjs.deriveAnnotationName(description);
34054
- const matching = chunkYJOFSJYQ_cjs.matchWorkflowScope(documents, scope);
34053
+ const name = text(inputs, "name") || chunkLC7HFDCV_cjs.deriveAnnotationName(description);
34054
+ const matching = chunkLHQHK6MB_cjs.matchWorkflowScope(documents, scope);
34055
34055
  if (!name || !description || matching.length === 0) return;
34056
34056
  try {
34057
34057
  const existing = tags.find((t) => t.name.toLowerCase() === name.toLowerCase());
@@ -34094,9 +34094,9 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
34094
34094
  async (launch) => {
34095
34095
  const { workflow, inputs, scope, agentId } = launch;
34096
34096
  if (workflow.run.kind === "operation") {
34097
- if (workflow.id === chunkOVZ54T5M_cjs.ANNOTATE_ID) {
34097
+ if (workflow.id === chunkLC7HFDCV_cjs.ANNOTATE_ID) {
34098
34098
  await annotate(launch);
34099
- chunkOVZ54T5M_cjs.recordWorkflowUse(workflow.id);
34099
+ chunkLC7HFDCV_cjs.recordWorkflowUse(workflow.id);
34100
34100
  return;
34101
34101
  }
34102
34102
  throw new Error(`No host handler for workflow "${workflow.id}"`);
@@ -34106,7 +34106,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
34106
34106
  );
34107
34107
  const prompt = chunk555BS22J_cjs.composeWorkflowPrompt(workflow, inputs, { documentTitles });
34108
34108
  if (!prompt) return;
34109
- chunkOVZ54T5M_cjs.recordWorkflowUse(workflow.id);
34109
+ chunkLC7HFDCV_cjs.recordWorkflowUse(workflow.id);
34110
34110
  if (agentId) {
34111
34111
  try {
34112
34112
  const created = await createTask({
@@ -34151,7 +34151,7 @@ function useLaunchWorkflow({ landing: surfaceLanding } = {}) {
34151
34151
  const binding = PROMPT_BINDINGS[workflow.id];
34152
34152
  if (!inPlace) openNewConversation();
34153
34153
  if (binding?.attachScope !== false && !chunk555BS22J_cjs.isEmptyWorkflowScope(scope)) {
34154
- const ids = chunkYJOFSJYQ_cjs.matchWorkflowScope(documents, scope).map((d) => d.external_id);
34154
+ const ids = chunkLHQHK6MB_cjs.matchWorkflowScope(documents, scope).map((d) => d.external_id);
34155
34155
  if (ids.length > 0) {
34156
34156
  session.setConversationDocuments(
34157
34157
  inPlace ? session.getState().conversationId ?? "new" : "new",
@@ -34186,30 +34186,30 @@ function ConnectedWorkflowStart({
34186
34186
  const onLaunch = useLaunchWorkflow({ landing });
34187
34187
  const { openUpload } = chunk25AIWOR6_cjs.useBlocksEnvironment();
34188
34188
  const { data: workspaceTags = [] } = react.useTags();
34189
- const tags = react$1.useMemo(() => chunkYJOFSJYQ_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
34189
+ const tags = react$1.useMemo(() => chunkLHQHK6MB_cjs.documentScopeLabels(workspaceTags), [workspaceTags]);
34190
34190
  const fieldPlaceholder = react$1.useCallback(
34191
34191
  (field, inputs, workflow) => {
34192
- if (workflow.id !== chunkOVZ54T5M_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
34193
- const derived = chunkOVZ54T5M_cjs.deriveAnnotationName(String(inputs.description ?? ""));
34192
+ if (workflow.id !== chunkLC7HFDCV_cjs.ANNOTATE_ID || field.name !== "name") return void 0;
34193
+ const derived = chunkLC7HFDCV_cjs.deriveAnnotationName(String(inputs.description ?? ""));
34194
34194
  return derived ? `Otherwise \u201C${derived}\u201D` : "Taken from the description";
34195
34195
  },
34196
34196
  []
34197
34197
  );
34198
34198
  return /* @__PURE__ */ jsxRuntime.jsx(
34199
- chunkP7FHVWM7_cjs.ConnectedWorkflowLauncher,
34199
+ chunkUHP6AP6C_cjs.ConnectedWorkflowLauncher,
34200
34200
  {
34201
34201
  ...rest,
34202
34202
  workflows,
34203
34203
  onLaunch,
34204
- renderIcon: chunkOVZ54T5M_cjs.renderWorkflowIcon,
34204
+ renderIcon: chunkLC7HFDCV_cjs.renderWorkflowIcon,
34205
34205
  onAddFiles: openUpload,
34206
34206
  agentLabels: AGENT_LABELS,
34207
34207
  addFilesAction,
34208
34208
  fieldPlaceholder,
34209
- submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkOVZ54T5M_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
34209
+ submitLabel: ({ workflow, matchedCount }) => workflow.id === chunkLC7HFDCV_cjs.ANNOTATE_ID && matchedCount !== null ? `Annotate ${matchedCount} document${matchedCount !== 1 ? "s" : ""}` : void 0,
34210
34210
  renderNotice: ({ workflow, inputs }) => {
34211
- if (workflow.id !== chunkOVZ54T5M_cjs.ANNOTATE_ID) return null;
34212
- const name = String(inputs.name ?? "").trim() || chunkOVZ54T5M_cjs.deriveAnnotationName(String(inputs.description ?? ""));
34211
+ if (workflow.id !== chunkLC7HFDCV_cjs.ANNOTATE_ID) return null;
34212
+ const name = String(inputs.name ?? "").trim() || chunkLC7HFDCV_cjs.deriveAnnotationName(String(inputs.description ?? ""));
34213
34213
  const existing = name ? tags.find((t) => t.name.toLowerCase() === name.toLowerCase()) : void 0;
34214
34214
  if (!existing) return null;
34215
34215
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -34246,9 +34246,9 @@ function resolveLaunchInputs(workflow, request) {
34246
34246
  return { ...fromContext, ...fromScope, ...request.inputs };
34247
34247
  }
34248
34248
  function useWorkflowLaunch() {
34249
- const { skills } = chunk6CJNGKZQ_cjs.useWorkflowDefinitions();
34249
+ const { skills } = chunk5V7JWZQ4_cjs.useWorkflowDefinitions();
34250
34250
  const launch = react$1.useCallback(
34251
- (workflowId, options2 = {}) => chunkOVZ54T5M_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
34251
+ (workflowId, options2 = {}) => chunkLC7HFDCV_cjs.openWorkflowLaunch({ workflowId, ...options2 }),
34252
34252
  []
34253
34253
  );
34254
34254
  const itemsFor = react$1.useCallback(
@@ -34277,9 +34277,9 @@ function useWorkflowLaunch() {
34277
34277
  return { launch, itemsFor, scopeItemsFor };
34278
34278
  }
34279
34279
  function Inner() {
34280
- const request = chunkOVZ54T5M_cjs.useWorkflowLaunchRequest();
34281
- const close = chunkOVZ54T5M_cjs.closeWorkflowLaunch;
34282
- const { skills } = chunk6CJNGKZQ_cjs.useWorkflowDefinitions();
34280
+ const request = chunkLC7HFDCV_cjs.useWorkflowLaunchRequest();
34281
+ const close = chunkLC7HFDCV_cjs.closeWorkflowLaunch;
34282
+ const { skills } = chunk5V7JWZQ4_cjs.useWorkflowDefinitions();
34283
34283
  const run = useLaunchWorkflow({ landing: request?.landing });
34284
34284
  const workflow = skills.find((w) => w.id === request?.workflowId);
34285
34285
  const inputs = react$1.useMemo(
@@ -34316,7 +34316,7 @@ function Inner() {
34316
34316
  );
34317
34317
  }
34318
34318
  function WorkflowLaunchHost() {
34319
- return chunkOVZ54T5M_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
34319
+ return chunkLC7HFDCV_cjs.useWorkflowLaunchRequest() ? /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) : null;
34320
34320
  }
34321
34321
  function isNeedsConfirmationDetail(detail) {
34322
34322
  return typeof detail === "object" && detail !== null && detail.needs_confirmation === "resource_private";
@@ -34606,9 +34606,9 @@ function ConnectedConversationSettings() {
34606
34606
  });
34607
34607
  if (confirmed) settings.share();
34608
34608
  };
34609
- return /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelFrame, { testId: "conversation-settings", className: "bg-transparent", children: /* @__PURE__ */ jsxRuntime.jsx(chunkY5RCJQ3A_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
34609
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelFrame, { testId: "conversation-settings", className: "bg-transparent", children: /* @__PURE__ */ jsxRuntime.jsx(chunkQB7PNQDJ_cjs.PanelFrameBody, { className: "overflow-auto p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
34610
34610
  !settings.isNewConversation && /* @__PURE__ */ jsxRuntime.jsx(
34611
- chunkY5RCJQ3A_cjs.ConversationTitleSection,
34611
+ chunkQB7PNQDJ_cjs.ConversationTitleSection,
34612
34612
  {
34613
34613
  title: settings.title,
34614
34614
  onTitleChange: settings.setTitle,
@@ -34626,9 +34626,9 @@ function ConnectedConversationSettings() {
34626
34626
  }
34627
34627
  ),
34628
34628
  /* @__PURE__ */ jsxRuntime.jsx(
34629
- chunkY5RCJQ3A_cjs.ModelSelectionSection,
34629
+ chunkQB7PNQDJ_cjs.ModelSelectionSection,
34630
34630
  {
34631
- selector: /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedModelSelector, {}),
34631
+ selector: /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedModelSelector, {}),
34632
34632
  onUseDefaults: settings.resetToDefaults
34633
34633
  }
34634
34634
  )
@@ -34685,7 +34685,7 @@ var BUILTIN_GLOBAL_DIALOGS = {
34685
34685
  testId: "workspace-transfer-modal"
34686
34686
  }
34687
34687
  ),
34688
- logout: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedLogoutDialog, { open: props !== null, onClose }),
34688
+ logout: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedLogoutDialog, { open: props !== null, onClose }),
34689
34689
  conversationSettings: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedConversationSettingsDialog, { open: props !== null, onClose }),
34690
34690
  unarchiveWorkspace: ({ props, onClose }) => /* @__PURE__ */ jsxRuntime.jsx(ConnectedUnarchiveWorkspaceDialog, { workspaceId: props?.workspaceId ?? null, onClose })
34691
34691
  };
@@ -34753,7 +34753,7 @@ function WorkflowRunStatusCell({ conversation }) {
34753
34753
  return person ? ui.getUserDisplayName(person) : void 0;
34754
34754
  };
34755
34755
  return /* @__PURE__ */ jsxRuntime.jsx(
34756
- chunkOVZ54T5M_cjs.WorkflowRunStatus,
34756
+ chunkLC7HFDCV_cjs.WorkflowRunStatus,
34757
34757
  {
34758
34758
  steps,
34759
34759
  states,
@@ -34787,7 +34787,7 @@ function ConversationStatusCell({ conversation }) {
34787
34787
  if (conversation.plan?.steps?.length && !isLiveGenerating)
34788
34788
  return /* @__PURE__ */ jsxRuntime.jsx(WorkflowRunStatusCell, { conversation });
34789
34789
  return /* @__PURE__ */ jsxRuntime.jsx(
34790
- chunkOVZ54T5M_cjs.ThreadStatusLine,
34790
+ chunkLC7HFDCV_cjs.ThreadStatusLine,
34791
34791
  {
34792
34792
  state: threadStateOf(conversation, isLiveGenerating),
34793
34793
  className: "h-full",
@@ -35272,7 +35272,7 @@ function ConnectedTaskStartDialog({
35272
35272
  };
35273
35273
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35274
35274
  /* @__PURE__ */ jsxRuntime.jsx(
35275
- chunkOVZ54T5M_cjs.TaskStartDialog,
35275
+ chunkLC7HFDCV_cjs.TaskStartDialog,
35276
35276
  {
35277
35277
  open: open && !later,
35278
35278
  onOpenChange: (next) => {
@@ -35297,14 +35297,14 @@ function ConnectedTaskStartDialog({
35297
35297
  }
35298
35298
  ),
35299
35299
  later && /* @__PURE__ */ jsxRuntime.jsx(
35300
- chunk6CJNGKZQ_cjs.ConnectedTaskComposer,
35300
+ chunk5V7JWZQ4_cjs.ConnectedTaskComposer,
35301
35301
  {
35302
35302
  open: true,
35303
35303
  onOpenChange: (next) => !next && setLater(null),
35304
35304
  kind: "workflow",
35305
35305
  startLater: true,
35306
35306
  initialPrompt: later.prompt,
35307
- initialWorkflowId: later.todo ? chunkOVZ54T5M_cjs.REMIND_TASK_ID : void 0,
35307
+ initialWorkflowId: later.todo ? chunkLC7HFDCV_cjs.REMIND_TASK_ID : void 0,
35308
35308
  initialShared: later.shared,
35309
35309
  launchWorkflow: later.workflow
35310
35310
  }
@@ -35324,7 +35324,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
35324
35324
  setDraft("");
35325
35325
  };
35326
35326
  return /* @__PURE__ */ jsxRuntime.jsx(chunkONUY3NPW_cjs.ComposerDock, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkONUY3NPW_cjs.ComposerContainer, { className: "mx-auto max-w-[49rem] px-3 sm:px-6", children: /* @__PURE__ */ jsxRuntime.jsx(
35327
- chunk3VL64465_cjs.ConversationComposer,
35327
+ chunkOAEJME5Q_cjs.ConversationComposer,
35328
35328
  {
35329
35329
  value: draft,
35330
35330
  onValueChange: setDraft,
@@ -35332,7 +35332,7 @@ function ConnectedThreadLauncher({ autoFocus }) {
35332
35332
  handleSendMessage: send,
35333
35333
  isConversationEmpty: true,
35334
35334
  shouldOfferFollowUp: false,
35335
- modelSelector: /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedModelSelector, { variant: "compact" }),
35335
+ modelSelector: /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedModelSelector, { variant: "compact" }),
35336
35336
  rightButton: /* @__PURE__ */ jsxRuntime.jsx(chunkONUY3NPW_cjs.ComposerSend, { onSend: send, disabled: !draft.trim() })
35337
35337
  }
35338
35338
  ) }) });
@@ -35359,13 +35359,13 @@ function ConnectedNewThreadDialog({
35359
35359
  });
35360
35360
  const parentOptions = react$1.useMemo(() => {
35361
35361
  const leaf = { external_id: "__new__" };
35362
- return chunkOVZ54T5M_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
35362
+ return chunkLC7HFDCV_cjs.moveTargets([...tasks, leaf], leaf).map((t) => ({
35363
35363
  id: t.external_id,
35364
35364
  name: t.title?.trim() || "Untitled task"
35365
35365
  }));
35366
35366
  }, [tasks]);
35367
35367
  const submit = async (values) => {
35368
- const request = chunkOVZ54T5M_cjs.newThreadToRequest(values);
35368
+ const request = chunkLC7HFDCV_cjs.newThreadToRequest(values);
35369
35369
  try {
35370
35370
  if (!workspaceId) throw new Error("Open a workspace to add a task.");
35371
35371
  if (!request.startAssistant && request.todo) {
@@ -35406,7 +35406,7 @@ function ConnectedNewThreadDialog({
35406
35406
  }
35407
35407
  };
35408
35408
  return /* @__PURE__ */ jsxRuntime.jsx(
35409
- chunkOVZ54T5M_cjs.NewThreadDialog,
35409
+ chunkLC7HFDCV_cjs.NewThreadDialog,
35410
35410
  {
35411
35411
  open,
35412
35412
  onOpenChange,
@@ -35422,7 +35422,7 @@ function ConnectedNewThreadDialog({
35422
35422
  var START_VISIBLE = 8;
35423
35423
  var START_SEARCH_ABOVE = 8;
35424
35424
  function ConnectedConversationStart() {
35425
- const { start } = chunk6CJNGKZQ_cjs.useWorkflowDefinitions();
35425
+ const { start } = chunk5V7JWZQ4_cjs.useWorkflowDefinitions();
35426
35426
  const { openSkillsBrowser } = chunk25AIWOR6_cjs.useBlocksEnvironment();
35427
35427
  const [query, setQuery] = react$1.useState("");
35428
35428
  const q = query.trim().toLowerCase();
@@ -35437,7 +35437,7 @@ function ConnectedConversationStart() {
35437
35437
  const browse = openSkillsBrowser ? [
35438
35438
  {
35439
35439
  id: "browse-all",
35440
- iconNode: chunkOVZ54T5M_cjs.renderWorkflowIcon("library"),
35440
+ iconNode: chunkLC7HFDCV_cjs.renderWorkflowIcon("library"),
35441
35441
  title: "Browse all",
35442
35442
  description: "See every skill, make a copy, add your own",
35443
35443
  onSelect: () => openSkillsBrowser(),
@@ -35481,7 +35481,7 @@ function parseTypedSkill(draft) {
35481
35481
  return m ? { slug: m[1].toLowerCase(), text: (m[2] ?? "").trim() } : null;
35482
35482
  }
35483
35483
  function useSlashSkillWorkflows({ landing }) {
35484
- const { skills, skillsEnabled } = chunk6CJNGKZQ_cjs.useWorkflowDefinitions();
35484
+ const { skills, skillsEnabled } = chunk5V7JWZQ4_cjs.useWorkflowDefinitions();
35485
35485
  const { commands } = react.useBuiltinCommands();
35486
35486
  const [active, setActive] = react$1.useState(null);
35487
35487
  const open = (workflow, text2) => {
@@ -35587,7 +35587,7 @@ function AgentBarShell({
35587
35587
  }, [isStepsExpanded, steps]);
35588
35588
  const visibleStepCount = react$1.useMemo(() => browser.topLevelAgentSteps(steps ?? []).length, [steps]);
35589
35589
  return /* @__PURE__ */ jsxRuntime.jsx(
35590
- chunkOVZ54T5M_cjs.AgentBar,
35590
+ chunkLC7HFDCV_cjs.AgentBar,
35591
35591
  {
35592
35592
  className,
35593
35593
  testId,
@@ -35599,7 +35599,7 @@ function AgentBarShell({
35599
35599
  drawerRef: scrollRef,
35600
35600
  onDrawerScroll: handleDrawerScroll,
35601
35601
  drawer: /* @__PURE__ */ jsxRuntime.jsx(
35602
- chunk3VL64465_cjs.AgentSteps,
35602
+ chunkOAEJME5Q_cjs.AgentSteps,
35603
35603
  {
35604
35604
  steps: stepList,
35605
35605
  isStreaming,
@@ -35651,7 +35651,7 @@ function AgentControlBar({
35651
35651
  const waitingOnChildren = runningLanes.length > 0 && ["sub_agent", "spawn_subagent", "deep_research", "run_skill"].includes(currentTool ?? "");
35652
35652
  const waitingLabel = runningLanes.length === 1 ? `Waiting on ${runningLanes[0].job}` : `Waiting on ${runningLanes.length} sub-agents`;
35653
35653
  const liveTimerNode = liveTimer && /* @__PURE__ */ jsxRuntime.jsx(
35654
- chunk3VL64465_cjs.MessageLiveSeconds,
35654
+ chunkOAEJME5Q_cjs.MessageLiveSeconds,
35655
35655
  {
35656
35656
  ...liveTimer,
35657
35657
  offsetSeconds: currentStep?.t ?? 0,
@@ -35660,7 +35660,7 @@ function AgentControlBar({
35660
35660
  }
35661
35661
  );
35662
35662
  const status = /* @__PURE__ */ jsxRuntime.jsx(
35663
- chunkOVZ54T5M_cjs.AgentBarStatus,
35663
+ chunkLC7HFDCV_cjs.AgentBarStatus,
35664
35664
  {
35665
35665
  state: showState ? controlState : void 0,
35666
35666
  stateLabel: STATE_LABEL[controlState],
@@ -35702,7 +35702,7 @@ function AgentControlBar({
35702
35702
  ];
35703
35703
  const controls = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35704
35704
  onStop && /* @__PURE__ */ jsxRuntime.jsx(
35705
- chunkOVZ54T5M_cjs.AgentBarIconButton,
35705
+ chunkLC7HFDCV_cjs.AgentBarIconButton,
35706
35706
  {
35707
35707
  onClick: onStop,
35708
35708
  title: "Stop",
@@ -35711,22 +35711,22 @@ function AgentControlBar({
35711
35711
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Square, { className: "h-3 w-3", fill: "currentColor" })
35712
35712
  }
35713
35713
  ),
35714
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.AgentBarMenu, { items: menuItems })
35714
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.AgentBarMenu, { items: menuItems })
35715
35715
  ] });
35716
35716
  const displayedQueuedMessages = (transientQueuedMessages ?? []).filter(
35717
35717
  (message) => !message.serverId || !queuedMessages.some((queued) => queued.external_id === message.serverId)
35718
35718
  );
35719
35719
  const queuedNotes = displayedQueuedMessages.filter((message) => message.content);
35720
- const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.AgentBarNotes, { children: [
35720
+ const below = probeAnswer || queuedNotes.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.AgentBarNotes, { children: [
35721
35721
  queuedNotes.map((message, index) => /* @__PURE__ */ jsxRuntime.jsx(
35722
- chunkOVZ54T5M_cjs.AgentBarQueuedNote,
35722
+ chunkLC7HFDCV_cjs.AgentBarQueuedNote,
35723
35723
  {
35724
35724
  text: message.content ?? "",
35725
35725
  isAcknowledged: message.acknowledged
35726
35726
  },
35727
35727
  index
35728
35728
  )),
35729
- probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35729
+ probeAnswer && /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.AgentBarProbeAnswer, { answer: probeAnswer.answer })
35730
35730
  ] }) : null;
35731
35731
  return /* @__PURE__ */ jsxRuntime.jsx(
35732
35732
  AgentBarShell,
@@ -35770,8 +35770,8 @@ function retrievedSources(citationData, docTitles) {
35770
35770
  var SourceChips = ({ messageId, citations, citationData }) => {
35771
35771
  const compact = chunkMCXS6X37_cjs.useCompactChat();
35772
35772
  const session = react.useArbiSessionStore();
35773
- const openChunk = chunk3VL64465_cjs.useOpenChunk();
35774
- const docTitles = chunk3VL64465_cjs.useWorkspaceDocTitles();
35773
+ const openChunk = chunkOAEJME5Q_cjs.useOpenChunk();
35774
+ const docTitles = chunkOAEJME5Q_cjs.useWorkspaceDocTitles();
35775
35775
  const sources = react$1.useMemo(() => {
35776
35776
  if (!citations) return retrievedSources(citationData, docTitles);
35777
35777
  const chunkMap = /* @__PURE__ */ new Map();
@@ -36576,7 +36576,7 @@ function ConversationThread({
36576
36576
  const isGuest = react.useWorkspaceRole() === "guest";
36577
36577
  const meetingReadOnly = isGuest && !!currentTask?.meeting_call_ext_id;
36578
36578
  const meetingCallExtId = currentTask?.meeting_call_ext_id ?? null;
36579
- const threadMessages = chunkN6B6H4QV_cjs.useMeetingThreadMessages(meetingCallExtId, messageHistory);
36579
+ const threadMessages = chunkL6DAJUDF_cjs.useMeetingThreadMessages(meetingCallExtId, messageHistory);
36580
36580
  const [firstTurnPrompt, setFirstTurnPrompt] = react$1.useState(null);
36581
36581
  const currentUserExtId = react.useArbiSession().user?.external_id ?? "";
36582
36582
  const pendingFirstTurn = react$1.useMemo(
@@ -36624,7 +36624,7 @@ function ConversationThread({
36624
36624
  return shownThreadMessages.slice(0, editIndex);
36625
36625
  }, [shownThreadMessages, editingMessageId]);
36626
36626
  const transcriptRunInfo = react$1.useMemo(
36627
- () => chunkI7O7QWKX_cjs.threadTranscriptRuns(meetingCallExtId ? visibleMessages : []),
36627
+ () => chunkQOV564TW_cjs.threadTranscriptRuns(meetingCallExtId ? visibleMessages : []),
36628
36628
  [meetingCallExtId, visibleMessages]
36629
36629
  );
36630
36630
  const threadLines = react$1.useMemo(
@@ -36639,7 +36639,7 @@ function ConversationThread({
36639
36639
  }),
36640
36640
  [threadMessages]
36641
36641
  );
36642
- const provisionalSpeakers = chunkN6B6H4QV_cjs.useProvisionalSpeakers(meetingCallExtId, threadLines);
36642
+ const provisionalSpeakers = chunkL6DAJUDF_cjs.useProvisionalSpeakers(meetingCallExtId, threadLines);
36643
36643
  const showProvisional = !!meetingCallExtId && meetingView !== "chat";
36644
36644
  const latestContextUsage = react$1.useMemo(() => {
36645
36645
  const messages = messageHistory;
@@ -36729,7 +36729,7 @@ function ConversationThread({
36729
36729
  }, [isGenerating]);
36730
36730
  const slashWorkflows = useSlashSkillWorkflows({ landing: "current-chat" });
36731
36731
  const composerSkills = react$1.useMemo(
36732
- () => ({ builtin: chunkOVZ54T5M_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
36732
+ () => ({ builtin: chunkLC7HFDCV_cjs.BUILTIN_SKILLS, openFor: slashWorkflows.openFor }),
36733
36733
  [slashWorkflows.openFor]
36734
36734
  );
36735
36735
  const browseSkills = react$1.useMemo(
@@ -36778,7 +36778,7 @@ function ConversationThread({
36778
36778
  useStartRequestedDraft();
36779
36779
  const orphanedMessage = react.getOrphanedLastMessage(messageHistory, isGenerating, assistantMode);
36780
36780
  return /* @__PURE__ */ jsxRuntime.jsxs(chunk5SXODQEV_cjs.ConversationBody, { children: [
36781
- /* @__PURE__ */ jsxRuntime.jsx(chunk5SXODQEV_cjs.ConversationMain, { "data-testid": `conversation-${currentConversationId}`, children: threadsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5SXODQEV_cjs.ConversationLoading, {}) : messageHistory.length > 0 || isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.AskAgainContext.Provider, { value: handleAskAgain, children: /* @__PURE__ */ jsxRuntime.jsxs(chunkI7O7QWKX_cjs.TranscriptRunsContext.Provider, { value: transcriptRunInfo, children: [
36781
+ /* @__PURE__ */ jsxRuntime.jsx(chunk5SXODQEV_cjs.ConversationMain, { "data-testid": `conversation-${currentConversationId}`, children: threadsLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunk5SXODQEV_cjs.ConversationLoading, {}) : messageHistory.length > 0 || isBranching ? /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.AskAgainContext.Provider, { value: handleAskAgain, children: /* @__PURE__ */ jsxRuntime.jsxs(chunkQOV564TW_cjs.TranscriptRunsContext.Provider, { value: transcriptRunInfo, children: [
36782
36782
  meetingCallExtId && transcriptLineCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center py-2", children: /* @__PURE__ */ jsxRuntime.jsx(
36783
36783
  chunkC5YZWJCC_cjs.ConversationFilter,
36784
36784
  {
@@ -36796,15 +36796,15 @@ function ConversationThread({
36796
36796
  ]
36797
36797
  }
36798
36798
  ) }),
36799
- /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedMessageArea, { ref: containerRef, messages: visibleMessages }),
36800
- showProvisional && /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
36799
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedMessageArea, { ref: containerRef, messages: visibleMessages }),
36800
+ showProvisional && /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
36801
36801
  ] }) }) : meetingCallExtId ? (
36802
36802
  // A meeting thread with nothing yet: call-aware, not the upload prompt.
36803
36803
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
36804
- /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.CallConversationEmpty, { callExtId: meetingCallExtId }),
36805
- /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
36804
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.CallConversationEmpty, { callExtId: meetingCallExtId }),
36805
+ /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.ProvisionalSpeakers, { ids: provisionalSpeakers })
36806
36806
  ] })
36807
- ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(chunk3VL64465_cjs.ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
36807
+ ) : currentTask && currentTask.status != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.TaskEmptyState, { task: currentTask }) : pendingFirstTurn && isGenerating ? /* @__PURE__ */ jsxRuntime.jsx(chunkOAEJME5Q_cjs.ConnectedMessageArea, { ref: containerRef, messages: pendingFirstTurn }) : /* @__PURE__ */ jsxRuntime.jsx(
36808
36808
  ConnectedConversationEmpty,
36809
36809
  {
36810
36810
  hasDocuments: allWorkspaceDocuments.length > 0,
@@ -36875,7 +36875,7 @@ function ConversationThread({
36875
36875
  children: react.READ_ONLY_MEETING_TEXT
36876
36876
  }
36877
36877
  ) : /* @__PURE__ */ jsxRuntime.jsx(
36878
- chunk3VL64465_cjs.ConversationComposer,
36878
+ chunkOAEJME5Q_cjs.ConversationComposer,
36879
36879
  {
36880
36880
  handleSendMessage: handleUserSend,
36881
36881
  placeholder: pendingAnswer ? "Type your answer to ARBI \u2014 or pick an option above" : void 0,
@@ -37224,7 +37224,7 @@ function ConnectedThreadsPage({
37224
37224
  };
37225
37225
  const page = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-full min-h-0 flex-col", "data-testid": "threads-page", children: [
37226
37226
  /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-0 flex-1 flex-col bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(
37227
- chunkOVZ54T5M_cjs.ConversationListView,
37227
+ chunkLC7HFDCV_cjs.ConversationListView,
37228
37228
  {
37229
37229
  showHeader,
37230
37230
  conversations: tasks,
@@ -37243,7 +37243,7 @@ function ConnectedThreadsPage({
37243
37243
  renderLabels: threadLabels.renderLabels,
37244
37244
  labelText: threadLabels.labelText,
37245
37245
  renderBy: (row2) => /* @__PURE__ */ jsxRuntime.jsx(
37246
- chunkOVZ54T5M_cjs.ConversationTurnSpeaker,
37246
+ chunkLC7HFDCV_cjs.ConversationTurnSpeaker,
37247
37247
  {
37248
37248
  variant: "icon",
37249
37249
  role: row2.last_message_role,
@@ -37276,7 +37276,7 @@ function ConnectedThreadsPage({
37276
37276
  }
37277
37277
  ),
37278
37278
  /* @__PURE__ */ jsxRuntime.jsx(
37279
- chunkY5RCJQ3A_cjs.RenameDialog,
37279
+ chunkQB7PNQDJ_cjs.RenameDialog,
37280
37280
  {
37281
37281
  open: !!renaming,
37282
37282
  onClose: () => {
@@ -37498,7 +37498,7 @@ function ConnectedConversationPage({
37498
37498
  );
37499
37499
  const { data: workspaceTags = [] } = react.useTags();
37500
37500
  const { tagId: threadTagId, clear: clearThreadTag } = useThreadTagFilter();
37501
- const historyCount = chunkOVZ54T5M_cjs.filterConversationRows(
37501
+ const historyCount = chunkLC7HFDCV_cjs.filterConversationRows(
37502
37502
  threadTagId ? conversations.filter((row2) => row2.label_ext_ids?.includes(threadTagId)) : conversations,
37503
37503
  threadFilter,
37504
37504
  (row2) => workspaceTags.filter((tag) => row2.label_ext_ids?.includes(tag.external_id)).map((tag) => tag.name).join(" "),
@@ -37541,7 +37541,7 @@ function ConnectedConversationPage({
37541
37541
  }
37542
37542
  }
37543
37543
  ),
37544
- isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunkN6B6H4QV_cjs.ConnectedConversationCallActions, {}),
37544
+ isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunkL6DAJUDF_cjs.ConnectedConversationCallActions, {}),
37545
37545
  isInChat && /* @__PURE__ */ jsxRuntime.jsx(
37546
37546
  chunk5SXODQEV_cjs.NewChatButton,
37547
37547
  {
@@ -37557,7 +37557,7 @@ function ConnectedConversationPage({
37557
37557
  ] })
37558
37558
  }
37559
37559
  ),
37560
- isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunk6CJNGKZQ_cjs.ConnectedThreadTaskBar, { conversationId: currentConversationId })
37560
+ isInChat && /* @__PURE__ */ jsxRuntime.jsx(chunk5V7JWZQ4_cjs.ConnectedThreadTaskBar, { conversationId: currentConversationId })
37561
37561
  ] }),
37562
37562
  isInChat && /* @__PURE__ */ jsxRuntime.jsx(
37563
37563
  ConversationThread,
@@ -38256,7 +38256,7 @@ function SsoResendVerificationButton({
38256
38256
  onClick: async () => handleResendEmailVerification(),
38257
38257
  disabled: loading || disabled,
38258
38258
  "aria-label": "Resend verification email",
38259
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkD4SDNNLX_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
38259
+ children: loading ? /* @__PURE__ */ jsxRuntime.jsx(chunkUFGC77KR_cjs.LoadingIndicator, {}) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
38260
38260
  "Didn't get a verification email? ",
38261
38261
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold", children: "Resend" })
38262
38262
  ] })
@@ -38267,16 +38267,16 @@ function SsoResendVerificationButton({
38267
38267
  }
38268
38268
  var NO_RECOVERY_KEY_WARNING = "Without your password or a recovery key, we cannot recover your account or data.";
38269
38269
  function ConnectedSsoCallback() {
38270
- const sso = chunk3VL64465_cjs.useSsoSignIn();
38270
+ const sso = chunkOAEJME5Q_cjs.useSsoSignIn();
38271
38271
  const { isAuthenticated: isAuthenticated2, isLoading, user } = sso;
38272
- const auth = chunk3VL64465_cjs.useAuthPages();
38272
+ const auth = chunkOAEJME5Q_cjs.useAuthPages();
38273
38273
  const { notify: notify17, navigate } = chunk25AIWOR6_cjs.useBlocksEnvironment();
38274
38274
  const passwordRules = auth.passwordRules;
38275
38275
  const isProcessing = react$1.useRef(false);
38276
38276
  const hasCheckedStatus = react$1.useRef(false);
38277
38277
  const [accessToken, setAccessToken] = react$1.useState(null);
38278
38278
  const [ssoStatus, setSsoStatus] = react$1.useState(null);
38279
- const ssoName = react$1.useMemo(() => chunk3VL64465_cjs.resolveSsoName(user ?? {}, ssoStatus ?? {}), [user, ssoStatus]);
38279
+ const ssoName = react$1.useMemo(() => chunkOAEJME5Q_cjs.resolveSsoName(user ?? {}, ssoStatus ?? {}), [user, ssoStatus]);
38280
38280
  const [password, setPassword] = react$1.useState("");
38281
38281
  const [confirmPassword, setConfirmPassword] = react$1.useState("");
38282
38282
  const [error, setError] = react$1.useState(null);
@@ -38454,7 +38454,7 @@ function ConnectedSsoCallback() {
38454
38454
  setIsCheckingStatus(true);
38455
38455
  try {
38456
38456
  console.info("[SSO] Checking user status...");
38457
- const response = await chunk3VL64465_cjs.ssoAccountStatus(arbi, accessToken, user);
38457
+ const response = await chunkOAEJME5Q_cjs.ssoAccountStatus(arbi, accessToken, user);
38458
38458
  console.info("[SSO] User status:", response.status);
38459
38459
  setSsoStatus(response);
38460
38460
  } catch (error2) {
@@ -38498,7 +38498,7 @@ function ConnectedSsoCallback() {
38498
38498
  setIsSubmitting(true);
38499
38499
  setError(null);
38500
38500
  try {
38501
- const { login, registered, linked } = await chunk3VL64465_cjs.completeSsoSignIn(arbi, {
38501
+ const { login, registered, linked } = await chunkOAEJME5Q_cjs.completeSsoSignIn(arbi, {
38502
38502
  token: accessToken,
38503
38503
  user,
38504
38504
  status: ssoStatus,
@@ -38780,7 +38780,7 @@ function ConnectedSsoCallback() {
38780
38780
  ssoStatus.status !== "new_user" && auth.footer
38781
38781
  ] }),
38782
38782
  /* @__PURE__ */ jsxRuntime.jsx(
38783
- chunk3VL64465_cjs.ConnectedForgotPassword,
38783
+ chunkOAEJME5Q_cjs.ConnectedForgotPassword,
38784
38784
  {
38785
38785
  open: showForgotPasswordModal,
38786
38786
  onOpenChange: setShowForgotPasswordModal,
@@ -38788,7 +38788,7 @@ function ConnectedSsoCallback() {
38788
38788
  }
38789
38789
  ),
38790
38790
  /* @__PURE__ */ jsxRuntime.jsx(
38791
- chunk3VL64465_cjs.ConnectedPasswordChangeDialog,
38791
+ chunkOAEJME5Q_cjs.ConnectedPasswordChangeDialog,
38792
38792
  {
38793
38793
  open: showChangePasswordModal,
38794
38794
  onClose: () => setShowChangePasswordModal(false),
@@ -38950,7 +38950,7 @@ function ConnectedRecoveryKeyDialog({
38950
38950
  const arbi = react.useArbi();
38951
38951
  const { user, isSso: isSsoMode } = react.useArbiSession();
38952
38952
  const userEmail = user?.email;
38953
- const sso = chunk3VL64465_cjs.useSsoSignIn();
38953
+ const sso = chunkOAEJME5Q_cjs.useSsoSignIn();
38954
38954
  const handleVerify = async () => {
38955
38955
  setError(null);
38956
38956
  if (!password) {
@@ -39150,27 +39150,27 @@ function ConnectedOAuthConsentPage({
39150
39150
  oauthErrorRedirect(params.redirectUri, params.state, "access_denied");
39151
39151
  }
39152
39152
  if (error && !params) {
39153
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
39153
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentMessage, { tone: "error", title: "Invalid Request", children: error }) });
39154
39154
  }
39155
39155
  if (!params) {
39156
39156
  return null;
39157
39157
  }
39158
39158
  if (clientInfo?.isLocalAgentFlow) {
39159
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_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." }) });
39159
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_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." }) });
39160
39160
  }
39161
39161
  if (!isAuthenticated2) {
39162
39162
  return null;
39163
39163
  }
39164
39164
  if (callbackUrl) {
39165
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentCard, { size: "md", children: [
39166
- /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
39165
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentCard, { size: "md", children: [
39166
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ClipboardList, {}), title: "Almost there", children: [
39167
39167
  "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",
39168
39168
  " ",
39169
39169
  copied ? "it's already copied to your clipboard." : "copy it first."
39170
39170
  ] }),
39171
- /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentSection, { title: "Callback URL", children: [
39172
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
39173
- /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentText, { variant: "hint", children: [
39171
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentSection, { title: "Callback URL", children: [
39172
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.CopyableUrl, { url: callbackUrl, copied, onCopy: handleCopy }),
39173
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentText, { variant: "hint", children: [
39174
39174
  "In Claude Code, paste the URL at the prompt that says",
39175
39175
  " ",
39176
39176
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-foreground", children: '"paste the full redirect URL here"' }),
@@ -39179,17 +39179,17 @@ function ConnectedOAuthConsentPage({
39179
39179
  ] })
39180
39180
  ] }) });
39181
39181
  }
39182
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentCard, { children: [
39183
- /* @__PURE__ */ jsxRuntime.jsxs(chunkOVZ54T5M_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
39184
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
39182
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPage, { children: /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentCard, { children: [
39183
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkLC7HFDCV_cjs.ConsentHeader, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Link2, {}), title: `Connect to ${appName}`, children: [
39184
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentStrong, { children: clientInfo?.name ?? params.clientId }),
39185
39185
  " is requesting access to your ",
39186
39186
  appName,
39187
39187
  " workspace."
39188
39188
  ] }),
39189
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentPermissionList, { items: permissions }) }),
39190
- error && /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentNotice, { tone: "error", children: error }),
39191
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
39192
- /* @__PURE__ */ jsxRuntime.jsx(chunkOVZ54T5M_cjs.ConsentFootnote, { children: footnote })
39189
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentSection, { title: "This will allow", children: /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentPermissionList, { items: permissions }) }),
39190
+ error && /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentNotice, { tone: "error", children: error }),
39191
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentActions, { isLoading: loading, onDeny: handleDeny, onAllow: handleAllow }),
39192
+ /* @__PURE__ */ jsxRuntime.jsx(chunkLC7HFDCV_cjs.ConsentFootnote, { children: footnote })
39193
39193
  ] }) });
39194
39194
  }
39195
39195
  function ConnectedSharedFilesPage({
@@ -39363,7 +39363,7 @@ function ConnectedPanelHost({
39363
39363
  onClose();
39364
39364
  }, [onClose]);
39365
39365
  const setFocusedArea = react.useArbiSessionStore().setFocusedArea;
39366
- const { popoutTitle } = chunkTANMVAB2_cjs.usePanelHostSupport();
39366
+ const { popoutTitle } = chunkZLDFQZSP_cjs.usePanelHostSupport();
39367
39367
  const focusedArea = react.useArbiSessionState((s) => s.shell.focusedArea);
39368
39368
  const handlePanelFocus = react$1.useCallback(() => {
39369
39369
  setFocusedArea(panelId);
@@ -39396,7 +39396,7 @@ function ConnectedPanelHost({
39396
39396
  }, [isExiting]);
39397
39397
  if (!isOpen && !isExiting) return null;
39398
39398
  const modeSwitcher = /* @__PURE__ */ jsxRuntime.jsx(
39399
- chunkTANMVAB2_cjs.PanelModeSwitcher,
39399
+ chunkZLDFQZSP_cjs.PanelModeSwitcher,
39400
39400
  {
39401
39401
  mode,
39402
39402
  onModeChange: setPanelMode,
@@ -39406,7 +39406,7 @@ function ConnectedPanelHost({
39406
39406
  }
39407
39407
  );
39408
39408
  const panelElement = /* @__PURE__ */ jsxRuntime.jsx(
39409
- chunkY5RCJQ3A_cjs.FloatingPanel,
39409
+ chunkQB7PNQDJ_cjs.FloatingPanel,
39410
39410
  {
39411
39411
  panelId,
39412
39412
  mode,
@@ -39418,7 +39418,7 @@ function ConnectedPanelHost({
39418
39418
  }
39419
39419
  );
39420
39420
  return /* @__PURE__ */ jsxRuntime.jsx(
39421
- chunkTANMVAB2_cjs.PanelPortal,
39421
+ chunkZLDFQZSP_cjs.PanelPortal,
39422
39422
  {
39423
39423
  defaultWidth,
39424
39424
  panelId,
@@ -39456,7 +39456,7 @@ function ConnectedAppShell({
39456
39456
  const session = react.useArbiSessionStore();
39457
39457
  const dockedPanel = react.useArbiSessionState((state) => state.shell.panels.docked);
39458
39458
  const dockSqueezed = chunkFX3K6LNZ_cjs.useMediaQuery(sidebarPolicy?.dockedRailQuery ?? "(max-width: 0px)");
39459
- const sidebar = chunkTANMVAB2_cjs.useSidebarController({
39459
+ const sidebar = chunkZLDFQZSP_cjs.useSidebarController({
39460
39460
  ...useSessionSidebar(),
39461
39461
  forceRail: !!sidebarPolicy?.dockedRailQuery && dockSqueezed && dockedPanel !== null,
39462
39462
  hoverExpansion: sidebarPolicy?.hoverExpansion
@@ -39486,7 +39486,7 @@ function ConnectedAppShell({
39486
39486
  session.setFocusedArea("main");
39487
39487
  contentProps?.onClick?.(event);
39488
39488
  },
39489
- children: content.mode === "docked" ? /* @__PURE__ */ jsxRuntime.jsxs(chunkTANMVAB2_cjs.DockZone, { "data-testid": content.testId, children: [
39489
+ children: content.mode === "docked" ? /* @__PURE__ */ jsxRuntime.jsxs(chunkZLDFQZSP_cjs.DockZone, { "data-testid": content.testId, children: [
39490
39490
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: content.mainPanelVisible ? "hidden" : "h-full min-h-0", children: pageContent }),
39491
39491
  /* @__PURE__ */ jsxRuntime.jsx(
39492
39492
  "div",
@@ -39514,7 +39514,7 @@ function ConnectedTipBar({
39514
39514
  className,
39515
39515
  revealOnHover = false
39516
39516
  }) {
39517
- const { showHints, settingsLoaded, setShowHintsPersisted, setShowHints } = chunk3VL64465_cjs.useContextualHints();
39517
+ const { showHints, settingsLoaded, setShowHintsPersisted, setShowHints } = chunkOAEJME5Q_cjs.useContextualHints();
39518
39518
  const { dismissed, dismissTip } = react.useDismissedTips();
39519
39519
  const { notify: notify17 } = chunk25AIWOR6_cjs.useBlocksEnvironment();
39520
39520
  const { data: workspaces } = react.useWorkspaces();
@@ -39525,7 +39525,7 @@ function ConnectedTipBar({
39525
39525
  workspaceOpen,
39526
39526
  ...state
39527
39527
  };
39528
- const { tip, index, count: count2, previous, next, onHoverChange } = chunkD4SDNNLX_cjs.useTipsPlacement({
39528
+ const { tip, index, count: count2, previous, next, onHoverChange } = chunkUFGC77KR_cjs.useTipsPlacement({
39529
39529
  registry,
39530
39530
  context,
39531
39531
  state: situation,
@@ -39558,7 +39558,7 @@ function ConnectedTipBar({
39558
39558
  });
39559
39559
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
39560
39560
  /* @__PURE__ */ jsxRuntime.jsx(
39561
- chunkTANMVAB2_cjs.TipCard,
39561
+ chunkZLDFQZSP_cjs.TipCard,
39562
39562
  {
39563
39563
  message: tip.message,
39564
39564
  index,
@@ -39603,7 +39603,7 @@ function useGettingStarted({
39603
39603
  const { user } = react.useArbiSession();
39604
39604
  const userExtId = user?.external_id;
39605
39605
  const temporaryOnly = user?.temporary_access_only === true;
39606
- const { showHints, settingsLoaded, setShowHints, setShowHintsPersisted } = chunk3VL64465_cjs.useContextualHints();
39606
+ const { showHints, settingsLoaded, setShowHints, setShowHintsPersisted } = chunkOAEJME5Q_cjs.useContextualHints();
39607
39607
  const { dismissed, loaded: dismissedLoaded, dismissTip } = react.useDismissedTips();
39608
39608
  const welcomeJourneyEnabled = react.useFeature("welcomeJourney");
39609
39609
  const session = react.useArbiSessionStore();
@@ -39715,7 +39715,7 @@ function ConnectedGettingStarted({
39715
39715
  const coreSteps = steps.filter((s) => !s.optional);
39716
39716
  const currentStep = coreSteps.find((s) => !s.done);
39717
39717
  return /* @__PURE__ */ jsxRuntime.jsx(
39718
- chunkLYUS5I7M_cjs.GettingStartedStrip,
39718
+ chunkZK56K25Q_cjs.GettingStartedStrip,
39719
39719
  {
39720
39720
  steps: coreSteps,
39721
39721
  currentStepId: currentStep?.id,
@@ -39858,55 +39858,55 @@ function createTaggedContentNavigation({
39858
39858
 
39859
39859
  Object.defineProperty(exports, "CAP_REACHED_MESSAGE", {
39860
39860
  enumerable: true,
39861
- get: function () { return chunkV4SRR4GE_cjs.CAP_REACHED_MESSAGE; }
39861
+ get: function () { return chunkORIOOXUU_cjs.CAP_REACHED_MESSAGE; }
39862
39862
  });
39863
39863
  Object.defineProperty(exports, "ZERO_BUDGET_MESSAGE", {
39864
39864
  enumerable: true,
39865
- get: function () { return chunkV4SRR4GE_cjs.ZERO_BUDGET_MESSAGE; }
39865
+ get: function () { return chunkORIOOXUU_cjs.ZERO_BUDGET_MESSAGE; }
39866
39866
  });
39867
39867
  Object.defineProperty(exports, "aiUsageResetTimestamp", {
39868
39868
  enumerable: true,
39869
- get: function () { return chunkV4SRR4GE_cjs.aiUsageResetTimestamp; }
39869
+ get: function () { return chunkORIOOXUU_cjs.aiUsageResetTimestamp; }
39870
39870
  });
39871
39871
  Object.defineProperty(exports, "formatMoney", {
39872
39872
  enumerable: true,
39873
- get: function () { return chunkV4SRR4GE_cjs.formatMoney; }
39873
+ get: function () { return chunkORIOOXUU_cjs.formatMoney; }
39874
39874
  });
39875
39875
  Object.defineProperty(exports, "formatResetDate", {
39876
39876
  enumerable: true,
39877
- get: function () { return chunkV4SRR4GE_cjs.formatResetDate; }
39877
+ get: function () { return chunkORIOOXUU_cjs.formatResetDate; }
39878
39878
  });
39879
39879
  Object.defineProperty(exports, "getQuotaItems", {
39880
39880
  enumerable: true,
39881
- get: function () { return chunkV4SRR4GE_cjs.getQuotaItems; }
39881
+ get: function () { return chunkORIOOXUU_cjs.getQuotaItems; }
39882
39882
  });
39883
39883
  Object.defineProperty(exports, "isAddonBudgetZero", {
39884
39884
  enumerable: true,
39885
- get: function () { return chunkV4SRR4GE_cjs.isAddonBudgetZero; }
39885
+ get: function () { return chunkORIOOXUU_cjs.isAddonBudgetZero; }
39886
39886
  });
39887
39887
  Object.defineProperty(exports, "isProProject", {
39888
39888
  enumerable: true,
39889
- get: function () { return chunkV4SRR4GE_cjs.isProProject; }
39889
+ get: function () { return chunkORIOOXUU_cjs.isProProject; }
39890
39890
  });
39891
39891
  Object.defineProperty(exports, "planBadgeView", {
39892
39892
  enumerable: true,
39893
- get: function () { return chunkV4SRR4GE_cjs.planBadgeView; }
39893
+ get: function () { return chunkORIOOXUU_cjs.planBadgeView; }
39894
39894
  });
39895
39895
  Object.defineProperty(exports, "planName", {
39896
39896
  enumerable: true,
39897
- get: function () { return chunkV4SRR4GE_cjs.planName; }
39897
+ get: function () { return chunkORIOOXUU_cjs.planName; }
39898
39898
  });
39899
39899
  Object.defineProperty(exports, "projectGroupBilling", {
39900
39900
  enumerable: true,
39901
- get: function () { return chunkV4SRR4GE_cjs.projectGroupBilling; }
39901
+ get: function () { return chunkORIOOXUU_cjs.projectGroupBilling; }
39902
39902
  });
39903
39903
  Object.defineProperty(exports, "useBillingSupport", {
39904
39904
  enumerable: true,
39905
- get: function () { return chunkV4SRR4GE_cjs.useBillingSupport; }
39905
+ get: function () { return chunkORIOOXUU_cjs.useBillingSupport; }
39906
39906
  });
39907
39907
  Object.defineProperty(exports, "useRewardBalance", {
39908
39908
  enumerable: true,
39909
- get: function () { return chunkV4SRR4GE_cjs.useRewardBalance; }
39909
+ get: function () { return chunkORIOOXUU_cjs.useRewardBalance; }
39910
39910
  });
39911
39911
  Object.defineProperty(exports, "ConnectedTagEntity", {
39912
39912
  enumerable: true,
@@ -39922,127 +39922,127 @@ Object.defineProperty(exports, "useMemberLookup", {
39922
39922
  });
39923
39923
  Object.defineProperty(exports, "ConnectedAssistantDock", {
39924
39924
  enumerable: true,
39925
- get: function () { return chunkXUO32INL_cjs.ConnectedAssistantDock; }
39925
+ get: function () { return chunkQNDKLQYT_cjs.ConnectedAssistantDock; }
39926
39926
  });
39927
39927
  Object.defineProperty(exports, "redlineStats", {
39928
39928
  enumerable: true,
39929
- get: function () { return chunkXUO32INL_cjs.redlineStats; }
39929
+ get: function () { return chunkQNDKLQYT_cjs.redlineStats; }
39930
39930
  });
39931
39931
  Object.defineProperty(exports, "textToArtifact", {
39932
39932
  enumerable: true,
39933
- get: function () { return chunkXUO32INL_cjs.textToArtifact; }
39933
+ get: function () { return chunkQNDKLQYT_cjs.textToArtifact; }
39934
39934
  });
39935
39935
  Object.defineProperty(exports, "toRedlineMarkdown", {
39936
39936
  enumerable: true,
39937
- get: function () { return chunkXUO32INL_cjs.toRedlineMarkdown; }
39937
+ get: function () { return chunkQNDKLQYT_cjs.toRedlineMarkdown; }
39938
39938
  });
39939
39939
  Object.defineProperty(exports, "useConnectedAiTask", {
39940
39940
  enumerable: true,
39941
- get: function () { return chunkXUO32INL_cjs.useConnectedAiTask; }
39941
+ get: function () { return chunkQNDKLQYT_cjs.useConnectedAiTask; }
39942
39942
  });
39943
39943
  Object.defineProperty(exports, "useConnectedChat", {
39944
39944
  enumerable: true,
39945
- get: function () { return chunkXUO32INL_cjs.useConnectedChat; }
39945
+ get: function () { return chunkQNDKLQYT_cjs.useConnectedChat; }
39946
39946
  });
39947
39947
  Object.defineProperty(exports, "useSemanticSearch", {
39948
39948
  enumerable: true,
39949
- get: function () { return chunkXUO32INL_cjs.useSemanticSearch; }
39949
+ get: function () { return chunkQNDKLQYT_cjs.useSemanticSearch; }
39950
39950
  });
39951
39951
  Object.defineProperty(exports, "useWorkspaceDocs", {
39952
39952
  enumerable: true,
39953
- get: function () { return chunkXUO32INL_cjs.useWorkspaceDocs; }
39953
+ get: function () { return chunkQNDKLQYT_cjs.useWorkspaceDocs; }
39954
39954
  });
39955
39955
  Object.defineProperty(exports, "ConnectedTaskActivityDialog", {
39956
39956
  enumerable: true,
39957
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedTaskActivityDialog; }
39957
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedTaskActivityDialog; }
39958
39958
  });
39959
39959
  Object.defineProperty(exports, "ConnectedTaskComposer", {
39960
39960
  enumerable: true,
39961
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedTaskComposer; }
39961
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedTaskComposer; }
39962
39962
  });
39963
39963
  Object.defineProperty(exports, "ConnectedThreadTaskBar", {
39964
39964
  enumerable: true,
39965
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedThreadTaskBar; }
39965
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedThreadTaskBar; }
39966
39966
  });
39967
39967
  Object.defineProperty(exports, "ConnectedWorkflowHistory", {
39968
39968
  enumerable: true,
39969
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedWorkflowHistory; }
39969
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedWorkflowHistory; }
39970
39970
  });
39971
39971
  Object.defineProperty(exports, "ConnectedWorkflowRunPage", {
39972
39972
  enumerable: true,
39973
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedWorkflowRunPage; }
39973
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedWorkflowRunPage; }
39974
39974
  });
39975
39975
  Object.defineProperty(exports, "ConnectedWorkflowRunner", {
39976
39976
  enumerable: true,
39977
- get: function () { return chunk6CJNGKZQ_cjs.ConnectedWorkflowRunner; }
39977
+ get: function () { return chunk5V7JWZQ4_cjs.ConnectedWorkflowRunner; }
39978
39978
  });
39979
39979
  Object.defineProperty(exports, "DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS", {
39980
39980
  enumerable: true,
39981
- get: function () { return chunk6CJNGKZQ_cjs.DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS; }
39981
+ get: function () { return chunk5V7JWZQ4_cjs.DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS; }
39982
39982
  });
39983
39983
  Object.defineProperty(exports, "DEFAULT_WORKFLOW_RUN_PAGE_LABELS", {
39984
39984
  enumerable: true,
39985
- get: function () { return chunk6CJNGKZQ_cjs.DEFAULT_WORKFLOW_RUN_PAGE_LABELS; }
39985
+ get: function () { return chunk5V7JWZQ4_cjs.DEFAULT_WORKFLOW_RUN_PAGE_LABELS; }
39986
39986
  });
39987
39987
  Object.defineProperty(exports, "WorkflowRunThread", {
39988
39988
  enumerable: true,
39989
- get: function () { return chunk6CJNGKZQ_cjs.WorkflowRunThread; }
39989
+ get: function () { return chunk5V7JWZQ4_cjs.WorkflowRunThread; }
39990
39990
  });
39991
39991
  Object.defineProperty(exports, "WorkflowRunWorkspaceChangedError", {
39992
39992
  enumerable: true,
39993
- get: function () { return chunk6CJNGKZQ_cjs.WorkflowRunWorkspaceChangedError; }
39993
+ get: function () { return chunk5V7JWZQ4_cjs.WorkflowRunWorkspaceChangedError; }
39994
39994
  });
39995
39995
  Object.defineProperty(exports, "buildProjectSummaries", {
39996
39996
  enumerable: true,
39997
- get: function () { return chunk6CJNGKZQ_cjs.buildProjectSummaries; }
39997
+ get: function () { return chunk5V7JWZQ4_cjs.buildProjectSummaries; }
39998
39998
  });
39999
39999
  Object.defineProperty(exports, "primaryProjectWorkspace", {
40000
40000
  enumerable: true,
40001
- get: function () { return chunk6CJNGKZQ_cjs.primaryProjectWorkspace; }
40001
+ get: function () { return chunk5V7JWZQ4_cjs.primaryProjectWorkspace; }
40002
40002
  });
40003
40003
  Object.defineProperty(exports, "useEnsureRequiredLabels", {
40004
40004
  enumerable: true,
40005
- get: function () { return chunk6CJNGKZQ_cjs.useEnsureRequiredLabels; }
40005
+ get: function () { return chunk5V7JWZQ4_cjs.useEnsureRequiredLabels; }
40006
40006
  });
40007
40007
  Object.defineProperty(exports, "useProjectSummaries", {
40008
40008
  enumerable: true,
40009
- get: function () { return chunk6CJNGKZQ_cjs.useProjectSummaries; }
40009
+ get: function () { return chunk5V7JWZQ4_cjs.useProjectSummaries; }
40010
40010
  });
40011
40011
  Object.defineProperty(exports, "useProjectSummary", {
40012
40012
  enumerable: true,
40013
- get: function () { return chunk6CJNGKZQ_cjs.useProjectSummary; }
40013
+ get: function () { return chunk5V7JWZQ4_cjs.useProjectSummary; }
40014
40014
  });
40015
40015
  Object.defineProperty(exports, "useRenderTaskPerson", {
40016
40016
  enumerable: true,
40017
- get: function () { return chunk6CJNGKZQ_cjs.useRenderTaskPerson; }
40017
+ get: function () { return chunk5V7JWZQ4_cjs.useRenderTaskPerson; }
40018
40018
  });
40019
40019
  Object.defineProperty(exports, "useRequiredLabels", {
40020
40020
  enumerable: true,
40021
- get: function () { return chunk6CJNGKZQ_cjs.useRequiredLabels; }
40021
+ get: function () { return chunk5V7JWZQ4_cjs.useRequiredLabels; }
40022
40022
  });
40023
40023
  Object.defineProperty(exports, "useSkillsEnabled", {
40024
40024
  enumerable: true,
40025
- get: function () { return chunk6CJNGKZQ_cjs.useSkillsEnabled; }
40025
+ get: function () { return chunk5V7JWZQ4_cjs.useSkillsEnabled; }
40026
40026
  });
40027
40027
  Object.defineProperty(exports, "useTaskPeople", {
40028
40028
  enumerable: true,
40029
- get: function () { return chunk6CJNGKZQ_cjs.useTaskPeople; }
40029
+ get: function () { return chunk5V7JWZQ4_cjs.useTaskPeople; }
40030
40030
  });
40031
40031
  Object.defineProperty(exports, "useWorkflowDefinitions", {
40032
40032
  enumerable: true,
40033
- get: function () { return chunk6CJNGKZQ_cjs.useWorkflowDefinitions; }
40033
+ get: function () { return chunk5V7JWZQ4_cjs.useWorkflowDefinitions; }
40034
40034
  });
40035
40035
  Object.defineProperty(exports, "useWorkflowTasks", {
40036
40036
  enumerable: true,
40037
- get: function () { return chunk6CJNGKZQ_cjs.useWorkflowTasks; }
40037
+ get: function () { return chunk5V7JWZQ4_cjs.useWorkflowTasks; }
40038
40038
  });
40039
40039
  Object.defineProperty(exports, "useWorkflowsPageState", {
40040
40040
  enumerable: true,
40041
- get: function () { return chunk6CJNGKZQ_cjs.useWorkflowsPageState; }
40041
+ get: function () { return chunk5V7JWZQ4_cjs.useWorkflowsPageState; }
40042
40042
  });
40043
40043
  Object.defineProperty(exports, "workflowRunView", {
40044
40044
  enumerable: true,
40045
- get: function () { return chunk6CJNGKZQ_cjs.workflowRunView; }
40045
+ get: function () { return chunk5V7JWZQ4_cjs.workflowRunView; }
40046
40046
  });
40047
40047
  Object.defineProperty(exports, "FILES_PREFS_KEY", {
40048
40048
  enumerable: true,
@@ -40078,207 +40078,207 @@ Object.defineProperty(exports, "usePendingFolders", {
40078
40078
  });
40079
40079
  Object.defineProperty(exports, "AgentSteps", {
40080
40080
  enumerable: true,
40081
- get: function () { return chunk3VL64465_cjs.AgentSteps; }
40081
+ get: function () { return chunkOAEJME5Q_cjs.AgentSteps; }
40082
40082
  });
40083
40083
  Object.defineProperty(exports, "AnswerTable", {
40084
40084
  enumerable: true,
40085
- get: function () { return chunk3VL64465_cjs.AnswerTable; }
40085
+ get: function () { return chunkOAEJME5Q_cjs.AnswerTable; }
40086
40086
  });
40087
40087
  Object.defineProperty(exports, "ArbiChat", {
40088
40088
  enumerable: true,
40089
- get: function () { return chunk3VL64465_cjs.ArbiChat; }
40089
+ get: function () { return chunkOAEJME5Q_cjs.ArbiChat; }
40090
40090
  });
40091
40091
  Object.defineProperty(exports, "AskAgainContext", {
40092
40092
  enumerable: true,
40093
- get: function () { return chunk3VL64465_cjs.AskAgainContext; }
40093
+ get: function () { return chunkOAEJME5Q_cjs.AskAgainContext; }
40094
40094
  });
40095
40095
  Object.defineProperty(exports, "ConnectedBranchControls", {
40096
40096
  enumerable: true,
40097
- get: function () { return chunk3VL64465_cjs.ConnectedBranchControls; }
40097
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedBranchControls; }
40098
40098
  });
40099
40099
  Object.defineProperty(exports, "ConnectedCitationRenderer", {
40100
40100
  enumerable: true,
40101
- get: function () { return chunk3VL64465_cjs.ConnectedCitationRenderer; }
40101
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedCitationRenderer; }
40102
40102
  });
40103
40103
  Object.defineProperty(exports, "ConnectedCompactConversation", {
40104
40104
  enumerable: true,
40105
- get: function () { return chunk3VL64465_cjs.ConnectedCompactConversation; }
40105
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedCompactConversation; }
40106
40106
  });
40107
40107
  Object.defineProperty(exports, "ConnectedCompactLogin", {
40108
40108
  enumerable: true,
40109
- get: function () { return chunk3VL64465_cjs.ConnectedCompactLogin; }
40109
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedCompactLogin; }
40110
40110
  });
40111
40111
  Object.defineProperty(exports, "ConnectedConversationDocumentPicker", {
40112
40112
  enumerable: true,
40113
- get: function () { return chunk3VL64465_cjs.ConnectedConversationDocumentPicker; }
40113
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedConversationDocumentPicker; }
40114
40114
  });
40115
40115
  Object.defineProperty(exports, "ConnectedDangerZone", {
40116
40116
  enumerable: true,
40117
- get: function () { return chunk3VL64465_cjs.ConnectedDangerZone; }
40117
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedDangerZone; }
40118
40118
  });
40119
40119
  Object.defineProperty(exports, "ConnectedEmbeddedChat", {
40120
40120
  enumerable: true,
40121
- get: function () { return chunk3VL64465_cjs.ConnectedEmbeddedChat; }
40121
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedEmbeddedChat; }
40122
40122
  });
40123
40123
  Object.defineProperty(exports, "ConnectedForgotPassword", {
40124
40124
  enumerable: true,
40125
- get: function () { return chunk3VL64465_cjs.ConnectedForgotPassword; }
40125
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedForgotPassword; }
40126
40126
  });
40127
40127
  Object.defineProperty(exports, "ConnectedIdentityVerification", {
40128
40128
  enumerable: true,
40129
- get: function () { return chunk3VL64465_cjs.ConnectedIdentityVerification; }
40129
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedIdentityVerification; }
40130
40130
  });
40131
40131
  Object.defineProperty(exports, "ConnectedLoginPage", {
40132
40132
  enumerable: true,
40133
- get: function () { return chunk3VL64465_cjs.ConnectedLoginPage; }
40133
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedLoginPage; }
40134
40134
  });
40135
40135
  Object.defineProperty(exports, "ConnectedLogoutDialog", {
40136
40136
  enumerable: true,
40137
- get: function () { return chunk3VL64465_cjs.ConnectedLogoutDialog; }
40137
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedLogoutDialog; }
40138
40138
  });
40139
40139
  Object.defineProperty(exports, "ConnectedMessage", {
40140
40140
  enumerable: true,
40141
- get: function () { return chunk3VL64465_cjs.ConnectedMessage; }
40141
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedMessage; }
40142
40142
  });
40143
40143
  Object.defineProperty(exports, "ConnectedMessageArea", {
40144
40144
  enumerable: true,
40145
- get: function () { return chunk3VL64465_cjs.ConnectedMessageArea; }
40145
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedMessageArea; }
40146
40146
  });
40147
40147
  Object.defineProperty(exports, "ConnectedMessageList", {
40148
40148
  enumerable: true,
40149
- get: function () { return chunk3VL64465_cjs.ConnectedMessageList; }
40149
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedMessageList; }
40150
40150
  });
40151
40151
  Object.defineProperty(exports, "ConnectedModelSelector", {
40152
40152
  enumerable: true,
40153
- get: function () { return chunk3VL64465_cjs.ConnectedModelSelector; }
40153
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedModelSelector; }
40154
40154
  });
40155
40155
  Object.defineProperty(exports, "ConnectedNotificationPreferences", {
40156
40156
  enumerable: true,
40157
- get: function () { return chunk3VL64465_cjs.ConnectedNotificationPreferences; }
40157
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedNotificationPreferences; }
40158
40158
  });
40159
40159
  Object.defineProperty(exports, "ConnectedPasswordChangeDialog", {
40160
40160
  enumerable: true,
40161
- get: function () { return chunk3VL64465_cjs.ConnectedPasswordChangeDialog; }
40161
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedPasswordChangeDialog; }
40162
40162
  });
40163
40163
  Object.defineProperty(exports, "ConnectedProfileCard", {
40164
40164
  enumerable: true,
40165
- get: function () { return chunk3VL64465_cjs.ConnectedProfileCard; }
40165
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedProfileCard; }
40166
40166
  });
40167
40167
  Object.defineProperty(exports, "ConnectedRequireVerified", {
40168
40168
  enumerable: true,
40169
- get: function () { return chunk3VL64465_cjs.ConnectedRequireVerified; }
40169
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedRequireVerified; }
40170
40170
  });
40171
40171
  Object.defineProperty(exports, "ConnectedSecuritySection", {
40172
40172
  enumerable: true,
40173
- get: function () { return chunk3VL64465_cjs.ConnectedSecuritySection; }
40173
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedSecuritySection; }
40174
40174
  });
40175
40175
  Object.defineProperty(exports, "ConnectedSessionsRow", {
40176
40176
  enumerable: true,
40177
- get: function () { return chunk3VL64465_cjs.ConnectedSessionsRow; }
40177
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedSessionsRow; }
40178
40178
  });
40179
40179
  Object.defineProperty(exports, "ConnectedThreadsPreview", {
40180
40180
  enumerable: true,
40181
- get: function () { return chunk3VL64465_cjs.ConnectedThreadsPreview; }
40181
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedThreadsPreview; }
40182
40182
  });
40183
40183
  Object.defineProperty(exports, "ConnectedUserEntity", {
40184
40184
  enumerable: true,
40185
- get: function () { return chunk3VL64465_cjs.ConnectedUserEntity; }
40185
+ get: function () { return chunkOAEJME5Q_cjs.ConnectedUserEntity; }
40186
40186
  });
40187
40187
  Object.defineProperty(exports, "ConversationComposer", {
40188
40188
  enumerable: true,
40189
- get: function () { return chunk3VL64465_cjs.ConversationComposer; }
40189
+ get: function () { return chunkOAEJME5Q_cjs.ConversationComposer; }
40190
40190
  });
40191
40191
  Object.defineProperty(exports, "EmbeddedChatPanel", {
40192
40192
  enumerable: true,
40193
- get: function () { return chunk3VL64465_cjs.EmbeddedChatPanel; }
40193
+ get: function () { return chunkOAEJME5Q_cjs.EmbeddedChatPanel; }
40194
40194
  });
40195
40195
  Object.defineProperty(exports, "MessageDetailsModal", {
40196
40196
  enumerable: true,
40197
- get: function () { return chunk3VL64465_cjs.MessageDetailsModal; }
40197
+ get: function () { return chunkOAEJME5Q_cjs.MessageDetailsModal; }
40198
40198
  });
40199
40199
  Object.defineProperty(exports, "MessageLiveSeconds", {
40200
40200
  enumerable: true,
40201
- get: function () { return chunk3VL64465_cjs.MessageLiveSeconds; }
40201
+ get: function () { return chunkOAEJME5Q_cjs.MessageLiveSeconds; }
40202
40202
  });
40203
40203
  Object.defineProperty(exports, "PENDING_RECOVERY_KEY", {
40204
40204
  enumerable: true,
40205
- get: function () { return chunk3VL64465_cjs.PENDING_RECOVERY_KEY; }
40205
+ get: function () { return chunkOAEJME5Q_cjs.PENDING_RECOVERY_KEY; }
40206
40206
  });
40207
40207
  Object.defineProperty(exports, "PREMIUM_TIER_TAG", {
40208
40208
  enumerable: true,
40209
- get: function () { return chunk3VL64465_cjs.PREMIUM_TIER_TAG; }
40209
+ get: function () { return chunkOAEJME5Q_cjs.PREMIUM_TIER_TAG; }
40210
40210
  });
40211
40211
  Object.defineProperty(exports, "RunningSubagents", {
40212
40212
  enumerable: true,
40213
- get: function () { return chunk3VL64465_cjs.RunningSubagents; }
40213
+ get: function () { return chunkOAEJME5Q_cjs.RunningSubagents; }
40214
40214
  });
40215
40215
  Object.defineProperty(exports, "STANDARD_TIER_TAG", {
40216
40216
  enumerable: true,
40217
- get: function () { return chunk3VL64465_cjs.STANDARD_TIER_TAG; }
40217
+ get: function () { return chunkOAEJME5Q_cjs.STANDARD_TIER_TAG; }
40218
40218
  });
40219
40219
  Object.defineProperty(exports, "SessionStatusIcon", {
40220
40220
  enumerable: true,
40221
- get: function () { return chunk3VL64465_cjs.SessionStatusIcon; }
40221
+ get: function () { return chunkOAEJME5Q_cjs.SessionStatusIcon; }
40222
40222
  });
40223
40223
  Object.defineProperty(exports, "WorkflowStepMessage", {
40224
40224
  enumerable: true,
40225
- get: function () { return chunk3VL64465_cjs.WorkflowStepMessage; }
40225
+ get: function () { return chunkOAEJME5Q_cjs.WorkflowStepMessage; }
40226
40226
  });
40227
40227
  Object.defineProperty(exports, "backUpOnSignup", {
40228
40228
  enumerable: true,
40229
- get: function () { return chunk3VL64465_cjs.backUpOnSignup; }
40229
+ get: function () { return chunkOAEJME5Q_cjs.backUpOnSignup; }
40230
40230
  });
40231
40231
  Object.defineProperty(exports, "defaultHost", {
40232
40232
  enumerable: true,
40233
- get: function () { return chunk3VL64465_cjs.defaultHost; }
40233
+ get: function () { return chunkOAEJME5Q_cjs.defaultHost; }
40234
40234
  });
40235
40235
  Object.defineProperty(exports, "renderConnectedUser", {
40236
40236
  enumerable: true,
40237
- get: function () { return chunk3VL64465_cjs.renderConnectedUser; }
40237
+ get: function () { return chunkOAEJME5Q_cjs.renderConnectedUser; }
40238
40238
  });
40239
40239
  Object.defineProperty(exports, "renderSessionStatusIcon", {
40240
40240
  enumerable: true,
40241
- get: function () { return chunk3VL64465_cjs.renderSessionStatusIcon; }
40241
+ get: function () { return chunkOAEJME5Q_cjs.renderSessionStatusIcon; }
40242
40242
  });
40243
40243
  Object.defineProperty(exports, "resolveSsoName", {
40244
40244
  enumerable: true,
40245
- get: function () { return chunk3VL64465_cjs.resolveSsoName; }
40245
+ get: function () { return chunkOAEJME5Q_cjs.resolveSsoName; }
40246
40246
  });
40247
40247
  Object.defineProperty(exports, "useAuthPages", {
40248
40248
  enumerable: true,
40249
- get: function () { return chunk3VL64465_cjs.useAuthPages; }
40249
+ get: function () { return chunkOAEJME5Q_cjs.useAuthPages; }
40250
40250
  });
40251
40251
  Object.defineProperty(exports, "useContextualHints", {
40252
40252
  enumerable: true,
40253
- get: function () { return chunk3VL64465_cjs.useContextualHints; }
40253
+ get: function () { return chunkOAEJME5Q_cjs.useContextualHints; }
40254
40254
  });
40255
40255
  Object.defineProperty(exports, "useModelPicker", {
40256
40256
  enumerable: true,
40257
- get: function () { return chunk3VL64465_cjs.useModelPicker; }
40257
+ get: function () { return chunkOAEJME5Q_cjs.useModelPicker; }
40258
40258
  });
40259
40259
  Object.defineProperty(exports, "useOpenChunk", {
40260
40260
  enumerable: true,
40261
- get: function () { return chunk3VL64465_cjs.useOpenChunk; }
40261
+ get: function () { return chunkOAEJME5Q_cjs.useOpenChunk; }
40262
40262
  });
40263
40263
  Object.defineProperty(exports, "useOpenWorkspaceIcon", {
40264
40264
  enumerable: true,
40265
- get: function () { return chunk3VL64465_cjs.useOpenWorkspaceIcon; }
40265
+ get: function () { return chunkOAEJME5Q_cjs.useOpenWorkspaceIcon; }
40266
40266
  });
40267
40267
  Object.defineProperty(exports, "useSlashItems", {
40268
40268
  enumerable: true,
40269
- get: function () { return chunk3VL64465_cjs.useSlashItems; }
40269
+ get: function () { return chunkOAEJME5Q_cjs.useSlashItems; }
40270
40270
  });
40271
40271
  Object.defineProperty(exports, "useSsoSignIn", {
40272
40272
  enumerable: true,
40273
- get: function () { return chunk3VL64465_cjs.useSsoSignIn; }
40273
+ get: function () { return chunkOAEJME5Q_cjs.useSsoSignIn; }
40274
40274
  });
40275
40275
  Object.defineProperty(exports, "useWorkspaceDocTitles", {
40276
40276
  enumerable: true,
40277
- get: function () { return chunk3VL64465_cjs.useWorkspaceDocTitles; }
40277
+ get: function () { return chunkOAEJME5Q_cjs.useWorkspaceDocTitles; }
40278
40278
  });
40279
40279
  Object.defineProperty(exports, "useConnectedThreadActivity", {
40280
40280
  enumerable: true,
40281
- get: function () { return chunk45D5RS6T_cjs.useConnectedThreadActivity; }
40281
+ get: function () { return chunkDL3XYTKI_cjs.useConnectedThreadActivity; }
40282
40282
  });
40283
40283
  Object.defineProperty(exports, "ConnectedPendingSyncDialog", {
40284
40284
  enumerable: true,
@@ -40354,43 +40354,43 @@ Object.defineProperty(exports, "useResolvedDocStatus", {
40354
40354
  });
40355
40355
  Object.defineProperty(exports, "ConnectedWorkflowDocumentsField", {
40356
40356
  enumerable: true,
40357
- get: function () { return chunkP7FHVWM7_cjs.ConnectedWorkflowDocumentsField; }
40357
+ get: function () { return chunkUHP6AP6C_cjs.ConnectedWorkflowDocumentsField; }
40358
40358
  });
40359
40359
  Object.defineProperty(exports, "ConnectedWorkflowLauncher", {
40360
40360
  enumerable: true,
40361
- get: function () { return chunkP7FHVWM7_cjs.ConnectedWorkflowLauncher; }
40361
+ get: function () { return chunkUHP6AP6C_cjs.ConnectedWorkflowLauncher; }
40362
40362
  });
40363
40363
  Object.defineProperty(exports, "ConnectedWorkflowsTable", {
40364
40364
  enumerable: true,
40365
- get: function () { return chunkP7FHVWM7_cjs.ConnectedWorkflowsTable; }
40365
+ get: function () { return chunkUHP6AP6C_cjs.ConnectedWorkflowsTable; }
40366
40366
  });
40367
40367
  Object.defineProperty(exports, "DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS", {
40368
40368
  enumerable: true,
40369
- get: function () { return chunkP7FHVWM7_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
40369
+ get: function () { return chunkUHP6AP6C_cjs.DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS; }
40370
40370
  });
40371
40371
  Object.defineProperty(exports, "toWorkflowFieldDocument", {
40372
40372
  enumerable: true,
40373
- get: function () { return chunkP7FHVWM7_cjs.toWorkflowFieldDocument; }
40373
+ get: function () { return chunkUHP6AP6C_cjs.toWorkflowFieldDocument; }
40374
40374
  });
40375
40375
  Object.defineProperty(exports, "useConnectedAgentOptions", {
40376
40376
  enumerable: true,
40377
- get: function () { return chunkP7FHVWM7_cjs.useConnectedAgentOptions; }
40377
+ get: function () { return chunkUHP6AP6C_cjs.useConnectedAgentOptions; }
40378
40378
  });
40379
40379
  Object.defineProperty(exports, "useConnectedWorkflowScopeSource", {
40380
40380
  enumerable: true,
40381
- get: function () { return chunkP7FHVWM7_cjs.useConnectedWorkflowScopeSource; }
40381
+ get: function () { return chunkUHP6AP6C_cjs.useConnectedWorkflowScopeSource; }
40382
40382
  });
40383
40383
  Object.defineProperty(exports, "useConnectedWorkspaceRole", {
40384
40384
  enumerable: true,
40385
- get: function () { return chunkP7FHVWM7_cjs.useConnectedWorkspaceRole; }
40385
+ get: function () { return chunkUHP6AP6C_cjs.useConnectedWorkspaceRole; }
40386
40386
  });
40387
40387
  Object.defineProperty(exports, "useDocxCommentTarget", {
40388
40388
  enumerable: true,
40389
- get: function () { return chunkP7FHVWM7_cjs.useDocxCommentTarget; }
40389
+ get: function () { return chunkUHP6AP6C_cjs.useDocxCommentTarget; }
40390
40390
  });
40391
40391
  Object.defineProperty(exports, "useNativeDocxSupport", {
40392
40392
  enumerable: true,
40393
- get: function () { return chunkP7FHVWM7_cjs.useNativeDocxSupport; }
40393
+ get: function () { return chunkUHP6AP6C_cjs.useNativeDocxSupport; }
40394
40394
  });
40395
40395
  Object.defineProperty(exports, "useOpenWorkflow", {
40396
40396
  enumerable: true,
@@ -40434,43 +40434,43 @@ Object.defineProperty(exports, "useViewerStreamingDocument", {
40434
40434
  });
40435
40435
  Object.defineProperty(exports, "ConnectedMarkdown", {
40436
40436
  enumerable: true,
40437
- get: function () { return chunk4VGZGM6M_cjs.ConnectedMarkdown; }
40437
+ get: function () { return chunkQYRPFPQ7_cjs.ConnectedMarkdown; }
40438
40438
  });
40439
40439
  Object.defineProperty(exports, "DocumentChip", {
40440
40440
  enumerable: true,
40441
- get: function () { return chunk4VGZGM6M_cjs.DocumentChip; }
40441
+ get: function () { return chunkQYRPFPQ7_cjs.DocumentChip; }
40442
40442
  });
40443
40443
  Object.defineProperty(exports, "DocumentWorkspaceContext", {
40444
40444
  enumerable: true,
40445
- get: function () { return chunk4VGZGM6M_cjs.DocumentWorkspaceContext; }
40445
+ get: function () { return chunkQYRPFPQ7_cjs.DocumentWorkspaceContext; }
40446
40446
  });
40447
40447
  Object.defineProperty(exports, "ExternalLink", {
40448
40448
  enumerable: true,
40449
- get: function () { return chunk4VGZGM6M_cjs.ExternalLink; }
40449
+ get: function () { return chunkQYRPFPQ7_cjs.ExternalLink; }
40450
40450
  });
40451
40451
  Object.defineProperty(exports, "InternalDocLink", {
40452
40452
  enumerable: true,
40453
- get: function () { return chunk4VGZGM6M_cjs.InternalDocLink; }
40453
+ get: function () { return chunkQYRPFPQ7_cjs.InternalDocLink; }
40454
40454
  });
40455
40455
  Object.defineProperty(exports, "MailChip", {
40456
40456
  enumerable: true,
40457
- get: function () { return chunk4VGZGM6M_cjs.MailChip; }
40457
+ get: function () { return chunkQYRPFPQ7_cjs.MailChip; }
40458
40458
  });
40459
40459
  Object.defineProperty(exports, "MermaidDiagram", {
40460
40460
  enumerable: true,
40461
- get: function () { return chunk4VGZGM6M_cjs.MermaidDiagram; }
40461
+ get: function () { return chunkQYRPFPQ7_cjs.MermaidDiagram; }
40462
40462
  });
40463
40463
  Object.defineProperty(exports, "WorkspaceDocumentReference", {
40464
40464
  enumerable: true,
40465
- get: function () { return chunk4VGZGM6M_cjs.WorkspaceDocumentReference; }
40465
+ get: function () { return chunkQYRPFPQ7_cjs.WorkspaceDocumentReference; }
40466
40466
  });
40467
40467
  Object.defineProperty(exports, "useDocumentWorkspace", {
40468
40468
  enumerable: true,
40469
- get: function () { return chunk4VGZGM6M_cjs.useDocumentWorkspace; }
40469
+ get: function () { return chunkQYRPFPQ7_cjs.useDocumentWorkspace; }
40470
40470
  });
40471
40471
  Object.defineProperty(exports, "useMeetingThreadMessages", {
40472
40472
  enumerable: true,
40473
- get: function () { return chunkN6B6H4QV_cjs.useMeetingThreadMessages; }
40473
+ get: function () { return chunkL6DAJUDF_cjs.useMeetingThreadMessages; }
40474
40474
  });
40475
40475
  Object.defineProperty(exports, "isListedDocument", {
40476
40476
  enumerable: true,