@flamingo-stack/openframe-frontend-core 0.0.848 → 0.0.850

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 (137) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-MWYEROAP.cjs → chunk-2QZUTNL3.cjs} +55 -55
  3. package/dist/{chunk-YXKAHQYS.cjs → chunk-533QK4R6.cjs} +2 -1
  4. package/dist/{chunk-5HOWR4TG.cjs → chunk-5CBI2ZYV.cjs} +5 -5
  5. package/dist/{chunk-NYT6IBIX.cjs → chunk-5PIR77V5.cjs} +4 -4
  6. package/dist/{chunk-IIUZE73M.cjs → chunk-6AJYGXXS.cjs} +14 -14
  7. package/dist/{chunk-VW4446JR.cjs → chunk-7ICHJVAT.cjs} +16 -16
  8. package/dist/{chunk-U7UBYJEZ.cjs → chunk-BU2PSRAS.cjs} +5 -5
  9. package/dist/{chunk-IKOL6NJY.cjs → chunk-CAGNWDVJ.cjs} +11 -1
  10. package/dist/{chunk-O4BXHCMK.cjs → chunk-FRG724DU.cjs} +2 -2
  11. package/dist/{chunk-YAW7CHLV.cjs → chunk-FXLROQUT.cjs} +41 -38
  12. package/dist/{chunk-IUZVOQXP.cjs → chunk-GAYLAA3L.cjs} +45 -45
  13. package/dist/{chunk-7YJQTQPV.cjs → chunk-IG6ROHPS.cjs} +46 -46
  14. package/dist/{chunk-INA2FX2N.cjs → chunk-IHY7E4EX.cjs} +2 -2
  15. package/dist/{chunk-Y2ZWWIUA.cjs → chunk-IN3LA2FU.cjs} +2 -2
  16. package/dist/{chunk-74Z34I2C.cjs → chunk-IPGGSFR7.cjs} +6 -6
  17. package/dist/{chunk-7DW3LZ52.cjs → chunk-JWIITCVB.cjs} +94 -173
  18. package/dist/{chunk-OCJXOSIH.cjs → chunk-LGYPCUHO.cjs} +32 -32
  19. package/dist/{chunk-7LE4HWHA.cjs → chunk-OHHDX3Z4.cjs} +24 -24
  20. package/dist/{chunk-C3WZXOZJ.cjs → chunk-QJER2ZNA.cjs} +3 -3
  21. package/dist/{chunk-GASFYPGH.cjs → chunk-R5JPZ6TY.cjs} +14 -14
  22. package/dist/{chunk-QUSCSYHJ.cjs → chunk-TX4NTH22.cjs} +45 -26
  23. package/dist/{chunk-Y4BG7SPX.cjs → chunk-VRWBJL7B.cjs} +66 -66
  24. package/dist/{chunk-2V6FCVUL.cjs → chunk-XKOL5CNU.cjs} +449 -390
  25. package/dist/{chunk-I3YRYS23.cjs → chunk-ZDSC3GFX.cjs} +38 -12
  26. package/dist/{cloud-tenants-YAZHLPOQ.cjs → cloud-tenants-TVB3DT3J.cjs} +8 -8
  27. package/dist/components/case-studies/index.cjs +22 -22
  28. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  29. package/dist/components/chat/entity-cards/dispatch.js +1 -0
  30. package/dist/components/chat/index.cjs +5 -5
  31. package/dist/components/contact/index.cjs +9 -9
  32. package/dist/components/docs/doc-viewer.d.ts +7 -7
  33. package/dist/components/docs/doc-viewer.d.ts.map +1 -1
  34. package/dist/components/docs/doc-viewer.js +29 -16
  35. package/dist/components/docs/docs-hub-page.d.ts +1 -1
  36. package/dist/components/docs/docs-hub-page.d.ts.map +1 -1
  37. package/dist/components/docs/docs-hub-page.js +4 -11
  38. package/dist/components/docs/index.cjs +12 -12
  39. package/dist/components/docs/use-document-tree.d.ts.map +1 -1
  40. package/dist/components/docs/use-document-tree.js +24 -24
  41. package/dist/components/embeds/claude-embed.d.ts +2 -2
  42. package/dist/components/embeds/claude-embed.d.ts.map +1 -1
  43. package/dist/components/embeds/claude-embed.js +3 -3
  44. package/dist/components/embeds/embed-iframe.d.ts +5 -3
  45. package/dist/components/embeds/embed-iframe.d.ts.map +1 -1
  46. package/dist/components/embeds/embed-iframe.js +4 -3
  47. package/dist/components/embeds/embed-viewer-frame.d.ts +14 -9
  48. package/dist/components/embeds/embed-viewer-frame.d.ts.map +1 -1
  49. package/dist/components/embeds/embed-viewer-frame.js +31 -7
  50. package/dist/components/embeds/figma-embed.d.ts +4 -2
  51. package/dist/components/embeds/figma-embed.d.ts.map +1 -1
  52. package/dist/components/embeds/figma-embed.js +4 -3
  53. package/dist/components/embeds/file-download-card.d.ts +3 -1
  54. package/dist/components/embeds/file-download-card.d.ts.map +1 -1
  55. package/dist/components/embeds/file-download-card.js +18 -3
  56. package/dist/components/embeds/google-sheets-viewer.d.ts +3 -1
  57. package/dist/components/embeds/google-sheets-viewer.d.ts.map +1 -1
  58. package/dist/components/embeds/google-sheets-viewer.js +7 -4
  59. package/dist/components/embeds/index.cjs +9 -9
  60. package/dist/components/embeds/pdf-viewer.d.ts +3 -1
  61. package/dist/components/embeds/pdf-viewer.d.ts.map +1 -1
  62. package/dist/components/embeds/pdf-viewer.js +7 -2
  63. package/dist/components/faq/index.cjs +10 -10
  64. package/dist/components/features/index.cjs +10 -8
  65. package/dist/components/features/software/index.d.ts +1 -1
  66. package/dist/components/features/software/index.d.ts.map +1 -1
  67. package/dist/components/features/software/index.js +2 -0
  68. package/dist/components/features/software/software-action-copy.d.ts.map +1 -1
  69. package/dist/components/features/software/software-action-copy.js +6 -12
  70. package/dist/components/features/software/software-action-form.d.ts +7 -1
  71. package/dist/components/features/software/software-action-form.d.ts.map +1 -1
  72. package/dist/components/features/software/software-action-form.js +11 -3
  73. package/dist/components/features/software/update-settings-fields.d.ts +12 -1
  74. package/dist/components/features/software/update-settings-fields.d.ts.map +1 -1
  75. package/dist/components/features/software/update-settings-fields.js +57 -29
  76. package/dist/components/help-center-pages/index.cjs +87 -87
  77. package/dist/components/index.cjs +52 -50
  78. package/dist/components/meeting-scheduler/index.cjs +40 -40
  79. package/dist/components/navigation/index.cjs +11 -11
  80. package/dist/components/onboarding-guides/index.cjs +11 -11
  81. package/dist/components/product-demo/index.cjs +18 -18
  82. package/dist/components/related-content/index.cjs +4 -4
  83. package/dist/components/tickets/index.cjs +13 -13
  84. package/dist/components/ui/index.cjs +8 -8
  85. package/dist/components/ui/markdown/rich/rich-markdown-renderer.d.ts.map +1 -1
  86. package/dist/components/ui/markdown/rich/rich-markdown-renderer.js +7 -3
  87. package/dist/components/ui/page-actions.d.ts.map +1 -1
  88. package/dist/components/ui/page-actions.js +11 -1
  89. package/dist/{devices-IZROCLFK.cjs → devices-NGCTSXIU.cjs} +9 -9
  90. package/dist/{embeddable-chat-ETW6S22E.cjs → embeddable-chat-322NDFP5.cjs} +74 -74
  91. package/dist/index.cjs +18 -12
  92. package/dist/{knowledge-4IRWLTNW.cjs → knowledge-75PO5DYS.cjs} +9 -9
  93. package/dist/{logs-EFDGY5IO.cjs → logs-PZESOAIG.cjs} +15 -15
  94. package/dist/{policies-3KEXZ5BP.cjs → policies-6XNMBFWO.cjs} +12 -12
  95. package/dist/{remote-session-NT4NG7EF.cjs → remote-session-Q2FIBCGT.cjs} +4 -4
  96. package/dist/{scripts-PCGTZLZL.cjs → scripts-B3JW6TPF.cjs} +15 -15
  97. package/dist/{software-update-YCDNVFJE.cjs → software-update-NWP542J7.cjs} +12 -12
  98. package/dist/types/doc-source.d.ts +2 -2
  99. package/dist/types/doc-source.d.ts.map +1 -1
  100. package/dist/utils/doc-tree-nav.d.ts +7 -0
  101. package/dist/utils/doc-tree-nav.d.ts.map +1 -1
  102. package/dist/utils/doc-tree-nav.js +19 -0
  103. package/dist/utils/index.cjs +25 -2
  104. package/dist/utils/list-url.d.ts.map +1 -1
  105. package/dist/utils/list-url.js +2 -1
  106. package/dist/utils/source-grouping.d.ts +2 -2
  107. package/dist/utils/source-grouping.d.ts.map +1 -1
  108. package/dist/utils/source-grouping.js +1 -1
  109. package/dist/utils/source-icons.d.ts.map +1 -1
  110. package/dist/utils/source-icons.js +3 -0
  111. package/package.json +1 -1
  112. package/src/components/chat/entity-cards/dispatch.tsx +3 -0
  113. package/src/components/docs/doc-viewer.tsx +56 -35
  114. package/src/components/docs/docs-hub-page.tsx +13 -37
  115. package/src/components/docs/use-document-tree.ts +33 -23
  116. package/src/components/embeds/claude-embed.tsx +4 -4
  117. package/src/components/embeds/embed-iframe.tsx +8 -5
  118. package/src/components/embeds/embed-viewer-frame.tsx +43 -15
  119. package/src/components/embeds/figma-embed.tsx +9 -4
  120. package/src/components/embeds/file-download-card.tsx +28 -4
  121. package/src/components/embeds/google-sheets-viewer.tsx +9 -3
  122. package/src/components/embeds/pdf-viewer.tsx +12 -2
  123. package/src/components/features/software/index.ts +1 -0
  124. package/src/components/features/software/software-action-copy.ts +19 -12
  125. package/src/components/features/software/software-action-form.tsx +16 -3
  126. package/src/components/features/software/update-settings-fields.tsx +104 -32
  127. package/src/components/ui/markdown/rich/rich-markdown-renderer.tsx +4 -0
  128. package/src/components/ui/page-actions.tsx +19 -2
  129. package/src/types/doc-source.ts +2 -2
  130. package/src/utils/doc-tree-nav.ts +27 -0
  131. package/src/utils/list-url.ts +2 -1
  132. package/src/utils/source-grouping.ts +2 -2
  133. package/src/utils/source-icons.ts +3 -0
  134. package/dist/components/docs/skeletons.d.ts +0 -25
  135. package/dist/components/docs/skeletons.d.ts.map +0 -1
  136. package/dist/components/docs/skeletons.js +0 -83
  137. package/src/components/docs/skeletons.tsx +0 -131
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
 
21
- var _chunkIKOL6NJYcjs = require('./chunk-IKOL6NJY.cjs');
21
+ var _chunkCAGNWDVJcjs = require('./chunk-CAGNWDVJ.cjs');
22
22
 
23
23
 
24
24
 
@@ -36,7 +36,7 @@ var _chunkSA2NNWIJcjs = require('./chunk-SA2NNWIJ.cjs');
36
36
 
37
37
 
38
38
 
39
- var _chunkINA2FX2Ncjs = require('./chunk-INA2FX2N.cjs');
39
+ var _chunkIHY7E4EXcjs = require('./chunk-IHY7E4EX.cjs');
40
40
 
41
41
 
42
42
  var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
@@ -101,7 +101,7 @@ var _chunkZZDFMUEUcjs = require('./chunk-ZZDFMUEU.cjs');
101
101
 
102
102
 
103
103
 
104
- var _chunkQUSCSYHJcjs = require('./chunk-QUSCSYHJ.cjs');
104
+ var _chunkTX4NTH22cjs = require('./chunk-TX4NTH22.cjs');
105
105
 
106
106
 
107
107
 
@@ -128,7 +128,7 @@ var _chunkOT6P57ZScjs = require('./chunk-OT6P57ZS.cjs');
128
128
 
129
129
 
130
130
 
131
- var _chunkYAW7CHLVcjs = require('./chunk-YAW7CHLV.cjs');
131
+ var _chunkFXLROQUTcjs = require('./chunk-FXLROQUT.cjs');
132
132
 
133
133
 
134
134
 
@@ -497,7 +497,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
497
497
 
498
498
 
499
499
 
500
- var _chunkYXKAHQYScjs = require('./chunk-YXKAHQYS.cjs');
500
+ var _chunk533QK4R6cjs = require('./chunk-533QK4R6.cjs');
501
501
 
502
502
 
503
503
  var _chunkHTYJUMFBcjs = require('./chunk-HTYJUMFB.cjs');
@@ -718,7 +718,7 @@ function ThemeProvider({ children, ...overrides }) {
718
718
  var useTheme = _nextthemes.useTheme;
719
719
  function useThemeToggle() {
720
720
  const { resolvedTheme, theme, setTheme } = useTheme();
721
- const mounted = _chunkYAW7CHLVcjs.useIsHydrated.call(void 0, );
721
+ const mounted = _chunkFXLROQUTcjs.useIsHydrated.call(void 0, );
722
722
  const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
723
723
  const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
724
724
  const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
@@ -927,7 +927,7 @@ function TimezoneSelect({
927
927
  const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingProp;
928
928
  const options = _react.useMemo.call(void 0, () => timezoneOptions(value), [value]);
929
929
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
930
- _chunkIKOL6NJYcjs.Autocomplete,
930
+ _chunkCAGNWDVJcjs.Autocomplete,
931
931
  {
932
932
  className,
933
933
  fieldLoading: loading,
@@ -1743,20 +1743,20 @@ function DatePickerInput(props) {
1743
1743
  ) })
1744
1744
  ] }),
1745
1745
  showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
1746
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
1747
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "HH" }) }),
1748
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: h, children: h }, h)) })
1746
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
1747
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "HH" }) }),
1748
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: h, children: h }, h)) })
1749
1749
  ] }),
1750
1750
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h4", children: ":" }),
1751
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
1752
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "MM" }) }),
1753
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: m, children: m }, m)) })
1751
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
1752
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "MM" }) }),
1753
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: m, children: m }, m)) })
1754
1754
  ] }),
1755
- !use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
1756
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "AM" }) }),
1757
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: [
1758
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "AM", children: "AM" }),
1759
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "PM", children: "PM" })
1755
+ !use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
1756
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "AM" }) }),
1757
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: [
1758
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "AM", children: "AM" }),
1759
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "PM", children: "PM" })
1760
1760
  ] })
1761
1761
  ] })
1762
1762
  ] })
@@ -1897,9 +1897,9 @@ function DatePickerInputSimple(props) {
1897
1897
  }
1898
1898
  ) })
1899
1899
  ] }),
1900
- showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
1901
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
1902
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
1900
+ showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
1901
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
1902
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
1903
1903
  ] })
1904
1904
  ] });
1905
1905
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZGEWT3SFcjs.FieldWrapper, { label, error, errorSlot: "error" in props, className, children: content });
@@ -1918,14 +1918,14 @@ function DateFilterPanel({
1918
1918
  className
1919
1919
  }) {
1920
1920
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex flex-col gap-4", className), children: [
1921
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
1922
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "gap-2", "aria-label": "Sort direction", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
1921
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
1922
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "gap-2", "aria-label": "Sort direction", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
1923
1923
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowUpDown, { className: "size-6 shrink-0 text-ods-text-secondary" }),
1924
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) })
1924
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) })
1925
1925
  ] }) }),
1926
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: [
1927
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "asc", children: ascLabel }),
1928
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "desc", children: descLabel })
1926
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: [
1927
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "asc", children: ascLabel }),
1928
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "desc", children: descLabel })
1929
1929
  ] })
1930
1930
  ] }),
1931
1931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2537,8 +2537,8 @@ function SearchableSelect(allProps) {
2537
2537
  const keyboardPadding = _chunkFW7RKWPYcjs.useKeyboardCollisionPadding.call(void 0, );
2538
2538
  const portalContainer = _chunkS3QXLD4Xcjs.usePortalContainer.call(void 0, );
2539
2539
  if (!isOpen && search !== "") setSearch("");
2540
- const listedOptions = _chunkIKOL6NJYcjs.useSettledOptions.call(void 0, options, isLoading, serverSearch);
2541
- const rememberedSelection = _chunkIKOL6NJYcjs.useRememberedSelection.call(void 0, listedOptions, value != null ? [value] : [], serverSearch);
2540
+ const listedOptions = _chunkCAGNWDVJcjs.useSettledOptions.call(void 0, options, isLoading, serverSearch);
2541
+ const rememberedSelection = _chunkCAGNWDVJcjs.useRememberedSelection.call(void 0, listedOptions, value != null ? [value] : [], serverSearch);
2542
2542
  const filtered = _react.useMemo.call(void 0, () => {
2543
2543
  if (serverSearch) return listedOptions;
2544
2544
  const q = search.trim().toLowerCase();
@@ -2822,7 +2822,7 @@ function DefaultAssigneeDropdown({
2822
2822
  if (isEditing) {
2823
2823
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "min-w-0", className), children: [
2824
2824
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2825
- _chunkIKOL6NJYcjs.Autocomplete,
2825
+ _chunkCAGNWDVJcjs.Autocomplete,
2826
2826
  {
2827
2827
  options,
2828
2828
  value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _45 => _45.id]), () => ( null)),
@@ -3073,7 +3073,7 @@ function MediaTypeSelector({
3073
3073
  // changed) and cost an extra render pass on every change to say what the
3074
3074
  // prop already said.
3075
3075
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3076
- _chunkIKOL6NJYcjs.Select,
3076
+ _chunkCAGNWDVJcjs.Select,
3077
3077
  {
3078
3078
  value: value || void 0,
3079
3079
  onValueChange: (next) => {
@@ -3083,8 +3083,8 @@ function MediaTypeSelector({
3083
3083
  disabled,
3084
3084
  defaultValue: value,
3085
3085
  children: [
3086
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder }) }),
3087
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
3086
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder }) }),
3087
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
3088
3088
  option.icon,
3089
3089
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: option.label })
3090
3090
  ] }) }, option.value)) })
