@arbidocs/blocks 0.4.129 → 0.4.130

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 (173) hide show
  1. package/README.md +4 -3
  2. package/dist/agents/index.cjs +216 -216
  3. package/dist/agents/index.js +5 -5
  4. package/dist/calendar/CalendarPrint.d.ts +25 -0
  5. package/dist/calendar/booking-slots.d.ts +21 -0
  6. package/dist/calendar/index.cjs +381 -97
  7. package/dist/calendar/index.cjs.map +1 -1
  8. package/dist/calendar/index.d.ts +4 -0
  9. package/dist/calendar/index.js +277 -3
  10. package/dist/calendar/index.js.map +1 -1
  11. package/dist/calendar/print-layout.d.ts +16 -0
  12. package/dist/calendar/printCalendar.d.ts +6 -0
  13. package/dist/calls/composite-canvas.d.ts +52 -0
  14. package/dist/calls/index.cjs +376 -3
  15. package/dist/calls/index.cjs.map +1 -1
  16. package/dist/calls/index.d.ts +3 -0
  17. package/dist/calls/index.js +360 -5
  18. package/dist/calls/index.js.map +1 -1
  19. package/dist/calls/ringtone.d.ts +16 -0
  20. package/dist/calls/voice-levels.d.ts +32 -0
  21. package/dist/chat/ThreadVisualizer.d.ts +28 -0
  22. package/dist/chat/index.cjs +93 -77
  23. package/dist/chat/index.d.ts +2 -0
  24. package/dist/chat/index.js +2 -2
  25. package/dist/chat/open-document.d.ts +5 -1
  26. package/dist/chat/thread-diagram.d.ts +26 -0
  27. package/dist/{chunk-DQCYCEDR.js → chunk-2Q7FDZAY.js} +3 -3
  28. package/dist/{chunk-DQCYCEDR.js.map → chunk-2Q7FDZAY.js.map} +1 -1
  29. package/dist/{chunk-S7PSMMRG.js → chunk-444XKG46.js} +3 -3
  30. package/dist/{chunk-S7PSMMRG.js.map → chunk-444XKG46.js.map} +1 -1
  31. package/dist/{chunk-7423V6RM.cjs → chunk-4QIIDXLF.cjs} +8 -8
  32. package/dist/{chunk-7423V6RM.cjs.map → chunk-4QIIDXLF.cjs.map} +1 -1
  33. package/dist/{chunk-OYMWV45N.js → chunk-4RLCRFZS.js} +63 -13
  34. package/dist/chunk-4RLCRFZS.js.map +1 -0
  35. package/dist/{chunk-DZYAAL4H.cjs → chunk-4S5IDT5F.cjs} +231 -2
  36. package/dist/chunk-4S5IDT5F.cjs.map +1 -0
  37. package/dist/{chunk-CJBN5HIS.js → chunk-4UMXQPNA.js} +20 -8
  38. package/dist/chunk-4UMXQPNA.js.map +1 -0
  39. package/dist/{chunk-IBZJYCYM.js → chunk-66TA5IBN.js} +17 -25
  40. package/dist/chunk-66TA5IBN.js.map +1 -0
  41. package/dist/{chunk-OR4CO743.cjs → chunk-AAFX64WD.cjs} +3 -3
  42. package/dist/{chunk-OR4CO743.cjs.map → chunk-AAFX64WD.cjs.map} +1 -1
  43. package/dist/{chunk-MUMH3Z6K.cjs → chunk-ARDHLU73.cjs} +61 -11
  44. package/dist/chunk-ARDHLU73.cjs.map +1 -0
  45. package/dist/{chunk-TGWTLNXW.cjs → chunk-BIXHB4LV.cjs} +3 -2
  46. package/dist/{chunk-TGWTLNXW.cjs.map → chunk-BIXHB4LV.cjs.map} +1 -1
  47. package/dist/chunk-C4WSHRR6.cjs +166 -0
  48. package/dist/chunk-C4WSHRR6.cjs.map +1 -0
  49. package/dist/{chunk-ZAVEMQ37.cjs → chunk-DWZXSPMB.cjs} +3 -3
  50. package/dist/{chunk-ZAVEMQ37.cjs.map → chunk-DWZXSPMB.cjs.map} +1 -1
  51. package/dist/{chunk-5HFPRI3W.js → chunk-FUTMU4FR.js} +3 -3
  52. package/dist/{chunk-5HFPRI3W.js.map → chunk-FUTMU4FR.js.map} +1 -1
  53. package/dist/{chunk-5Y7JRY7Y.js → chunk-GDBDHOI4.js} +3 -3
  54. package/dist/{chunk-5Y7JRY7Y.js.map → chunk-GDBDHOI4.js.map} +1 -1
  55. package/dist/{chunk-TGJNPKST.js → chunk-GTCC2VAR.js} +3 -3
  56. package/dist/{chunk-TGJNPKST.js.map → chunk-GTCC2VAR.js.map} +1 -1
  57. package/dist/{chunk-3BJLNKOB.cjs → chunk-GZPTWHP5.cjs} +22 -10
  58. package/dist/chunk-GZPTWHP5.cjs.map +1 -0
  59. package/dist/{chunk-OUW6G4O2.cjs → chunk-HFGXA5CL.cjs} +4 -4
  60. package/dist/{chunk-OUW6G4O2.cjs.map → chunk-HFGXA5CL.cjs.map} +1 -1
  61. package/dist/{chunk-SWQX6CTT.cjs → chunk-JKB7WT7L.cjs} +2 -2
  62. package/dist/chunk-JKB7WT7L.cjs.map +1 -0
  63. package/dist/{chunk-S6BOINC4.cjs → chunk-OGBXV326.cjs} +7 -7
  64. package/dist/{chunk-S6BOINC4.cjs.map → chunk-OGBXV326.cjs.map} +1 -1
  65. package/dist/{chunk-DJM7DLCT.cjs → chunk-OPTBQSCV.cjs} +3 -3
  66. package/dist/{chunk-DJM7DLCT.cjs.map → chunk-OPTBQSCV.cjs.map} +1 -1
  67. package/dist/{chunk-GFYGYME3.js → chunk-OQ7RUNOC.js} +3 -3
  68. package/dist/{chunk-GFYGYME3.js.map → chunk-OQ7RUNOC.js.map} +1 -1
  69. package/dist/{chunk-NYHGG2IA.cjs → chunk-QDEODGXE.cjs} +5 -5
  70. package/dist/{chunk-NYHGG2IA.cjs.map → chunk-QDEODGXE.cjs.map} +1 -1
  71. package/dist/{chunk-6BTCDKCK.js → chunk-QYTYW74G.js} +4 -4
  72. package/dist/{chunk-6BTCDKCK.js.map → chunk-QYTYW74G.js.map} +1 -1
  73. package/dist/{chunk-A7NCSZAP.cjs → chunk-QZTNTP75.cjs} +17 -25
  74. package/dist/chunk-QZTNTP75.cjs.map +1 -0
  75. package/dist/{chunk-OB5F4577.cjs → chunk-R26BK7YL.cjs} +4 -4
  76. package/dist/{chunk-OB5F4577.cjs.map → chunk-R26BK7YL.cjs.map} +1 -1
  77. package/dist/{chunk-A2YAC22G.js → chunk-RI6DZA5X.js} +3 -3
  78. package/dist/{chunk-A2YAC22G.js.map → chunk-RI6DZA5X.js.map} +1 -1
  79. package/dist/{chunk-H2KQ6OSU.js → chunk-SZX44LCT.js} +230 -5
  80. package/dist/chunk-SZX44LCT.js.map +1 -0
  81. package/dist/{chunk-7QDX2CO4.cjs → chunk-TP6PLDNM.cjs} +4 -4
  82. package/dist/{chunk-7QDX2CO4.cjs.map → chunk-TP6PLDNM.cjs.map} +1 -1
  83. package/dist/{chunk-JLTXVW25.cjs → chunk-TT6XV6WM.cjs} +17 -17
  84. package/dist/{chunk-JLTXVW25.cjs.map → chunk-TT6XV6WM.cjs.map} +1 -1
  85. package/dist/{chunk-HSFLEVZY.js → chunk-UMIY4SQS.js} +6 -6
  86. package/dist/{chunk-HSFLEVZY.js.map → chunk-UMIY4SQS.js.map} +1 -1
  87. package/dist/{chunk-ECERC6TI.js → chunk-VHJHY7TT.js} +3 -3
  88. package/dist/{chunk-ECERC6TI.js.map → chunk-VHJHY7TT.js.map} +1 -1
  89. package/dist/{chunk-D3N67Q4D.js → chunk-W3VYZXNS.js} +3 -3
  90. package/dist/{chunk-D3N67Q4D.js.map → chunk-W3VYZXNS.js.map} +1 -1
  91. package/dist/{chunk-JK45LSIH.cjs → chunk-WXYQ66KC.cjs} +5 -5
  92. package/dist/{chunk-JK45LSIH.cjs.map → chunk-WXYQ66KC.cjs.map} +1 -1
  93. package/dist/{chunk-ZCF2JJFA.js → chunk-Y3KA6X7B.js} +3 -3
  94. package/dist/{chunk-ZCF2JJFA.js.map → chunk-Y3KA6X7B.js.map} +1 -1
  95. package/dist/{chunk-GYCQ3FNL.js → chunk-YBLIKTJK.js} +2 -2
  96. package/dist/chunk-YBLIKTJK.js.map +1 -0
  97. package/dist/chunk-YNIBUKV5.js +163 -0
  98. package/dist/chunk-YNIBUKV5.js.map +1 -0
  99. package/dist/citations/index.cjs +12 -11
  100. package/dist/citations/index.js +3 -2
  101. package/dist/collaboration/index.cjs +42 -42
  102. package/dist/collaboration/index.js +2 -2
  103. package/dist/connect/docx.cjs +7 -5
  104. package/dist/connect/docx.cjs.map +1 -1
  105. package/dist/connect/docx.js +6 -4
  106. package/dist/connect/docx.js.map +1 -1
  107. package/dist/connect/index.cjs +237 -194
  108. package/dist/connect/index.cjs.map +1 -1
  109. package/dist/connect/index.d.ts +1 -1
  110. package/dist/connect/index.js +190 -147
  111. package/dist/connect/index.js.map +1 -1
  112. package/dist/connection/ConnectedSettings.d.ts +46 -20
  113. package/dist/connection/ConnectionProvider.d.ts +5 -0
  114. package/dist/connection/mail/ConnectedMailComposer.d.ts +2 -3
  115. package/dist/connection/mail/ConnectedMailbox.d.ts +2 -3
  116. package/dist/connection/mail/MailComposerForm.d.ts +2 -3
  117. package/dist/connection/mail/index.d.ts +2 -2
  118. package/dist/connection/mail/mailbox.d.ts +1 -4
  119. package/dist/connection/mail/types.d.ts +0 -8
  120. package/dist/facts/fact-citations.d.ts +56 -0
  121. package/dist/facts/fact-table-column-resize.d.ts +18 -0
  122. package/dist/facts/index.cjs +197 -10
  123. package/dist/facts/index.cjs.map +1 -1
  124. package/dist/facts/index.d.ts +2 -0
  125. package/dist/facts/index.js +182 -6
  126. package/dist/facts/index.js.map +1 -1
  127. package/dist/files/index.cjs +4 -4
  128. package/dist/files/index.js +3 -3
  129. package/dist/home/index.cjs +20 -19
  130. package/dist/home/index.cjs.map +1 -1
  131. package/dist/home/index.js +5 -4
  132. package/dist/home/index.js.map +1 -1
  133. package/dist/index.cjs +485 -469
  134. package/dist/index.d.ts +2 -1
  135. package/dist/index.js +13 -13
  136. package/dist/provider/BlocksProvider.d.ts +39 -4
  137. package/dist/provider/dialogs.d.ts +31 -0
  138. package/dist/retrieval/index.cjs +5 -4
  139. package/dist/retrieval/index.js +3 -2
  140. package/dist/settings/MoreInfo.d.ts +25 -0
  141. package/dist/settings/PlanCard.d.ts +1 -1
  142. package/dist/settings/index.cjs +106 -252
  143. package/dist/settings/index.cjs.map +1 -1
  144. package/dist/settings/index.d.ts +1 -1
  145. package/dist/settings/index.js +71 -216
  146. package/dist/settings/index.js.map +1 -1
  147. package/dist/shell/index.cjs +48 -47
  148. package/dist/shell/index.js +4 -3
  149. package/dist/studio/index.cjs +15 -14
  150. package/dist/studio/index.cjs.map +1 -1
  151. package/dist/studio/index.js +7 -6
  152. package/dist/studio/index.js.map +1 -1
  153. package/dist/workflow-canvas/index.cjs +14 -14
  154. package/dist/workflow-canvas/index.js +6 -6
  155. package/dist/workspaces/index.cjs +3 -3
  156. package/dist/workspaces/index.js +2 -2
  157. package/node_modules/@arbidocs/coedit/package.json +1 -1
  158. package/package.json +9 -4
  159. package/dist/chunk-3BJLNKOB.cjs.map +0 -1
  160. package/dist/chunk-76JDDMSP.js +0 -31
  161. package/dist/chunk-76JDDMSP.js.map +0 -1
  162. package/dist/chunk-A7NCSZAP.cjs.map +0 -1
  163. package/dist/chunk-C54XEN5T.cjs +0 -34
  164. package/dist/chunk-C54XEN5T.cjs.map +0 -1
  165. package/dist/chunk-CJBN5HIS.js.map +0 -1
  166. package/dist/chunk-DZYAAL4H.cjs.map +0 -1
  167. package/dist/chunk-GYCQ3FNL.js.map +0 -1
  168. package/dist/chunk-H2KQ6OSU.js.map +0 -1
  169. package/dist/chunk-IBZJYCYM.js.map +0 -1
  170. package/dist/chunk-MUMH3Z6K.cjs.map +0 -1
  171. package/dist/chunk-OYMWV45N.js.map +0 -1
  172. package/dist/chunk-SWQX6CTT.cjs.map +0 -1
  173. package/dist/settings/FirmPool.d.ts +0 -82