@@ -4567,14 +4567,14 @@ function AdminFormDrawer({
4567
4567
  else onClose();
4568
4568
  };
4569
4569
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4570
- _chunkINA2FX2Ncjs.Drawer,
4570
+ _chunkIHY7E4EXcjs.Drawer,
4571
4571
  {
4572
4572
  open: isOpen,
4573
4573
  onOpenChange: (open) => {
4574
4574
  if (!open) requestClose();
4575
4575
  },
4576
4576
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4577
- _chunkINA2FX2Ncjs.DrawerContent,
4577
+ _chunkIHY7E4EXcjs.DrawerContent,
4578
4578
  {
4579
4579
  side: "right",
4580
4580
  resizable: true,
@@ -4583,15 +4583,15 @@ function AdminFormDrawer({
4583
4583
  storageKey,
4584
4584
  panelClassName: "max-md:w-[calc(100vw-1rem)]",
4585
4585
  children: [
4586
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkINA2FX2Ncjs.DrawerHeader, { children: [
4587
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkINA2FX2Ncjs.DrawerTitle, { children: title }),
4588
- subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkINA2FX2Ncjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
4586
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIHY7E4EXcjs.DrawerHeader, { children: [
4587
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIHY7E4EXcjs.DrawerTitle, { children: title }),
4588
+ subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIHY7E4EXcjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
4589
4589
  ] }),
4590
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkINA2FX2Ncjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4590
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIHY7E4EXcjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4591
4591
  "form",
4592
4592
  {
4593
4593
  id: formId,
4594
- ..._chunkQUSCSYHJcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4594
+ ..._chunkTX4NTH22cjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4595
4595
  className: "flex flex-col gap-[var(--spacing-system-lf)]",
4596
4596
  onSubmit: (e) => {
4597
4597
  e.preventDefault();
@@ -4698,7 +4698,7 @@ function AdminFormModal({
4698
4698
  "form",
4699
4699
  {
4700
4700
  id: formId,
4701
- ..._chunkQUSCSYHJcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4701
+ ..._chunkTX4NTH22cjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4702
4702
  className: "flex min-h-0 flex-1 flex-col",
4703
4703
  onSubmit: (e) => {
4704
4704
  e.preventDefault();
@@ -5994,7 +5994,8 @@ function EmbedIframe({
5994
5994
  height,
5995
5995
  allow,
5996
5996
  referrerPolicy,
5997
- loading,
5997
+ iframeLoading,
5998
+ loading = false,
5998
5999
  allowFullScreen,
5999
6000
  sandbox
6000
6001
  }) {
@@ -6002,7 +6003,7 @@ function EmbedIframe({
6002
6003
  const isLoaded = loadedSrc === src;
6003
6004
  const iframeRef = _react.useRef.call(void 0, null);
6004
6005
  const handleLoad = _react.useCallback.call(void 0, () => setLoadedSrc(src), [src]);
6005
- const held = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
6006
+ const held = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading;
6006
6007
  _react.useEffect.call(void 0, () => {
6007
6008
  const iframe = iframeRef.current;
6008
6009
  return () => {
@@ -6033,7 +6034,7 @@ function EmbedIframe({
6033
6034
  onLoad: handleLoad,
6034
6035
  allow,
6035
6036
  referrerPolicy,
6036
- loading,
6037
+ loading: iframeLoading,
6037
6038
  allowFullScreen: _optionalChain([allow, 'optionalAccess', _115 => _115.includes, 'call', _116 => _116("fullscreen")]) ? void 0 : allowFullScreen,
6038
6039
  sandbox
6039
6040
  },
@@ -6046,30 +6047,34 @@ function EmbedIframe({
6046
6047
 
6047
6048
  // src/components/embeds/embed-viewer-frame.tsx
6048
6049
 
6050
+ var EMBED_VIEWER_SKELETON_ACTIONS = 1;
6049
6051
  function EmbedViewerFrame({
6050
6052
  icon,
6051
6053
  title,
6052
6054
  titleVariant = "h3",
6053
6055
  actions,
6054
6056
  src,
6055
- isLoading: isLoadingGiven,
6057
+ loading: loadingGiven = false,
6058
+ resolving = false,
6056
6059
  emptyIcon,
6057
6060
  emptyMessage = "Content not available",
6058
6061
  height,
6059
6062
  allow,
6060
6063
  allowFullScreen,
6061
- loading,
6064
+ iframeLoading,
6062
6065
  sandbox,
6063
6066
  className,
6064
- fullscreenControl
6067
+ fullscreenControl,
6068
+ loadingActionCount = EMBED_VIEWER_SKELETON_ACTIONS
6065
6069
  }) {
6066
- const isLoading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || !!isLoadingGiven;
6070
+ const loadingForm = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingGiven;
6071
+ const isLoading = loadingForm || resolving;
6067
6072
  const frameRef = _react.useRef.call(void 0, null);
6068
6073
  const [isFullscreen, setIsFullscreen] = _react.useState.call(void 0, false);
6069
6074
  const controllerRef = _react.useRef.call(void 0, null);
6070
6075
  _react.useEffect.call(void 0, () => {
6071
6076
  if (!fullscreenControl) return void 0;
6072
- const controller = new (0, _chunkQUSCSYHJcjs.FullscreenSwitchController)({
6077
+ const controller = new (0, _chunkTX4NTH22cjs.FullscreenSwitchController)({
6073
6078
  target: () => frameRef.current,
6074
6079
  onFullscreenChange: setIsFullscreen
6075
6080
  });
@@ -6096,9 +6101,27 @@ function EmbedViewerFrame({
6096
6101
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-3 content-sm:flex-row content-sm:items-center content-sm:justify-between", children: [
6097
6102
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2", children: [
6098
6103
  icon,
6099
- titleVariant === "h3" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "truncate text-ods-text-primary text-h3", children: title }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-semibold text-ods-text-primary text-h6", children: title })
6104
+ loadingForm ? (
6105
+ // The document is being read: its name is not known yet. (A viewer still resolving its frame, with a
6106
+ // known title, keeps it.)
6107
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: titleVariant, className: "w-48 max-w-full" })
6108
+ ) : titleVariant === "h3" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "truncate text-ods-text-primary text-h3", children: title }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-semibold text-ods-text-primary text-h6", children: title })
6100
6109
  ] }),
6101
- fullscreenControl && src ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)] content-sm:flex-row content-sm:items-center", children: [
6110
+ loadingForm ? (
6111
+ // The actions point at the document being read: each its button's loading form, in the actions' row.
6112
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center gap-2 content-sm:w-auto", children: Array.from({ length: loadingActionCount }, (_, i) => (
6113
+ // biome-ignore lint/suspicious/noArrayIndexKey: loading buttons never reorder
6114
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6115
+ _chunkPMUCEUFQcjs.InteractiveSkeleton.Button,
6116
+ {
6117
+ "data-loading-item": true,
6118
+ size: "small-legacy",
6119
+ className: "flex-1 content-sm:flex-initial"
6120
+ },
6121
+ i
6122
+ )
6123
+ )) })
6124
+ ) : fullscreenControl && src ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)] content-sm:flex-row content-sm:items-center", children: [
6102
6125
  actions,
6103
6126
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6104
6127
  _chunkFCZAUK4Dcjs.Button,
@@ -6122,7 +6145,7 @@ function EmbedViewerFrame({
6122
6145
  height: isFullscreen ? "calc(100vh - 96px)" : height,
6123
6146
  allow,
6124
6147
  allowFullScreen,
6125
- loading,
6148
+ iframeLoading,
6126
6149
  sandbox
6127
6150
  }
6128
6151
  ) : isLoading ? (
@@ -6162,7 +6185,7 @@ var KIND_HEADING = {
6162
6185
  artifact: "Claude Artifact",
6163
6186
  design: "Claude Design"
6164
6187
  };
6165
- function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }) {
6188
+ function ClaudeEmbed({ url, kind = "artifact", title, height, iframeLoading = "lazy" }) {
6166
6189
  const { src: mirrorSrc, status } = _chunkFNQWL4W4cjs.useClaudeMirrorSrc.call(void 0, url);
6167
6190
  const isProbing = status === "probing";
6168
6191
  const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkHLJXCOMAcjs.toClaudeEmbedUrl.call(void 0, url)));
@@ -6173,7 +6196,7 @@ function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }
6173
6196
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk44MFW2JLcjs.ClaudeIcon, { className: "h-5 w-5 shrink-0" }),
6174
6197
  title: _optionalChain([title, 'optionalAccess', _120 => _120.trim, 'call', _121 => _121()]) || KIND_HEADING[kind],
6175
6198
  titleVariant: "h6",
6176
- isLoading: isProbing,
6199
+ resolving: isProbing,
6177
6200
  actions: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6178
6201
  _chunkFCZAUK4Dcjs.Button,
6179
6202
  {
@@ -6189,7 +6212,7 @@ function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }
6189
6212
  ),
6190
6213
  src: embedUrl,
6191
6214
  fullscreenControl: true,
6192
- loading,
6215
+ iframeLoading,
6193
6216
  height,
6194
6217
  allow: "clipboard-write; clipboard-read; fullscreen",
6195
6218
  sandbox: mirrorSrc ? "allow-scripts allow-popups allow-forms" : "allow-scripts allow-same-origin allow-popups allow-forms",
@@ -6218,7 +6241,7 @@ function SlidesViewToggle({ view, onChange }) {
6218
6241
  if (v && v !== view) onChange(v);
6219
6242
  },
6220
6243
  "aria-label": "Figma slides view mode",
6221
- className: "flex shrink-0 items-center gap-0.5 rounded-lg border border-ods-border bg-ods-card p-0.5",
6244
+ className: "flex h-10 shrink-0 items-center gap-0.5 rounded-lg border border-ods-border bg-ods-card p-0.5",
6222
6245
  children: options.map(({ key, label, Icon }) => {
6223
6246
  const active = view === key;
6224
6247
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -6226,7 +6249,7 @@ function SlidesViewToggle({ view, onChange }) {
6226
6249
  {
6227
6250
  value: key,
6228
6251
  "aria-label": label,
6229
- className: `flex items-center gap-1.5 rounded-md px-2.5 py-1 transition-colors text-h6 ${active ? "bg-ods-accent text-ods-text-on-accent" : "text-ods-text-secondary hover:bg-ods-bg-hover hover:text-ods-text-primary"}`,
6252
+ className: `flex h-full items-center gap-1.5 rounded-md px-2.5 py-1 transition-colors text-h6 ${active ? "bg-ods-accent text-ods-text-on-accent" : "text-ods-text-secondary hover:bg-ods-bg-hover hover:text-ods-text-primary"}`,
6230
6253
  children: [
6231
6254
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: "h-4 w-4 shrink-0" }),
6232
6255
  label
@@ -6238,7 +6261,7 @@ function SlidesViewToggle({ view, onChange }) {
6238
6261
  }
6239
6262
  );
6240
6263
  }
6241
- function FigmaEmbed({ url, title, height, loading = "lazy" }) {
6264
+ function FigmaEmbed({ url, title, height, iframeLoading = "lazy", loading = false }) {
6242
6265
  const [view, setView] = _react.useState.call(void 0, "present");
6243
6266
  const isSlides = url ? _chunkHLJXCOMAcjs.isFigmaSlidesUrl.call(void 0, url) : false;
6244
6267
  const embedSrc = url ? _chunkHLJXCOMAcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
@@ -6280,6 +6303,7 @@ function FigmaEmbed({ url, title, height, loading = "lazy" }) {
6280
6303
  ] }),
6281
6304
  src: embedSrc,
6282
6305
  allow: "clipboard-write; clipboard-read; fullscreen",
6306
+ iframeLoading,
6283
6307
  loading,
6284
6308
  height,
6285
6309
  allowFullScreen: true,
@@ -6733,12 +6757,12 @@ var OGLinkPreview = ({
6733
6757
  children: [
6734
6758
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TILE_SOURCE_ROW_CLASS, children: [
6735
6759
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`, size: "w-4 h-4" }),
6736
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: name }),
6760
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: name }),
6737
6761
  meta != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "ml-auto flex flex-none items-center gap-1.5 text-ods-text-secondary", children: meta })
6738
6762
  ] }),
6739
6763
  kicker != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden text-ods-accent text-h5", style: lineClamp(1), children: kicker }),
6740
6764
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6741
- _chunkIKOL6NJYcjs.TruncateText,
6765
+ _chunkCAGNWDVJcjs.TruncateText,
6742
6766
  {
6743
6767
  lines: 2,
6744
6768
  variant: "h3",
@@ -6747,7 +6771,7 @@ var OGLinkPreview = ({
6747
6771
  children: curatedTitle || domainToTitle(domain)
6748
6772
  }
6749
6773
  ),
6750
- curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", children: curatedDescription })
6774
+ curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", children: curatedDescription })
6751
6775
  ]
6752
6776
  }
6753
6777
  );
@@ -6893,8 +6917,8 @@ var OGLinkPreview = ({
6893
6917
  children: [
6894
6918
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: faviconSrc }) }),
6895
6919
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
6896
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { className: "font-semibold transition-colors group-hover:text-ods-accent", children: title }),
6897
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { tone: "secondary", children: description })
6920
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { className: "font-semibold transition-colors group-hover:text-ods-accent", children: title }),
6921
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { tone: "secondary", children: description })
6898
6922
  ] }),
6899
6923
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExternalLinkIcon, {})
6900
6924
  ]
@@ -6941,7 +6965,7 @@ var OGLinkPreview = ({
6941
6965
  ),
6942
6966
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
6943
6967
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6944
- _chunkIKOL6NJYcjs.TruncateText,
6968
+ _chunkCAGNWDVJcjs.TruncateText,
6945
6969
  {
6946
6970
  lines: 2,
6947
6971
  className: "min-h-[calc(var(--font-line-space-h4-body)*2)] font-semibold transition-colors group-hover:text-ods-accent",
@@ -6950,7 +6974,7 @@ var OGLinkPreview = ({
6950
6974
  }
6951
6975
  ),
6952
6976
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6953
- _chunkIKOL6NJYcjs.TruncateText,
6977
+ _chunkCAGNWDVJcjs.TruncateText,
6954
6978
  {
6955
6979
  lines: 2,
6956
6980
  tone: "secondary",
@@ -6960,9 +6984,9 @@ var OGLinkPreview = ({
6960
6984
  }
6961
6985
  ),
6962
6986
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2 text-ods-text-secondary text-h6", children: [
6963
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: effectiveData.siteName }),
6987
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: effectiveData.siteName }),
6964
6988
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "\u2022" }),
6965
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: ogDomain }),
6989
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: ogDomain }),
6966
6990
  meta
6967
6991
  ] })
6968
6992
  ] })
@@ -7318,7 +7342,7 @@ var formatTimeAgo = (timestamp) => {
7318
7342
  return `${Math.floor(diffSeconds / 86400)}d ago`;
7319
7343
  };
7320
7344
  function RedditEmbedClient({ url, maxWidth = 700, rel }) {
7321
- const postLinkRel = _chunkYAW7CHLVcjs.renderedLinkRel.call(void 0, rel, true);
7345
+ const postLinkRel = _chunkFXLROQUTcjs.renderedLinkRel.call(void 0, rel, true);
7322
7346
  const { redditProxyUrl } = useRichMarkdownRuntime();
7323
7347
  const [redditData, setRedditData] = _react.useState.call(void 0, null);
7324
7348
  const [loading, setLoading] = _react.useState.call(void 0, true);
@@ -7650,7 +7674,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
7650
7674
  ] });
7651
7675
  var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
7652
7676
  function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
7653
- const postLinkRel = _chunkYAW7CHLVcjs.renderedLinkRel.call(void 0, rel, true);
7677
+ const postLinkRel = _chunkFXLROQUTcjs.renderedLinkRel.call(void 0, rel, true);
7654
7678
  const { twitterProxyUrl } = useRichMarkdownRuntime();
7655
7679
  const [tweetData, setTweetData] = _react.useState.call(void 0, null);
7656
7680
  const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
@@ -7852,7 +7876,7 @@ function buildRichEmbedOverrides({
7852
7876
  ogEndpointPath,
7853
7877
  textSizes
7854
7878
  }) {
7855
- const standard = _chunkYAW7CHLVcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7879
+ const standard = _chunkFXLROQUTcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7856
7880
  return {
7857
7881
  // Fence-language embeds (```youtube-embed etc.); everything else
7858
7882
  // (mermaid, highlighted blocks, inline code) falls through to `standard`.
@@ -7988,14 +8012,14 @@ function buildRichEmbedOverrides({
7988
8012
  // rich-markdown runtime (Supabase optimization on the hub, identity
7989
8013
  // elsewhere). Guard against empty `![]()`.
7990
8014
  img: ({ src, alt }) => {
7991
- if (!_chunkYAW7CHLVcjs.hasRenderableSrc.call(void 0, src)) return null;
8015
+ if (!_chunkFXLROQUTcjs.hasRenderableSrc.call(void 0, src)) return null;
7992
8016
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
7993
8017
  },
7994
8018
  // Raw <iframe> tags in stored content (a pasted YouTube embed). A YouTube one becomes the same click-to-play
7995
8019
  // facade as the `youtube-embed` fence: the raw iframe loaded YouTube's whole player (about 470 KB of script) with
7996
8020
  // the page, on every post that carried one (CU-17tkuw5xp4q). Any other iframe loads when it nears the screen.
7997
8021
  iframe: ({ node: _node, src, ...rest }) => {
7998
- if (!_chunkYAW7CHLVcjs.hasRenderableSrc.call(void 0, src)) return null;
8022
+ if (!_chunkFXLROQUTcjs.hasRenderableSrc.call(void 0, src)) return null;
7999
8023
  const url = src.trim();
8000
8024
  if (_chunkMDLT6D46cjs.extractYouTubeId.call(void 0, url)) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.Video, { kind: "youtube", url });
8001
8025
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "iframe", { ...rest, src: url, loading: "lazy" });
@@ -8003,7 +8027,7 @@ function buildRichEmbedOverrides({
8003
8027
  // Raw <video> tags in stored content (blog publisher injection) route
8004
8028
  // to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
8005
8029
  video: ({ src, poster, className }) => {
8006
- if (!_chunkYAW7CHLVcjs.hasRenderableSrc.call(void 0, src)) return null;
8030
+ if (!_chunkFXLROQUTcjs.hasRenderableSrc.call(void 0, src)) return null;
8007
8031
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
8008
8032
  }
8009
8033
  };
@@ -8112,7 +8136,7 @@ var processShortcodes = (content) => {
8112
8136
  try {
8113
8137
  const urlObj = new URL(url);
8114
8138
  const hostname = urlObj.hostname.toLowerCase();
8115
- const hostIs = (domain) => _chunkYXKAHQYScjs.hostMatches.call(void 0, hostname, domain);
8139
+ const hostIs = (domain) => _chunk533QK4R6cjs.hostMatches.call(void 0, hostname, domain);
8116
8140
  const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
8117
8141
  if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
8118
8142
  return match;
@@ -8164,7 +8188,8 @@ var RichMarkdownInner = ({
8164
8188
  resolveLinkEndpointUrl,
8165
8189
  demoteMarkdownH1ToH2,
8166
8190
  skeletonSections,
8167
- skeletonLines
8191
+ skeletonLines,
8192
+ skeletonTitle
8168
8193
  }) => {
8169
8194
  const { ogScraperUrl } = useRichMarkdownRuntime();
8170
8195
  const { ogApiBaseUrl, ogEndpointPath } = _react.useMemo.call(void 0, () => {
@@ -8189,13 +8214,13 @@ var RichMarkdownInner = ({
8189
8214
  },
8190
8215
  [resolveLinkEndpointUrl, resolveSource]
8191
8216
  );
8192
- const textSizes = _react.useMemo.call(void 0, () => _chunkYAW7CHLVcjs.resolveTextSizeConfig.call(void 0, "article"), []);
8217
+ const textSizes = _react.useMemo.call(void 0, () => _chunkFXLROQUTcjs.resolveTextSizeConfig.call(void 0, "article"), []);
8193
8218
  const componentOverrides = _react.useMemo.call(void 0,
8194
8219
  () => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
8195
8220
  [ogApiBaseUrl, ogEndpointPath, textSizes]
8196
8221
  );
8197
8222
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8198
- _chunkYAW7CHLVcjs.MarkdownEngine,
8223
+ _chunkFXLROQUTcjs.MarkdownEngine,
8199
8224
  {
8200
8225
  content,
8201
8226
  className,
@@ -8211,7 +8236,8 @@ var RichMarkdownInner = ({
8211
8236
  extraAllowedHtmlTags: RICH_EXTRA_TAGS,
8212
8237
  allowRemoteMedia: true,
8213
8238
  skeletonSections,
8214
- skeletonLines
8239
+ skeletonLines,
8240
+ skeletonTitle
8215
8241
  }
8216
8242
  );
8217
8243
  };
@@ -8220,13 +8246,14 @@ var RichMarkdownRendererImpl = ({
8220
8246
  className = "",
8221
8247
  sectionIds,
8222
8248
  onInternalLinkClick,
8223
- brokenLinks = _chunkYAW7CHLVcjs.NO_BROKEN_LINKS,
8249
+ brokenLinks = _chunkFXLROQUTcjs.NO_BROKEN_LINKS,
8224
8250
  currentPath,
8225
8251
  resolveSource = "openframe-docs",
8226
8252
  resolveLinkEndpointUrl = "/api/docs/resolve-link",
8227
8253
  demoteMarkdownH1ToH2 = false,
8228
8254
  skeletonSections,
8229
8255
  skeletonLines,
8256
+ skeletonTitle,
8230
8257
  // Runtime overrides; provider fills the defaults
8231
8258
  redditProxyUrl,
8232
8259
  twitterProxyUrl,
@@ -8253,7 +8280,8 @@ var RichMarkdownRendererImpl = ({
8253
8280
  resolveLinkEndpointUrl,
8254
8281
  demoteMarkdownH1ToH2,
8255
8282
  skeletonSections,
8256
- skeletonLines
8283
+ skeletonLines,
8284
+ skeletonTitle
8257
8285
  }
8258
8286
  )
8259
8287
  }
@@ -9565,7 +9593,7 @@ function renderAdvancedPageContainer({
9565
9593
  contentClassName,
9566
9594
  showHeader = true
9567
9595
  }, inScope = false) {
9568
- const titleNode = title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.PageTitle, { className: PAGE_CONTAINER_TITLE_CLASS, children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }) : inScope && title === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageContainerTitleSkeleton, {}) : null;
9596
+ const titleNode = title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.PageTitle, { className: PAGE_CONTAINER_TITLE_CLASS, children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }) : inScope && title === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageContainerTitleSkeleton, {}) : null;
9569
9597
  const subtitleNode = subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: PAGE_CONTAINER_SUBTITLE_CLASS, children: subtitle }) : inScope && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageContainerSubtitleSkeleton, {}) : null;
9570
9598
  const getActionsVariant = () => {
9571
9599
  if (actionsVariant) return actionsVariant;
@@ -9574,7 +9602,7 @@ function renderAdvancedPageContainer({
9574
9602
  };
9575
9603
  const renderActions = () => {
9576
9604
  if (!actions || actions.length === 0) return null;
9577
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
9605
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
9578
9606
  };
9579
9607
  const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
9580
9608
  const paddingClasses = {
@@ -9597,7 +9625,7 @@ function renderAdvancedPageContainer({
9597
9625
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-end content-lg:justify-between", children: [
9598
9626
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
9599
9627
  backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9600
- _chunkIKOL6NJYcjs.BackButton,
9628
+ _chunkCAGNWDVJcjs.BackButton,
9601
9629
  {
9602
9630
  onClick: backButton.onClick,
9603
9631
  label: backButton.label,
@@ -9617,7 +9645,7 @@ function renderAdvancedPageContainer({
9617
9645
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-center content-lg:justify-between", children: [
9618
9646
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
9619
9647
  backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9620
- _chunkIKOL6NJYcjs.BackButton,
9648
+ _chunkCAGNWDVJcjs.BackButton,
9621
9649
  {
9622
9650
  onClick: backButton.onClick,
9623
9651
  label: backButton.label,
@@ -9637,7 +9665,7 @@ function renderAdvancedPageContainer({
9637
9665
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-end content-lg:justify-between", children: [
9638
9666
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
9639
9667
  backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9640
- _chunkIKOL6NJYcjs.BackButton,
9668
+ _chunkCAGNWDVJcjs.BackButton,
9641
9669
  {
9642
9670
  onClick: backButton.onClick,
9643
9671
  label: backButton.label,
@@ -9992,7 +10020,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
9992
10020
 
9993
10021
 
9994
10022
  function PlatformBrowseButton({ item }) {
9995
- const linkProps = _chunkYAW7CHLVcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
10023
+ const linkProps = _chunkFXLROQUTcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
9996
10024
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", linkProps, rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-4 w-4" }), children: [
9997
10025
  "Browse ",
9998
10026
  item.buttonText
@@ -10511,10 +10539,10 @@ var OSTypeBadge = ({
10511
10539
  if (!osType) {
10512
10540
  return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
10513
10541
  }
10514
- const normalized = _chunkQUSCSYHJcjs.normalizeOSType.call(void 0, osType);
10542
+ const normalized = _chunkTX4NTH22cjs.normalizeOSType.call(void 0, osType);
10515
10543
  if (!normalized && !labelOnly) return null;
10516
- const label = _chunkQUSCSYHJcjs.getOSLabel.call(void 0, osType);
10517
- const IconComponent = _chunkQUSCSYHJcjs.getOSIcon.call(void 0, osType);
10544
+ const label = _chunkTX4NTH22cjs.getOSLabel.call(void 0, osType);
10545
+ const IconComponent = _chunkTX4NTH22cjs.getOSIcon.call(void 0, osType);
10518
10546
  if (iconOnly && IconComponent) {
10519
10547
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk63A4GZMBcjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
10520
10548
  }
@@ -10811,7 +10839,7 @@ function ComplianceLogo({
10811
10839
  fallback = null,
10812
10840
  className
10813
10841
  }) {
10814
- const standard = _chunkQUSCSYHJcjs.complianceStandardForName.call(void 0, ...names);
10842
+ const standard = _chunkTX4NTH22cjs.complianceStandardForName.call(void 0, ...names);
10815
10843
  if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
10816
10844
  const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
10817
10845
  return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -11668,7 +11696,7 @@ function OrganizationCardSkeleton({
11668
11696
  ..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props),
11669
11697
  children: [
11670
11698
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_HEADER_CLASS, children: [
11671
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.EntityImage, { src: null }),
11699
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.EntityImage, { src: null }),
11672
11700
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_TEXT_CLASS, children: [
11673
11701
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-3/4" }),
11674
11702
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-1/2" })
@@ -11740,7 +11768,7 @@ function OrganizationCard({
11740
11768
  }
11741
11769
  ),
11742
11770
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_HEADER_CLASS, children: [
11743
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
11771
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
11744
11772
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_TEXT_CLASS, children: [
11745
11773
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "truncate text-ods-text-primary transition-colors text-h3", title: organization.name, children: organization.name }),
11746
11774
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -11807,8 +11835,8 @@ function ServiceCard({
11807
11835
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
11808
11836
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: resolvedIcon }),
11809
11837
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0", children: [
11810
- loading && !title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-40 max-w-full" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h3", children: title }),
11811
- loading && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-56 max-w-full" }) : subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
11838
+ loading && !title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-40 max-w-full" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h3", children: title }),
11839
+ loading && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-56 max-w-full" }) : subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
11812
11840
  ] })
11813
11841
  ] }),
11814
11842
  tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { label: tag.label, variant: "outline", className: "shrink-0 self-start", loading })
@@ -11946,7 +11974,7 @@ function PersonCell({
11946
11974
  const displayName = name || fallbackName;
11947
11975
  const scale = PERSON_CELL_SIZE[size];
11948
11976
  const nameLine = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11949
- _chunkIKOL6NJYcjs.TruncateText,
11977
+ _chunkCAGNWDVJcjs.TruncateText,
11950
11978
  {
11951
11979
  variant: scale.primary,
11952
11980
  className: onClick ? "text-ods-accent group-hover/person-cell:underline" : void 0,
@@ -11957,7 +11985,7 @@ function PersonCell({
11957
11985
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { size: scale.avatar, src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: displayName, fallback: displayName }),
11958
11986
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
11959
11987
  nameLine,
11960
- lines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? " " : secondary || "\xB7" }) : null
11988
+ lines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? " " : secondary || "\xB7" }) : null
11961
11989
  ] })
11962
11990
  ] });
11963
11991
  const cell = onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -12868,7 +12896,7 @@ function DataTableRowImpl({
12868
12896
  const containerRef = _react.useRef.call(void 0, null);
12869
12897
  const handleClick = _react.useCallback.call(void 0,
12870
12898
  (e) => {
12871
- if (!_chunkQUSCSYHJcjs.isOwnClick.call(void 0, e.target, containerRef.current)) {
12899
+ if (!_chunkTX4NTH22cjs.isOwnClick.call(void 0, e.target, containerRef.current)) {
12872
12900
  if (isLinkMode) e.preventDefault();
12873
12901
  return;
12874
12902
  }
@@ -12882,7 +12910,7 @@ function DataTableRowImpl({
12882
12910
  if (!(target instanceof Element) || !_optionalChain([container, 'optionalAccess', _224 => _224.contains, 'call', _225 => _225(target)])) return;
12883
12911
  const nestedLink = target.closest("a");
12884
12912
  if (nestedLink && nestedLink !== container && container.contains(nestedLink)) return;
12885
- if (!_chunkQUSCSYHJcjs.isOwnClick.call(void 0, target, container) || target.closest(ROW_LINK_CONTROL_SELECTOR)) e.preventDefault();
12913
+ if (!_chunkTX4NTH22cjs.isOwnClick.call(void 0, target, container) || target.closest(ROW_LINK_CONTROL_SELECTOR)) e.preventDefault();
12886
12914
  }, []);
12887
12915
  const containerClassName = _chunk63A4GZMBcjs.cn.call(void 0,
12888
12916
  DATA_TABLE_ROW_FRAME_CLASS,
@@ -13012,7 +13040,7 @@ function DataTableBody({
13012
13040
  const skeletonRowClassName = typeof rowClassName === "string" ? rowClassName : void 0;
13013
13041
  if (loading && loadingCells && hasRows) {
13014
13042
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13015
- _chunkYAW7CHLVcjs.LoadingFallback,
13043
+ _chunkFXLROQUTcjs.LoadingFallback,
13016
13044
  {
13017
13045
  label: "Loading results",
13018
13046
  status: loadingRegion && !inScope,
@@ -13361,7 +13389,7 @@ function HeaderCell({ header, sort, onSortChange }) {
13361
13389
  // child of the cell.
13362
13390
  _optionalChain([meta, 'optionalAccess', _244 => _244.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
13363
13391
  filterTrigger,
13364
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQUSCSYHJcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13392
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTX4NTH22cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13365
13393
  ] }) : filterTrigger
13366
13394
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
13367
13395
  "div",
@@ -13386,7 +13414,7 @@ function HeaderCell({ header, sort, onSortChange }) {
13386
13414
  // centred on the row.
13387
13415
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
13388
13416
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
13389
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQUSCSYHJcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13417
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTX4NTH22cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13390
13418
  ] })
13391
13419
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
13392
13420
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -13625,7 +13653,7 @@ function PhoneInput({
13625
13653
  placeholder = "Phone Number (optional)",
13626
13654
  onKeyDown
13627
13655
  }) {
13628
- const { priority, others } = _react.useMemo.call(void 0, () => _chunkQUSCSYHJcjs.getCountryPhoneData.call(void 0, ), []);
13656
+ const { priority, others } = _react.useMemo.call(void 0, () => _chunkTX4NTH22cjs.getCountryPhoneData.call(void 0, ), []);
13629
13657
  const selectedCountry = _react.useMemo.call(void 0,
13630
13658
  () => [...priority, ...others].find((c) => c.code === countryCode),
13631
13659
  [countryCode, priority, others]
@@ -13640,7 +13668,7 @@ function PhoneInput({
13640
13668
  _optionalChain([onValidationChange, 'optionalCall', _261 => _261(false)]);
13641
13669
  return;
13642
13670
  }
13643
- const invalid = !_chunkQUSCSYHJcjs.validatePhoneNumber.call(void 0, phone, countryCode);
13671
+ const invalid = !_chunkTX4NTH22cjs.validatePhoneNumber.call(void 0, phone, countryCode);
13644
13672
  setIsInvalid(invalid);
13645
13673
  _optionalChain([onValidationChange, 'optionalCall', _262 => _262(invalid)]);
13646
13674
  },
@@ -13660,7 +13688,7 @@ function PhoneInput({
13660
13688
  }, []);
13661
13689
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2", children: [
13662
13690
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
13663
- _chunkIKOL6NJYcjs.Select,
13691
+ _chunkCAGNWDVJcjs.Select,
13664
13692
  {
13665
13693
  value: countryCode,
13666
13694
  onValueChange: (val) => {
@@ -13671,14 +13699,14 @@ function PhoneInput({
13671
13699
  },
13672
13700
  disabled,
13673
13701
  children: [
13674
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
13702
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
13675
13703
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.flag }),
13676
13704
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.dialCode })
13677
13705
  ] }) }) }),
13678
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
13679
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
13680
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectSeparator, {}),
13681
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
13706
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
13707
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
13708
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectSeparator, {}),
13709
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
13682
13710
  ] })
13683
13711
  ]
13684
13712
  }
@@ -13710,7 +13738,7 @@ function PhoneInput({
13710
13738
  ] });
13711
13739
  }
13712
13740
  function CountryOption({ country }) {
13713
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
13741
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
13714
13742
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: country.flag }),
13715
13743
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: country.dialCode }),
13716
13744
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-block max-w-[140px] overflow-hidden text-ellipsis whitespace-nowrap", children: country.name })
@@ -14078,7 +14106,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
14078
14106
  ),
14079
14107
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
14080
14108
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14081
- _chunkYAW7CHLVcjs.TabSelector,
14109
+ _chunkFXLROQUTcjs.TabSelector,
14082
14110
  {
14083
14111
  label: "Search engines",
14084
14112
  value: choice,
@@ -14135,7 +14163,7 @@ function useMarkdownLinkCommand() {
14135
14163
  buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
14136
14164
  icon: command.icon,
14137
14165
  execute: (state, api) => {
14138
- const existing = _chunkYAW7CHLVcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
14166
+ const existing = _chunkFXLROQUTcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
14139
14167
  setPending(
14140
14168
  existing ? {
14141
14169
  api,
@@ -14166,7 +14194,7 @@ function useMarkdownLinkCommand() {
14166
14194
  initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _292 => _292.initial]), () => ( EMPTY_LINK)),
14167
14195
  editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _293 => _293.editing]), () => ( false)),
14168
14196
  onSubmit: (link) => {
14169
- if (pending) write(pending, _chunkYAW7CHLVcjs.formatMarkdownLink.call(void 0, link));
14197
+ if (pending) write(pending, _chunkFXLROQUTcjs.formatMarkdownLink.call(void 0, link));
14170
14198
  },
14171
14199
  onRemove: () => {
14172
14200
  if (pending) write(pending, pending.initial.text);
@@ -14332,7 +14360,7 @@ function MarkdownEditor({
14332
14360
  setUploadProgress(`Uploading ${file.name}...`);
14333
14361
  try {
14334
14362
  const url = await onUploadFile(file);
14335
- const isImage = _chunkYXKAHQYScjs.fileMediaType.call(void 0, file) === "image";
14363
+ const isImage = _chunk533QK4R6cjs.fileMediaType.call(void 0, file) === "image";
14336
14364
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
14337
14365
  insertTextAtCursor(markdown);
14338
14366
  _optionalChain([onFileUploaded, 'optionalCall', _296 => _296(url, file.name)]);
@@ -14462,7 +14490,7 @@ function MarkdownEditor({
14462
14490
  type: "file",
14463
14491
  className: "hidden",
14464
14492
  onChange: handleFileInputChange,
14465
- accept: `${_chunkYXKAHQYScjs.IMAGE_FILE_ACCEPT},.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.zip,.txt`
14493
+ accept: `${_chunk533QK4R6cjs.IMAGE_FILE_ACCEPT},.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.zip,.txt`
14466
14494
  }
14467
14495
  ),
14468
14496
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownEditorHeightContext.Provider, { value: height, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react.Suspense, { fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownEditorFieldSkeleton, { height }), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -14877,7 +14905,7 @@ function matchesAccept2(file, accept) {
14877
14905
  return patterns.some((pattern) => {
14878
14906
  if (pattern.startsWith(".")) return fileName.endsWith(pattern);
14879
14907
  if (pattern.endsWith("/*"))
14880
- return fileType.startsWith(pattern.slice(0, -1)) || _chunkYXKAHQYScjs.fileMediaType.call(void 0, file) === pattern.slice(0, -2);
14908
+ return fileType.startsWith(pattern.slice(0, -1)) || _chunk533QK4R6cjs.fileMediaType.call(void 0, file) === pattern.slice(0, -2);
14881
14909
  return fileType === pattern;
14882
14910
  });
14883
14911
  }
@@ -14885,7 +14913,7 @@ function ImageUploader({
14885
14913
  value,
14886
14914
  onChange,
14887
14915
  onRemove,
14888
- accept = _chunkYXKAHQYScjs.IMAGE_FILE_ACCEPT,
14916
+ accept = _chunk533QK4R6cjs.IMAGE_FILE_ACCEPT,
14889
14917
  maxSize = DEFAULT_MAX_SIZE,
14890
14918
  label = "Cover Image",
14891
14919
  description = "(Click Here or Drag and Drop)",
@@ -16048,7 +16076,7 @@ function TicketInfoSection({
16048
16076
  expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16049
16077
  createdAt && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-bg px-4 py-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: createdAt, label: "Created" }) }),
16050
16078
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
16051
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYAW7CHLVcjs.SimpleMarkdownRenderer, { content: description }),
16079
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFXLROQUTcjs.SimpleMarkdownRenderer, { content: description }),
16052
16080
  attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
16053
16081
  tags && tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Tags", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
16054
16082
  (notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -16074,7 +16102,7 @@ function renderTicketStatusOption(option, isSelected) {
16074
16102
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-[var(--spacing-system-xs)]", children: [
16075
16103
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
16076
16104
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ColorSwatch, { color }),
16077
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { className: "text-inherit", children: label }) })
16105
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { className: "text-inherit", children: label }) })
16078
16106
  ] }),
16079
16107
  isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
16080
16108
  ] });
@@ -16084,7 +16112,7 @@ function renderTicketAssigneeOption(option, isSelected) {
16084
16112
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-[var(--spacing-system-xs)]", children: [
16085
16113
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
16086
16114
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
16087
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { className: "text-inherit", children: label }) })
16115
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { className: "text-inherit", children: label }) })
16088
16116
  ] }),
16089
16117
  isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
16090
16118
  ] });
@@ -16135,7 +16163,7 @@ function TakeOverTicketModal({
16135
16163
  ] }),
16136
16164
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
16137
16165
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16138
- _chunkIKOL6NJYcjs.Autocomplete,
16166
+ _chunkCAGNWDVJcjs.Autocomplete,
16139
16167
  {
16140
16168
  label: "Status",
16141
16169
  options: statusOptions,
@@ -16147,7 +16175,7 @@ function TakeOverTicketModal({
16147
16175
  }
16148
16176
  ) }),
16149
16177
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16150
- _chunkIKOL6NJYcjs.Autocomplete,
16178
+ _chunkCAGNWDVJcjs.Autocomplete,
16151
16179
  {
16152
16180
  label: "Assigned",
16153
16181
  options: withTicketAssigneeAvatars(assigneeOptions),
@@ -16231,7 +16259,7 @@ function ReopenTicketModal({
16231
16259
  ] }),
16232
16260
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
16233
16261
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16234
- _chunkIKOL6NJYcjs.Autocomplete,
16262
+ _chunkCAGNWDVJcjs.Autocomplete,
16235
16263
  {
16236
16264
  label: "Status",
16237
16265
  options: statusOptions,
@@ -16243,7 +16271,7 @@ function ReopenTicketModal({
16243
16271
  }
16244
16272
  ) }),
16245
16273
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16246
- _chunkIKOL6NJYcjs.Autocomplete,
16274
+ _chunkCAGNWDVJcjs.Autocomplete,
16247
16275
  {
16248
16276
  label: "Assigned",
16249
16277
  options: withTicketAssigneeAvatars(assigneeOptions),
@@ -16523,7 +16551,7 @@ function PhotoWall({
16523
16551
  gap: COLUMN_GAP_PX
16524
16552
  };
16525
16553
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunk63A4GZMBcjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16526
- _chunkYAW7CHLVcjs.MarqueeWall,
16554
+ _chunkFXLROQUTcjs.MarqueeWall,
16527
16555
  {
16528
16556
  axis: "y",
16529
16557
  reverse: index % 2 === 1,
@@ -16753,7 +16781,7 @@ function ProductScreenFrame({
16753
16781
  className: _chunk63A4GZMBcjs.cn.call(void 0, "ods-content-area", pending && "product-screen-pending"),
16754
16782
  style: screenStyle,
16755
16783
  children: [
16756
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ods-content-scope", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingScope, { bare: true, active: pending, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.PagePicture, { children }) }) }),
16784
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ods-content-scope", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingScope, { bare: true, active: pending, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.PagePicture, { children }) }) }),
16757
16785
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setPortalHost, style: { display: "contents" } })
16758
16786
  ]
16759
16787
  }
@@ -16891,7 +16919,7 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
16891
16919
  "div",
16892
16920
  {
16893
16921
  className: _chunk63A4GZMBcjs.cn.call(void 0, "h-[617px] w-[299px] shrink-0 rounded-[48px] border border-ods-border bg-black p-2.5", className),
16894
- children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunkIKOL6NJYcjs.DEVICE_WALLPAPER_CLASS), children: [
16922
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunkCAGNWDVJcjs.DEVICE_WALLPAPER_CLASS), children: [
16895
16923
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16896
16924
  "div",
16897
16925
  {
@@ -17068,7 +17096,7 @@ function LoadingLabel({ label, typical }) {
17068
17096
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: label.split(/(\{\w+\})/).map(
17069
17097
  (part, index) => /^\{\w+\}$/.test(part) ? (
17070
17098
  // biome-ignore lint/suspicious/noArrayIndexKey: the parts of one fixed string never reorder
17071
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYAW7CHLVcjs.TextHold, { children: typical }, index)
17099
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFXLROQUTcjs.TextHold, { children: typical }, index)
17072
17100
  ) : part
17073
17101
  ) });
17074
17102
  }
@@ -17083,7 +17111,7 @@ var TRIAL_TERM_ICONS = {
17083
17111
  };
17084
17112
  var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
17085
17113
  function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
17086
- const labels = _chunkQUSCSYHJcjs.trialLabels.call(void 0, trialDays);
17114
+ const labels = _chunkTX4NTH22cjs.trialLabels.call(void 0, trialDays);
17087
17115
  return terms.flatMap((term) => {
17088
17116
  const label = labels[term];
17089
17117
  return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
@@ -18117,7 +18145,7 @@ function CompleteAccountForm({
18117
18145
  ),
18118
18146
  children: [
18119
18147
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
18120
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18148
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18121
18149
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
18122
18150
  ] }),
18123
18151
  (ssoProvidersLoading || ssoProviders && ssoProviders.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -18268,7 +18296,7 @@ function CreateOrganizationForm({
18268
18296
  ),
18269
18297
  children: [
18270
18298
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
18271
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18299
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18272
18300
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle === null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: CREATE_ORGANIZATION_SUBTITLE_BAR_CLASS }) : subtitle })
18273
18301
  ] }),
18274
18302
  email === void 0 ? null : emailReadOnly && emailReadOnlyLabel === null ? (
@@ -18415,7 +18443,7 @@ function InviteLinkInvalidModal({
18415
18443
  ),
18416
18444
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
18417
18445
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)]", children: [
18418
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18446
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18419
18447
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18420
18448
  _chunkFCZAUK4Dcjs.Button,
18421
18449
  {
@@ -18499,7 +18527,7 @@ function LoginForm({
18499
18527
  ),
18500
18528
  children: [
18501
18529
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
18502
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18530
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18503
18531
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
18504
18532
  ] }),
18505
18533
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18626,7 +18654,7 @@ function NoAccountNotice({
18626
18654
  ),
18627
18655
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
18628
18656
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
18629
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18657
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18630
18658
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: description })
18631
18659
  ] }),
18632
18660
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", fullWidth: true, onClick: onBackToLogin, children: backLabel })
@@ -18675,7 +18703,7 @@ function OpenFrameSsoLoginForm({
18675
18703
  ),
18676
18704
  children: [
18677
18705
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
18678
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18706
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18679
18707
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
18680
18708
  ] }),
18681
18709
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18780,7 +18808,7 @@ function OpenFrameSsoSignUpForm({
18780
18808
  ),
18781
18809
  children: [
18782
18810
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
18783
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18811
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18784
18812
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
18785
18813
  ] }),
18786
18814
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18886,7 +18914,7 @@ function PasswordResetForm({
18886
18914
  ),
18887
18915
  children: [
18888
18916
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
18889
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
18917
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
18890
18918
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
18891
18919
  ] }),
18892
18920
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -19007,7 +19035,7 @@ function SsoJoinForm({
19007
19035
  ),
19008
19036
  children: [
19009
19037
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
19010
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) }),
19038
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk533QK4R6cjs.accentSentenceMarks.call(void 0, title) }),
19011
19039
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
19012
19040
  ] }),
19013
19041
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)]", children: [
@@ -19337,9 +19365,9 @@ function ChangelogManager({
19337
19365
  ] }),
19338
19366
  tagOptions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
19339
19367
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { className: "text-ods-text-secondary", children: tagLabel }),
19340
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
19341
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: tagLabel }) }),
19342
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
19368
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
19369
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: tagLabel }) }),
19370
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
19343
19371
  ] })
19344
19372
  ] })
19345
19373
  ] })
@@ -20842,15 +20870,15 @@ function useLoading() {
20842
20870
 
20843
20871
 
20844
20872
  function isAlreadyThere(file, existing) {
20845
- const key = _chunkYXKAHQYScjs.mediaNameKey.call(void 0, file.name);
20873
+ const key = _chunk533QK4R6cjs.mediaNameKey.call(void 0, file.name);
20846
20874
  if (!key) return false;
20847
20875
  return existing.some(
20848
- (item) => (item.title ? _chunkYXKAHQYScjs.mediaNameKey.call(void 0, item.title) === key : false) || (item.media_url ? _chunkYXKAHQYScjs.mediaNameKey.call(void 0, item.media_url) === key : false)
20876
+ (item) => (item.title ? _chunk533QK4R6cjs.mediaNameKey.call(void 0, item.title) === key : false) || (item.media_url ? _chunk533QK4R6cjs.mediaNameKey.call(void 0, item.media_url) === key : false)
20849
20877
  );
20850
20878
  }
20851
20879
  var isFileDrag = (event) => Array.from(event.dataTransfer.types).includes("Files");
20852
- var isVideoItem = (item) => _chunkYXKAHQYScjs.isVideoMedia.call(void 0, item) || item.media_type === "demo";
20853
- var MEDIA_KIND_ACCEPT = { image: _chunkYXKAHQYScjs.IMAGE_FILE_ACCEPT, video: "video/*", both: _chunkYXKAHQYScjs.MEDIA_FILE_ACCEPT };
20880
+ var isVideoItem = (item) => _chunk533QK4R6cjs.isVideoMedia.call(void 0, item) || item.media_type === "demo";
20881
+ var MEDIA_KIND_ACCEPT = { image: _chunk533QK4R6cjs.IMAGE_FILE_ACCEPT, video: "video/*", both: _chunk533QK4R6cjs.MEDIA_FILE_ACCEPT };
20854
20882
  var MEDIA_KIND_COPY = {
20855
20883
  image: { noun: "pictures", refusal: "Not a picture" },
20856
20884
  video: { noun: "videos", refusal: "Not a video" },
@@ -20874,12 +20902,12 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
20874
20902
  const seen = /* @__PURE__ */ new Set();
20875
20903
  const accepted = [];
20876
20904
  for (const file of files) {
20877
- const mediaType = _chunkYXKAHQYScjs.fileMediaType.call(void 0, file);
20905
+ const mediaType = _chunk533QK4R6cjs.fileMediaType.call(void 0, file);
20878
20906
  if (!mediaType || kinds !== "both" && mediaType !== kinds) {
20879
20907
  unsupported.push(file.name);
20880
20908
  continue;
20881
20909
  }
20882
- const contentKey = await _chunkYXKAHQYScjs.fileContentKey.call(void 0, file).catch(() => `${file.name}:${file.size}`);
20910
+ const contentKey = await _chunk533QK4R6cjs.fileContentKey.call(void 0, file).catch(() => `${file.name}:${file.size}`);
20883
20911
  if (seen.has(contentKey) || isAlreadyThere(file, existingRef.current)) {
20884
20912
  duplicates.push(file.name);
20885
20913
  continue;
@@ -21100,17 +21128,17 @@ function MediaGalleryManager({
21100
21128
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
21101
21129
  isVideoItem(item) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Video, { className: "h-5 w-5 text-ods-text-secondary" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Image, { className: "h-5 w-5 text-ods-text-secondary" }),
21102
21130
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
21103
- _chunkIKOL6NJYcjs.Select,
21131
+ _chunkCAGNWDVJcjs.Select,
21104
21132
  {
21105
21133
  value: item.media_type,
21106
21134
  onValueChange: (value) => update(index, { media_type: value }),
21107
21135
  children: [
21108
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
21109
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { className: "bg-ods-card", children: [
21110
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "image", children: "Image" }),
21111
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "video", children: "Video" }),
21112
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
21113
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "demo", children: "Demo" })
21136
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
21137
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { className: "bg-ods-card", children: [
21138
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "image", children: "Image" }),
21139
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "video", children: "Video" }),
21140
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
21141
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "demo", children: "Demo" })
21114
21142
  ] })
21115
21143
  ]
21116
21144
  }
@@ -21494,7 +21522,7 @@ var MODEL_TOKEN_RATES_COPY = {
21494
21522
  empty: "No token rates are in effect right now."
21495
21523
  };
21496
21524
  function providerMark(providerType, stated, className) {
21497
- const Mark = _chunkJQCQCE6Ucjs.findIcon.call(void 0, _chunkQUSCSYHJcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
21525
+ const Mark = _chunkJQCQCE6Ucjs.findIcon.call(void 0, _chunkTX4NTH22cjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
21498
21526
  return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
21499
21527
  }
21500
21528
  var PAD_X = "px-[var(--spacing-system-s)]";
@@ -21512,7 +21540,7 @@ var UNIT_LINE_CLASS = _chunk63A4GZMBcjs.cn.call(void 0,
21512
21540
  var TABS_ROW_CLASS = _chunk63A4GZMBcjs.cn.call(void 0, "shrink-0 border-b border-ods-border py-[var(--spacing-system-xs)]", PAD_X);
21513
21541
  var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
21514
21542
  function useProviderGroup(rates) {
21515
- const groups = _chunkQUSCSYHJcjs.groupTokenRatesByProvider.call(void 0, rates);
21543
+ const groups = _chunkTX4NTH22cjs.groupTokenRatesByProvider.call(void 0, rates);
21516
21544
  const [picked, setPicked] = _react.useState.call(void 0, null);
21517
21545
  return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
21518
21546
  }
@@ -21523,7 +21551,7 @@ function ProviderTabs({
21523
21551
  className
21524
21552
  }) {
21525
21553
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21526
- _chunkYAW7CHLVcjs.TabSelector,
21554
+ _chunkFXLROQUTcjs.TabSelector,
21527
21555
  {
21528
21556
  variant: "secondary",
21529
21557
  scrollable: true,
@@ -21531,7 +21559,7 @@ function ProviderTabs({
21531
21559
  onValueChange,
21532
21560
  items: groups.map((candidate) => ({
21533
21561
  id: candidate.providerType,
21534
- label: _chunkQUSCSYHJcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _435 => _435.rates, 'access', _436 => _436[0], 'optionalAccess', _437 => _437.providerLabel])),
21562
+ label: _chunkTX4NTH22cjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _435 => _435.rates, 'access', _436 => _436[0], 'optionalAccess', _437 => _437.providerLabel])),
21535
21563
  icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _438 => _438.rates, 'access', _439 => _439[0], 'optionalAccess', _440 => _440.providerIcon]), "size-full")
21536
21564
  })),
21537
21565
  className
@@ -21608,8 +21636,8 @@ function ModelTokenRatesTable({ rates }) {
21608
21636
  ] }),
21609
21637
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "rowgroup", className: "min-h-0 flex-1 overflow-y-auto", children: group.rates.map((rate) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "data-loading-item": true, role: "row", className: BODY_ROW_CLASS, children: [
21610
21638
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
21611
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkQUSCSYHJcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
21612
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkQUSCSYHJcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
21639
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkTX4NTH22cjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
21640
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkTX4NTH22cjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
21613
21641
  ] }, rate.modelName)) })
21614
21642
  ] }),