@@ -2,18 +2,18 @@
2
2
  'use strict';
3
3
 
4
4
  var chunk223D4727_cjs = require('../chunk-223D4727.cjs');
5
- var chunkOR4CO743_cjs = require('../chunk-OR4CO743.cjs');
6
- var chunkA7NCSZAP_cjs = require('../chunk-A7NCSZAP.cjs');
5
+ var chunkAAFX64WD_cjs = require('../chunk-AAFX64WD.cjs');
6
+ var chunkQZTNTP75_cjs = require('../chunk-QZTNTP75.cjs');
7
7
  var chunkS5HZBXZA_cjs = require('../chunk-S5HZBXZA.cjs');
8
8
  var chunkDVUZTGVL_cjs = require('../chunk-DVUZTGVL.cjs');
9
9
  var chunkN26CXGXC_cjs = require('../chunk-N26CXGXC.cjs');
10
10
  require('../chunk-ADOKTJHV.cjs');
11
- var chunkZAVEMQ37_cjs = require('../chunk-ZAVEMQ37.cjs');
12
- var chunkULWRNGGE_cjs = require('../chunk-ULWRNGGE.cjs');
11
+ var chunkDWZXSPMB_cjs = require('../chunk-DWZXSPMB.cjs');
13
12
  var chunk7RGLTF76_cjs = require('../chunk-7RGLTF76.cjs');