21615
21643
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: UNIT_LINE_CLASS, children: MODEL_TOKEN_RATES_COPY.unit })
@@ -21656,7 +21684,7 @@ function modelOption(rate) {
21656
21684
  return {
21657
21685
  label: rate.displayName || rate.modelName,
21658
21686
  value: rate.modelName,
21659
- description: _chunkQUSCSYHJcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
21687
+ description: _chunkTX4NTH22cjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
21660
21688
  icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
21661
21689
  };
21662
21690
  }
@@ -21711,8 +21739,8 @@ function ModelTokenExchange({
21711
21739
  const [chosen, setChosen] = _react.useState.call(void 0, null);
21712
21740
  const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _441 => _441.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
21713
21741
  const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
21714
- const tokens = _chunkQUSCSYHJcjs.formatTokenAmount.call(void 0, balance);
21715
- const cost = _chunkQUSCSYHJcjs.tokenCost.call(void 0, balance, tokenPrice);
21742
+ const tokens = _chunkTX4NTH22cjs.formatTokenAmount.call(void 0, balance);
21743
+ const cost = _chunkTX4NTH22cjs.tokenCost.call(void 0, balance, tokenPrice);
21716
21744
  const balancePrice = cost === null ? null : _chunkW7OFAROYcjs.formatPrice.call(void 0, cost);
21717
21745
  const model = rate ? rate.displayName || rate.modelName : "";
21718
21746
  const options = models.map(modelOption);
@@ -21755,7 +21783,7 @@ function ModelTokenExchange({
21755
21783
  variant: preset.tokens === balance ? "accent" : "outline",
21756
21784
  size: "small",
21757
21785
  onClick: () => setChosen(preset.tokens),
21758
- children: copy.buy.preset(_chunkQUSCSYHJcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
21786
+ children: copy.buy.preset(_chunkTX4NTH22cjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
21759
21787
  },
21760
21788
  preset.label
21761
21789
  )) })
@@ -21772,7 +21800,7 @@ function ModelTokenExchange({
21772
21800
  const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _442 => _442.providerType]) === providerType ? rate : null)));
21773
21801
  return {
21774
21802
  id: providerType,
21775
- name: _chunkQUSCSYHJcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _443 => _443.providerLabel])),
21803
+ name: _chunkTX4NTH22cjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _443 => _443.providerLabel])),
21776
21804
  icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _444 => _444.providerIcon]), "size-8 text-ods-text-secondary")
21777
21805
  };
21778
21806
  }),
@@ -21784,7 +21812,7 @@ function ModelTokenExchange({
21784
21812
  }
21785
21813
  ),
21786
21814
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21787
- _chunkIKOL6NJYcjs.Autocomplete,
21815
+ _chunkCAGNWDVJcjs.Autocomplete,
21788
21816
  {
21789
21817
  fieldLoading: loading,
21790
21818
  label: copy.use.model,
@@ -21811,7 +21839,7 @@ function ModelTokenExchange({
21811
21839
  {
21812
21840
  size: "plain",
21813
21841
  loading,
21814
- figure: _chunkQUSCSYHJcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _449 => _449.inputTokenRate])),
21842
+ figure: _chunkTX4NTH22cjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _449 => _449.inputTokenRate])),
21815
21843
  words: copy.charge.input
21816
21844
  }
21817
21845
  ),
@@ -21820,7 +21848,7 @@ function ModelTokenExchange({
21820
21848
  {
21821
21849
  size: "plain",
21822
21850
  loading,
21823
- figure: _chunkQUSCSYHJcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _450 => _450.outputTokenRate])),
21851
+ figure: _chunkTX4NTH22cjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _450 => _450.outputTokenRate])),
21824
21852
  words: copy.charge.output
21825
21853
  }
21826
21854
  )
@@ -21832,9 +21860,9 @@ function ModelTokenExchange({
21832
21860
  className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
21833
21861
  children: [
21834
21862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[2lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-full max-w-xs" }) : copy.charge.so(_nullishCoalesce(balancePrice, () => ( copy.buy.tokens(tokens))), model) }),
21835
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-40" }) : _chunkQUSCSYHJcjs.formatTokenAmount.call(void 0, _chunkQUSCSYHJcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
21863
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-40" }) : _chunkTX4NTH22cjs.formatTokenAmount.call(void 0, _chunkTX4NTH22cjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
21836
21864
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
21837
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-48" }) : copy.charge.orWritten(_chunkQUSCSYHJcjs.formatTokenAmount.call(void 0, _chunkQUSCSYHJcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
21865
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-48" }) : copy.charge.orWritten(_chunkTX4NTH22cjs.formatTokenAmount.call(void 0, _chunkTX4NTH22cjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
21838
21866
  ]
21839
21867
  }
21840
21868
  )
@@ -22354,14 +22382,14 @@ var ConfidenceBadge = ({
22354
22382
  size = "sm",
22355
22383
  className
22356
22384
  }) => {
22357
- const level = _chunkQUSCSYHJcjs.getConfidenceLevel.call(void 0, confidence);
22385
+ const level = _chunkTX4NTH22cjs.getConfidenceLevel.call(void 0, confidence);
22358
22386
  if (level === "none") {
22359
22387
  return null;
22360
22388
  }
22361
- const label = _chunkQUSCSYHJcjs.getConfidenceLabel.call(void 0, confidence);
22362
- const borderClass = _chunkQUSCSYHJcjs.getConfidenceBorderClass.call(void 0, confidence);
22363
- const textClass = _chunkQUSCSYHJcjs.getConfidenceTextClass.call(void 0, confidence);
22364
- const bgClass = _chunkQUSCSYHJcjs.getConfidenceBgClass.call(void 0, confidence);
22389
+ const label = _chunkTX4NTH22cjs.getConfidenceLabel.call(void 0, confidence);
22390
+ const borderClass = _chunkTX4NTH22cjs.getConfidenceBorderClass.call(void 0, confidence);
22391
+ const textClass = _chunkTX4NTH22cjs.getConfidenceTextClass.call(void 0, confidence);
22392
+ const bgClass = _chunkTX4NTH22cjs.getConfidenceBgClass.call(void 0, confidence);
22365
22393
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
22366
22394
  "span",
22367
22395
  {
@@ -22412,9 +22440,9 @@ function SEOEditorPreview({
22412
22440
  const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
22413
22441
  const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
22414
22442
  const seoTitleLength = (seoTitle || "").length;
22415
- const seoTitleTooLong = seoTitleLength > _chunkQUSCSYHJcjs.SEO_TITLE_MAX_LENGTH;
22443
+ const seoTitleTooLong = seoTitleLength > _chunkTX4NTH22cjs.SEO_TITLE_MAX_LENGTH;
22416
22444
  const seoDescriptionLength = (seoDescription || "").length;
22417
- const seoDescriptionTooLong = seoDescriptionLength > _chunkQUSCSYHJcjs.SEO_DESCRIPTION_MAX_LENGTH;
22445
+ const seoDescriptionTooLong = seoDescriptionLength > _chunkTX4NTH22cjs.SEO_DESCRIPTION_MAX_LENGTH;
22418
22446
  const displayTitle = seoTitle.trim() || title || "Untitled";
22419
22447
  const displayDescription = seoDescription.trim() || summary || "No description";
22420
22448
  const hasOgImage = ogImageUrl.trim();
@@ -22439,10 +22467,10 @@ function SEOEditorPreview({
22439
22467
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
22440
22468
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
22441
22469
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22442
- _chunkQUSCSYHJcjs.Field,
22470
+ _chunkTX4NTH22cjs.Field,
22443
22471
  {
22444
22472
  label: "SEO Title",
22445
- error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkQUSCSYHJcjs.SEO_TITLE_MAX_LENGTH})` : null,
22473
+ error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkTX4NTH22cjs.SEO_TITLE_MAX_LENGTH})` : null,
22446
22474
  labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
22447
22475
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
22448
22476
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
@@ -22457,7 +22485,7 @@ function SEOEditorPreview({
22457
22485
  children: [
22458
22486
  seoTitleLength,
22459
22487
  "/",
22460
- _chunkQUSCSYHJcjs.SEO_TITLE_MAX_LENGTH
22488
+ _chunkTX4NTH22cjs.SEO_TITLE_MAX_LENGTH
22461
22489
  ]
22462
22490
  }
22463
22491
  ),
@@ -22468,7 +22496,7 @@ function SEOEditorPreview({
22468
22496
  value: seoTitle || "",
22469
22497
  onChange: (e) => onSeoTitleChange(e.target.value),
22470
22498
  disabled,
22471
- maxLength: _chunkQUSCSYHJcjs.SEO_TITLE_MAX_LENGTH,
22499
+ maxLength: _chunkTX4NTH22cjs.SEO_TITLE_MAX_LENGTH,
22472
22500
  invalid: seoTitleTooLong,
22473
22501
  placeholder: "Enter SEO meta title...",
22474
22502
  className: "border-ods-border bg-ods-bg text-ods-text-primary"
@@ -22479,7 +22507,7 @@ function SEOEditorPreview({
22479
22507
  !seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
22480
22508
  ] }),
22481
22509
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22482
- _chunkQUSCSYHJcjs.Field,
22510
+ _chunkTX4NTH22cjs.Field,
22483
22511
  {
22484
22512
  label: "SEO Keywords",
22485
22513
  labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -22511,10 +22539,10 @@ function SEOEditorPreview({
22511
22539
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
22512
22540
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
22513
22541
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22514
- _chunkQUSCSYHJcjs.Field,
22542
+ _chunkTX4NTH22cjs.Field,
22515
22543
  {
22516
22544
  label: "SEO Description",
22517
- error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkQUSCSYHJcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
22545
+ error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkTX4NTH22cjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
22518
22546
  labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
22519
22547
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
22520
22548
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -22537,7 +22565,7 @@ function SEOEditorPreview({
22537
22565
  children: [
22538
22566
  seoDescriptionLength,
22539
22567
  "/",
22540
- _chunkQUSCSYHJcjs.SEO_DESCRIPTION_MAX_LENGTH
22568
+ _chunkTX4NTH22cjs.SEO_DESCRIPTION_MAX_LENGTH
22541
22569
  ]
22542
22570
  }
22543
22571
  ),
@@ -22548,7 +22576,7 @@ function SEOEditorPreview({
22548
22576
  value: seoDescription || "",
22549
22577
  onChange: (e) => onSeoDescriptionChange(e.target.value),
22550
22578
  disabled,
22551
- maxLength: _chunkQUSCSYHJcjs.SEO_DESCRIPTION_MAX_LENGTH,
22579
+ maxLength: _chunkTX4NTH22cjs.SEO_DESCRIPTION_MAX_LENGTH,
22552
22580
  invalid: seoDescriptionTooLong,
22553
22581
  placeholder: "Enter SEO meta description...",
22554
22582
  className: _chunk63A4GZMBcjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
@@ -22617,7 +22645,7 @@ function SEOEditorPreview({
22617
22645
  {
22618
22646
  ref: setFileInputRef,
22619
22647
  type: "file",
22620
- accept: _chunkYXKAHQYScjs.IMAGE_FILE_ACCEPT,
22648
+ accept: _chunk533QK4R6cjs.IMAGE_FILE_ACCEPT,
22621
22649
  onChange: handleImageUpload,
22622
22650
  className: "hidden",
22623
22651
  disabled: disabled || isUploading
@@ -22701,7 +22729,7 @@ function socialIcon(platform) {
22701
22729
  return _nullishCoalesce(_chunkJQCQCE6Ucjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
22702
22730
  }
22703
22731
  function renderSocialIcon(platform) {
22704
- const key = _nullishCoalesce(_chunkYXKAHQYScjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
22732
+ const key = _nullishCoalesce(_chunk533QK4R6cjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
22705
22733
  const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
22706
22734
  return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
22707
22735
  }
@@ -22792,7 +22820,7 @@ function SocialLinksManager({
22792
22820
  };
22793
22821
  const getIcon = (link, platform) => {
22794
22822
  const iconKey = _optionalChain([platform, 'optionalAccess', _460 => _460.icon_name]) || link.platform;
22795
- const key = _chunkYXKAHQYScjs.normalizeSocialPlatform.call(void 0, iconKey);
22823
+ const key = _chunk533QK4R6cjs.normalizeSocialPlatform.call(void 0, iconKey);
22796
22824
  if (!key) return null;
22797
22825
  const icon = socialIcon(key);
22798
22826
  return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
@@ -22808,9 +22836,9 @@ function SocialLinksManager({
22808
22836
  children: [
22809
22837
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 items-center justify-center", children: Icon }),
22810
22838
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid flex-1 grid-cols-2 gap-3", children: [
22811
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
22812
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
22813
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
22839
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
22840
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
22841
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
22814
22842
  ] }) }),
22815
22843
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22816
22844
  _chunkZGEWT3SFcjs.Input,
@@ -22828,15 +22856,15 @@ function SocialLinksManager({
22828
22856
  )
22829
22857
  ] }),
22830
22858
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
22831
- _chunkIKOL6NJYcjs.Select,
22859
+ _chunkCAGNWDVJcjs.Select,
22832
22860
  {
22833
22861
  value: _nullishCoalesce(link.visibility, () => ( "external")),
22834
22862
  onValueChange: (value) => updateLink(index, "visibility", value),
22835
22863
  children: [
22836
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
22837
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: [
22838
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "external", children: "Public" }),
22839
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "internal", children: "Internal" })
22864
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
22865
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: [
22866
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "external", children: "Public" }),
22867
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "internal", children: "Internal" })
22840
22868
  ] })
22841
22869
  ]
22842
22870
  }
@@ -23266,7 +23294,7 @@ function VideoBitesDisplay({
23266
23294
  filterPublished = true,
23267
23295
  showTitle = true
23268
23296
  }) {
23269
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYAW7CHLVcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
23297
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFXLROQUTcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
23270
23298
  }
23271
23299
 
23272
23300
  // src/components/features/walkthrough-video.tsx
@@ -23295,7 +23323,7 @@ function WalkthroughVideo({
23295
23323
  onOpenChange,
23296
23324
  defaultOpen,
23297
23325
  defaultOpenPaused,
23298
- deepLinkParam = _chunkQUSCSYHJcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
23326
+ deepLinkParam = _chunkTX4NTH22cjs.WALKTHROUGH_OPEN_QUERY_PARAM,
23299
23327
  autoPlayCard = false,
23300
23328
  label = "Play Demo Video",
23301
23329
  placement,
@@ -23312,7 +23340,7 @@ function WalkthroughVideo({
23312
23340
  const inline = placement === "inline";
23313
23341
  const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
23314
23342
  const dismissEnabled = dismissal !== false;
23315
- const storageKey = dismissEnabled && dismissal.storageKey || _chunkQUSCSYHJcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
23343
+ const storageKey = dismissEnabled && dismissal.storageKey || _chunkTX4NTH22cjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
23316
23344
  const dismissalId = _optionalChain([video, 'optionalAccess', _466 => _466.id]) != null ? String(video.id) : "dismissed";
23317
23345
  const [mounted, setMounted] = _react.useState.call(void 0, false);
23318
23346
  const [dismissed, setDismissed] = _react.useState.call(void 0, false);
@@ -23324,7 +23352,7 @@ function WalkthroughVideo({
23324
23352
  let delayElapsed = false;
23325
23353
  let interacted = inline;
23326
23354
  const reveal = () => {
23327
- if (dismissEnabled && _chunkQUSCSYHJcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
23355
+ if (dismissEnabled && _chunkTX4NTH22cjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
23328
23356
  setDismissed(true);
23329
23357
  return;
23330
23358
  }
@@ -23361,7 +23389,7 @@ function WalkthroughVideo({
23361
23389
  if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
23362
23390
  };
23363
23391
  }, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
23364
- const hydrated = _chunkYAW7CHLVcjs.useIsHydrated.call(void 0, );
23392
+ const hydrated = _chunkFXLROQUTcjs.useIsHydrated.call(void 0, );
23365
23393
  const previewSuppressed = _react.useMemo.call(void 0, () => {
23366
23394
  if (!hydrated) return false;
23367
23395
  try {
@@ -23611,7 +23639,7 @@ function WalkthroughVideo({
23611
23639
  (e) => {
23612
23640
  e.stopPropagation();
23613
23641
  pausePreviewNow();
23614
- if (dismissEnabled) _chunkQUSCSYHJcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
23642
+ if (dismissEnabled) _chunkTX4NTH22cjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
23615
23643
  setDismissed(true);
23616
23644
  },
23617
23645
  [dismissEnabled, storageKey, dismissalId, pausePreviewNow]
@@ -23786,7 +23814,7 @@ function WalkthroughVideo({
23786
23814
  `card-${embedUrlKey}`
23787
23815
  ) }),
23788
23816
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23789
- _chunkYAW7CHLVcjs.CardHitLayer,
23817
+ _chunkFXLROQUTcjs.CardHitLayer,
23790
23818
  {
23791
23819
  label: video.title ? `${label}: ${video.title}` : label,
23792
23820
  onPointerDown: pausePreviewNow,
@@ -23958,7 +23986,7 @@ function useWalkthroughVideo(opts) {
23958
23986
  const { endpoint, initialData, enabled: enabledGiven = true, transformCaptionsUrl } = opts;
23959
23987
  const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
23960
23988
  const enabled = enabledGiven && !inScope;
23961
- const captions = _chunkYAW7CHLVcjs.useCaptions.call(void 0, );
23989
+ const captions = _chunkFXLROQUTcjs.useCaptions.call(void 0, );
23962
23990
  const query = _reactquery.useQuery.call(void 0, {
23963
23991
  queryKey: ["walkthrough-video", endpoint],
23964
23992
  enabled,
@@ -24612,19 +24640,19 @@ function HighlightVideoSection({
24612
24640
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 rounded-lg border border-ods-border bg-ods-card p-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
24613
24641
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { children: "Target Duration" }),
24614
24642
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
24615
- _chunkIKOL6NJYcjs.Select,
24643
+ _chunkCAGNWDVJcjs.Select,
24616
24644
  {
24617
24645
  value: targetDurationSeconds.toString(),
24618
24646
  onValueChange: (value) => onTargetDurationChange(parseInt(value)),
24619
24647
  disabled,
24620
24648
  children: [
24621
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
24622
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { className: "bg-ods-card", children: [
24623
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "60", children: "1 minute" }),
24624
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "120", children: "2 minutes" }),
24625
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
24626
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "240", children: "4 minutes" }),
24627
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "300", children: "5 minutes" })
24649
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
24650
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { className: "bg-ods-card", children: [
24651
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "60", children: "1 minute" }),
24652
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "120", children: "2 minutes" }),
24653
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
24654
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "240", children: "4 minutes" }),
24655
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "300", children: "5 minutes" })
24628
24656
  ] })
24629
24657
  ]
24630
24658
  }
@@ -24709,20 +24737,20 @@ function HighlightConfigSection({
24709
24737
  disabled = false,
24710
24738
  className = ""
24711
24739
  }) {
24712
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQUSCSYHJcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
24713
- _chunkIKOL6NJYcjs.Select,
24740
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTX4NTH22cjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
24741
+ _chunkCAGNWDVJcjs.Select,
24714
24742
  {
24715
24743
  value: targetDurationSeconds.toString(),
24716
24744
  onValueChange: (value) => onTargetDurationChange(parseInt(value)),
24717
24745
  disabled,
24718
24746
  children: [
24719
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
24720
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { className: "bg-ods-card", children: [
24721
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "60", children: "1 minute" }),
24722
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "120", children: "2 minutes" }),
24723
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
24724
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "240", children: "4 minutes" }),
24725
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: "300", children: "5 minutes" })
24747
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
24748
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { className: "bg-ods-card", children: [
24749
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "60", children: "1 minute" }),
24750
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "120", children: "2 minutes" }),
24751
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
24752
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "240", children: "4 minutes" }),
24753
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: "300", children: "5 minutes" })
24726
24754
  ] })
24727
24755
  ]
24728
24756
  }
@@ -24810,7 +24838,7 @@ var AIStatusIndicator = ({
24810
24838
  }) => {
24811
24839
  const config = statusConfig[status];
24812
24840
  const displayText = message || config.label;
24813
- const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkQUSCSYHJcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
24841
+ const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkTX4NTH22cjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
24814
24842
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "inline-flex items-center gap-2 rounded-lg px-3 py-1.5", config.bgColor, className), children: [
24815
24843
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24816
24844
  _chunkUNFCRSYIcjs.SparklesIcon,
@@ -24818,7 +24846,7 @@ var AIStatusIndicator = ({
24818
24846
  size: 16,
24819
24847
  className: _chunk63A4GZMBcjs.cn.call(void 0,
24820
24848
  status === "loading" && _chunkPMUCEUFQcjs.LIVE_PULSE_CLASS,
24821
- confidence !== void 0 && status === "success" ? _chunkQUSCSYHJcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
24849
+ confidence !== void 0 && status === "success" ? _chunkTX4NTH22cjs.getConfidenceTextClass.call(void 0, confidence) : config.color
24822
24850
  )
24823
24851
  }
24824
24852
  ),
@@ -24827,7 +24855,7 @@ var AIStatusIndicator = ({
24827
24855
  {
24828
24856
  className: _chunk63A4GZMBcjs.cn.call(void 0,
24829
24857
  "text-h6",
24830
- confidence !== void 0 && status === "success" ? _chunkQUSCSYHJcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
24858
+ confidence !== void 0 && status === "success" ? _chunkTX4NTH22cjs.getConfidenceTextClass.call(void 0, confidence) : config.color
24831
24859
  ),
24832
24860
  children: displayText
24833
24861
  }
@@ -24837,8 +24865,8 @@ var AIStatusIndicator = ({
24837
24865
  {
24838
24866
  className: _chunk63A4GZMBcjs.cn.call(void 0,
24839
24867
  "rounded-full border px-2 py-0.5 text-h6",
24840
- _chunkQUSCSYHJcjs.getConfidenceBorderClass.call(void 0, confidence),
24841
- _chunkQUSCSYHJcjs.getConfidenceTextClass.call(void 0, confidence)
24868
+ _chunkTX4NTH22cjs.getConfidenceBorderClass.call(void 0, confidence),
24869
+ _chunkTX4NTH22cjs.getConfidenceTextClass.call(void 0, confidence)
24842
24870
  ),
24843
24871
  children: confidenceLabel
24844
24872
  }
@@ -25459,7 +25487,7 @@ function ApprovalLevelView({
25459
25487
  ] });
25460
25488
  }
25461
25489
  function ApprovalLevelSkeleton({ editable = false, showLabel = true, className }) {
25462
- const name = showLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: LEVEL_NAME_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYAW7CHLVcjs.TextHold, { children: LONGEST_LEVEL_LABEL }) }) : null;
25490
+ const name = showLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: LEVEL_NAME_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFXLROQUTcjs.TextHold, { children: LONGEST_LEVEL_LABEL }) }) : null;
25463
25491
  if (!editable) {
25464
25492
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, READ_ONLY_ROW_CLASS, className), children: [
25465
25493
  name,
@@ -25718,7 +25746,7 @@ function OpenPolicyButton({ href, name }) {
25718
25746
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25719
25747
  _chunkFCZAUK4Dcjs.Button,
25720
25748
  {
25721
- onClick: loading ? void 0 : _chunkQUSCSYHJcjs.openInNewTab.call(void 0, href),
25749
+ onClick: loading ? void 0 : _chunkTX4NTH22cjs.openInNewTab.call(void 0, href),
25722
25750
  disabled: loading,
25723
25751
  variant: "outline",
25724
25752
  size: "icon",
@@ -25757,8 +25785,8 @@ function PoliciesTable({
25757
25785
  accessorKey: "name",
25758
25786
  header: "Name",
25759
25787
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] min-w-0 flex-col justify-center gap-1 py-2", children: [
25760
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: row.original.name }),
25761
- row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
25788
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: row.original.name }),
25789
+ row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
25762
25790
  ] }),
25763
25791
  meta: { width: "flex-1 min-w-0" }
25764
25792
  },
@@ -26029,7 +26057,7 @@ function TenantAccessCell({ accessState, lastReadAt: lastReadAt2, now }) {
26029
26057
  const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
26030
26058
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-[var(--spacing-system-xxs)]", children: [
26031
26059
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { ...accessStateTag(accessState), loading, className: "self-start" }),
26032
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
26060
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
26033
26061
  ] });
26034
26062
  }
26035
26063
 
@@ -26041,9 +26069,9 @@ function TenantCell({ provider, name, domain }) {
26041
26069
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
26042
26070
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
26043
26071
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.MediaSkeleton.Icon, { size: "md", className: "shrink-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Logo, { size: 24, role: "img", "aria-label": label, className: "shrink-0" }),
26044
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: name })
26072
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: name })
26045
26073
  ] }),
26046
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
26074
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
26047
26075
  ] });
26048
26076
  }
26049
26077
 
@@ -26054,9 +26082,9 @@ function TenantCustomerCell({ name, imageUrl, userCount }) {
26054
26082
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
26055
26083
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
26056
26084
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { src: _nullishCoalesce(imageUrl, () => ( void 0)), alt: name, fallback: name, size: "xs", variant: "square" }),
26057
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: name })
26085
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: name })
26058
26086
  ] }),
26059
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: usersCountLabel(userCount) })
26087
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: usersCountLabel(userCount) })
26060
26088
  ] });
26061
26089
  }
26062
26090
 
@@ -26092,7 +26120,7 @@ function OpenTenantButton({ href, name }) {
26092
26120
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26093
26121
  _chunkFCZAUK4Dcjs.Button,
26094
26122
  {
26095
- onClick: loading ? void 0 : _chunkQUSCSYHJcjs.openInNewTab.call(void 0, href),
26123
+ onClick: loading ? void 0 : _chunkTX4NTH22cjs.openInNewTab.call(void 0, href),
26096
26124
  disabled: loading,
26097
26125
  variant: "outline",
26098
26126
  size: "icon",
@@ -26227,7 +26255,7 @@ function WaitlistForm({
26227
26255
  const { toast } = _chunkFNQWL4W4cjs.useToast.call(void 0, );
26228
26256
  const { honeypotInputProps, getSignals, resetSignals } = _chunkFNQWL4W4cjs.useHumanitySignals.call(void 0, );
26229
26257
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
26230
- const isClient = _chunkYAW7CHLVcjs.useIsHydrated.call(void 0, );
26258
+ const isClient = _chunkFXLROQUTcjs.useIsHydrated.call(void 0, );
26231
26259
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
26232
26260
  const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
26233
26261
  const rescue = _chunkFNQWL4W4cjs.useFormRescue.call(void 0, {
@@ -26242,7 +26270,7 @@ function WaitlistForm({
26242
26270
  _react.useEffect.call(void 0, () => {
26243
26271
  rescue.track({ email, phone }, null);
26244
26272
  }, [email, phone, rescue]);
26245
- const isMailDomainGeneric = _chunkQUSCSYHJcjs.hasGenericEmailDomain.call(void 0, email);
26273
+ const isMailDomainGeneric = _chunkTX4NTH22cjs.hasGenericEmailDomain.call(void 0, email);
26246
26274
  const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
26247
26275
  if (syncedDefaultEmail !== defaultEmail) {
26248
26276
  setSyncedDefaultEmail(defaultEmail);
@@ -26276,7 +26304,7 @@ function WaitlistForm({
26276
26304
  setShowConsentError(true);
26277
26305
  return;
26278
26306
  }
26279
- const finalPhone = phone ? _chunkQUSCSYHJcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
26307
+ const finalPhone = phone ? _chunkTX4NTH22cjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
26280
26308
  try {
26281
26309
  await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
26282
26310
  rescue.complete();
@@ -26863,7 +26891,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
26863
26891
  }, [mobileBreakpoint]);
26864
26892
  const panelRef = _react.useRef.call(void 0, null);
26865
26893
  const available = useContainerExtent(resizable, isHorizontal, portalContainer);
26866
- const { size, setSize, clampSize } = _chunkINA2FX2Ncjs.useResizablePanelSize.call(void 0, {
26894
+ const { size, setSize, clampSize } = _chunkIHY7E4EXcjs.useResizablePanelSize.call(void 0, {
26867
26895
  enabled: resizable,
26868
26896
  minSize,
26869
26897
  maxSize,
@@ -26883,7 +26911,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
26883
26911
  "data-state": open ? "open" : "closed",
26884
26912
  className: _chunk63A4GZMBcjs.cn.call(void 0,
26885
26913
  "absolute inset-0 z-[102] outline-none data-[state=closed]:pointer-events-none data-[state=open]:pointer-events-auto data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
26886
- _chunkINA2FX2Ncjs.OVERLAY_BACKDROP_CLASS,
26914
+ _chunkIHY7E4EXcjs.OVERLAY_BACKDROP_CLASS,
26887
26915
  // Persist mode only: hold the fade-out's final (transparent) frame
26888
26916
  // so the backdrop doesn't snap back to opacity 1 and dim the whole
26889
26917
  // content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
@@ -26926,7 +26954,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
26926
26954
  children: [
26927
26955
  props["aria-label"] ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive3.Title, { className: "sr-only", children: props["aria-label"] }) : null,
26928
26956
  applyInlineSize && (!persist || open) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26929
- _chunkYAW7CHLVcjs.PanelResizeHandle,
26957
+ _chunkFXLROQUTcjs.PanelResizeHandle,
26930
26958
  {
26931
26959
  variant: "inLayout",
26932
26960
  side: resolvedSide,
@@ -26965,11 +26993,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
26965
26993
  }
26966
26994
  );
26967
26995
  AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
26968
- var AppLayoutDrawerHeader = _chunkINA2FX2Ncjs.DrawerHeader;
26969
- var AppLayoutDrawerTitle = _chunkINA2FX2Ncjs.DrawerTitle;
26970
- var AppLayoutDrawerDescription = _chunkINA2FX2Ncjs.DrawerDescription;
26971
- var AppLayoutDrawerBody = _chunkINA2FX2Ncjs.DrawerBody;
26972
- var AppLayoutDrawerFooter = _chunkINA2FX2Ncjs.DrawerFooter;
26996
+ var AppLayoutDrawerHeader = _chunkIHY7E4EXcjs.DrawerHeader;
26997
+ var AppLayoutDrawerTitle = _chunkIHY7E4EXcjs.DrawerTitle;
26998
+ var AppLayoutDrawerDescription = _chunkIHY7E4EXcjs.DrawerDescription;
26999
+ var AppLayoutDrawerBody = _chunkIHY7E4EXcjs.DrawerBody;
27000
+ var AppLayoutDrawerFooter = _chunkIHY7E4EXcjs.DrawerFooter;
26973
27001
 
26974
27002
  // src/components/features/notifications/notification-tile.tsx
26975
27003
 
@@ -27260,7 +27288,7 @@ function NotificationDrawer({
27260
27288
  const unreadNotifications = notifications.filter((n) => !n.read);
27261
27289
  const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
27262
27290
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-m)] pt-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27263
- _chunkINA2FX2Ncjs.DrawerTitle,
27291
+ _chunkIHY7E4EXcjs.DrawerTitle,
27264
27292
  {
27265
27293
  hideClose: !showClose,
27266
27294
  className: "truncate",
@@ -27323,8 +27351,8 @@ function NotificationDrawer({
27323
27351
  }
27324
27352
  ) });
27325
27353
  }
27326
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkINA2FX2Ncjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27327
- _chunkINA2FX2Ncjs.DrawerContent,
27354
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIHY7E4EXcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27355
+ _chunkIHY7E4EXcjs.DrawerContent,
27328
27356
  {
27329
27357
  side: "right",
27330
27358
  "aria-describedby": void 0,
@@ -27994,7 +28022,7 @@ function TimeTrackerPanel({
27994
28022
  ] }),
27995
28023
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "grid gap-[var(--spacing-system-m)]", showCustomer && "grid-cols-2"), children: [
27996
28024
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27997
- _chunkIKOL6NJYcjs.Autocomplete,
28025
+ _chunkCAGNWDVJcjs.Autocomplete,
27998
28026
  {
27999
28027
  value: selectedTicketId,
28000
28028
  onChange: onSelectedTicketChange,
@@ -28010,7 +28038,7 @@ function TimeTrackerPanel({
28010
28038
  }
28011
28039
  ),
28012
28040
  showCustomer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28013
- _chunkIKOL6NJYcjs.Autocomplete,
28041
+ _chunkCAGNWDVJcjs.Autocomplete,
28014
28042
  {
28015
28043
  value: _nullishCoalesce(selectedCustomerId, () => ( null)),
28016
28044
  onChange: onSelectedCustomerChange,
@@ -28303,7 +28331,7 @@ function TimeTrackerHeaderButton({
28303
28331
  "data-state": isOpen ? "open" : "closed",
28304
28332
  className: _chunk63A4GZMBcjs.cn.call(void 0,
28305
28333
  layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
28306
- _chunkINA2FX2Ncjs.OVERLAY_BACKDROP_CLASS,
28334
+ _chunkIHY7E4EXcjs.OVERLAY_BACKDROP_CLASS,
28307
28335
  "data-[state=open]:animate-in data-[state=open]:fade-in-0",
28308
28336
  "data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
28309
28337
  )
@@ -28479,7 +28507,7 @@ function getDeviceStatusConfig(status) {
28479
28507
  }
28480
28508
  }
28481
28509
  function getDeviceOperatingSystem(osType) {
28482
- return _chunkQUSCSYHJcjs.getOSPlatformId.call(void 0, osType);
28510
+ return _chunkTX4NTH22cjs.getOSPlatformId.call(void 0, osType);
28483
28511
  }
28484
28512
 
28485
28513
  // src/components/features/devices/device-statuses.ts
@@ -28835,13 +28863,13 @@ function DevicesTableBody({
28835
28863
  function OrganizationCell({ device }) {
28836
28864
  const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
28837
28865
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
28838
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
28866
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
28839
28867
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OrganizationName, { name: device.organization }) })
28840
28868
  ] });
28841
28869
  }
28842
28870
  function OrganizationName({ name }) {
28843
28871
  if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) && !name) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-3/4" });
28844
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, children: _nullishCoalesce(name, () => ( "")) });
28872
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, children: _nullishCoalesce(name, () => ( "")) });
28845
28873
  }
28846
28874
  function DeviceLastSeen({ lastSeen }) {
28847
28875
  if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) && !lastSeen) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "hidden w-24 content-md:block" });
@@ -28887,7 +28915,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
28887
28915
  const device = row.original;
28888
28916
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative box-border flex h-20 w-full shrink-0 content-stretch items-center justify-start gap-4 py-0", children: [
28889
28917
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
28890
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: getDeviceName(device) }) }),
28918
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: getDeviceName(device) }) }),
28891
28919
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceUnreadIndicator, { device })
28892
28920
  ] });
28893
28921
  },
@@ -29060,7 +29088,7 @@ function CustomerCell({ device }) {
29060
29088
  const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
29061
29089
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
29062
29090
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29063
- _chunkIKOL6NJYcjs.EntityImage,
29091
+ _chunkCAGNWDVJcjs.EntityImage,
29064
29092
  {
29065
29093
  src: fullImageUrl,
29066
29094
  alt: device.organization || "Customer",
@@ -29068,8 +29096,8 @@ function CustomerCell({ device }) {
29068
29096
  }
29069
29097
  ),
29070
29098
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
29071
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: device.organization || "" }),
29072
- (device.organizationEmail || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(device.organizationEmail, () => ( "")) })
29099
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: device.organization || "" }),
29100
+ (device.organizationEmail || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(device.organizationEmail, () => ( "")) })
29073
29101
  ] })
29074
29102
  ] });
29075
29103
  }
@@ -29078,8 +29106,8 @@ function DeviceCell({ device }) {
29078
29106
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-3", children: [
29079
29107
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
29080
29108
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
29081
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: getDeviceName(device) }),
29082
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: formatLastOnline(device.last_seen || device.lastSeen) })
29109
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: getDeviceName(device) }),
29110
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: formatLastOnline(device.last_seen || device.lastSeen) })
29083
29111
  ] })
29084
29112
  ] });
29085
29113
  }
@@ -30091,7 +30119,7 @@ function DevicesPanelView({
30091
30119
  ] })
30092
30120
  ] });
30093
30121
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30094
- _chunkIKOL6NJYcjs.PageLayout,
30122
+ _chunkCAGNWDVJcjs.PageLayout,
30095
30123
  {
30096
30124
  title,
30097
30125
  backButton,
@@ -30099,7 +30127,7 @@ function DevicesPanelView({
30099
30127
  actionsVariant: "icon-buttons",
30100
30128
  className,
30101
30129
  selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30102
- _chunkYAW7CHLVcjs.TabSelector,
30130
+ _chunkFXLROQUTcjs.TabSelector,
30103
30131
  {
30104
30132
  value: viewMode,
30105
30133
  onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _657 => _657(value)]),
@@ -30165,7 +30193,7 @@ var PACKAGE_SEARCH_LABEL = "Software Name";
30165
30193
  var PACKAGE_SEARCH_PLACEHOLDER = "Search for Software";
30166
30194
  function PackageSearchFieldPlaceholder({ error }) {
30167
30195
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30168
- _chunkIKOL6NJYcjs.Autocomplete,
30196
+ _chunkCAGNWDVJcjs.Autocomplete,
30169
30197
  {
30170
30198
  label: PACKAGE_SEARCH_LABEL,
30171
30199
  labelVariant: "large",
@@ -30220,16 +30248,16 @@ function SoftwareScheduleFields({
30220
30248
  ] }),
30221
30249
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
30222
30250
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { className: "text-h4", children: "Time" }),
30223
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: time, onValueChange: onTimeChange, children: [
30224
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "Select time" }) }),
30225
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
30251
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: time, onValueChange: onTimeChange, children: [
30252
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "Select time" }) }),
30253
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
30226
30254
  ] })
30227
30255
  ] }),
30228
30256
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
30229
30257
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { className: "text-h4", children: "Timezone" }),
30230
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
30231
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
30232
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
30258
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
30259
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
30260
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
30233
30261
  ] })
30234
30262
  ] })
30235
30263
  ]
@@ -30238,6 +30266,8 @@ function SoftwareScheduleFields({
30238
30266
  }
30239
30267
 
30240
30268
  // src/components/features/software/software-action-copy.ts
30269
+ var nowDescription = (noun) => `The ${noun} starts now on online devices, and on the others when they come online.`;
30270
+ var scheduleDescription = (noun) => `The ${noun} runs at the scheduled time. Devices offline then get it when they come back online, within 7 days.`;
30241
30271
  var SOFTWARE_ACTION_COPY = {
30242
30272
  INSTALL: {
30243
30273
  verb: "Install",
@@ -30245,12 +30275,8 @@ var SOFTWARE_ACTION_COPY = {
30245
30275
  runLabel: "Run Installation",
30246
30276
  scheduleLabel: "Schedule Install",
30247
30277
  modes: [
30248
- { value: "now", label: "Install Now", description: "The install starts immediately." },
30249
- {
30250
- value: "schedule",
30251
- label: "Schedule Install",
30252
- description: "The install runs automatically at the scheduled time."
30253
- }
30278
+ { value: "now", label: "Install Now", description: nowDescription("install") },
30279
+ { value: "schedule", label: "Schedule Install", description: scheduleDescription("install") }
30254
30280
  ],
30255
30281
  started: "Installation started",
30256
30282
  scheduled: "Installation scheduled",
@@ -30264,12 +30290,8 @@ var SOFTWARE_ACTION_COPY = {
30264
30290
  runLabel: "Run Update",
30265
30291
  scheduleLabel: "Schedule Update",
30266
30292
  modes: [
30267
- { value: "now", label: "Update Now", description: "The update starts immediately." },
30268
- {
30269
- value: "schedule",
30270
- label: "Schedule Update",
30271
- description: "The update runs automatically at the scheduled time."
30272
- }
30293
+ { value: "now", label: "Update Now", description: nowDescription("update") },
30294
+ { value: "schedule", label: "Schedule Update", description: scheduleDescription("update") }
30273
30295
  ],
30274
30296
  started: "Update started",
30275
30297
  scheduled: "Update scheduled",
@@ -30295,22 +30317,22 @@ function newSoftwareRow(key) {
30295
30317
 
30296
30318
  function InfoCell2({ value, label }) {
30297
30319
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
30298
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: value }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "\u2014" }) }) }),
30320
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: value }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "\u2014" }) }) }),
30299
30321
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: label })
30300
30322
  ] });
30301
30323
  }
30302
30324
  function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSearch }) {
30303
30325
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-l)] content-lg:flex-row content-lg:items-end", children: [
30304
30326
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30305
- _chunkIKOL6NJYcjs.Select,
30327
+ _chunkCAGNWDVJcjs.Select,
30306
30328
  {
30307
30329
  value: row.packageManager,
30308
30330
  onValueChange: (value) => onChange({ ...row, packageManager: value, pkg: null }),
30309
30331
  children: [
30310
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
30311
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
30332
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
30333
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
30312
30334
  const Icon = PACKAGE_MANAGER_ICON[manager];
30313
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
30335
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
30314
30336
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 20, className: "shrink-0 text-ods-text-secondary" }),
30315
30337
  PACKAGE_MANAGER_LABEL[manager]
30316
30338
  ] }) }, manager);
@@ -30371,22 +30393,57 @@ var DEFAULT_SOFTWARE_UPDATE_SETTINGS = {
30371
30393
  sameForAutoUpdate: true,
30372
30394
  autoUpdatePolicy: DEFAULT_SOFTWARE_UPDATE_POLICY
30373
30395
  };
30374
- var MODE_OPTIONS = [
30375
- {
30396
+ var FORCE_UPDATE_POLICY = {
30397
+ ...DEFAULT_SOFTWARE_UPDATE_POLICY,
30398
+ mode: "FORCE",
30399
+ deadlineEnabled: false
30400
+ };
30401
+ function defaultSoftwareUpdateSettings(userNotifications) {
30402
+ if (userNotifications) return DEFAULT_SOFTWARE_UPDATE_SETTINGS;
30403
+ return { ...DEFAULT_SOFTWARE_UPDATE_SETTINGS, policy: FORCE_UPDATE_POLICY, autoUpdatePolicy: FORCE_UPDATE_POLICY };
30404
+ }
30405
+ function closeDelay(countdownSeconds) {
30406
+ const option = SOFTWARE_UPDATE_COUNTDOWN_OPTIONS.find((candidate) => candidate.seconds === countdownSeconds);
30407
+ if (option) return option.label;
30408
+ const minutes = Math.max(1, Math.round(countdownSeconds / 60));
30409
+ return minutes === 1 ? "1 minute" : `${minutes} minutes`;
30410
+ }
30411
+ var NOTIFIED_COPY = {
30412
+ wait: {
30376
30413
  value: "WAIT",
30377
30414
  label: "Wait & notify",
30378
30415
  description: "The user gets Update now or Ask Later. If they close the app, it updates then."
30379
30416
  },
30380
- {
30417
+ force: {
30381
30418
  value: "FORCE",
30382
30419
  label: "Force Update",
30383
30420
  description: "The user gets a short countdown, then the app closes and updates."
30421
+ },
30422
+ deadline: {
30423
+ label: "Countdown after the deadline",
30424
+ description: "If the update still isn\u2019t installed by the deadline, the user gets a countdown and then it installs."
30384
30425
  }
30385
- ];
30426
+ };
30427
+ function silentCopy(countdownSeconds) {
30428
+ const delay = closeDelay(countdownSeconds);
30429
+ return {
30430
+ wait: { value: "WAIT", label: "Wait", description: "The update waits until the user closes the app." },
30431
+ force: {
30432
+ value: "FORCE",
30433
+ label: "Force Update",
30434
+ description: `The app is closed without warning ${delay} later, then updated.`
30435
+ },
30436
+ deadline: {
30437
+ label: "Close the app after a deadline",
30438
+ description: `If the app is still open by the deadline, it is closed without warning ${delay} later, then updated.`
30439
+ }
30440
+ };
30441
+ }
30386
30442
  var SAME_SETTINGS_DESCRIPTION = {
30387
30443
  WAIT: 'Auto-updates follow "If the app is running" above. Uncheck to set them separately.',
30388
30444
  FORCE: "Later releases will also be force-updated."
30389
30445
  };
30446
+ var AUTO_UPDATE_DESCRIPTION = "After this update, OpenFrame installs each new version from Winget or Brew on the selected devices. Leaving it off does not turn off auto-update that is already on there.";
30390
30447
  var groupLabelClass = "text-h5 text-ods-text-secondary";
30391
30448
  function SecondsSelect({
30392
30449
  label,
@@ -30396,9 +30453,9 @@ function SecondsSelect({
30396
30453
  }) {
30397
30454
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
30398
30455
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { className: "text-h4", children: label }),
30399
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: String(value), onValueChange: (next) => onChange(Number(next)), children: [
30400
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { "aria-label": label, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
30401
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: options.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: String(option.seconds), children: option.label }, option.seconds)) })
30456
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: String(value), onValueChange: (next) => onChange(Number(next)), children: [
30457
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { "aria-label": label, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
30458
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: options.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: String(option.seconds), children: option.label }, option.seconds)) })
30402
30459
  ] })
30403
30460
  ] });
30404
30461
  }
@@ -30406,11 +30463,13 @@ function UpdatePolicyFields({
30406
30463
  name,
30407
30464
  label,
30408
30465
  policy,
30466
+ userNotifications,
30409
30467
  onChange
30410
30468
  }) {
30469
+ const copy = userNotifications ? NOTIFIED_COPY : silentCopy(policy.countdownSeconds);
30411
30470
  const waits = policy.mode === "WAIT";
30412
30471
  const deadline = waits && policy.deadlineEnabled;
30413
- const countdown = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30472
+ const countdown = userNotifications && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30414
30473
  SecondsSelect,
30415
30474
  {
30416
30475
  label: "Countdown",
@@ -30430,7 +30489,7 @@ function UpdatePolicyFields({
30430
30489
  variant: "grouped",
30431
30490
  value: policy.mode,
30432
30491
  onValueChange: (mode) => onChange({ ...policy, mode }),
30433
- options: MODE_OPTIONS,
30492
+ options: [copy.wait, copy.force],
30434
30493
  itemClassName: "py-[var(--spacing-system-sf)]"
30435
30494
  }
30436
30495
  )
@@ -30442,8 +30501,8 @@ function UpdatePolicyFields({
30442
30501
  id: `${name}-deadline`,
30443
30502
  checked: policy.deadlineEnabled,
30444
30503
  onCheckedChange: (deadlineEnabled) => onChange({ ...policy, deadlineEnabled }),
30445
- label: "Countdown after the deadline",
30446
- description: "If the update still isn\u2019t installed by the deadline, the user gets a countdown and then it installs."
30504
+ label: copy.deadline.label,
30505
+ description: copy.deadline.description
30447
30506
  }
30448
30507
  ),
30449
30508
  deadline && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-lf)] content-md:grid-cols-3 content-md:items-start", children: [
@@ -30458,10 +30517,14 @@ function UpdatePolicyFields({
30458
30517
  ),
30459
30518
  countdown
30460
30519
  ] })
30461
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-lf)] content-md:grid-cols-3", children: countdown })
30520
+ ] }) : userNotifications && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-lf)] content-md:grid-cols-3", children: countdown })
30462
30521
  ] });
30463
30522
  }
30464
- function SoftwareUpdateSettingsFields({ value, onChange }) {
30523
+ function SoftwareUpdateSettingsFields({
30524
+ value,
30525
+ onChange,
30526
+ userNotifications = false
30527
+ }) {
30465
30528
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "aria-labelledby": "software-update-settings", className: "flex flex-col gap-[var(--spacing-system-l)]", children: [
30466
30529
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: "software-update-settings", className: "pt-[var(--spacing-system-l)] text-ods-text-primary text-h2", children: "Update Settings" }),
30467
30530
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -30470,6 +30533,7 @@ function SoftwareUpdateSettingsFields({ value, onChange }) {
30470
30533
  name: "updatePolicy",
30471
30534
  label: "If the app is running",
30472
30535
  policy: value.policy,
30536
+ userNotifications,
30473
30537
  onChange: (policy) => onChange({ ...value, policy })
30474
30538
  }
30475
30539
  ),