14
13
  var chunk32HW2Q33_cjs = require('../chunk-32HW2Q33.cjs');
15
14
  require('../chunk-PPCATBOY.cjs');
16
15
  var chunkMHVNT4J3_cjs = require('../chunk-MHVNT4J3.cjs');
16
+ var chunkULWRNGGE_cjs = require('../chunk-ULWRNGGE.cjs');
17
17
  var chunkKDG6FER6_cjs = require('../chunk-KDG6FER6.cjs');
18
18
  require('../chunk-DES3K4SD.cjs');
19
19
  var RadioGroupPrimitive = require('@radix-ui/react-radio-group');
@@ -1587,6 +1587,50 @@ function PlanBadge({
1587
1587
  }
1588
1588
  );
1589
1589
  }
1590
+ function MoreInfo({
1591
+ title,
1592
+ children,
1593
+ label = "More info",
1594
+ testId = "more-info",
1595
+ className
1596
+ }) {
1597
+ const [open, setOpen] = react.useState(false);
1598
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1599
+ /* @__PURE__ */ jsxRuntime.jsxs(
1600
+ "button",
1601
+ {
1602
+ type: "button",
1603
+ onClick: () => setOpen(true),
1604
+ className: ui.cn(
1605
+ "inline-flex shrink-0 items-center gap-1 whitespace-nowrap rounded-sm text-xs font-medium text-muted-foreground underline-offset-2 hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring pointer-coarse:min-h-11",
1606
+ className
1607
+ ),
1608
+ "data-slot": "more-info",
1609
+ "data-testid": testId,
1610
+ children: [
1611
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Info, { className: "size-3.5", "aria-hidden": true }),
1612
+ label
1613
+ ]
1614
+ }
1615
+ ),
1616
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Dialog, { open, onOpenChange: setOpen, children: /* @__PURE__ */ jsxRuntime.jsxs(ui.DialogContent, { className: "sm:max-w-md", "data-testid": `${testId}-dialog`, children: [
1617
+ /* @__PURE__ */ jsxRuntime.jsxs(ui.DialogHeader, { children: [
1618
+ /* @__PURE__ */ jsxRuntime.jsx(ui.DialogTitle, { children: title }),
1619
+ /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { className: "sr-only", children: title })
1620
+ ] }),
1621
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3 text-sm leading-relaxed text-muted-foreground", children })
1622
+ ] }) })
1623
+ ] });
1624
+ }
1625
+ function MoreInfoList({ items }) {
1626
+ return /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-2", "data-slot": "more-info-list", children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
1627
+ item.term && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-medium text-foreground", children: [
1628
+ item.term,
1629
+ ". "
1630
+ ] }),
1631
+ item.text
1632
+ ] }, item.term ?? i)) });
1633
+ }
1590
1634
  var barColor = (pct) => pct >= 100 ? "bg-red-500" : pct >= 50 ? "bg-yellow-500" : "bg-primary";
1591
1635
  var valueColor2 = (pct) => pct >= 100 ? "text-red-text" : pct >= 80 ? "text-yellow-text" : "text-muted-foreground";
1592
1636
  function QuotaMeter({
@@ -1678,9 +1722,10 @@ var DEFAULT_PLAN_CARD_LABELS = {
1678
1722
  pricingExplainer: "How pricing works",
1679
1723
  explainerTiers: [
1680
1724
  "AI usage and storage are shared by everyone in the project. AI usage resets monthly.",
1681
- "Need more? Add \xA325 of AI usage or 25 GB at a time. Add-ons renew until you reduce them.",
1682
- "Automatic top-ups stay within your monthly usage cap (\xA3100 by default; \xA30 = no automatic top-ups, or no limit). Adding by hand is never capped.",
1683
- "Add-ons start now. Downgrades, billing switches and add-on reductions start at the end of the period. No refunds.",
1725
+ "Need more? Add \xA325 of AI usage or 25 GB at a time, at checkout or later. Add-ons renew with the plan until you reduce them.",
1726
+ "Automatic top-ups add one more step when you run low, up to your monthly usage cap (\xA3100 by default; \xA30 = none; or no limit). Adding by hand is never capped.",
1727
+ "Add-ons start now: AI usage is charged in full, storage only for the rest of the period. Downgrades, billing switches and reductions start at the end of the period. No refunds.",
1728
+ "Annual plans are 25% off, add-ons included.",
1684
1729
  "Prices are shown + VAT; the total for your country is shown before you pay."
1685
1730
  ],
1686
1731
  explainerAiUsage: "About 1p of AI usage buys one moderately complex request, or reading ~25 documents, on a Standard model. Premium models can cost 10\u2013100\xD7 more.",
@@ -1871,45 +1916,21 @@ function PlanInfoPopover({
1871
1916
  labels
1872
1917
  }) {
1873
1918
  const l = react.useMemo(() => ({ ...DEFAULT_PLAN_CARD_LABELS, ...labels }), [labels]);
1874
- return /* @__PURE__ */ jsxRuntime.jsxs(ui.Popover, { children: [
1875
- /* @__PURE__ */ jsxRuntime.jsx(ui.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
1876
- ui.Button,
1877
- {
1878
- type: "button",
1879
- variant: "ghost",
1880
- size: "sm",
1881
- className: "gap-1.5 text-sm text-muted-foreground",
1882
- children: [
1883
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Info, { className: "h-4 w-4" }),
1884
- l.pricingExplainer
1885
- ]
1886
- }
1887
- ) }),
1888
- /* @__PURE__ */ jsxRuntime.jsxs(
1889
- ui.PopoverContent,
1890
- {
1891
- side: "top",
1892
- align: "start",
1893
- className: "max-w-screen-safe w-[380px] space-y-3 text-sm leading-relaxed",
1894
- children: [
1895
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold", children: l.pricingExplainer }),
1896
- /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "list-disc space-y-1 pl-4", children: l.explainerTiers.map((line) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: line }, line)) }),
1897
- /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
1898
- l.explainerAiUsage,
1899
- " ",
1900
- /* @__PURE__ */ jsxRuntime.jsx(
1901
- "button",
1902
- {
1903
- type: "button",
1904
- onClick: onOpenModelList,
1905
- className: "font-medium text-foreground underline underline-offset-2 hover:text-primary/80",
1906
- children: l.seeModelList
1907
- }
1908
- )
1909
- ] })
1910
- ]
1911
- }
1912
- )
1919
+ return /* @__PURE__ */ jsxRuntime.jsxs(MoreInfo, { title: l.pricingExplainer, label: l.pricingExplainer, testId: "pricing-explainer", children: [
1920
+ /* @__PURE__ */ jsxRuntime.jsx(MoreInfoList, { items: l.explainerTiers.map((text) => ({ text })) }),
1921
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
1922
+ l.explainerAiUsage,
1923
+ " ",
1924
+ /* @__PURE__ */ jsxRuntime.jsx(
1925
+ "button",
1926
+ {
1927
+ type: "button",
1928
+ onClick: onOpenModelList,
1929
+ className: "font-medium text-foreground underline underline-offset-2 hover:text-primary/80",
1930
+ children: l.seeModelList
1931
+ }
1932
+ )
1933
+ ] })
1913
1934
  ] });
1914
1935
  }
1915
1936
  var DEFAULT_REFERRAL_REWARD_LABELS = {
@@ -2290,172 +2311,6 @@ function RenameDialog({
2290
2311
  ] })
2291
2312
  ] }) });
2292
2313
  }