@@ -30483,7 +30547,7 @@ function SoftwareUpdateSettingsFields({ value, onChange }) {
30483
30547
  checked: value.autoUpdate,
30484
30548
  onCheckedChange: (autoUpdate) => onChange({ ...value, autoUpdate }),
30485
30549
  label: "Keep it auto-updated",
30486
- description: "After this update, OpenFrame installs each new version from Winget or Brew on the selected devices. When off, only this update runs."
30550
+ description: AUTO_UPDATE_DESCRIPTION
30487
30551
  }
30488
30552
  ),
30489
30553
  value.autoUpdate && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -30503,26 +30567,13 @@ function SoftwareUpdateSettingsFields({ value, onChange }) {
30503
30567
  name: "autoUpdatePolicy",
30504
30568
  label: "For auto-updates",
30505
30569
  policy: value.autoUpdatePolicy,
30570
+ userNotifications,
30506
30571
  onChange: (autoUpdatePolicy) => onChange({ ...value, autoUpdatePolicy })
30507
30572
  }
30508
30573
  ) })
30509
30574
  ] })
30510
30575
  ] })
30511
- ] }),
30512
- value.autoUpdate && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30513
- Alert,
30514
- {
30515
- role: "note",
30516
- className: "flex items-center gap-[var(--spacing-system-m)] rounded-[6px] border-ods-border bg-ods-card p-[var(--spacing-system-m)]",
30517
- children: [
30518
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRHC2FRVEcjs.InfoCircleIcon, { size: 24, color: "currentColor" }) }),
30519
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
30520
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h3", children: "Apps installed by hand get reinstalled" }),
30521
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "On the first update, OpenFrame reinstalls them with Winget or Brew so it can keep them updated." })
30522
- ] })
30523
- ]
30524
- }
30525
- )
30576
+ ] })
30526
30577
  ] });
30527
30578
  }
30528
30579
 
@@ -30543,6 +30594,7 @@ function SoftwareActionForm({
30543
30594
  addRows = true,
30544
30595
  runModeLayout = "stacked",
30545
30596
  showUpdateSettings = false,
30597
+ updateUserNotifications = false,
30546
30598
  showDeviceHeading = true,
30547
30599
  className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
30548
30600
  }) {
@@ -30553,7 +30605,7 @@ function SoftwareActionForm({
30553
30605
  const [time, setTime] = _react.useState.call(void 0, _nullishCoalesce(initialValues.time, () => ( "")));
30554
30606
  const [timeReference, setTimeReference] = _react.useState.call(void 0, initialValues.timeReference);
30555
30607
  const [updateSettings, setUpdateSettings] = _react.useState.call(void 0,
30556
- () => _nullishCoalesce(initialValues.updateSettings, () => ( DEFAULT_SOFTWARE_UPDATE_SETTINGS))
30608
+ () => _nullishCoalesce(initialValues.updateSettings, () => ( defaultSoftwareUpdateSettings(updateUserNotifications)))
30557
30609
  );
30558
30610
  const withUpdateSettings = action === "UPDATE" && showUpdateSettings;
30559
30611
  const osTypesKey = [...new Set(rows.map((row) => PACKAGE_MANAGER_OS[row.packageManager]))].sort().join(",");
@@ -30604,7 +30656,7 @@ function SoftwareActionForm({
30604
30656
  }
30605
30657
  );
30606
30658
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30607
- _chunkIKOL6NJYcjs.PageLayout,
30659
+ _chunkCAGNWDVJcjs.PageLayout,
30608
30660
  {
30609
30661
  title: copy.formTitle,
30610
30662
  backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
@@ -30643,7 +30695,14 @@ function SoftwareActionForm({
30643
30695
  runModeField,
30644
30696
  scheduleFields
30645
30697
  ] }),
30646
- withUpdateSettings && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SoftwareUpdateSettingsFields, { value: updateSettings, onChange: setUpdateSettings }),
30698
+ withUpdateSettings && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30699
+ SoftwareUpdateSettingsFields,
30700
+ {
30701
+ value: updateSettings,
30702
+ onChange: setUpdateSettings,
30703
+ userNotifications: updateUserNotifications
30704
+ }
30705
+ ),
30647
30706
  showDeviceHeading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "pt-[var(--spacing-system-l)] text-ods-text-primary text-h2", children: "Device Selection" }),
30648
30707
  renderDevicePicker({ osTypes: osTypesKey.split(","), osTypesKey })
30649
30708
  ]
@@ -30694,7 +30753,7 @@ function LogDrawer({
30694
30753
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 space-y-4 overflow-y-auto", children: [
30695
30754
  description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerDescription, { asChild: true, className: "leading-6 text-ods-text-primary text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: description }) }),
30696
30755
  infoFields && infoFields.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-3 rounded-[6px] border border-ods-border bg-ods-card p-4", children: infoFields.map((field) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-0.5", children: [
30697
- typeof field.value === "string" ? field.value === "" || field.value === EMPTY_MARK ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: field.value }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: field.value === null || field.value === void 0 || field.value === false ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) : field.value }),
30756
+ typeof field.value === "string" ? field.value === "" || field.value === EMPTY_MARK ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: field.value }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: field.value === null || field.value === void 0 || field.value === false ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) : field.value }),
30698
30757
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: field.label })
30699
30758
  ] }, typeof field.label === "string" ? field.label : "")) }),
30700
30759
  children
@@ -30742,7 +30801,7 @@ function LogsPageView({
30742
30801
  ],
30743
30802
  [onRefresh]
30744
30803
  );
30745
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
30804
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
30746
30805
  !hideSearch && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-0 z-20 -my-[var(--spacing-system-l)] flex items-center gap-[var(--spacing-system-m)] bg-ods-bg py-[var(--spacing-system-l)]", children: [
30747
30806
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30748
30807
  _chunkZGEWT3SFcjs.Input,
@@ -30831,11 +30890,11 @@ var ToolBadge = ({
30831
30890
  iconClassName
30832
30891
  }) => {
30833
30892
  const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
30834
- const text = _nullishCoalesce(label, () => ( (toolType ? _chunkQUSCSYHJcjs.getToolLabel.call(void 0, toolType) : "")));
30893
+ const text = _nullishCoalesce(label, () => ( (toolType ? _chunkTX4NTH22cjs.getToolLabel.call(void 0, toolType) : "")));
30835
30894
  const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBUEEQD3Gcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
30836
30895
  if (loading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ToolBadgeSkeleton, { variant, icon: !!mark, className });
30837
30896
  const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30838
- _chunkYAW7CHLVcjs.NavLinkAnchorViaRuntime,
30897
+ _chunkFXLROQUTcjs.NavLinkAnchorViaRuntime,
30839
30898
  {
30840
30899
  href,
30841
30900
  targetPlatform,
@@ -30900,8 +30959,8 @@ function LogSourceCell({ device }) {
30900
30959
  const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
30901
30960
  const { deviceName, organization } = logSourceLabels(device);
30902
30961
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] flex-col justify-center gap-1 py-2", children: [
30903
- (deviceName || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: deviceName }),
30904
- (organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
30962
+ (deviceName || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: deviceName }),
30963
+ (organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
30905
30964
  ] });
30906
30965
  }
30907
30966
  function LogRowButton({
@@ -30956,8 +31015,8 @@ function LogsTableView({
30956
31015
  accessorKey: "logId",
30957
31016
  header: logIdHeader ? () => logIdHeader : "Log ID",
30958
31017
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col justify-center", children: [
30959
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: row.original.timestamp }),
30960
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
31018
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: row.original.timestamp }),
31019
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
30961
31020
  ] }),
30962
31021
  enableSorting: false,
30963
31022
  meta: { width: LOG_COLUMN_WIDTHS.logId, alwaysShowHeader: true }
@@ -30985,7 +31044,7 @@ function LogsTableView({
30985
31044
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30986
31045
  ToolBadge,
30987
31046
  {
30988
- toolType: _chunkQUSCSYHJcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
31047
+ toolType: _chunkTX4NTH22cjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
30989
31048
  iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
30990
31049
  }
30991
31050
  ),
@@ -30997,7 +31056,7 @@ function LogsTableView({
30997
31056
  filter: {
30998
31057
  options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _665 => _665.toolTypes, 'access', _666 => _666.map, 'call', _667 => _667((toolType) => ({
30999
31058
  id: toolType,
31000
- label: _chunkQUSCSYHJcjs.toToolLabel.call(void 0, toolType),
31059
+ label: _chunkTX4NTH22cjs.toToolLabel.call(void 0, toolType),
31001
31060
  value: toolType
31002
31061
  }))]), () => ( []))
31003
31062
  }
@@ -31018,7 +31077,7 @@ function LogsTableView({
31018
31077
  {
31019
31078
  accessorKey: "description",
31020
31079
  header: "Log Details",
31021
- cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
31080
+ cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
31022
31081
  enableSorting: false,
31023
31082
  meta: { width: LOG_COLUMN_WIDTHS.description, hideAt: "lg" }
31024
31083
  },
@@ -31046,7 +31105,7 @@ function LogsTableView({
31046
31105
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31047
31106
  LogRowButton,
31048
31107
  {
31049
- onClick: getLogHref ? _chunkQUSCSYHJcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
31108
+ onClick: getLogHref ? _chunkTX4NTH22cjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
31050
31109
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
31051
31110
  label: "Open in new tab"
31052
31111
  }
@@ -31217,8 +31276,8 @@ function ExecutionSourceBadge({ source, className }) {
31217
31276
  }
31218
31277
  function ExecutionTimestampCell({ timestamp, executionId }) {
31219
31278
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
31220
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: timestamp }),
31221
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
31279
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: timestamp }),
31280
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
31222
31281
  ] });
31223
31282
  }
31224
31283
  function ExecutionStatusCell({ status }) {
@@ -31230,9 +31289,9 @@ function ExecutionDeviceCell({ name, organization }) {
31230
31289
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
31231
31290
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1", children: [
31232
31291
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "size-6 shrink-0 text-ods-text-secondary" }),
31233
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: name }) : name })
31292
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: name }) : name })
31234
31293
  ] }),
31235
- (organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
31294
+ (organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
31236
31295
  ] });
31237
31296
  }
31238
31297
  function ExecutionInitiatorCell({
@@ -31245,16 +31304,16 @@ function ExecutionInitiatorCell({
31245
31304
  avatar,
31246
31305
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
31247
31306
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
31248
- typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: name }) : name,
31307
+ typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: name }) : name,
31249
31308
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionSourceBadge, { source })
31250
31309
  ] }),
31251
- scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
31310
+ scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
31252
31311
  ] })
31253
31312
  ] });
31254
31313
  }
31255
31314
  function ExecutionResultCell({ result, empty = null }) {
31256
31315
  const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
31257
- return result || loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, children: _nullishCoalesce(result, () => ( "")) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
31316
+ return result || loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, children: _nullishCoalesce(result, () => ( "")) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
31258
31317
  }
31259
31318
  function ScriptExecutionResult({
31260
31319
  result,
@@ -31274,14 +31333,14 @@ function ScriptExecutionResult({
31274
31333
 
31275
31334
  function ScriptNameCell({ name, description }) {
31276
31335
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
31277
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: name }),
31278
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
31336
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: name }),
31337
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
31279
31338
  ] });
31280
31339
  }
31281
31340
  function ScheduleDateTimeCell({ date, time }) {
31282
31341
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
31283
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: date }),
31284
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
31342
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: date }),
31343
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
31285
31344
  ] });
31286
31345
  }
31287
31346
 
@@ -31368,7 +31427,7 @@ function OpenInNewTabCell({ href }) {
31368
31427
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31369
31428
  _chunkFCZAUK4Dcjs.Button,
31370
31429
  {
31371
- onClick: loading ? void 0 : _chunkQUSCSYHJcjs.openInNewTab.call(void 0, href),
31430
+ onClick: loading ? void 0 : _chunkTX4NTH22cjs.openInNewTab.call(void 0, href),
31372
31431
  disabled: loading,
31373
31432
  variant: "outline",
31374
31433
  size: "icon",
@@ -31511,7 +31570,7 @@ function ScriptSchedulesTable({
31511
31570
  cell(SCHEDULE_COLUMNS.supportedPlatforms, (row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OSTypeBadgeGroup, { osTypes: row.supportedPlatforms, iconSize: "w-4 h-4 content-md:w-6 content-md:h-6" })),
31512
31571
  cell(
31513
31572
  SCHEDULE_COLUMNS.dateTime,
31514
- (row) => row.startsAt ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScheduleDateTimeCell, { date: row.startsAt.date, time: row.startsAt.time }) : row.trigger ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
31573
+ (row) => row.startsAt ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScheduleDateTimeCell, { date: row.startsAt.date, time: row.startsAt.time }) : row.trigger ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
31515
31574
  ),
31516
31575
  cell(
31517
31576
  SCHEDULE_COLUMNS.repeat,
@@ -31557,9 +31616,9 @@ function ScriptSchedulesTable({
31557
31616
 
31558
31617
  // src/components/features/scripts/shell-types.ts
31559
31618
  var SCRIPT_SHELL_TYPES = [
31560
- { id: _chunkQUSCSYHJcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
31561
- { id: _chunkQUSCSYHJcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
31562
- { id: _chunkQUSCSYHJcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
31619
+ { id: _chunkTX4NTH22cjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
31620
+ { id: _chunkTX4NTH22cjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
31621
+ { id: _chunkTX4NTH22cjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
31563
31622
  ];
31564
31623
  function scriptShellType(value) {
31565
31624
  return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
@@ -31635,7 +31694,7 @@ function ScriptsTable({
31635
31694
  initialsClassName: "text-ods-text-secondary"
31636
31695
  }
31637
31696
  ),
31638
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: row.author.name }) })
31697
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: row.author.name }) })
31639
31698
  ] }) : null
31640
31699
  )
31641
31700
  ];
@@ -31983,7 +32042,7 @@ function ReconnectWindowFields({
31983
32042
  }
31984
32043
  ),
31985
32044
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
31986
- _chunkIKOL6NJYcjs.Select,
32045
+ _chunkCAGNWDVJcjs.Select,
31987
32046
  {
31988
32047
  value: unit,
31989
32048
  onValueChange: (value) => {
@@ -31992,8 +32051,8 @@ function ReconnectWindowFields({
31992
32051
  },
31993
32052
  disabled,
31994
32053
  children: [
31995
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
31996
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
32054
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
32055
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
31997
32056
  ]
31998
32057
  }
31999
32058
  )
@@ -32063,7 +32122,7 @@ function ScheduleOfflineFields({ showErrors, disabled = false }) {
32063
32122
  options
32064
32123
  }
32065
32124
  ),
32066
- intervalError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
32125
+ intervalError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
32067
32126
  ]
32068
32127
  }
32069
32128
  ) }) })
@@ -32901,24 +32960,24 @@ function ScheduleTimingFields({
32901
32960
  // `''` reads as "no selection" to Radix, so the placeholder shows
32902
32961
  // until a slot is picked — a date at midnight no longer
32903
32962
  // masquerades as a chosen 12:00 AM.
32904
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKOL6NJYcjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
32963
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCAGNWDVJcjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
32905
32964
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32906
- _chunkIKOL6NJYcjs.SelectTrigger,
32965
+ _chunkCAGNWDVJcjs.SelectTrigger,
32907
32966
  {
32908
32967
  className: "w-full",
32909
32968
  error: _nullishCoalesce(pastTimeError, () => ( (showErrors ? _optionalChain([fieldState, 'access', _719 => _719.error, 'optionalAccess', _720 => _720.message]) : void 0))),
32910
32969
  invalid: !!pastTimeError || showErrors && !!fieldState.error,
32911
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, { placeholder: "Select time" })
32970
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, { placeholder: "Select time" })
32912
32971
  }
32913
32972
  ),
32914
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: timeSlots.length === 0 ? (
32973
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: timeSlots.length === 0 ? (
32915
32974
  // Deliberately NOT a `SelectItem` — there is nothing here
32916
32975
  // to select, and a selectable row would put a bogus value
32917
32976
  // in the form. It replaces a popup that opened blank; the
32918
32977
  // Date field carries the same sentence for whoever never
32919
32978
  // opens this one.
32920
32979
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "px-4 py-[var(--spacing-system-sf)] text-ods-text-secondary text-h6", children: NO_SLOTS_TODAY_MESSAGE })
32921
- ) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
32980
+ ) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
32922
32981
  ] })
32923
32982
  )
32924
32983
  }
@@ -32932,7 +32991,7 @@ function ScheduleTimingFields({
32932
32991
  name: "timeReference",
32933
32992
  control,
32934
32993
  render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
32935
- _chunkIKOL6NJYcjs.Select,
32994
+ _chunkCAGNWDVJcjs.Select,
32936
32995
  {
32937
32996
  value: field.value,
32938
32997
  onValueChange: (value) => {
@@ -32941,8 +33000,8 @@ function ScheduleTimingFields({
32941
33000
  },
32942
33001
  disabled: fieldsDisabled,
32943
33002
  children: [
32944
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
32945
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
33003
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
33004
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
32946
33005
  ]
32947
33006
  }
32948
33007
  )
@@ -33002,7 +33061,7 @@ function ScheduleTimingFields({
33002
33061
  name: "repeatUnit",
33003
33062
  control,
33004
33063
  render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33005
- _chunkIKOL6NJYcjs.Select,
33064
+ _chunkCAGNWDVJcjs.Select,
33006
33065
  {
33007
33066
  value: field.value,
33008
33067
  onValueChange: (value) => {
@@ -33015,8 +33074,8 @@ function ScheduleTimingFields({
33015
33074
  },
33016
33075
  disabled: fieldsDisabled || !repeatEnabled,
33017
33076
  children: [
33018
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectValue, {}) }),
33019
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
33077
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectValue, {}) }),
33078
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
33020
33079
  ]
33021
33080
  }
33022
33081
  )
@@ -33035,7 +33094,7 @@ function ScheduleFormFields({
33035
33094
  disabled = false,
33036
33095
  renderScriptSearch,
33037
33096
  timeReferenceGate = "off",
33038
- platforms = _chunkQUSCSYHJcjs.OS_PLATFORMS,
33097
+ platforms = _chunkTX4NTH22cjs.OS_PLATFORMS,
33039
33098
  comingSoonPlatforms = [],
33040
33099
  getTimeSlots,
33041
33100
  nameLayout = "stacked",
@@ -33105,7 +33164,7 @@ function ScheduleFormFields({
33105
33164
  platform.id
33106
33165
  );
33107
33166
  }) }),
33108
- showErrors && formState.errors.supportedPlatforms && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
33167
+ showErrors && formState.errors.supportedPlatforms && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
33109
33168
  ]
33110
33169
  }
33111
33170
  );
@@ -33181,7 +33240,7 @@ function ScheduleFormFields({
33181
33240
  // src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
33182
33241
 
33183
33242
  function ScriptPlatformIcons({ platforms }) {
33184
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkQUSCSYHJcjs.OS_PLATFORMS.filter((p) => platforms.includes(p.id)).map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, p.icon, { className: "h-3.5 w-3.5 text-ods-text-secondary opacity-60" }, p.id)) });
33243
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkTX4NTH22cjs.OS_PLATFORMS.filter((p) => platforms.includes(p.id)).map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, p.icon, { className: "h-3.5 w-3.5 text-ods-text-secondary opacity-60" }, p.id)) });
33185
33244
  }
33186
33245
  function ScheduleScriptSearchField({
33187
33246
  scriptId,
@@ -33207,7 +33266,7 @@ function ScheduleScriptSearchField({
33207
33266
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", onFocus: onOpen, onBlur: handleBlur, children: [
33208
33267
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { className: "text-h4", children: "Select Script" }),
33209
33268
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33210
- _chunkIKOL6NJYcjs.Autocomplete,
33269
+ _chunkCAGNWDVJcjs.Autocomplete,
33211
33270
  {
33212
33271
  options,
33213
33272
  value: scriptId || null,
@@ -33222,7 +33281,7 @@ function ScheduleScriptSearchField({
33222
33281
  error,
33223
33282
  invalid,
33224
33283
  renderOption: (option, isSelected) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
33225
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
33284
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
33226
33285
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScriptPlatformIcons, { platforms: _nullishCoalesce(_optionalChain([scripts, 'access', _726 => _726.find, 'call', _727 => _727((s) => s.id === option.value), 'optionalAccess', _728 => _728.supportedPlatforms]), () => ( [])) })
33227
33286
  ] })
33228
33287
  }
@@ -33254,7 +33313,7 @@ function KnowledgeBaseOpenButton({ href }) {
33254
33313
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33255
33314
  _chunkFCZAUK4Dcjs.Button,
33256
33315
  {
33257
- onClick: loading ? void 0 : _chunkQUSCSYHJcjs.openInNewTab.call(void 0, href),
33316
+ onClick: loading ? void 0 : _chunkTX4NTH22cjs.openInNewTab.call(void 0, href),
33258
33317
  disabled: loading,
33259
33318
  variant: "outline",
33260
33319
  size: "icon",
@@ -33273,10 +33332,10 @@ function KnowledgeBaseNameCell({ item }) {
33273
33332
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative flex h-8 w-8 shrink-0 items-center justify-center rounded-[6px] border border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 16, className: "shrink-0 text-ods-text-secondary" }) }),
33274
33333
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
33275
33334
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
33276
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: item.name }) }),
33335
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: item.name }) }),
33277
33336
  tagStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { variant: KNOWLEDGE_BASE_STATUS_VARIANT[tagStatus], label: tagStatus, className: "shrink-0" })
33278
33337
  ] }),
33279
- item.type === "ARTICLE" && (item.summary || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(item.summary, () => ( "")) })
33338
+ item.type === "ARTICLE" && (item.summary || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(item.summary, () => ( "")) })
33280
33339
  ] })
33281
33340
  ] });
33282
33341
  }
@@ -33398,7 +33457,7 @@ function KnowledgeBaseArticleView({
33398
33457
  className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
33399
33458
  }) {
33400
33459
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33401
- _chunkIKOL6NJYcjs.PageLayout,
33460
+ _chunkCAGNWDVJcjs.PageLayout,
33402
33461
  {
33403
33462
  title,
33404
33463
  backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
@@ -33421,12 +33480,12 @@ function KnowledgeBaseArticleView({
33421
33480
  }
33422
33481
  ),
33423
33482
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
33424
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
33483
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
33425
33484
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Author" })
33426
33485
  ] })
33427
33486
  ] }),
33428
33487
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col justify-center", children: [
33429
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { children: updatedLabel }),
33488
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { children: updatedLabel }),
33430
33489
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Updated" })
33431
33490
  ] }),