2293
- var DEFAULT_FIRM_POOL_SECTION_LABELS = {
2294
- title: "Firm usage",
2295
- licence: "Licence",
2296
- used: "AI usage this month",
2297
- storage: "Storage",
2298
- users: "Internal users",
2299
- premiumOnly: "Standard AI is unlimited; the allowance applies to Premium AI.",
2300
- resets: (date) => `resets ${date}`,
2301
- usageUnknown: "Usage is being calculated.",
2302
- legendLicence: (amount) => `Licence ${amount}`,
2303
- legendTopUps: (amount) => `Top-ups ${amount}`,
2304
- legendAutoRoom: (amount) => `Automatic top-ups may add ${amount}`,
2305
- autoRoomNoLimit: "Automatic top-ups: no limit",
2306
- budget: "Usage budget \u2014 limits automatic top-ups only",
2307
- budgetValue: (left, limit) => `${left} left of ${limit}`,
2308
- autoAddons: (count) => `Automatic top-ups this month: ${count}`,
2309
- autoAddonsOff: "Automatic top-ups are off (\xA30 usage budget).",
2310
- topUpLabel: "Steps to add",
2311
- topUp: "Add AI usage",
2312
- toppingUp: "Adding\u2026",
2313
- topUpHelp: (perStep) => `Each step adds ${perStep} of AI usage a month, pooled across the firm, and renews until reduced.`,
2314
- topUpTotal: (total) => `+${total} of AI usage a month`
2315
- };
2316
- var FIRM_POOL_MAX_TOP_UP = 100;
2317
- var defaultFormat = (gbp) => `\xA3${gbp.toLocaleString("en-GB", { maximumFractionDigits: 2 })}`;
2318
- function FirmPoolSection({
2319
- view,
2320
- formatAmount = defaultFormat,
2321
- onTopUp,
2322
- isToppingUp = false,
2323
- labels,
2324
- testId = "firm-pool"
2325
- }) {
2326
- const l = react.useMemo(() => ({ ...DEFAULT_FIRM_POOL_SECTION_LABELS, ...labels }), [labels]);
2327
- const [count, setCount] = react.useState(1);
2328
- const valid = Number.isInteger(count) && count >= 1 && count <= FIRM_POOL_MAX_TOP_UP;
2329
- const used = view.usedGbp;
2330
- const step = view.addonGbp ?? 25;
2331
- const base = Math.min(view.baseGbp ?? view.totalGbp, view.totalGbp);
2332
- const topUps = Math.max(0, view.totalGbp - base);
2333
- const gb = (n) => `${Math.round(n * 10) / 10} GB`;
2334
- const storage = view.storage;
2335
- const users = view.users;
2336
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "space-y-3", "data-testid": testId, children: [
2337
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "px-1 text-sm font-semibold text-foreground", children: l.title }),
2338
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4 px-1", children: [
2339
- view.licence && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-0.5 text-sm", "data-testid": `${testId}-licence`, children: [
2340
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-baseline justify-between gap-x-4", children: [
2341
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium text-foreground", children: l.licence }),
2342
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tabular-nums text-muted-foreground", children: view.licence })
2343
- ] }),
2344
- view.renews && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", "data-testid": `${testId}-renews`, children: view.renews })
2345
- ] }),
2346
- /* @__PURE__ */ jsxRuntime.jsx(
2347
- chunkA7NCSZAP_cjs.UsageMeter,
2348
- {
2349
- label: l.used,
2350
- hint: view.resetsAt ? l.resets(view.resetsAt) : void 0,
2351
- value: `${used != null ? formatAmount(used) : "\u2014"} / ${formatAmount(view.totalGbp)}`,
2352
- allowance: {
2353
- used: used ?? 0,
2354
- plan: base,
2355
- topUps,
2356
- autoRoom: view.autoAddonsOff ? 0 : view.autoRoomGbp
2357
- },
2358
- legend: {
2359
- plan: topUps > 0 || (view.autoRoomGbp ?? 0) > 0 ? l.legendLicence(formatAmount(base)) : void 0,
2360
- topUps: topUps > 0 ? l.legendTopUps(formatAmount(topUps)) : void 0,
2361
- autoRoom: view.autoRoomGbp === null ? l.autoRoomNoLimit : view.autoRoomGbp ? l.legendAutoRoom(formatAmount(view.autoRoomGbp)) : void 0
2362
- },
2363
- details: used == null ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: l.usageUnknown }) : void 0,
2364
- testId: `${testId}-usage`
2365
- }
2366
- ),
2367
- storage && /* @__PURE__ */ jsxRuntime.jsx(
2368
- chunkA7NCSZAP_cjs.UsageMeter,
2369
- {
2370
- label: l.storage,
2371
- value: `${storage.usedGb != null ? gb(storage.usedGb) : "\u2014"} / ${gb(storage.totalGb)}`,
2372
- allowance: {
2373
- used: storage.usedGb ?? 0,
2374
- plan: storage.totalGb - (storage.autoAddedGb ?? 0),
2375
- topUps: storage.autoAddedGb ?? 0
2376
- },
2377
- legend: {
2378
- plan: storage.autoAddedGb ? l.legendLicence(gb(storage.totalGb - storage.autoAddedGb)) : void 0,
2379
- topUps: storage.autoAddedGb ? l.legendTopUps(gb(storage.autoAddedGb)) : void 0
2380
- },
2381
- testId: `${testId}-storage`
2382
- }
2383
- ),
2384
- users && /* @__PURE__ */ jsxRuntime.jsx(
2385
- chunkA7NCSZAP_cjs.UsageMeter,
2386
- {
2387
- label: l.users,
2388
- value: `${users.used ?? "\u2014"} / ${users.total}`,
2389
- allowance: { used: users.used ?? 0, plan: users.total },
2390
- testId: `${testId}-users`
2391
- }
2392
- ),
2393
- view.autoAddons && /* @__PURE__ */ jsxRuntime.jsx(
2394
- chunkA7NCSZAP_cjs.UsageMeter,
2395
- {
2396
- label: l.budget,
2397
- value: view.autoAddons.left ? l.budgetValue(view.autoAddons.left, view.autoAddons.limit) : `${view.autoAddons.spent} / ${view.autoAddons.limit}`,
2398
- pct: view.autoAddons.pct,
2399
- details: /* @__PURE__ */ jsxRuntime.jsxs("p", { "data-testid": `${testId}-auto-addons-count`, children: [
2400
- l.autoAddons(view.autoAddons.count),
2401
- view.autoAddons.added ? ` (${view.autoAddons.added})` : ""
2402
- ] }),
2403
- testId: `${testId}-auto-addons`
2404
- }
2405
- ),
2406
- view.autoAddonsOff && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", "data-testid": `${testId}-auto-addons-off`, children: l.autoAddonsOff }),
2407
- view.premiumOnly && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", "data-testid": `${testId}-premium-only`, children: l.premiumOnly }),
2408
- onTopUp && /* @__PURE__ */ jsxRuntime.jsxs(
2409
- "form",
2410
- {
2411
- className: "flex flex-wrap items-end gap-2",
2412
- "data-testid": `${testId}-top-up`,
2413
- onSubmit: (event) => {
2414
- event.preventDefault();
2415
- if (valid && !isToppingUp) onTopUp(count);
2416
- },
2417
- children: [
2418
- /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "flex flex-col gap-1 text-xs text-muted-foreground", children: [
2419
- l.topUpLabel,
2420
- /* @__PURE__ */ jsxRuntime.jsx(
2421
- ui.Input,
2422
- {
2423
- type: "number",
2424
- min: 1,
2425
- max: FIRM_POOL_MAX_TOP_UP,
2426
- step: 1,
2427
- value: Number.isNaN(count) ? "" : count,
2428
- onChange: (event) => setCount(event.target.valueAsNumber),
2429
- className: "h-8 w-24",
2430
- "data-testid": `${testId}-top-up-count`
2431
- }
2432
- )
2433
- ] }),
2434
- /* @__PURE__ */ jsxRuntime.jsx(
2435
- ui.Button,
2436
- {
2437
- type: "submit",
2438
- size: "sm",
2439
- disabled: !valid || isToppingUp,
2440
- "data-testid": `${testId}-top-up-button`,
2441
- children: isToppingUp ? l.toppingUp : l.topUp
2442
- }
2443
- ),
2444
- valid && /* @__PURE__ */ jsxRuntime.jsx(
2445
- "span",
2446
- {
2447
- className: "self-center text-sm tabular-nums text-foreground",
2448
- "data-testid": `${testId}-top-up-total`,
2449
- children: l.topUpTotal(formatAmount(count * step))
2450
- }
2451
- ),
2452
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "w-full text-xs text-muted-foreground", children: l.topUpHelp(formatAmount(step)) })
2453
- ]
2454
- }
2455
- )
2456
- ] })
2457
- ] });
2458
- }
2459
2314
  var DEFAULT_SUPPORT_PANEL_LABELS = {
2460
2315
  support: "Support",
2461
2316
  userGuide: "User Guide"
@@ -2585,7 +2440,7 @@ function WelcomeDialog({
2585
2440
  planBadge
2586
2441
  ] }),
2587
2442
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: quotas.map((quota) => /* @__PURE__ */ jsxRuntime.jsx(
2588
- chunkA7NCSZAP_cjs.UsageMeter,
2443
+ chunkQZTNTP75_cjs.UsageMeter,
2589
2444
  {
2590
2445
  icon: quota.icon,
2591
2446
  label: quota.label,
@@ -3457,7 +3312,7 @@ function SubscriptionStatusView({
3457
3312
  ] }),
3458
3313
  !resetDate && isCanceling && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-yellow-text", children: l.cancelsAtEndOfBillingPeriod }),
3459
3314
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: meters.map((m) => /* @__PURE__ */ jsxRuntime.jsx(
3460
- chunkA7NCSZAP_cjs.UsageMeter,
3315
+ chunkQZTNTP75_cjs.UsageMeter,
3461
3316
  {
3462
3317
  icon: m.icon,
3463
3318
  label: m.label,
@@ -3835,135 +3690,135 @@ Object.defineProperty(exports, "ModalCrumbs", {
3835
3690
  });
3836
3691
  Object.defineProperty(exports, "ActiveSessionsDialog", {
3837
3692
  enumerable: true,
3838
- get: function () { return chunkOR4CO743_cjs.ActiveSessionsDialog; }
3693
+ get: function () { return chunkAAFX64WD_cjs.ActiveSessionsDialog; }
3839
3694
  });
3840
3695
  Object.defineProperty(exports, "AvatarPicker", {
3841
3696
  enumerable: true,
3842
- get: function () { return chunkOR4CO743_cjs.AvatarPicker; }
3697
+ get: function () { return chunkAAFX64WD_cjs.AvatarPicker; }
3843
3698
  });
3844
3699
  Object.defineProperty(exports, "DEFAULT_ACTIVE_SESSIONS_DIALOG_LABELS", {
3845
3700
  enumerable: true,
3846
- get: function () { return chunkOR4CO743_cjs.DEFAULT_ACTIVE_SESSIONS_DIALOG_LABELS; }
3701
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_ACTIVE_SESSIONS_DIALOG_LABELS; }
3847
3702
  });
3848
3703
  Object.defineProperty(exports, "DEFAULT_AVATAR_PICKER_LABELS", {
3849
3704
  enumerable: true,
3850
- get: function () { return chunkOR4CO743_cjs.DEFAULT_AVATAR_PICKER_LABELS; }
3705
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_AVATAR_PICKER_LABELS; }
3851
3706
  });
3852
3707
  Object.defineProperty(exports, "DEFAULT_DELETE_ACCOUNT_DIALOG_LABELS", {
3853
3708
  enumerable: true,
3854
- get: function () { return chunkOR4CO743_cjs.DEFAULT_DELETE_ACCOUNT_DIALOG_LABELS; }
3709
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_DELETE_ACCOUNT_DIALOG_LABELS; }
3855
3710
  });
3856
3711
  Object.defineProperty(exports, "DEFAULT_IDENTITY_VERIFICATION_LABELS", {
3857
3712
  enumerable: true,
3858
- get: function () { return chunkOR4CO743_cjs.DEFAULT_IDENTITY_VERIFICATION_LABELS; }
3713
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_IDENTITY_VERIFICATION_LABELS; }
3859
3714
  });
3860
3715
  Object.defineProperty(exports, "DEFAULT_LOGOUT_DIALOG_LABELS", {
3861
3716
  enumerable: true,
3862
- get: function () { return chunkOR4CO743_cjs.DEFAULT_LOGOUT_DIALOG_LABELS; }
3717
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_LOGOUT_DIALOG_LABELS; }
3863
3718
  });
3864
3719
  Object.defineProperty(exports, "DEFAULT_PASSWORD_CHANGE_DIALOG_LABELS", {
3865
3720
  enumerable: true,
3866
- get: function () { return chunkOR4CO743_cjs.DEFAULT_PASSWORD_CHANGE_DIALOG_LABELS; }
3721
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_PASSWORD_CHANGE_DIALOG_LABELS; }
3867
3722
  });