33432
33491
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -33605,7 +33664,7 @@ function ConversationCard({
33605
33664
  style: tint,
33606
33665
  onClick: selection && ((event) => {
33607
33666
  if (event.button !== 0 || _optionalChain([window, 'access', _731 => _731.getSelection, 'call', _732 => _732(), 'optionalAccess', _733 => _733.toString, 'call', _734 => _734()])) return;
33608
- if (!_chunkQUSCSYHJcjs.isOwnClick.call(void 0, event.target, event.currentTarget, { controls: true })) return;
33667
+ if (!_chunkTX4NTH22cjs.isOwnClick.call(void 0, event.target, event.currentTarget, { controls: true })) return;
33609
33668
  selection.onToggle();
33610
33669
  }),
33611
33670
  children: [
@@ -33628,7 +33687,7 @@ function ConversationCard({
33628
33687
  )
33629
33688
  ),
33630
33689
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33631
- _chunkQUSCSYHJcjs.ChatTurn,
33690
+ _chunkTX4NTH22cjs.ChatTurn,
33632
33691
  {
33633
33692
  avatar: requester.avatar,
33634
33693
  name: requester.name,
@@ -33649,7 +33708,7 @@ function ConversationCard({
33649
33708
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: CONTEXT_TEXT_CLASS, style: partLinesStyle(_optionalChain([lines, 'optionalAccess', _735 => _735.context])), children: context.text })
33650
33709
  ] }),
33651
33710
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33652
- _chunkQUSCSYHJcjs.ChatTurn,
33711
+ _chunkTX4NTH22cjs.ChatTurn,
33653
33712
  {
33654
33713
  avatar: responder.avatar,
33655
33714
  name: responder.name,
@@ -33694,7 +33753,7 @@ function ConversationCardSkeleton({
33694
33753
  {
33695
33754
  selection: selection && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { className: "contents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectionToggle, { pressed: selection.pressed }) }),
33696
33755
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33697
- _chunkQUSCSYHJcjs.ChatTurn,
33756
+ _chunkTX4NTH22cjs.ChatTurn,
33698
33757
  {
33699
33758
  loading: true,
33700
33759
  name: "",
@@ -33718,7 +33777,7 @@ function ConversationCardSkeleton({
33718
33777
  ] })
33719
33778
  ] }),
33720
33779
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33721
- _chunkQUSCSYHJcjs.ChatTurn,
33780
+ _chunkTX4NTH22cjs.ChatTurn,
33722
33781
  {
33723
33782
  loading: true,
33724
33783
  name: "",
@@ -33799,7 +33858,7 @@ function Highlights({ items, className }) {
33799
33858
  if (items.length === 0) return null;
33800
33859
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: _chunk63A4GZMBcjs.cn.call(void 0, "grid grid-cols-1 gap-2", className), children: items.slice(0, HIGHLIGHTS_LIMIT).map((text) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "li", { "data-loading-item": true, className: HIGHLIGHT_ROW_CLASS, children: [
33801
33860
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: HIGHLIGHT_ICON_PX, className: "shrink-0 text-ods-flamingo-cyan" }),
33802
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
33861
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
33803
33862
  ] }, text)) });
33804
33863
  }
33805
33864
  function Example({
@@ -33835,7 +33894,7 @@ function Example({
33835
33894
  mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _739 => _739.mark]), () => ( requesterMark))),
33836
33895
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
33837
33896
  who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _740 => _740.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _741 => _741.note]), () => ( labels.requesterNote))),
33838
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
33897
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
33839
33898
  ] })
33840
33899
  ] }),
33841
33900
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
@@ -33844,7 +33903,7 @@ function Example({
33844
33903
  who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _743 => _743.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _744 => _744.note]), () => ( labels.responderNote))),
33845
33904
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
33846
33905
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
33847
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
33906
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
33848
33907
  ] })
33849
33908
  ] })
33850
33909
  ] })
@@ -33983,13 +34042,13 @@ function CapabilityExplorer({
33983
34042
  item.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, JOB_ICON_TILE_CLASS, "text-ods-flamingo-cyan"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.EntityIcon, { icon: { name: item.iconName }, size: 18 }) }),
33984
34043
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
33985
34044
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "flex min-w-0 items-center gap-2 text-ods-text-primary text-h4", children: [
33986
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
34045
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
33987
34046
  item.badge
33988
34047
  ] }),
33989
- item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
34048
+ item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
33990
34049
  ] })
33991
34050
  ] }),
33992
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
34051
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
33993
34052
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-lg border border-ods-border", children: renderScreen(item, { compact: true }) }),
33994
34053
  item.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33995
34054
  Example,
@@ -34106,8 +34165,8 @@ function CapabilityExplorer({
34106
34165
  ),
34107
34166
  children: [
34108
34167
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: PANEL_INTRO_CLASS, children: [
34109
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
34110
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKOL6NJYcjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
34168
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
34169
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
34111
34170
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Highlights, { items: _nullishCoalesce(active.highlights, () => ( [])), className: "mt-auto" })
34112
34171
  ] }),