3868
3723
  Object.defineProperty(exports, "DEFAULT_PROFILE_CARD_LABELS", {
3869
3724
  enumerable: true,
3870
- get: function () { return chunkOR4CO743_cjs.DEFAULT_PROFILE_CARD_LABELS; }
3725
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_PROFILE_CARD_LABELS; }
3871
3726
  });
3872
3727
  Object.defineProperty(exports, "DEFAULT_SETTINGS_DANGER_ZONE_LABELS", {
3873
3728
  enumerable: true,
3874
- get: function () { return chunkOR4CO743_cjs.DEFAULT_SETTINGS_DANGER_ZONE_LABELS; }
3729
+ get: function () { return chunkAAFX64WD_cjs.DEFAULT_SETTINGS_DANGER_ZONE_LABELS; }
3875
3730
  });
3876
3731
  Object.defineProperty(exports, "DeleteAccountDialog", {
3877
3732
  enumerable: true,
3878
- get: function () { return chunkOR4CO743_cjs.DeleteAccountDialog; }
3733
+ get: function () { return chunkAAFX64WD_cjs.DeleteAccountDialog; }
3879
3734
  });
3880
3735
  Object.defineProperty(exports, "EMAIL_NOTIFICATION_CATEGORIES", {
3881
3736
  enumerable: true,
3882
- get: function () { return chunkOR4CO743_cjs.EMAIL_NOTIFICATION_CATEGORIES; }
3737
+ get: function () { return chunkAAFX64WD_cjs.EMAIL_NOTIFICATION_CATEGORIES; }
3883
3738
  });
3884
3739
  Object.defineProperty(exports, "EMAIL_NOTIFICATION_KEYS", {
3885
3740
  enumerable: true,
3886
- get: function () { return chunkOR4CO743_cjs.EMAIL_NOTIFICATION_KEYS; }
3741
+ get: function () { return chunkAAFX64WD_cjs.EMAIL_NOTIFICATION_KEYS; }
3887
3742
  });
3888
3743
  Object.defineProperty(exports, "IdentityVerificationCard", {
3889
3744
  enumerable: true,
3890
- get: function () { return chunkOR4CO743_cjs.IdentityVerificationCard; }
3745
+ get: function () { return chunkAAFX64WD_cjs.IdentityVerificationCard; }
3891
3746
  });
3892
3747
  Object.defineProperty(exports, "IdentityVerificationDialog", {
3893
3748
  enumerable: true,
3894
- get: function () { return chunkOR4CO743_cjs.IdentityVerificationDialog; }
3749
+ get: function () { return chunkAAFX64WD_cjs.IdentityVerificationDialog; }
3895
3750
  });
3896
3751
  Object.defineProperty(exports, "LogoutDialog", {
3897
3752
  enumerable: true,
3898
- get: function () { return chunkOR4CO743_cjs.LogoutDialog; }
3753
+ get: function () { return chunkAAFX64WD_cjs.LogoutDialog; }
3899
3754
  });
3900
3755
  Object.defineProperty(exports, "NotificationCategoryList", {
3901
3756
  enumerable: true,
3902
- get: function () { return chunkOR4CO743_cjs.NotificationCategoryList; }
3757
+ get: function () { return chunkAAFX64WD_cjs.NotificationCategoryList; }
3903
3758
  });
3904
3759
  Object.defineProperty(exports, "PasswordChangeDialog", {
3905
3760
  enumerable: true,
3906
- get: function () { return chunkOR4CO743_cjs.PasswordChangeDialog; }
3761
+ get: function () { return chunkAAFX64WD_cjs.PasswordChangeDialog; }
3907
3762
  });
3908
3763
  Object.defineProperty(exports, "ProfileCard", {
3909
3764
  enumerable: true,
3910
- get: function () { return chunkOR4CO743_cjs.ProfileCard; }
3765
+ get: function () { return chunkAAFX64WD_cjs.ProfileCard; }
3911
3766
  });
3912
3767
  Object.defineProperty(exports, "RequireVerified", {
3913
3768
  enumerable: true,
3914
- get: function () { return chunkOR4CO743_cjs.RequireVerified; }
3769
+ get: function () { return chunkAAFX64WD_cjs.RequireVerified; }
3915
3770
  });
3916
3771
  Object.defineProperty(exports, "SettingsActionRow", {
3917
3772
  enumerable: true,
3918
- get: function () { return chunkOR4CO743_cjs.SettingsActionRow; }
3773
+ get: function () { return chunkAAFX64WD_cjs.SettingsActionRow; }
3919
3774
  });
3920
3775
  Object.defineProperty(exports, "SettingsCard", {
3921
3776
  enumerable: true,
3922
- get: function () { return chunkOR4CO743_cjs.SettingsCard; }
3777
+ get: function () { return chunkAAFX64WD_cjs.SettingsCard; }
3923
3778
  });
3924
3779
  Object.defineProperty(exports, "SettingsDangerZone", {
3925
3780
  enumerable: true,
3926
- get: function () { return chunkOR4CO743_cjs.SettingsDangerZone; }
3781
+ get: function () { return chunkAAFX64WD_cjs.SettingsDangerZone; }
3927
3782
  });
3928
3783
  Object.defineProperty(exports, "SettingsPanel", {
3929
3784
  enumerable: true,
3930
- get: function () { return chunkOR4CO743_cjs.SettingsPanel; }
3785
+ get: function () { return chunkAAFX64WD_cjs.SettingsPanel; }
3931
3786
  });
3932
3787
  Object.defineProperty(exports, "SettingsRow", {
3933
3788
  enumerable: true,
3934
- get: function () { return chunkOR4CO743_cjs.SettingsRow; }
3789
+ get: function () { return chunkAAFX64WD_cjs.SettingsRow; }
3935
3790
  });
3936
3791
  Object.defineProperty(exports, "SettingsSection", {
3937
3792
  enumerable: true,
3938
- get: function () { return chunkOR4CO743_cjs.SettingsSection; }
3793
+ get: function () { return chunkAAFX64WD_cjs.SettingsSection; }
3939
3794
  });
3940
3795
  Object.defineProperty(exports, "SettingsSwitchGroup", {
3941
3796
  enumerable: true,
3942
- get: function () { return chunkOR4CO743_cjs.SettingsSwitchGroup; }
3797
+ get: function () { return chunkAAFX64WD_cjs.SettingsSwitchGroup; }
3943
3798
  });
3944
3799
  Object.defineProperty(exports, "SettingsSwitchRow", {
3945
3800
  enumerable: true,
3946
- get: function () { return chunkOR4CO743_cjs.SettingsSwitchRow; }
3801
+ get: function () { return chunkAAFX64WD_cjs.SettingsSwitchRow; }
3947
3802
  });
3948
3803
  Object.defineProperty(exports, "formatSessionTtl", {
3949
3804
  enumerable: true,
3950
- get: function () { return chunkOR4CO743_cjs.formatSessionTtl; }
3805
+ get: function () { return chunkAAFX64WD_cjs.formatSessionTtl; }
3951
3806
  });
3952
3807
  Object.defineProperty(exports, "toActiveSessionViews", {
3953
3808
  enumerable: true,
3954
- get: function () { return chunkOR4CO743_cjs.toActiveSessionViews; }
3809
+ get: function () { return chunkAAFX64WD_cjs.toActiveSessionViews; }
3955
3810
  });
3956
3811
  Object.defineProperty(exports, "toDeleteBlockerViews", {
3957
3812
  enumerable: true,
3958
- get: function () { return chunkOR4CO743_cjs.toDeleteBlockerViews; }
3813
+ get: function () { return chunkAAFX64WD_cjs.toDeleteBlockerViews; }
3959
3814
  });
3960
3815
  Object.defineProperty(exports, "toLogoutSessionViews", {
3961
3816
  enumerable: true,
3962
- get: function () { return chunkOR4CO743_cjs.toLogoutSessionViews; }
3817
+ get: function () { return chunkAAFX64WD_cjs.toLogoutSessionViews; }
3963
3818
  });
3964
3819
  Object.defineProperty(exports, "toNotificationCategories", {
3965
3820
  enumerable: true,
3966
- get: function () { return chunkOR4CO743_cjs.toNotificationCategories; }
3821
+ get: function () { return chunkAAFX64WD_cjs.toNotificationCategories; }
3967
3822
  });
3968
3823
  Object.defineProperty(exports, "DEFAULT_DOCUMENT_PICKER_LABELS", {
3969
3824
  enumerable: true,
@@ -3987,11 +3842,11 @@ Object.defineProperty(exports, "TriStateFilterMenu", {
3987
3842
  });
3988
3843
  Object.defineProperty(exports, "ConfirmDialog", {
3989
3844
  enumerable: true,
3990
- get: function () { return chunkZAVEMQ37_cjs.ConfirmDialog; }
3845
+ get: function () { return chunkDWZXSPMB_cjs.ConfirmDialog; }
3991
3846
  });
3992
3847
  Object.defineProperty(exports, "DEFAULT_CONFIRM_DIALOG_LABELS", {
3993
3848
  enumerable: true,
3994
- get: function () { return chunkZAVEMQ37_cjs.DEFAULT_CONFIRM_DIALOG_LABELS; }
3849
+ get: function () { return chunkDWZXSPMB_cjs.DEFAULT_CONFIRM_DIALOG_LABELS; }
3995
3850
  });
3996
3851
  Object.defineProperty(exports, "MODAL_SECTION_TITLE_CLASS", {
3997
3852
  enumerable: true,
@@ -4028,7 +3883,6 @@ exports.DEFAULT_CONVERSATION_TITLE_SECTION_LABELS = DEFAULT_CONVERSATION_TITLE_S
4028
3883
  exports.DEFAULT_DAILY_CAP_FIELD_LABELS = DEFAULT_DAILY_CAP_FIELD_LABELS;
4029
3884
  exports.DEFAULT_EMAIL_WORKSPACE_DIALOG_LABELS = DEFAULT_EMAIL_WORKSPACE_DIALOG_LABELS;
4030
3885
  exports.DEFAULT_ERROR_DIALOG_LABELS = DEFAULT_ERROR_DIALOG_LABELS;
4031
- exports.DEFAULT_FIRM_POOL_SECTION_LABELS = DEFAULT_FIRM_POOL_SECTION_LABELS;
4032
3886
  exports.DEFAULT_INLINE_NAME_EDITOR_LABELS = DEFAULT_INLINE_NAME_EDITOR_LABELS;
4033
3887
  exports.DEFAULT_INVITE_CONTACTS_DIALOG_LABELS = DEFAULT_INVITE_CONTACTS_DIALOG_LABELS;
4034
3888
  exports.DEFAULT_INVOICES_DIALOG_LABELS = DEFAULT_INVOICES_DIALOG_LABELS;
@@ -4057,9 +3911,7 @@ exports.DailyCapField = DailyCapField;
4057
3911
  exports.DraggableHeader = DraggableHeader;
4058
3912
  exports.EmailWorkspaceDialogView = EmailWorkspaceDialogView;
4059
3913
  exports.ErrorDialogView = ErrorDialogView;
4060
- exports.FIRM_POOL_MAX_TOP_UP = FIRM_POOL_MAX_TOP_UP;
4061
3914
  exports.FilterChip = FilterChip;
4062
- exports.FirmPoolSection = FirmPoolSection;
4063
3915
  exports.FloatingPanel = FloatingPanel;
4064
3916
  exports.InlineNameEditor = InlineNameEditor;
4065
3917
  exports.InviteContactsDialog = InviteContactsDialog;
@@ -4069,6 +3921,8 @@ exports.MemberProjectRow = MemberProjectRow;
4069
3921
  exports.MessageJsonTree = MessageJsonTree;
4070
3922
  exports.ModelProviderLabel = ModelProviderLabel;
4071
3923
  exports.ModelSelectionSection = ModelSelectionSection;
3924
+ exports.MoreInfo = MoreInfo;
3925
+ exports.MoreInfoList = MoreInfoList;
4072
3926
  exports.PanelActionsRow = PanelActionsRow;
4073
3927
  exports.PanelAddButton = PanelAddButton;
4074
3928
  exports.PanelFrame = PanelFrame;