34113
34172
  active.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -34825,4 +34884,4 @@ function CapabilityExplorer({
34825
34884
 
34826
34885
 
34827
34886
 
34828
- exports.AllowedDomainsInput = AllowedDomainsInput; exports.ANNOUNCEMENT_BAR_HEIGHT_CLASS = ANNOUNCEMENT_BAR_HEIGHT_CLASS; exports.AnnouncementBarView = AnnouncementBarView; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.DatePickerCalendar = DatePickerCalendar; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.JsonDetailList = JsonDetailList; exports.PROGRESS_BAR_HEIGHT = PROGRESS_BAR_HEIGHT; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.SearchableSelect = SearchableSelect; exports.AssigneeDropdown = AssigneeDropdown; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoDataMessage = NoDataMessage; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RADIO_GROUP_BLOCK_SKELETON_OPTIONS = RADIO_GROUP_BLOCK_SKELETON_OPTIONS; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TAGS_INPUT_CLASS = TAGS_INPUT_CLASS; exports.TAGS_INPUT_ROW_CLASS = TAGS_INPUT_ROW_CLASS; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.TEXTAREA_BOX_CLASS = TEXTAREA_BOX_CLASS; exports.textareaBoxHeight = textareaBoxHeight; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormDrawer = AdminFormDrawer; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigationVariantProvider = TabNavigationVariantProvider; exports.TAB_AVATAR_PX = TAB_AVATAR_PX; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.previewFadeMask = previewFadeMask; exports.FADE_PREVIEW_MAX_UNMEASURED_ITEMS = FADE_PREVIEW_MAX_UNMEASURED_ITEMS; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.EmbedLoadingSkeleton = EmbedLoadingSkeleton; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.ClaudeEmbed = ClaudeEmbed; exports.FigmaEmbed = FigmaEmbed; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.MarkdownImage = MarkdownImage; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.MediaCarousel = MediaCarousel; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.AppStoreBadge = AppStoreBadge; exports.GooglePlayBadge = GooglePlayBadge; exports.StoreBadgeLinks = StoreBadgeLinks; exports.MobileAppQr = MobileAppQr; exports.StatusIndicator = StatusIndicator; exports.DATA_SYNC_SOURCES = DATA_SYNC_SOURCES; exports.isDataSyncSource = isDataSyncSource; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PageShell = PageShell; exports.PageMain = PageMain; exports.ArticleDetailLayout = ArticleDetailLayout; exports.TOGGLE_SIZE_CLASS = TOGGLE_SIZE_CLASS; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.StepArrowButton = StepArrowButton; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.DataAttribution = DataAttribution; exports.DataSyncLine = DataSyncLine; exports.DownloadButton = DownloadButton; exports.COMPLIANCE_LOGO_SIZE_CLASS = COMPLIANCE_LOGO_SIZE_CLASS; exports.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.StepNumber = StepNumber; exports.NumberedStep = NumberedStep; exports.FEATURE_LIST_SKELETON_COUNT = FEATURE_LIST_SKELETON_COUNT; exports.FeatureList = FeatureList; exports.formatTrendChange = formatTrendChange; exports.TREND_TONES = TREND_TONES; exports.trendTone = trendTone; exports.trendToneClass = trendToneClass; exports.trendlinePoints = trendlinePoints; exports.Trendline = Trendline; exports.TrendHistory = TrendHistory; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.ORGANIZATION_CARD_RADIUS_CLASS = ORGANIZATION_CARD_RADIUS_CLASS; exports.ORGANIZATION_CARD_LAYOUT_CLASS = ORGANIZATION_CARD_LAYOUT_CLASS; exports.ORGANIZATION_CARD_SURFACE_CLASS = ORGANIZATION_CARD_SURFACE_CLASS; exports.ORGANIZATION_CARD_HEADER_CLASS = ORGANIZATION_CARD_HEADER_CLASS; exports.ORGANIZATION_CARD_TEXT_CLASS = ORGANIZATION_CARD_TEXT_CLASS; exports.ORGANIZATION_CARD_DESCRIPTION_CLASS = ORGANIZATION_CARD_DESCRIPTION_CLASS; exports.ORGANIZATION_CARD_FOOTER_CLASS = ORGANIZATION_CARD_FOOTER_CLASS; exports.ORGANIZATION_CARD_STATS_CLASS = ORGANIZATION_CARD_STATS_CLASS; exports.ORGANIZATION_CARD_STAT_CLASS = ORGANIZATION_CARD_STAT_CLASS; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DATA_TABLE_ROW_FRAME_CLASS = DATA_TABLE_ROW_FRAME_CLASS; exports.ROW_STACK_CLASSES = ROW_STACK_CLASSES; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableHeader = QueryReportTableHeader; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.dataTableLoadingRows = dataTableLoadingRows; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.PasswordInput = PasswordInput; exports.AccountDetailsFields = AccountDetailsFields; exports.TRIAL_TERM_ICONS = TRIAL_TERM_ICONS; exports.DEFAULT_TRIAL_TERMS = DEFAULT_TRIAL_TERMS; exports.trialBenefits = trialBenefits; exports.BenefitList = BenefitList; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.CompactAuthShell = CompactAuthShell; exports.LabeledDivider = LabeledDivider; exports.PROVIDER_META = PROVIDER_META; exports.SSO_PROVIDERS_SKELETON_COUNT = SSO_PROVIDERS_SKELETON_COUNT; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.PolicyLink = PolicyLink; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LegalLinks = LegalLinks; exports.LoginForm = LoginForm; exports.NoAccountNotice = NoAccountNotice; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.SsoJoinForm = SsoJoinForm; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.ENTITY_TAG_BADGES_SKELETON_COUNT = ENTITY_TAG_BADGES_SKELETON_COUNT; exports.ENTITY_TAG_BADGES_PHONE_CAP = ENTITY_TAG_BADGES_PHONE_CAP; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.useMediaIntake = useMediaIntake; exports.MediaUploadArea = MediaUploadArea; exports.MediaGalleryManager = MediaGalleryManager; exports.PushButtonSelector = PushButtonSelector; exports.MODEL_TOKEN_RATES_COPY = MODEL_TOKEN_RATES_COPY; exports.ModelTokenRates = ModelTokenRates; exports.ModelTokenRatesPopover = ModelTokenRatesPopover; exports.ModelTokenRatesUnavailable = ModelTokenRatesUnavailable; exports.MODEL_TOKEN_EXCHANGE_BALANCE = MODEL_TOKEN_EXCHANGE_BALANCE; exports.MODEL_TOKEN_EXCHANGE_RANGE = MODEL_TOKEN_EXCHANGE_RANGE; exports.ModelTokenExchange = ModelTokenExchange; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PATHS_DISPLAY_SKELETON_ROWS = PATHS_DISPLAY_SKELETON_ROWS; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.siteNavSocialLinks = siteNavSocialLinks; exports.socialIcon = socialIcon; exports.socialIconRowClass = socialIconRowClass; exports.socialIconButtonProps = socialIconButtonProps; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.STATUS_FILTER_SKELETON_PILLS = STATUS_FILTER_SKELETON_PILLS; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.InlineWalkthroughVideo = InlineWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.APPROVAL_LEVELS = APPROVAL_LEVELS; exports.APPROVAL_LEVEL_META = APPROVAL_LEVEL_META; exports.ApprovalLevelView = ApprovalLevelView; exports.POLICY_CONFIGURATION_PANEL_SKELETON_CATEGORIES = POLICY_CONFIGURATION_PANEL_SKELETON_CATEGORIES; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PoliciesTable = PoliciesTable; exports.PolicySummaryCards = PolicySummaryCards; exports.POLICY_STATUS_CONFIG = POLICY_STATUS_CONFIG; exports.getPolicyStatus = getPolicyStatus; exports.getPolicyTableStatus = getPolicyTableStatus; exports.computePolicySummary = computePolicySummary; exports.TENANT_EMPTY_VALUE = TENANT_EMPTY_VALUE; exports.accessStateTag = accessStateTag; exports.providerMark = providerMark2; exports.lastReadAt = lastReadAt; exports.formatLastRead = formatLastRead; exports.usersCountLabel = usersCountLabel; exports.TenantAccessCell = TenantAccessCell; exports.TenantCell = TenantCell; exports.TenantCustomerCell = TenantCustomerCell; exports.TENANT_COLUMNS = TENANT_COLUMNS; exports.TENANTS_TABLE_COLUMNS = TENANTS_TABLE_COLUMNS; exports.TenantsTableView = TenantsTableView; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.notificationCategoryIcon = notificationCategoryIcon; exports.NotificationPopups = NotificationPopups; exports.TICKET_APPROVAL_REQUEST_TYPE = TICKET_APPROVAL_REQUEST_TYPE; exports.MINGO_APPROVAL_REQUEST_TYPE = MINGO_APPROVAL_REQUEST_TYPE; exports.isApprovalNotificationType = isApprovalNotificationType; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.formatLastOnline = formatLastOnline; exports.getDeviceName = getDeviceName; exports.matchesDeviceName = matchesDeviceName; exports.DevicesViewConfigProvider = DevicesViewConfigProvider; exports.useDevicesViewConfig = useDevicesViewConfig; exports.useDeviceImageUrl = useDeviceImageUrl; exports.DeviceSelectionModeRadio = DeviceSelectionModeRadio; exports.getDeviceStatusConfig = getDeviceStatusConfig; exports.getDeviceOperatingSystem = getDeviceOperatingSystem; exports.DEVICE_STATUS = DEVICE_STATUS; exports.DEFAULT_VISIBLE_STATUSES = DEFAULT_VISIBLE_STATUSES; exports.DEFAULT_DASHBOARD_STATUSES = DEFAULT_DASHBOARD_STATUSES; exports.DEFAULT_DEVICES_LIST_STATUSES = DEFAULT_DEVICES_LIST_STATUSES; exports.DEVICE_ENRICHMENT_STATUSES = DEVICE_ENRICHMENT_STATUSES; exports.DEVICE_ENRICHMENT_FILTER = DEVICE_ENRICHMENT_FILTER; exports.HIDDEN_DEVICE_STATUSES = HIDDEN_DEVICE_STATUSES; exports.renderDeviceTypeIcon = renderDeviceTypeIcon; exports.DeviceTypeTile = DeviceTypeTile; exports.DeviceTagsFilterButton = DeviceTagsFilterButton; exports.DevicesFilterToolbar = DevicesFilterToolbar; exports.CountPill = CountPill; exports.unreadNotificationsLabel = unreadNotificationsLabel; exports.UnreadNotificationsIndicator = UnreadNotificationsIndicator; exports.DeviceUnreadIndicator = DeviceUnreadIndicator; exports.getDeviceActionsColumn = getDeviceActionsColumn; exports.getDeviceOpenColumn = getDeviceOpenColumn; exports.DevicesTableBody = DevicesTableBody; exports.getDeviceFilterColumns = getDeviceFilterColumns; exports.getDeviceTableColumns = getDeviceTableColumns; exports.useTagFilterModal = useTagFilterModal; exports.DeviceSelector = DeviceSelector; exports.EMPTY_NARROWING = EMPTY_NARROWING; exports.narrowingToFilter = narrowingToFilter; exports.DevicesGrid = DevicesGrid; exports.DevicesGridFilters = DevicesGridFilters; exports.EMPTY_DEVICES_NARROWING = EMPTY_DEVICES_NARROWING; exports.isNarrowed = isNarrowed; exports.DevicesList = DevicesList; exports.DEVICE_VIEW_MODE_ITEMS = DEVICE_VIEW_MODE_ITEMS; exports.buildDevicePanelActions = buildDevicePanelActions; exports.IDLE_DEVICES_TOOLBAR = IDLE_DEVICES_TOOLBAR; exports.DevicesPanelView = DevicesPanelView; exports.PACKAGE_MANAGERS = PACKAGE_MANAGERS; exports.PACKAGE_MANAGER_LABEL = PACKAGE_MANAGER_LABEL; exports.PACKAGE_MANAGER_ICON = PACKAGE_MANAGER_ICON; exports.PACKAGE_MANAGER_OS = PACKAGE_MANAGER_OS; exports.packageManagerLabel = packageManagerLabel; exports.SOFTWARE_SOURCE_LABEL = SOFTWARE_SOURCE_LABEL; exports.PACKAGE_SEARCH_LABEL = PACKAGE_SEARCH_LABEL; exports.PACKAGE_SEARCH_PLACEHOLDER = PACKAGE_SEARCH_PLACEHOLDER; exports.PackageSearchFieldPlaceholder = PackageSearchFieldPlaceholder; exports.SoftwareScheduleFields = SoftwareScheduleFields; exports.SOFTWARE_ACTION_COPY = SOFTWARE_ACTION_COPY; exports.SOFTWARE_ACTION_DETAIL_TITLE = SOFTWARE_ACTION_DETAIL_TITLE; exports.softwareActionCopy = softwareActionCopy; exports.newSoftwareRow = newSoftwareRow; exports.SoftwareRowFields = SoftwareRowFields; exports.SOFTWARE_UPDATE_DEADLINE_OPTIONS = SOFTWARE_UPDATE_DEADLINE_OPTIONS; exports.SOFTWARE_UPDATE_COUNTDOWN_OPTIONS = SOFTWARE_UPDATE_COUNTDOWN_OPTIONS; exports.DEFAULT_SOFTWARE_UPDATE_POLICY = DEFAULT_SOFTWARE_UPDATE_POLICY; exports.DEFAULT_SOFTWARE_UPDATE_SETTINGS = DEFAULT_SOFTWARE_UPDATE_SETTINGS; exports.SoftwareUpdateSettingsFields = SoftwareUpdateSettingsFields; exports.SoftwareActionForm = SoftwareActionForm; exports.LogDrawer = LogDrawer; exports.SYSTEM_SOURCE_LABEL = SYSTEM_SOURCE_LABEL; exports.logSourceLabels = logSourceLabels; exports.LogsPageView = LogsPageView; exports.LogCopyIconButton = LogCopyIconButton; exports.LOG_COLUMN_WIDTHS = LOG_COLUMN_WIDTHS; exports.TOOL_CHIP_HEIGHT = TOOL_CHIP_HEIGHT; exports.ToolBadge = ToolBadge; exports.LogsTableView = LogsTableView; exports.logSeverityVariant = logSeverityVariant; exports.SCRIPT_EXECUTION_STATUS_PRESENTATION = SCRIPT_EXECUTION_STATUS_PRESENTATION; exports.scriptExecutionStatus = scriptExecutionStatus; exports.ExecutionSourceBadge = ExecutionSourceBadge; exports.ExecutionTimestampCell = ExecutionTimestampCell; exports.ExecutionStatusCell = ExecutionStatusCell; exports.ExecutionDeviceCell = ExecutionDeviceCell; exports.ExecutionInitiatorCell = ExecutionInitiatorCell; exports.ExecutionResultCell = ExecutionResultCell; exports.ScriptExecutionResult = ScriptExecutionResult; exports.ScriptNameCell = ScriptNameCell; exports.ScheduleDateTimeCell = ScheduleDateTimeCell; exports.SCRIPT_COLUMNS = SCRIPT_COLUMNS; exports.SCHEDULE_COLUMNS = SCHEDULE_COLUMNS; exports.EXECUTION_COLUMNS = EXECUTION_COLUMNS; exports.SCRIPTS_TAB_WIDTHS = SCRIPTS_TAB_WIDTHS; exports.SCRIPTS_TABLE_COLUMNS = SCRIPTS_TABLE_COLUMNS; exports.SCHEDULES_TABLE_COLUMNS = SCHEDULES_TABLE_COLUMNS; exports.EXECUTIONS_TABLE_COLUMNS = EXECUTIONS_TABLE_COLUMNS; exports.scriptsColumnMeta = scriptsColumnMeta; exports.RowActionsCell = RowActionsCell; exports.OpenInNewTabCell = OpenInNewTabCell; exports.ScriptExecutionsTable = ScriptExecutionsTable; exports.ScriptSchedulesTable = ScriptSchedulesTable; exports.SCRIPT_SHELL_TYPES = SCRIPT_SHELL_TYPES; exports.scriptShellType = scriptShellType; exports.scriptShellLabel = scriptShellLabel; exports.ScriptShellBadge = ScriptShellBadge; exports.ScriptsTable = ScriptsTable; exports.SCRIPTS_TABS = SCRIPTS_TABS; exports.SCRIPT_SCHEDULE_TRIGGER = SCRIPT_SCHEDULE_TRIGGER; exports.SCHEDULE_TIME_REFERENCE = SCHEDULE_TIME_REFERENCE; exports.SCHEDULE_OFFLINE_BEHAVIOR = SCHEDULE_OFFLINE_BEHAVIOR; exports.isEventTrigger = isEventTrigger; exports.isDeviceLocalTime = isDeviceLocalTime; exports.DURATION_UNIT_VALUES = DURATION_UNIT_VALUES; exports.DURATION_UNIT_SECONDS = DURATION_UNIT_SECONDS; exports.DURATION_UNIT_LABELS = DURATION_UNIT_LABELS; exports.MIN_REPEAT_MINUTES = MIN_REPEAT_MINUTES; exports.DURATION_UNIT_OPTIONS = DURATION_UNIT_OPTIONS; exports.snapRepeatInterval = snapRepeatInterval; exports.isRetryOnReconnect = isRetryOnReconnect; exports.MIN_RECONNECT_MINUTES = MIN_RECONNECT_MINUTES; exports.snapReconnectInterval = snapReconnectInterval; exports.DEFAULT_RECONNECT_WINDOW = DEFAULT_RECONNECT_WINDOW; exports.isSlotOnGrid = isSlotOnGrid; exports.getTimeSlotOptions = getTimeSlotOptions; exports.slotToLabel = slotToLabel; exports.startOfToday = startOfToday; exports.earliestDeviceLocalDay = earliestDeviceLocalDay; exports.earliestScheduleDay = earliestScheduleDay; exports.isScheduleStartInPast = isScheduleStartInPast; exports.PAST_START_MESSAGE = PAST_START_MESSAGE; exports.NO_SLOTS_TODAY_MESSAGE = NO_SLOTS_TODAY_MESSAGE; exports.isStartInPastAndChanged = isStartInPastAndChanged; exports.dateToTimeSlot = dateToTimeSlot; exports.applyTimeSlot = applyTimeSlot; exports.fromScheduleInstant = fromScheduleInstant; exports.EMPTY_SCHEDULE_SCRIPT_ROW = EMPTY_SCHEDULE_SCRIPT_ROW; exports.SCHEDULE_TRIGGER_OPTIONS = SCHEDULE_TRIGGER_OPTIONS; exports.SCHEDULE_TIME_REFERENCE_OPTIONS = SCHEDULE_TIME_REFERENCE_OPTIONS; exports.SCHEDULE_OFFLINE_BEHAVIOR_OPTIONS = SCHEDULE_OFFLINE_BEHAVIOR_OPTIONS; exports.DEFAULT_SCHEDULE_FORM_VALUES = DEFAULT_SCHEDULE_FORM_VALUES; exports.ScheduleIntervalInput = ScheduleIntervalInput; exports.ScheduleOfflineFields = ScheduleOfflineFields; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableList = SortableList; exports.ScriptArguments = ScriptArguments; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.ScheduleScriptPickerCard = ScheduleScriptPickerCard; exports.ScheduleScriptsField = ScheduleScriptsField; exports.ScheduleTimingFields = ScheduleTimingFields; exports.ScheduleFormFields = ScheduleFormFields; exports.ScheduleScriptSearchField = ScheduleScriptSearchField; exports.KNOWLEDGE_BASE_ITEM_ICON = KNOWLEDGE_BASE_ITEM_ICON; exports.getKnowledgeBaseOpenColumn = getKnowledgeBaseOpenColumn; exports.getKnowledgeBaseColumns = getKnowledgeBaseColumns; exports.KnowledgeBaseTableBody = KnowledgeBaseTableBody; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.KnowledgeBaseArticleView = KnowledgeBaseArticleView; exports.SortableDragHandle = SortableDragHandle; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TICKET_STATUS_CONFIG_LIST_SKELETON_ROWS = TICKET_STATUS_CONFIG_LIST_SKELETON_ROWS; exports.TicketStatusConfigList = TicketStatusConfigList; exports.CONVERSATION_CARD_AVATAR_PX = CONVERSATION_CARD_AVATAR_PX; exports.ConversationCard = ConversationCard; exports.SNAP_CAROUSEL_GAP_PX = SNAP_CAROUSEL_GAP_PX; exports.SNAP_CAROUSEL_TRACK_CLASS = SNAP_CAROUSEL_TRACK_CLASS; exports.SnapCarouselSlide = SnapCarouselSlide; exports.SnapCarouselControls = SnapCarouselControls; exports.SnapCarousel = SnapCarousel; exports.capabilityTabId = capabilityTabId; exports.CapabilityExplorer = CapabilityExplorer; exports.DataTableHeader = DataTableHeader; exports.DATA_TABLE_HEADER_LABEL_CLASS = DATA_TABLE_HEADER_LABEL_CLASS; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownLinkDialog = MarkdownLinkDialog; exports.useMarkdownLinkCommand = useMarkdownLinkCommand; exports.MarkdownEditorFieldSkeleton = MarkdownEditorFieldSkeleton; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.withTicketAssigneeAvatars = withTicketAssigneeAvatars; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoWallRequestWidth = photoWallRequestWidth; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PRODUCT_SCREEN_DESIGN_WIDTH = PRODUCT_SCREEN_DESIGN_WIDTH; exports.PRODUCT_SCREEN_READABLE_WIDTH = PRODUCT_SCREEN_READABLE_WIDTH; exports.PRODUCT_SCREEN_SCALE_FROM = PRODUCT_SCREEN_SCALE_FROM; exports.ProductScreenFrame = ProductScreenFrame; exports.PhoneFrame = PhoneFrame; exports.NotificationStack = NotificationStack; exports.StripCard = StripCard; exports.LeaderRow = LeaderRow; exports.AnalyzingState = AnalyzingState; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.SuperUserBannerView = SuperUserBannerView; exports.IconTile = IconTile;
34887
+ exports.AllowedDomainsInput = AllowedDomainsInput; exports.ANNOUNCEMENT_BAR_HEIGHT_CLASS = ANNOUNCEMENT_BAR_HEIGHT_CLASS; exports.AnnouncementBarView = AnnouncementBarView; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.DatePickerCalendar = DatePickerCalendar; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.JsonDetailList = JsonDetailList; exports.PROGRESS_BAR_HEIGHT = PROGRESS_BAR_HEIGHT; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.SearchableSelect = SearchableSelect; exports.AssigneeDropdown = AssigneeDropdown; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoDataMessage = NoDataMessage; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RADIO_GROUP_BLOCK_SKELETON_OPTIONS = RADIO_GROUP_BLOCK_SKELETON_OPTIONS; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TAGS_INPUT_CLASS = TAGS_INPUT_CLASS; exports.TAGS_INPUT_ROW_CLASS = TAGS_INPUT_ROW_CLASS; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.TEXTAREA_BOX_CLASS = TEXTAREA_BOX_CLASS; exports.textareaBoxHeight = textareaBoxHeight; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormDrawer = AdminFormDrawer; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigationVariantProvider = TabNavigationVariantProvider; exports.TAB_AVATAR_PX = TAB_AVATAR_PX; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.previewFadeMask = previewFadeMask; exports.FADE_PREVIEW_MAX_UNMEASURED_ITEMS = FADE_PREVIEW_MAX_UNMEASURED_ITEMS; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.ClaudeEmbed = ClaudeEmbed; exports.FigmaEmbed = FigmaEmbed; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.MarkdownImage = MarkdownImage; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.MediaCarousel = MediaCarousel; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.AppStoreBadge = AppStoreBadge; exports.GooglePlayBadge = GooglePlayBadge; exports.StoreBadgeLinks = StoreBadgeLinks; exports.MobileAppQr = MobileAppQr; exports.StatusIndicator = StatusIndicator; exports.DATA_SYNC_SOURCES = DATA_SYNC_SOURCES; exports.isDataSyncSource = isDataSyncSource; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PageShell = PageShell; exports.PageMain = PageMain; exports.ArticleDetailLayout = ArticleDetailLayout; exports.TOGGLE_SIZE_CLASS = TOGGLE_SIZE_CLASS; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.StepArrowButton = StepArrowButton; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.DataAttribution = DataAttribution; exports.DataSyncLine = DataSyncLine; exports.DownloadButton = DownloadButton; exports.COMPLIANCE_LOGO_SIZE_CLASS = COMPLIANCE_LOGO_SIZE_CLASS; exports.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.StepNumber = StepNumber; exports.NumberedStep = NumberedStep; exports.FEATURE_LIST_SKELETON_COUNT = FEATURE_LIST_SKELETON_COUNT; exports.FeatureList = FeatureList; exports.formatTrendChange = formatTrendChange; exports.TREND_TONES = TREND_TONES; exports.trendTone = trendTone; exports.trendToneClass = trendToneClass; exports.trendlinePoints = trendlinePoints; exports.Trendline = Trendline; exports.TrendHistory = TrendHistory; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.ORGANIZATION_CARD_RADIUS_CLASS = ORGANIZATION_CARD_RADIUS_CLASS; exports.ORGANIZATION_CARD_LAYOUT_CLASS = ORGANIZATION_CARD_LAYOUT_CLASS; exports.ORGANIZATION_CARD_SURFACE_CLASS = ORGANIZATION_CARD_SURFACE_CLASS; exports.ORGANIZATION_CARD_HEADER_CLASS = ORGANIZATION_CARD_HEADER_CLASS; exports.ORGANIZATION_CARD_TEXT_CLASS = ORGANIZATION_CARD_TEXT_CLASS; exports.ORGANIZATION_CARD_DESCRIPTION_CLASS = ORGANIZATION_CARD_DESCRIPTION_CLASS; exports.ORGANIZATION_CARD_FOOTER_CLASS = ORGANIZATION_CARD_FOOTER_CLASS; exports.ORGANIZATION_CARD_STATS_CLASS = ORGANIZATION_CARD_STATS_CLASS; exports.ORGANIZATION_CARD_STAT_CLASS = ORGANIZATION_CARD_STAT_CLASS; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DATA_TABLE_ROW_FRAME_CLASS = DATA_TABLE_ROW_FRAME_CLASS; exports.ROW_STACK_CLASSES = ROW_STACK_CLASSES; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableHeader = QueryReportTableHeader; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.dataTableLoadingRows = dataTableLoadingRows; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.PasswordInput = PasswordInput; exports.AccountDetailsFields = AccountDetailsFields; exports.TRIAL_TERM_ICONS = TRIAL_TERM_ICONS; exports.DEFAULT_TRIAL_TERMS = DEFAULT_TRIAL_TERMS; exports.trialBenefits = trialBenefits; exports.BenefitList = BenefitList; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.CompactAuthShell = CompactAuthShell; exports.LabeledDivider = LabeledDivider; exports.PROVIDER_META = PROVIDER_META; exports.SSO_PROVIDERS_SKELETON_COUNT = SSO_PROVIDERS_SKELETON_COUNT; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.PolicyLink = PolicyLink; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LegalLinks = LegalLinks; exports.LoginForm = LoginForm; exports.NoAccountNotice = NoAccountNotice; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.SsoJoinForm = SsoJoinForm; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.ENTITY_TAG_BADGES_SKELETON_COUNT = ENTITY_TAG_BADGES_SKELETON_COUNT; exports.ENTITY_TAG_BADGES_PHONE_CAP = ENTITY_TAG_BADGES_PHONE_CAP; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.useMediaIntake = useMediaIntake; exports.MediaUploadArea = MediaUploadArea; exports.MediaGalleryManager = MediaGalleryManager; exports.PushButtonSelector = PushButtonSelector; exports.MODEL_TOKEN_RATES_COPY = MODEL_TOKEN_RATES_COPY; exports.ModelTokenRates = ModelTokenRates; exports.ModelTokenRatesPopover = ModelTokenRatesPopover; exports.ModelTokenRatesUnavailable = ModelTokenRatesUnavailable; exports.MODEL_TOKEN_EXCHANGE_BALANCE = MODEL_TOKEN_EXCHANGE_BALANCE; exports.MODEL_TOKEN_EXCHANGE_RANGE = MODEL_TOKEN_EXCHANGE_RANGE; exports.ModelTokenExchange = ModelTokenExchange; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PATHS_DISPLAY_SKELETON_ROWS = PATHS_DISPLAY_SKELETON_ROWS; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.siteNavSocialLinks = siteNavSocialLinks; exports.socialIcon = socialIcon; exports.socialIconRowClass = socialIconRowClass; exports.socialIconButtonProps = socialIconButtonProps; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.STATUS_FILTER_SKELETON_PILLS = STATUS_FILTER_SKELETON_PILLS; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.InlineWalkthroughVideo = InlineWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.APPROVAL_LEVELS = APPROVAL_LEVELS; exports.APPROVAL_LEVEL_META = APPROVAL_LEVEL_META; exports.ApprovalLevelView = ApprovalLevelView; exports.POLICY_CONFIGURATION_PANEL_SKELETON_CATEGORIES = POLICY_CONFIGURATION_PANEL_SKELETON_CATEGORIES; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PoliciesTable = PoliciesTable; exports.PolicySummaryCards = PolicySummaryCards; exports.POLICY_STATUS_CONFIG = POLICY_STATUS_CONFIG; exports.getPolicyStatus = getPolicyStatus; exports.getPolicyTableStatus = getPolicyTableStatus; exports.computePolicySummary = computePolicySummary; exports.TENANT_EMPTY_VALUE = TENANT_EMPTY_VALUE; exports.accessStateTag = accessStateTag; exports.providerMark = providerMark2; exports.lastReadAt = lastReadAt; exports.formatLastRead = formatLastRead; exports.usersCountLabel = usersCountLabel; exports.TenantAccessCell = TenantAccessCell; exports.TenantCell = TenantCell; exports.TenantCustomerCell = TenantCustomerCell; exports.TENANT_COLUMNS = TENANT_COLUMNS; exports.TENANTS_TABLE_COLUMNS = TENANTS_TABLE_COLUMNS; exports.TenantsTableView = TenantsTableView; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.notificationCategoryIcon = notificationCategoryIcon; exports.NotificationPopups = NotificationPopups; exports.TICKET_APPROVAL_REQUEST_TYPE = TICKET_APPROVAL_REQUEST_TYPE; exports.MINGO_APPROVAL_REQUEST_TYPE = MINGO_APPROVAL_REQUEST_TYPE; exports.isApprovalNotificationType = isApprovalNotificationType; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.formatLastOnline = formatLastOnline; exports.getDeviceName = getDeviceName; exports.matchesDeviceName = matchesDeviceName; exports.DevicesViewConfigProvider = DevicesViewConfigProvider; exports.useDevicesViewConfig = useDevicesViewConfig; exports.useDeviceImageUrl = useDeviceImageUrl; exports.DeviceSelectionModeRadio = DeviceSelectionModeRadio; exports.getDeviceStatusConfig = getDeviceStatusConfig; exports.getDeviceOperatingSystem = getDeviceOperatingSystem; exports.DEVICE_STATUS = DEVICE_STATUS; exports.DEFAULT_VISIBLE_STATUSES = DEFAULT_VISIBLE_STATUSES; exports.DEFAULT_DASHBOARD_STATUSES = DEFAULT_DASHBOARD_STATUSES; exports.DEFAULT_DEVICES_LIST_STATUSES = DEFAULT_DEVICES_LIST_STATUSES; exports.DEVICE_ENRICHMENT_STATUSES = DEVICE_ENRICHMENT_STATUSES; exports.DEVICE_ENRICHMENT_FILTER = DEVICE_ENRICHMENT_FILTER; exports.HIDDEN_DEVICE_STATUSES = HIDDEN_DEVICE_STATUSES; exports.renderDeviceTypeIcon = renderDeviceTypeIcon; exports.DeviceTypeTile = DeviceTypeTile; exports.DeviceTagsFilterButton = DeviceTagsFilterButton; exports.DevicesFilterToolbar = DevicesFilterToolbar; exports.CountPill = CountPill; exports.unreadNotificationsLabel = unreadNotificationsLabel; exports.UnreadNotificationsIndicator = UnreadNotificationsIndicator; exports.DeviceUnreadIndicator = DeviceUnreadIndicator; exports.getDeviceActionsColumn = getDeviceActionsColumn; exports.getDeviceOpenColumn = getDeviceOpenColumn; exports.DevicesTableBody = DevicesTableBody; exports.getDeviceFilterColumns = getDeviceFilterColumns; exports.getDeviceTableColumns = getDeviceTableColumns; exports.useTagFilterModal = useTagFilterModal; exports.DeviceSelector = DeviceSelector; exports.EMPTY_NARROWING = EMPTY_NARROWING; exports.narrowingToFilter = narrowingToFilter; exports.DevicesGrid = DevicesGrid; exports.DevicesGridFilters = DevicesGridFilters; exports.EMPTY_DEVICES_NARROWING = EMPTY_DEVICES_NARROWING; exports.isNarrowed = isNarrowed; exports.DevicesList = DevicesList; exports.DEVICE_VIEW_MODE_ITEMS = DEVICE_VIEW_MODE_ITEMS; exports.buildDevicePanelActions = buildDevicePanelActions; exports.IDLE_DEVICES_TOOLBAR = IDLE_DEVICES_TOOLBAR; exports.DevicesPanelView = DevicesPanelView; exports.PACKAGE_MANAGERS = PACKAGE_MANAGERS; exports.PACKAGE_MANAGER_LABEL = PACKAGE_MANAGER_LABEL; exports.PACKAGE_MANAGER_ICON = PACKAGE_MANAGER_ICON; exports.PACKAGE_MANAGER_OS = PACKAGE_MANAGER_OS; exports.packageManagerLabel = packageManagerLabel; exports.SOFTWARE_SOURCE_LABEL = SOFTWARE_SOURCE_LABEL; exports.PACKAGE_SEARCH_LABEL = PACKAGE_SEARCH_LABEL; exports.PACKAGE_SEARCH_PLACEHOLDER = PACKAGE_SEARCH_PLACEHOLDER; exports.PackageSearchFieldPlaceholder = PackageSearchFieldPlaceholder; exports.SoftwareScheduleFields = SoftwareScheduleFields; exports.SOFTWARE_ACTION_COPY = SOFTWARE_ACTION_COPY; exports.SOFTWARE_ACTION_DETAIL_TITLE = SOFTWARE_ACTION_DETAIL_TITLE; exports.softwareActionCopy = softwareActionCopy; exports.newSoftwareRow = newSoftwareRow; exports.SoftwareRowFields = SoftwareRowFields; exports.SOFTWARE_UPDATE_DEADLINE_OPTIONS = SOFTWARE_UPDATE_DEADLINE_OPTIONS; exports.SOFTWARE_UPDATE_COUNTDOWN_OPTIONS = SOFTWARE_UPDATE_COUNTDOWN_OPTIONS; exports.DEFAULT_SOFTWARE_UPDATE_POLICY = DEFAULT_SOFTWARE_UPDATE_POLICY; exports.DEFAULT_SOFTWARE_UPDATE_SETTINGS = DEFAULT_SOFTWARE_UPDATE_SETTINGS; exports.defaultSoftwareUpdateSettings = defaultSoftwareUpdateSettings; exports.SoftwareUpdateSettingsFields = SoftwareUpdateSettingsFields; exports.SoftwareActionForm = SoftwareActionForm; exports.LogDrawer = LogDrawer; exports.SYSTEM_SOURCE_LABEL = SYSTEM_SOURCE_LABEL; exports.logSourceLabels = logSourceLabels; exports.LogsPageView = LogsPageView; exports.LogCopyIconButton = LogCopyIconButton; exports.LOG_COLUMN_WIDTHS = LOG_COLUMN_WIDTHS; exports.TOOL_CHIP_HEIGHT = TOOL_CHIP_HEIGHT; exports.ToolBadge = ToolBadge; exports.LogsTableView = LogsTableView; exports.logSeverityVariant = logSeverityVariant; exports.SCRIPT_EXECUTION_STATUS_PRESENTATION = SCRIPT_EXECUTION_STATUS_PRESENTATION; exports.scriptExecutionStatus = scriptExecutionStatus; exports.ExecutionSourceBadge = ExecutionSourceBadge; exports.ExecutionTimestampCell = ExecutionTimestampCell; exports.ExecutionStatusCell = ExecutionStatusCell; exports.ExecutionDeviceCell = ExecutionDeviceCell; exports.ExecutionInitiatorCell = ExecutionInitiatorCell; exports.ExecutionResultCell = ExecutionResultCell; exports.ScriptExecutionResult = ScriptExecutionResult; exports.ScriptNameCell = ScriptNameCell; exports.ScheduleDateTimeCell = ScheduleDateTimeCell; exports.SCRIPT_COLUMNS = SCRIPT_COLUMNS; exports.SCHEDULE_COLUMNS = SCHEDULE_COLUMNS; exports.EXECUTION_COLUMNS = EXECUTION_COLUMNS; exports.SCRIPTS_TAB_WIDTHS = SCRIPTS_TAB_WIDTHS; exports.SCRIPTS_TABLE_COLUMNS = SCRIPTS_TABLE_COLUMNS; exports.SCHEDULES_TABLE_COLUMNS = SCHEDULES_TABLE_COLUMNS; exports.EXECUTIONS_TABLE_COLUMNS = EXECUTIONS_TABLE_COLUMNS; exports.scriptsColumnMeta = scriptsColumnMeta; exports.RowActionsCell = RowActionsCell; exports.OpenInNewTabCell = OpenInNewTabCell; exports.ScriptExecutionsTable = ScriptExecutionsTable; exports.ScriptSchedulesTable = ScriptSchedulesTable; exports.SCRIPT_SHELL_TYPES = SCRIPT_SHELL_TYPES; exports.scriptShellType = scriptShellType; exports.scriptShellLabel = scriptShellLabel; exports.ScriptShellBadge = ScriptShellBadge; exports.ScriptsTable = ScriptsTable; exports.SCRIPTS_TABS = SCRIPTS_TABS; exports.SCRIPT_SCHEDULE_TRIGGER = SCRIPT_SCHEDULE_TRIGGER; exports.SCHEDULE_TIME_REFERENCE = SCHEDULE_TIME_REFERENCE; exports.SCHEDULE_OFFLINE_BEHAVIOR = SCHEDULE_OFFLINE_BEHAVIOR; exports.isEventTrigger = isEventTrigger; exports.isDeviceLocalTime = isDeviceLocalTime; exports.DURATION_UNIT_VALUES = DURATION_UNIT_VALUES; exports.DURATION_UNIT_SECONDS = DURATION_UNIT_SECONDS; exports.DURATION_UNIT_LABELS = DURATION_UNIT_LABELS; exports.MIN_REPEAT_MINUTES = MIN_REPEAT_MINUTES; exports.DURATION_UNIT_OPTIONS = DURATION_UNIT_OPTIONS; exports.snapRepeatInterval = snapRepeatInterval; exports.isRetryOnReconnect = isRetryOnReconnect; exports.MIN_RECONNECT_MINUTES = MIN_RECONNECT_MINUTES; exports.snapReconnectInterval = snapReconnectInterval; exports.DEFAULT_RECONNECT_WINDOW = DEFAULT_RECONNECT_WINDOW; exports.isSlotOnGrid = isSlotOnGrid; exports.getTimeSlotOptions = getTimeSlotOptions; exports.slotToLabel = slotToLabel; exports.startOfToday = startOfToday; exports.earliestDeviceLocalDay = earliestDeviceLocalDay; exports.earliestScheduleDay = earliestScheduleDay; exports.isScheduleStartInPast = isScheduleStartInPast; exports.PAST_START_MESSAGE = PAST_START_MESSAGE; exports.NO_SLOTS_TODAY_MESSAGE = NO_SLOTS_TODAY_MESSAGE; exports.isStartInPastAndChanged = isStartInPastAndChanged; exports.dateToTimeSlot = dateToTimeSlot; exports.applyTimeSlot = applyTimeSlot; exports.fromScheduleInstant = fromScheduleInstant; exports.EMPTY_SCHEDULE_SCRIPT_ROW = EMPTY_SCHEDULE_SCRIPT_ROW; exports.SCHEDULE_TRIGGER_OPTIONS = SCHEDULE_TRIGGER_OPTIONS; exports.SCHEDULE_TIME_REFERENCE_OPTIONS = SCHEDULE_TIME_REFERENCE_OPTIONS; exports.SCHEDULE_OFFLINE_BEHAVIOR_OPTIONS = SCHEDULE_OFFLINE_BEHAVIOR_OPTIONS; exports.DEFAULT_SCHEDULE_FORM_VALUES = DEFAULT_SCHEDULE_FORM_VALUES; exports.ScheduleIntervalInput = ScheduleIntervalInput; exports.ScheduleOfflineFields = ScheduleOfflineFields; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableList = SortableList; exports.ScriptArguments = ScriptArguments; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.ScheduleScriptPickerCard = ScheduleScriptPickerCard; exports.ScheduleScriptsField = ScheduleScriptsField; exports.ScheduleTimingFields = ScheduleTimingFields; exports.ScheduleFormFields = ScheduleFormFields; exports.ScheduleScriptSearchField = ScheduleScriptSearchField; exports.KNOWLEDGE_BASE_ITEM_ICON = KNOWLEDGE_BASE_ITEM_ICON; exports.getKnowledgeBaseOpenColumn = getKnowledgeBaseOpenColumn; exports.getKnowledgeBaseColumns = getKnowledgeBaseColumns; exports.KnowledgeBaseTableBody = KnowledgeBaseTableBody; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.KnowledgeBaseArticleView = KnowledgeBaseArticleView; exports.SortableDragHandle = SortableDragHandle; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TICKET_STATUS_CONFIG_LIST_SKELETON_ROWS = TICKET_STATUS_CONFIG_LIST_SKELETON_ROWS; exports.TicketStatusConfigList = TicketStatusConfigList; exports.CONVERSATION_CARD_AVATAR_PX = CONVERSATION_CARD_AVATAR_PX; exports.ConversationCard = ConversationCard; exports.SNAP_CAROUSEL_GAP_PX = SNAP_CAROUSEL_GAP_PX; exports.SNAP_CAROUSEL_TRACK_CLASS = SNAP_CAROUSEL_TRACK_CLASS; exports.SnapCarouselSlide = SnapCarouselSlide; exports.SnapCarouselControls = SnapCarouselControls; exports.SnapCarousel = SnapCarousel; exports.capabilityTabId = capabilityTabId; exports.CapabilityExplorer = CapabilityExplorer; exports.DataTableHeader = DataTableHeader; exports.DATA_TABLE_HEADER_LABEL_CLASS = DATA_TABLE_HEADER_LABEL_CLASS; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownLinkDialog = MarkdownLinkDialog; exports.useMarkdownLinkCommand = useMarkdownLinkCommand; exports.MarkdownEditorFieldSkeleton = MarkdownEditorFieldSkeleton; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.withTicketAssigneeAvatars = withTicketAssigneeAvatars; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoWallRequestWidth = photoWallRequestWidth; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PRODUCT_SCREEN_DESIGN_WIDTH = PRODUCT_SCREEN_DESIGN_WIDTH; exports.PRODUCT_SCREEN_READABLE_WIDTH = PRODUCT_SCREEN_READABLE_WIDTH; exports.PRODUCT_SCREEN_SCALE_FROM = PRODUCT_SCREEN_SCALE_FROM; exports.ProductScreenFrame = ProductScreenFrame; exports.PhoneFrame = PhoneFrame; exports.NotificationStack = NotificationStack; exports.StripCard = StripCard; exports.LeaderRow = LeaderRow; exports.AnalyzingState = AnalyzingState; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.SuperUserBannerView = SuperUserBannerView; exports.IconTile = IconTile;