@flamingo-stack/openframe-frontend-core 0.0.698-2527.7788.1 → 0.0.698

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 (142) hide show
  1. package/dist/{chunk-DMUUWHII.cjs → chunk-26GBOUIP.cjs} +92 -9
  2. package/dist/chunk-26GBOUIP.cjs.map +1 -0
  3. package/dist/{chunk-LJRMRHX3.js → chunk-2QESJBGE.js} +8 -8
  4. package/dist/{chunk-6FA7CKGO.cjs → chunk-3CFHHJKK.cjs} +3 -3
  5. package/dist/{chunk-6FA7CKGO.cjs.map → chunk-3CFHHJKK.cjs.map} +1 -1
  6. package/dist/{chunk-C36HIYNP.cjs → chunk-4FS56YZS.cjs} +681 -660
  7. package/dist/chunk-4FS56YZS.cjs.map +1 -0
  8. package/dist/{chunk-6JZJU3MT.cjs → chunk-55L6XDGC.cjs} +7 -7
  9. package/dist/{chunk-6JZJU3MT.cjs.map → chunk-55L6XDGC.cjs.map} +1 -1
  10. package/dist/{chunk-R6W6Q7LP.js → chunk-5VXVHYHC.js} +5 -5
  11. package/dist/{chunk-TQJCGJC3.cjs → chunk-676MGKZW.cjs} +5 -5
  12. package/dist/{chunk-TQJCGJC3.cjs.map → chunk-676MGKZW.cjs.map} +1 -1
  13. package/dist/{chunk-AUGTCILI.js → chunk-7QAT2DV5.js} +3 -3
  14. package/dist/{chunk-L4TUCNI2.js → chunk-AC6OEPUV.js} +6 -6
  15. package/dist/{chunk-G6ASUIGI.js → chunk-AXAGIZTZ.js} +21 -24
  16. package/dist/chunk-AXAGIZTZ.js.map +1 -0
  17. package/dist/{chunk-KAYOPKVW.cjs → chunk-BRTCMVBG.cjs} +15 -15
  18. package/dist/{chunk-KAYOPKVW.cjs.map → chunk-BRTCMVBG.cjs.map} +1 -1
  19. package/dist/{chunk-DBC5HYVO.cjs → chunk-BZHARMWU.cjs} +80 -80
  20. package/dist/{chunk-DBC5HYVO.cjs.map → chunk-BZHARMWU.cjs.map} +1 -1
  21. package/dist/{chunk-LXKEHZUV.cjs → chunk-COX4CSXZ.cjs} +466 -469
  22. package/dist/chunk-COX4CSXZ.cjs.map +1 -0
  23. package/dist/{chunk-AVRVYWCS.js → chunk-CXQTK6W3.js} +89 -6
  24. package/dist/chunk-CXQTK6W3.js.map +1 -0
  25. package/dist/{chunk-77DK66OI.cjs → chunk-FBXR26Q4.cjs} +50 -50
  26. package/dist/{chunk-77DK66OI.cjs.map → chunk-FBXR26Q4.cjs.map} +1 -1
  27. package/dist/{chunk-MRNN5TYM.js → chunk-FI7ZPOYQ.js} +27 -6
  28. package/dist/chunk-FI7ZPOYQ.js.map +1 -0
  29. package/dist/{chunk-UODSGUIM.js → chunk-FWVIDEOA.js} +2 -2
  30. package/dist/{chunk-OV6AUU2F.js → chunk-HNHKXOCZ.js} +7 -7
  31. package/dist/{chunk-DCKHFLXE.cjs → chunk-IRWS22CP.cjs} +22 -22
  32. package/dist/{chunk-DCKHFLXE.cjs.map → chunk-IRWS22CP.cjs.map} +1 -1
  33. package/dist/{chunk-SIQDC6VE.js → chunk-J3ZS6CRA.js} +4 -4
  34. package/dist/{chunk-ZYU3U3EI.js → chunk-J6ZEVCVN.js} +4 -4
  35. package/dist/{chunk-T3ZAMHEG.js → chunk-MOEOLUVD.js} +3 -3
  36. package/dist/{chunk-AHAZ6WLZ.cjs → chunk-OEX2WLZX.cjs} +10 -10
  37. package/dist/{chunk-AHAZ6WLZ.cjs.map → chunk-OEX2WLZX.cjs.map} +1 -1
  38. package/dist/{chunk-WCHS6P5U.js → chunk-R2XJXMAT.js} +6 -6
  39. package/dist/{chunk-DVDXCOTA.js → chunk-R4JFUVQ4.js} +3 -3
  40. package/dist/{chunk-UVRLSOEJ.js → chunk-TN2RFU6D.js} +113 -183
  41. package/dist/chunk-TN2RFU6D.js.map +1 -0
  42. package/dist/{chunk-MKOAFRVX.cjs → chunk-UXU4DROI.cjs} +12 -12
  43. package/dist/{chunk-MKOAFRVX.cjs.map → chunk-UXU4DROI.cjs.map} +1 -1
  44. package/dist/{chunk-VF37HVC4.cjs → chunk-VCEO6AGC.cjs} +18 -18
  45. package/dist/{chunk-VF37HVC4.cjs.map → chunk-VCEO6AGC.cjs.map} +1 -1
  46. package/dist/{chunk-UIWQO4OC.cjs → chunk-VO2FJ2AL.cjs} +36 -36
  47. package/dist/{chunk-UIWQO4OC.cjs.map → chunk-VO2FJ2AL.cjs.map} +1 -1
  48. package/dist/{chunk-COA3TIOD.js → chunk-VOSO3SC5.js} +5 -5
  49. package/dist/{chunk-W4YXUJOF.cjs → chunk-VP6PJLMI.cjs} +48 -118
  50. package/dist/chunk-VP6PJLMI.cjs.map +1 -0
  51. package/dist/{chunk-Z7OC25FG.cjs → chunk-VQEXKCFM.cjs} +5 -5
  52. package/dist/{chunk-Z7OC25FG.cjs.map → chunk-VQEXKCFM.cjs.map} +1 -1
  53. package/dist/{chunk-IMCBJOFN.cjs → chunk-X2W4ANCM.cjs} +43 -43
  54. package/dist/{chunk-IMCBJOFN.cjs.map → chunk-X2W4ANCM.cjs.map} +1 -1
  55. package/dist/{chunk-3WRN7VAD.js → chunk-YNBOPBO7.js} +4 -4
  56. package/dist/{chunk-LNUZHW4O.cjs → chunk-YRSPHPGO.cjs} +25 -25
  57. package/dist/{chunk-LNUZHW4O.cjs.map → chunk-YRSPHPGO.cjs.map} +1 -1
  58. package/dist/{chunk-HOZGKVRI.js → chunk-ZNJK5HOE.js} +2 -2
  59. package/dist/components/announcement-bar.d.ts.map +1 -1
  60. package/dist/components/case-studies/index.cjs +17 -17
  61. package/dist/components/case-studies/index.js +5 -5
  62. package/dist/components/chat/index.cjs +3 -3
  63. package/dist/components/chat/index.js +2 -2
  64. package/dist/components/contact/index.cjs +6 -6
  65. package/dist/components/contact/index.js +5 -5
  66. package/dist/components/docs/index.cjs +9 -9
  67. package/dist/components/docs/index.js +8 -8
  68. package/dist/components/embeds/index.cjs +6 -6
  69. package/dist/components/embeds/index.js +5 -5
  70. package/dist/components/faq/index.cjs +6 -6
  71. package/dist/components/faq/index.js +5 -5
  72. package/dist/components/features/cards-strip.d.ts.map +1 -1
  73. package/dist/components/features/index.cjs +5 -5
  74. package/dist/components/features/index.js +4 -4
  75. package/dist/components/help-center-pages/index.cjs +81 -81
  76. package/dist/components/help-center-pages/index.js +16 -16
  77. package/dist/components/index.cjs +48 -47
  78. package/dist/components/index.cjs.map +1 -1
  79. package/dist/components/index.js +17 -16
  80. package/dist/components/index.js.map +1 -1
  81. package/dist/components/meeting-scheduler/index.cjs +32 -32
  82. package/dist/components/meeting-scheduler/index.js +4 -4
  83. package/dist/components/navigation/index.cjs +8 -8
  84. package/dist/components/navigation/index.js +7 -7
  85. package/dist/components/onboarding-guides/index.cjs +8 -8
  86. package/dist/components/onboarding-guides/index.js +7 -7
  87. package/dist/components/tickets/index.cjs +9 -9
  88. package/dist/components/tickets/index.js +8 -8
  89. package/dist/components/ui/index.cjs +5 -5
  90. package/dist/components/ui/index.js +4 -4
  91. package/dist/components/ui/marquee-wall.d.ts.map +1 -1
  92. package/dist/hooks/index.cjs +5 -5
  93. package/dist/hooks/index.cjs.map +1 -1
  94. package/dist/hooks/index.js +7 -7
  95. package/dist/hooks/ui/use-in-view.d.ts +8 -1
  96. package/dist/hooks/ui/use-in-view.d.ts.map +1 -1
  97. package/dist/hooks/use-scenario-player.d.ts +3 -0
  98. package/dist/hooks/use-scenario-player.d.ts.map +1 -1
  99. package/dist/index.cjs +20 -14
  100. package/dist/index.cjs.map +1 -1
  101. package/dist/index.js +19 -13
  102. package/dist/index.js.map +1 -1
  103. package/dist/utils/index.cjs +21 -0
  104. package/dist/utils/index.cjs.map +1 -1
  105. package/dist/utils/index.d.ts +1 -0
  106. package/dist/utils/index.d.ts.map +1 -1
  107. package/dist/utils/index.js +19 -1
  108. package/dist/utils/index.js.map +1 -1
  109. package/dist/utils/path-pattern.d.ts +5 -0
  110. package/dist/utils/path-pattern.d.ts.map +1 -0
  111. package/package.json +1 -1
  112. package/src/components/announcement-bar.tsx +3 -2
  113. package/src/components/features/cards-strip.tsx +12 -11
  114. package/src/components/ui/marquee-wall.tsx +16 -14
  115. package/src/hooks/__tests__/use-scenario-player.test.tsx +48 -0
  116. package/src/hooks/ui/use-in-view.ts +15 -3
  117. package/src/hooks/use-scenario-player.ts +22 -2
  118. package/src/utils/__tests__/path-pattern.test.ts +30 -0
  119. package/src/utils/index.ts +1 -0
  120. package/src/utils/path-pattern.ts +31 -0
  121. package/dist/chunk-AVRVYWCS.js.map +0 -1
  122. package/dist/chunk-C36HIYNP.cjs.map +0 -1
  123. package/dist/chunk-DMUUWHII.cjs.map +0 -1
  124. package/dist/chunk-G6ASUIGI.js.map +0 -1
  125. package/dist/chunk-LXKEHZUV.cjs.map +0 -1
  126. package/dist/chunk-MRNN5TYM.js.map +0 -1
  127. package/dist/chunk-UVRLSOEJ.js.map +0 -1
  128. package/dist/chunk-W4YXUJOF.cjs.map +0 -1
  129. /package/dist/{chunk-LJRMRHX3.js.map → chunk-2QESJBGE.js.map} +0 -0
  130. /package/dist/{chunk-R6W6Q7LP.js.map → chunk-5VXVHYHC.js.map} +0 -0
  131. /package/dist/{chunk-AUGTCILI.js.map → chunk-7QAT2DV5.js.map} +0 -0
  132. /package/dist/{chunk-L4TUCNI2.js.map → chunk-AC6OEPUV.js.map} +0 -0
  133. /package/dist/{chunk-UODSGUIM.js.map → chunk-FWVIDEOA.js.map} +0 -0
  134. /package/dist/{chunk-OV6AUU2F.js.map → chunk-HNHKXOCZ.js.map} +0 -0
  135. /package/dist/{chunk-SIQDC6VE.js.map → chunk-J3ZS6CRA.js.map} +0 -0
  136. /package/dist/{chunk-ZYU3U3EI.js.map → chunk-J6ZEVCVN.js.map} +0 -0
  137. /package/dist/{chunk-T3ZAMHEG.js.map → chunk-MOEOLUVD.js.map} +0 -0
  138. /package/dist/{chunk-WCHS6P5U.js.map → chunk-R2XJXMAT.js.map} +0 -0
  139. /package/dist/{chunk-DVDXCOTA.js.map → chunk-R4JFUVQ4.js.map} +0 -0
  140. /package/dist/{chunk-COA3TIOD.js.map → chunk-VOSO3SC5.js.map} +0 -0
  141. /package/dist/{chunk-3WRN7VAD.js.map → chunk-YNBOPBO7.js.map} +0 -0
  142. /package/dist/{chunk-HOZGKVRI.js.map → chunk-ZNJK5HOE.js.map} +0 -0
@@ -23,9 +23,7 @@ var _chunkTON3YCCWcjs = require('./chunk-TON3YCCW.cjs');
23
23
 
24
24
 
25
25
 
26
-
27
-
28
- var _chunkW4YXUJOFcjs = require('./chunk-W4YXUJOF.cjs');
26
+ var _chunkVP6PJLMIcjs = require('./chunk-VP6PJLMI.cjs');
29
27
 
30
28
 
31
29
  var _chunkHT7SU5UNcjs = require('./chunk-HT7SU5UN.cjs');
@@ -97,7 +95,8 @@ var _chunkPTFE5WKPcjs = require('./chunk-PTFE5WKP.cjs');
97
95
 
98
96
 
99
97
 
100
- var _chunkLXKEHZUVcjs = require('./chunk-LXKEHZUV.cjs');
98
+ var _chunkCOX4CSXZcjs = require('./chunk-COX4CSXZ.cjs');
99
+
101
100
 
102
101
 
103
102
 
@@ -112,7 +111,8 @@ var _chunkLXKEHZUVcjs = require('./chunk-LXKEHZUV.cjs');
112
111
 
113
112
 
114
113
 
115
- var _chunkDMUUWHIIcjs = require('./chunk-DMUUWHII.cjs');
114
+
115
+ var _chunk26GBOUIPcjs = require('./chunk-26GBOUIP.cjs');
116
116
 
117
117
 
118
118
 
@@ -384,7 +384,7 @@ function ThemeProvider({ children, ...overrides }) {
384
384
  var useTheme = _nextthemes.useTheme;
385
385
  function useThemeToggle() {
386
386
  const { resolvedTheme, theme, setTheme } = useTheme();
387
- const mounted = _chunkLXKEHZUVcjs.useIsHydrated.call(void 0, );
387
+ const mounted = _chunkCOX4CSXZcjs.useIsHydrated.call(void 0, );
388
388
  const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
389
389
  const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
390
390
  const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
@@ -746,7 +746,7 @@ function AutocompleteInner(props, ref) {
746
746
  };
747
747
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
748
748
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
749
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
749
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
750
750
  const containerRef = _react.useRef.call(void 0, null);
751
751
  const hiddenTagsPopupRef = _react.useRef.call(void 0, null);
752
752
  const isInvalid = invalid || !!error;
@@ -764,7 +764,7 @@ function AutocompleteInner(props, ref) {
764
764
  textMeasureRef,
765
765
  badgeRef,
766
766
  inputRef
767
- } = _chunkW4YXUJOFcjs.useAutoLimitTags.call(void 0, {
767
+ } = _chunkVP6PJLMIcjs.useAutoLimitTags.call(void 0, {
768
768
  count: multiple ? selectedOptions.length : 0,
769
769
  limitTags: multiple ? limitTagsProp : 0,
770
770
  placeholder: inputPlaceholder
@@ -1597,7 +1597,7 @@ function DatePickerCalendar({
1597
1597
  onMonthChange
1598
1598
  }) {
1599
1599
  const today = /* @__PURE__ */ new Date();
1600
- const isMdUp = _nullishCoalesce(_chunkDMUUWHIIcjs.useMdUp.call(void 0, ), () => ( true));
1600
+ const isMdUp = _nullishCoalesce(_chunk26GBOUIPcjs.useMdUp.call(void 0, ), () => ( true));
1601
1601
  const monthsToShow = isMdUp ? numberOfMonths : 1;
1602
1602
  const [draftRange, setDraftRange] = _react.useState.call(void 0,
1603
1603
  mode === "range" ? selected : void 0
@@ -2659,7 +2659,7 @@ function Value2({ value, depth }) {
2659
2659
  }
2660
2660
  if (typeof value === "string") {
2661
2661
  if (ISO_DATE.test(value)) {
2662
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkLXKEHZUVcjs.formatRelativeTime.call(void 0, value) });
2662
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkCOX4CSXZcjs.formatRelativeTime.call(void 0, value) });
2663
2663
  }
2664
2664
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
2665
2665
  }
@@ -2725,7 +2725,7 @@ var ProgressBar = ({
2725
2725
  mobileHeight = 8,
2726
2726
  inverted = false
2727
2727
  }) => {
2728
- const isMdUp = _nullishCoalesce(_chunkDMUUWHIIcjs.useMdUp.call(void 0, ), () => ( true));
2728
+ const isMdUp = _nullishCoalesce(_chunk26GBOUIPcjs.useMdUp.call(void 0, ), () => ( true));
2729
2729
  const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
2730
2730
  const effectiveHeight = isMdUp ? height : mobileHeight;
2731
2731
  const containerRef = _react.useRef.call(void 0, null);
@@ -2841,7 +2841,7 @@ function InfoCardFooter({ footer }) {
2841
2841
  ] });
2842
2842
  }
2843
2843
  function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
2844
- const { copy, copied } = _chunkW4YXUJOFcjs.useCopyToClipboard.call(void 0, );
2844
+ const { copy, copied } = _chunkVP6PJLMIcjs.useCopyToClipboard.call(void 0, );
2845
2845
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 w-full items-center gap-[var(--spacing-system-xs)] self-stretch", children: [
2846
2846
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-primary text-h4", children: showLabel ? label : "" }),
2847
2847
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-divider" }),
@@ -2931,7 +2931,7 @@ function SearchableSelect({
2931
2931
  }) {
2932
2932
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
2933
2933
  const [search, setSearch] = _react.useState.call(void 0, "");
2934
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
2934
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
2935
2935
  if (!isOpen && search !== "") setSearch("");
2936
2936
  const filtered = _react.useMemo.call(void 0, () => {
2937
2937
  const q = search.trim().toLowerCase();
@@ -3291,7 +3291,7 @@ function RowValue({ value }) {
3291
3291
  }
3292
3292
  case "status": {
3293
3293
  const { type: _type, ...props } = value;
3294
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TicketStatusTag, { ...props });
3294
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TicketStatusTag, { ...props });
3295
3295
  }
3296
3296
  case "custom":
3297
3297
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
@@ -3807,7 +3807,7 @@ function TagSelectDropdown({
3807
3807
  }) {
3808
3808
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
3809
3809
  const [search, setSearch] = _react.useState.call(void 0, "");
3810
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
3810
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
3811
3811
  if (!isOpen && search !== "") setSearch("");
3812
3812
  const query = search.trim();
3813
3813
  const filtered = _react.useMemo.call(void 0, () => {
@@ -4099,7 +4099,7 @@ function TagsManager({
4099
4099
  }) {
4100
4100
  const [open, setOpen] = _react.useState.call(void 0, false);
4101
4101
  const [search, setSearch] = _react.useState.call(void 0, "");
4102
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
4102
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
4103
4103
  const [editingId, setEditingId] = _react.useState.call(void 0, null);
4104
4104
  const [editingName, setEditingName] = _react.useState.call(void 0, "");
4105
4105
  const editInputRef = _react.useRef.call(void 0, null);
@@ -4747,10 +4747,10 @@ function useConfirm() {
4747
4747
  },
4748
4748
  []
4749
4749
  );
4750
- const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
4751
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: pending.title }) }),
4752
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
4753
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: [
4750
+ const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
4751
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: pending.title }) }),
4752
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
4753
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: [
4754
4754
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
4755
4755
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
4756
4756
  ] })
@@ -4809,14 +4809,14 @@ function AdminFormDrawer({
4809
4809
  else onClose();
4810
4810
  };
4811
4811
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4812
- _chunkLXKEHZUVcjs.Drawer,
4812
+ _chunkCOX4CSXZcjs.Drawer,
4813
4813
  {
4814
4814
  open: isOpen,
4815
4815
  onOpenChange: (open) => {
4816
4816
  if (!open) requestClose();
4817
4817
  },
4818
4818
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4819
- _chunkLXKEHZUVcjs.DrawerContent,
4819
+ _chunkCOX4CSXZcjs.DrawerContent,
4820
4820
  {
4821
4821
  side: "right",
4822
4822
  resizable: true,
@@ -4825,11 +4825,11 @@ function AdminFormDrawer({
4825
4825
  storageKey,
4826
4826
  panelClassName: "max-md:w-[calc(100vw-1rem)]",
4827
4827
  children: [
4828
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.DrawerHeader, { children: [
4829
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.DrawerTitle, { children: title }),
4830
- subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
4828
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.DrawerHeader, { children: [
4829
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.DrawerTitle, { children: title }),
4830
+ subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
4831
4831
  ] }),
4832
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4832
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4833
4833
  "form",
4834
4834
  {
4835
4835
  id: formId,
@@ -4960,9 +4960,9 @@ function AdminFormModal({
4960
4960
  body: "Your edits have not been saved. Close and discard them?"
4961
4961
  });
4962
4962
  if (!isOpen) return null;
4963
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
4964
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: [
4965
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: title }),
4963
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
4964
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: [
4965
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: title }),
4966
4966
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
4967
4967
  ] }),
4968
4968
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -4987,7 +4987,7 @@ function AdminFormModal({
4987
4987
  // a shrink-to-fit flex item pinned to the left of a 1400px panel).
4988
4988
  // The placeholder owns its own layout and mirrors the column count so
4989
4989
  // the modal doesn't visibly re-flow when the entity lands.
4990
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4990
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4991
4991
  "div",
4992
4992
  {
4993
4993
  "aria-busy": "true",
@@ -5008,12 +5008,12 @@ function AdminFormModal({
5008
5008
  ]
5009
5009
  }
5010
5010
  ) })
5011
- ) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalContent, { className: contentClassName, children }),
5011
+ ) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalContent, { className: contentClassName, children }),
5012
5012
  error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
5013
5013
  ]
5014
5014
  }
5015
5015
  ),
5016
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
5016
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
5017
5017
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
5018
5018
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
5019
5019
  footerStatus,
@@ -6382,9 +6382,9 @@ var KIND_HEADING = {
6382
6382
  design: "Claude Design"
6383
6383
  };
6384
6384
  function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }) {
6385
- const { src: mirrorSrc, status } = _chunkW4YXUJOFcjs.useClaudeMirrorSrc.call(void 0, url);
6385
+ const { src: mirrorSrc, status } = _chunkVP6PJLMIcjs.useClaudeMirrorSrc.call(void 0, url);
6386
6386
  const isProbing = status === "probing";
6387
- const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkW4YXUJOFcjs.toClaudeEmbedUrl.call(void 0, url)));
6387
+ const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkVP6PJLMIcjs.toClaudeEmbedUrl.call(void 0, url)));
6388
6388
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6389
6389
  EmbedViewerFrame,
6390
6390
  {
@@ -6459,12 +6459,12 @@ function SlidesViewToggle({ view, onChange }) {
6459
6459
  }
6460
6460
  function FigmaEmbed({ url, title, height, loading = "lazy" }) {
6461
6461
  const [view, setView] = _react.useState.call(void 0, "present");
6462
- const isSlides = url ? _chunkW4YXUJOFcjs.isFigmaSlidesUrl.call(void 0, url) : false;
6463
- const embedSrc = url ? _chunkW4YXUJOFcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
6462
+ const isSlides = url ? _chunkVP6PJLMIcjs.isFigmaSlidesUrl.call(void 0, url) : false;
6463
+ const embedSrc = url ? _chunkVP6PJLMIcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
6464
6464
  const originalUrl = (() => {
6465
6465
  if (!url) return null;
6466
6466
  try {
6467
- const parsed = new URL(_chunkW4YXUJOFcjs.toFigmaOriginalUrl.call(void 0, url));
6467
+ const parsed = new URL(_chunkVP6PJLMIcjs.toFigmaOriginalUrl.call(void 0, url));
6468
6468
  const host = parsed.hostname.toLowerCase();
6469
6469
  const okHost = host === "figma.com" || host.endsWith(".figma.com");
6470
6470
  const okProtocol = parsed.protocol === "https:" || parsed.protocol === "http:";
@@ -7238,7 +7238,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
7238
7238
  };
7239
7239
  const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
7240
7240
  const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7241
- _chunkLXKEHZUVcjs.Video,
7241
+ _chunkCOX4CSXZcjs.Video,
7242
7242
  {
7243
7243
  url: item.src,
7244
7244
  poster: item.poster ? displayImageSrc(item.poster) : void 0,
@@ -7962,7 +7962,7 @@ function buildRichEmbedOverrides({
7962
7962
  ogEndpointPath,
7963
7963
  textSizes
7964
7964
  }) {
7965
- const standard = _chunkLXKEHZUVcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7965
+ const standard = _chunkCOX4CSXZcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7966
7966
  return {
7967
7967
  // Fence-language embeds (```youtube-embed etc.); everything else
7968
7968
  // (mermaid, highlighted blocks, inline code) falls through to `standard`.
@@ -7972,7 +7972,7 @@ function buildRichEmbedOverrides({
7972
7972
  const language = match ? match[1] : "";
7973
7973
  const fenceText = () => String(children).replace(/\n$/, "").trim();
7974
7974
  if (language === "youtube-embed") {
7975
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Video, { kind: "youtube", url: fenceText() });
7975
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Video, { kind: "youtube", url: fenceText() });
7976
7976
  }
7977
7977
  if (language === "reddit-embed") {
7978
7978
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
@@ -8013,7 +8013,7 @@ function buildRichEmbedOverrides({
8013
8013
  "data-figma-url": figmaUrl
8014
8014
  } = divProps;
8015
8015
  if (className === "youtube-embed" && videoId) {
8016
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Video, { kind: "youtube", url: videoId });
8016
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Video, { kind: "youtube", url: videoId });
8017
8017
  }
8018
8018
  if (className === "reddit-embed" && postUrl) {
8019
8019
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
@@ -8098,14 +8098,14 @@ function buildRichEmbedOverrides({
8098
8098
  // rich-markdown runtime (Supabase optimization on the hub, identity
8099
8099
  // elsewhere). Guard against empty `![]()`.
8100
8100
  img: ({ src, alt }) => {
8101
- if (!_chunkLXKEHZUVcjs.hasRenderableSrc.call(void 0, src)) return null;
8101
+ if (!_chunkCOX4CSXZcjs.hasRenderableSrc.call(void 0, src)) return null;
8102
8102
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
8103
8103
  },
8104
8104
  // Raw <video> tags in stored content (blog publisher injection) route
8105
8105
  // to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
8106
8106
  video: ({ src, poster, className }) => {
8107
- if (!_chunkLXKEHZUVcjs.hasRenderableSrc.call(void 0, src)) return null;
8108
- 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, _chunkLXKEHZUVcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
8107
+ if (!_chunkCOX4CSXZcjs.hasRenderableSrc.call(void 0, src)) return null;
8108
+ 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, _chunkCOX4CSXZcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
8109
8109
  }
8110
8110
  };
8111
8111
  }
@@ -8346,13 +8346,13 @@ var RichMarkdownInner = ({
8346
8346
  },
8347
8347
  [resolveLinkEndpointUrl, resolveSource]
8348
8348
  );
8349
- const textSizes = _react.useMemo.call(void 0, () => _chunkLXKEHZUVcjs.resolveTextSizeConfig.call(void 0, "article"), []);
8349
+ const textSizes = _react.useMemo.call(void 0, () => _chunkCOX4CSXZcjs.resolveTextSizeConfig.call(void 0, "article"), []);
8350
8350
  const componentOverrides = _react.useMemo.call(void 0,
8351
8351
  () => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
8352
8352
  [ogApiBaseUrl, ogEndpointPath, textSizes]
8353
8353
  );
8354
8354
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8355
- _chunkLXKEHZUVcjs.MarkdownEngine,
8355
+ _chunkCOX4CSXZcjs.MarkdownEngine,
8356
8356
  {
8357
8357
  content,
8358
8358
  className,
@@ -8374,7 +8374,7 @@ var RichMarkdownRendererImpl = ({
8374
8374
  className = "",
8375
8375
  sectionIds,
8376
8376
  onInternalLinkClick,
8377
- brokenLinks = _chunkLXKEHZUVcjs.NO_BROKEN_LINKS,
8377
+ brokenLinks = _chunkCOX4CSXZcjs.NO_BROKEN_LINKS,
8378
8378
  currentPath,
8379
8379
  resolveSource = "openframe-docs",
8380
8380
  resolveLinkEndpointUrl = "/api/docs/resolve-link",
@@ -9356,7 +9356,7 @@ function FilterModal({
9356
9356
  const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _182 => _182.defaultSort]), () => ( "desc"));
9357
9357
  const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _183 => _183.sort]), () => ( dateDefaultSort)));
9358
9358
  const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _184 => _184.range]));
9359
- const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkLXKEHZUVcjs.useScrollFade.call(void 0, );
9359
+ const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkCOX4CSXZcjs.useScrollFade.call(void 0, );
9360
9360
  const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
9361
9361
  const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
9362
9362
  _react.useEffect.call(void 0, () => {
@@ -9401,10 +9401,10 @@ function FilterModal({
9401
9401
  const hasFilterGroups = filterGroups.length > 0;
9402
9402
  const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
9403
9403
  const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
9404
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen, onClose, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
9405
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: title }) }),
9404
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen, onClose, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
9405
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: title }) }),
9406
9406
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9407
- _chunkLXKEHZUVcjs.ModalContent,
9407
+ _chunkCOX4CSXZcjs.ModalContent,
9408
9408
  {
9409
9409
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
9410
9410
  "flex min-h-0 flex-1 flex-col",
@@ -9496,12 +9496,12 @@ function FilterModal({
9496
9496
  ] })
9497
9497
  }
9498
9498
  ),
9499
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
9500
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
9499
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
9500
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
9501
9501
  ] })
9502
9502
  }
9503
9503
  ),
9504
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: [
9504
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: [
9505
9505
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
9506
9506
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
9507
9507
  ] })
@@ -9545,9 +9545,9 @@ function actionToMenuItems(action, idx) {
9545
9545
  function renderActionButton(action, opts = {}) {
9546
9546
  const button = renderRawActionButton(action, opts);
9547
9547
  if (!action.tooltip) return button;
9548
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { children: [
9549
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipTrigger, { asChild: true, children: button }),
9550
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { children: action.tooltip })
9548
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { children: [
9549
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, children: button }),
9550
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { children: action.tooltip })
9551
9551
  ] }) });
9552
9552
  }
9553
9553
  function renderRawActionButton(action, opts = {}) {
@@ -9571,7 +9571,7 @@ function renderRawActionButton(action, opts = {}) {
9571
9571
  }
9572
9572
  if (action.submenu && action.submenu.length > 0) {
9573
9573
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9574
- _chunkLXKEHZUVcjs.ActionsMenuDropdown,
9574
+ _chunkCOX4CSXZcjs.ActionsMenuDropdown,
9575
9575
  {
9576
9576
  groups: [{ items: action.submenu }],
9577
9577
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -9706,10 +9706,10 @@ function IconButtonsVariant({
9706
9706
  selector,
9707
9707
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
9708
9708
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
9709
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ActionsMenuDropdown, { groups: menuActions })
9709
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ActionsMenuDropdown, { groups: menuActions })
9710
9710
  ] })
9711
9711
  ] }),
9712
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
9712
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
9713
9713
  ] });
9714
9714
  }
9715
9715
  function PrimaryButtonsVariant({
@@ -9747,7 +9747,7 @@ function MenuPrimaryVariant({
9747
9747
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "hidden items-center md:flex", ACTIONS_GAP, className), children: [
9748
9748
  selector,
9749
9749
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
9750
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ActionsMenuDropdown, { groups: menuActions }),
9750
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ActionsMenuDropdown, { groups: menuActions }),
9751
9751
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
9752
9752
  ] })
9753
9753
  ] }),
@@ -9755,7 +9755,7 @@ function MenuPrimaryVariant({
9755
9755
  // The selector rides into the menu as its header row: on mobile the
9756
9756
  // title row has no room for it, and hiding it entirely (what
9757
9757
  // `icon-buttons` does) would leave no way to switch views at all.
9758
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
9758
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
9759
9759
  ) : null })
9760
9760
  ] });
9761
9761
  }
@@ -9963,7 +9963,7 @@ function ListPageLayout({
9963
9963
  }) {
9964
9964
  const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
9965
9965
  const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
9966
- const debouncedSearchValue = _chunkDMUUWHIIcjs.useDebounce.call(void 0, localSearchValue, 500);
9966
+ const debouncedSearchValue = _chunk26GBOUIPcjs.useDebounce.call(void 0, localSearchValue, 500);
9967
9967
  const [syncedSearchValue, setSyncedSearchValue] = _react.useState.call(void 0, searchValue);
9968
9968
  if (syncedSearchValue !== searchValue) {
9969
9969
  setSyncedSearchValue(searchValue);
@@ -10654,7 +10654,7 @@ function toToolLabel(input) {
10654
10654
  if (!input) return "";
10655
10655
  const toolType = normalizeToolType(input);
10656
10656
  if (toolType) {
10657
- return _chunkDMUUWHIIcjs.toolLabels[toolType];
10657
+ return _chunk26GBOUIPcjs.toolLabels[toolType];
10658
10658
  }
10659
10659
  return input;
10660
10660
  }
@@ -10665,7 +10665,7 @@ function getToolTypeAliases(toolType) {
10665
10665
  return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
10666
10666
  }
10667
10667
  function getToolLabel(toolType) {
10668
- return _chunkDMUUWHIIcjs.toolLabels[toolType] || toolType;
10668
+ return _chunk26GBOUIPcjs.toolLabels[toolType] || toolType;
10669
10669
  }
10670
10670
 
10671
10671
  // src/types/shell.types.ts
@@ -11849,8 +11849,8 @@ function makeComposeContentUrl(opts) {
11849
11849
  }
11850
11850
  if (externalUrl) return { href: externalUrl, targetPlatform: _nullishCoalesce(targetPlatform, () => ( null)) };
11851
11851
  const claimedOwner = _nullishCoalesce(targetPlatform, () => ( primaryPlatformOf(platforms)));
11852
- const owner = claimedOwner && _chunkLXKEHZUVcjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
11853
- const origin = owner ? _chunkLXKEHZUVcjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
11852
+ const owner = claimedOwner && _chunkCOX4CSXZcjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
11853
+ const origin = owner ? _chunkCOX4CSXZcjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
11854
11854
  return {
11855
11855
  href: `${origin.replace(/\/+$/, "")}/${seg}/${_optionalChain([slugHint, 'optionalAccess', _244 => _244.trim, 'call', _245 => _245()]) || identifier}`,
11856
11856
  // Report the owner so `decideNewTab` can compare it against the current
@@ -12016,8 +12016,8 @@ var DEFAULT_OPTIONS = {
12016
12016
  function extractSections(markdown, options = {}) {
12017
12017
  const opts = { ...DEFAULT_OPTIONS, ...options };
12018
12018
  const sections = [];
12019
- const dedupe = _chunkDMUUWHIIcjs.createHeadingIdDeduper.call(void 0, );
12020
- const scanned = _chunkDMUUWHIIcjs.scanHeadings.call(void 0, markdown, {
12019
+ const dedupe = _chunk26GBOUIPcjs.createHeadingIdDeduper.call(void 0, );
12020
+ const scanned = _chunk26GBOUIPcjs.scanHeadings.call(void 0, markdown, {
12021
12021
  skipFrontmatter: opts.skipCodeAndYamlBlocks,
12022
12022
  skipFences: opts.skipCodeAndYamlBlocks
12023
12023
  });
@@ -12025,9 +12025,9 @@ function extractSections(markdown, options = {}) {
12025
12025
  if (heading.level > opts.maxLevel) continue;
12026
12026
  let title = heading.text;
12027
12027
  if (opts.stripFormattingMarkers) {
12028
- title = _chunkLXKEHZUVcjs.stripInlineMarkdown.call(void 0, title).trim();
12028
+ title = _chunkCOX4CSXZcjs.stripInlineMarkdown.call(void 0, title).trim();
12029
12029
  }
12030
- const baseId = _chunkDMUUWHIIcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkDMUUWHIIcjs.stripHeadingEmojis.call(void 0, title) : title);
12030
+ const baseId = _chunk26GBOUIPcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunk26GBOUIPcjs.stripHeadingEmojis.call(void 0, title) : title);
12031
12031
  const cleanId = baseId || `section-${sections.length + 1}`;
12032
12032
  sections.push({
12033
12033
  id: opts.handleDuplicateIds ? dedupe(cleanId) : cleanId,
@@ -12218,6 +12218,24 @@ function copyrightLine(legalName, year = (/* @__PURE__ */ new Date()).getFullYea
12218
12218
  return `\xA9 ${year} ${name}${sentenceEnd} All rights reserved.`;
12219
12219
  }
12220
12220
 
12221
+ // src/utils/path-pattern.ts
12222
+ function compile(pattern) {
12223
+ try {
12224
+ return new RegExp(`^(?:${pattern})$`);
12225
+ } catch (e26) {
12226
+ return null;
12227
+ }
12228
+ }
12229
+ function isValidPathPattern(pattern) {
12230
+ return pattern.trim().length > 0 && compile(pattern.trim()) !== null;
12231
+ }
12232
+ function matchesPathPattern(pathname, pattern) {
12233
+ return _nullishCoalesce(_optionalChain([compile, 'call', _249 => _249(pattern.trim()), 'optionalAccess', _250 => _250.test, 'call', _251 => _251(pathname)]), () => ( false));
12234
+ }
12235
+ function pathMatchesAny(pathname, patterns) {
12236
+ return (_nullishCoalesce(patterns, () => ( []))).some((pattern) => matchesPathPattern(pathname, pattern));
12237
+ }
12238
+
12221
12239
  // src/components/ui/benefit-card.tsx
12222
12240
 
12223
12241
  var BenefitCard = ({
@@ -12812,26 +12830,26 @@ function DeviceCard({
12812
12830
  ] }),
12813
12831
  device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", title: device.organization, children: device.organization })
12814
12832
  ] }),
12815
- _optionalChain([actions, 'access', _249 => _249.moreButton, 'optionalAccess', _250 => _250.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12833
+ _optionalChain([actions, 'access', _252 => _252.moreButton, 'optionalAccess', _253 => _253.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12816
12834
  "div",
12817
12835
  {
12818
12836
  className: "flex shrink-0 cursor-pointer items-center justify-center rounded-[6px] border border-ods-border p-3 transition-colors hover:bg-ods-bg-hover",
12819
12837
  onClick: (e) => {
12820
12838
  e.stopPropagation();
12821
- _optionalChain([actions, 'access', _251 => _251.moreButton, 'optionalAccess', _252 => _252.onClick, 'optionalCall', _253 => _253()]);
12839
+ _optionalChain([actions, 'access', _254 => _254.moreButton, 'optionalAccess', _255 => _255.onClick, 'optionalCall', _256 => _256()]);
12822
12840
  },
12823
12841
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
12824
12842
  }
12825
12843
  ),
12826
- _optionalChain([actions, 'access', _254 => _254.detailsButton, 'optionalAccess', _255 => _255.visible]) !== false && _optionalChain([actions, 'access', _256 => _256.detailsButton, 'optionalAccess', _257 => _257.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
12827
- _optionalChain([actions, 'access', _258 => _258.customActions, 'optionalAccess', _259 => _259.map, 'call', _260 => _260(
12844
+ _optionalChain([actions, 'access', _257 => _257.detailsButton, 'optionalAccess', _258 => _258.visible]) !== false && _optionalChain([actions, 'access', _259 => _259.detailsButton, 'optionalAccess', _260 => _260.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
12845
+ _optionalChain([actions, 'access', _261 => _261.customActions, 'optionalAccess', _262 => _262.map, 'call', _263 => _263(
12828
12846
  (action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12829
12847
  "div",
12830
12848
  {
12831
12849
  className: "flex shrink-0 cursor-pointer items-center justify-center rounded-[6px] border border-ods-border px-4 py-3 transition-colors hover:bg-ods-bg-hover",
12832
12850
  onClick: (e) => {
12833
12851
  e.stopPropagation();
12834
- _optionalChain([action, 'access', _261 => _261.onClick, 'optionalCall', _262 => _262()]);
12852
+ _optionalChain([action, 'access', _264 => _264.onClick, 'optionalCall', _265 => _265()]);
12835
12853
  },
12836
12854
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-nowrap text-ods-text-primary text-h3", children: action.label })
12837
12855
  },
@@ -13364,7 +13382,7 @@ function DropdownButton({
13364
13382
  )
13365
13383
  );
13366
13384
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13367
- _chunkLXKEHZUVcjs.ActionsMenuDropdown,
13385
+ _chunkCOX4CSXZcjs.ActionsMenuDropdown,
13368
13386
  {
13369
13387
  groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
13370
13388
  open,
@@ -13429,7 +13447,7 @@ function MoreActionsMenu({
13429
13447
  ] });
13430
13448
  const handleActivate = (e) => {
13431
13449
  e.stopPropagation();
13432
- if (!item.disabled) _optionalChain([item, 'access', _263 => _263.onClick, 'optionalCall', _264 => _264()]);
13450
+ if (!item.disabled) _optionalChain([item, 'access', _266 => _266.onClick, 'optionalCall', _267 => _267()]);
13433
13451
  };
13434
13452
  if (item.href) {
13435
13453
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKWX65373cjs.DropdownMenuItem, { asChild: true, disabled: item.disabled, className: itemClassName, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -13485,7 +13503,7 @@ function OrganizationCard({
13485
13503
  const handleActionClick = (e) => {
13486
13504
  e.preventDefault();
13487
13505
  e.stopPropagation();
13488
- _optionalChain([actionButton, 'optionalAccess', _265 => _265.onClick, 'call', _266 => _266(organization, e)]);
13506
+ _optionalChain([actionButton, 'optionalAccess', _268 => _268.onClick, 'call', _269 => _269(organization, e)]);
13489
13507
  };
13490
13508
  const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
13491
13509
  "div",
@@ -13579,7 +13597,7 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
13579
13597
  }
13580
13598
  function ServiceCardRowItem({ row }) {
13581
13599
  const [revealed, setRevealed] = _react.useState.call(void 0, false);
13582
- const { copy, copied } = _chunkW4YXUJOFcjs.useCopyToClipboard.call(void 0, );
13600
+ const { copy, copied } = _chunkVP6PJLMIcjs.useCopyToClipboard.call(void 0, );
13583
13601
  const { ref: valueRef, isTruncated: valueTruncated } = _chunkMNFV4YLKcjs.useIsTruncated.call(void 0, row.value);
13584
13602
  const actions = _react.useMemo.call(void 0,
13585
13603
  () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }),
@@ -13657,7 +13675,7 @@ var Slider = _react.forwardRef.call(void 0,
13657
13675
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
13658
13676
  const handleChange = (e) => {
13659
13677
  const newValue = [Number(e.target.value)];
13660
- _optionalChain([onValueChange, 'optionalCall', _267 => _267(newValue)]);
13678
+ _optionalChain([onValueChange, 'optionalCall', _270 => _270(newValue)]);
13661
13679
  };
13662
13680
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13663
13681
  "input",
@@ -13732,8 +13750,8 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
13732
13750
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13733
13751
  PersonCell,
13734
13752
  {
13735
- name: _optionalChain([person, 'optionalAccess', _268 => _268.name]),
13736
- avatarUrl: _optionalChain([person, 'optionalAccess', _269 => _269.avatarUrl]),
13753
+ name: _optionalChain([person, 'optionalAccess', _271 => _271.name]),
13754
+ avatarUrl: _optionalChain([person, 'optionalAccess', _272 => _272.avatarUrl]),
13737
13755
  secondary: person ? person.secondary : void 0,
13738
13756
  fallbackName
13739
13757
  }
@@ -13802,9 +13820,9 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
13802
13820
  return next;
13803
13821
  });
13804
13822
  };
13805
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { open, onOpenChange: setOpen, children: [
13823
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { open, onOpenChange: setOpen, children: [
13806
13824
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13807
- _chunkLXKEHZUVcjs.TooltipTrigger,
13825
+ _chunkCOX4CSXZcjs.TooltipTrigger,
13808
13826
  {
13809
13827
  asChild: true,
13810
13828
  onPointerDown: (e) => {
@@ -13822,7 +13840,7 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
13822
13840
  children
13823
13841
  }
13824
13842
  ),
13825
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { side, className: "max-w-xs", children: content })
13843
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { side, className: "max-w-xs", children: content })
13826
13844
  ] }) });
13827
13845
  }
13828
13846
 
@@ -14019,7 +14037,7 @@ function CursorPaginationSimple({
14019
14037
  {
14020
14038
  variant: "transparent",
14021
14039
  size: "icon",
14022
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _270 => _270("")]),
14040
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _273 => _273("")]),
14023
14041
  disabled: !hasPreviousPage || loading,
14024
14042
  className: "h-8 w-8",
14025
14043
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -14031,7 +14049,7 @@ function CursorPaginationSimple({
14031
14049
  {
14032
14050
  variant: "transparent",
14033
14051
  size: "icon",
14034
- onClick: () => _optionalChain([onNext, 'optionalCall', _271 => _271("")]),
14052
+ onClick: () => _optionalChain([onNext, 'optionalCall', _274 => _274("")]),
14035
14053
  disabled: !hasNextPage || loading,
14036
14054
  className: "h-8 w-8",
14037
14055
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -14168,7 +14186,7 @@ var ROW_STACK_CLASSES = "flex w-full flex-col gap-[var(--spacing-system-xsf)]";
14168
14186
  function DataTableSkeleton({ rows = 10, className, rowClassName, rowHeightClassName }) {
14169
14187
  const table = useDataTableContext();
14170
14188
  const columns = table.getVisibleFlatColumns();
14171
- const firstColumnId = _optionalChain([columns, 'access', _272 => _272[0], 'optionalAccess', _273 => _273.id]);
14189
+ const firstColumnId = _optionalChain([columns, 'access', _275 => _275[0], 'optionalAccess', _276 => _276.id]);
14172
14190
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
14173
14191
  "div",
14174
14192
  {
@@ -14195,13 +14213,13 @@ function DataTableSkeleton({ rows = 10, className, rowClassName, rowHeightClassN
14195
14213
  {
14196
14214
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
14197
14215
  "flex shrink-0 flex-col justify-center",
14198
- _optionalChain([meta, 'optionalAccess', _274 => _274.width]) || "flex-1",
14216
+ _optionalChain([meta, 'optionalAccess', _277 => _277.width]) || "flex-1",
14199
14217
  // Same responsive hiding the real header and row apply.
14200
14218
  // Without it a `hideAt` column was drawn in the skeleton and
14201
14219
  // absent from the loaded table, so below that breakpoint the
14202
14220
  // remaining columns were sized against a different total and
14203
14221
  // the whole row re-laid-out the moment data arrived.
14204
- getHideClasses(_optionalChain([meta, 'optionalAccess', _275 => _275.hideAt]))
14222
+ getHideClasses(_optionalChain([meta, 'optionalAccess', _278 => _278.hideAt]))
14205
14223
  ),
14206
14224
  children: [
14207
14225
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-[var(--spacing-system-xxs)] h-5 w-3/4 rounded-sm bg-ods-bg-surface" }),
@@ -14305,8 +14323,8 @@ function TableEmptyState({ message, description, emptyState, icon, action, class
14305
14323
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
14306
14324
  title: _nullishCoalesce(message, () => ( "No results found")),
14307
14325
  description: _nullishCoalesce(description, () => ( (message == null ? "Try adjusting your search or filters" : void 0))),
14308
- buttonLabel: _optionalChain([action, 'optionalAccess', _276 => _276.label]),
14309
- onButtonClick: _optionalChain([action, 'optionalAccess', _277 => _277.onClick]),
14326
+ buttonLabel: _optionalChain([action, 'optionalAccess', _279 => _279.label]),
14327
+ onButtonClick: _optionalChain([action, 'optionalAccess', _280 => _280.onClick]),
14310
14328
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className),
14311
14329
  ...emptyState
14312
14330
  }
@@ -14324,7 +14342,7 @@ function TableColumnFilterDropdown({
14324
14342
  placement = "bottom-start",
14325
14343
  dropdownClassName = "min-w-[240px]"
14326
14344
  }) {
14327
- const activeCount = _optionalChain([filters, 'optionalAccess', _278 => _278[columnKey], 'optionalAccess', _279 => _279.length]) || 0;
14345
+ const activeCount = _optionalChain([filters, 'optionalAccess', _281 => _281[columnKey], 'optionalAccess', _282 => _282.length]) || 0;
14328
14346
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14329
14347
  FiltersDropdown,
14330
14348
  {
@@ -14364,7 +14382,7 @@ function TableColumnFilterDropdown({
14364
14382
  delete newFilters[columnKey];
14365
14383
  onFilterChange(newFilters);
14366
14384
  },
14367
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _280 => _280[columnKey]]) || [] },
14385
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _283 => _283[columnKey]]) || [] },
14368
14386
  placement,
14369
14387
  dropdownClassName
14370
14388
  }
@@ -14438,7 +14456,7 @@ function TableHeader({
14438
14456
  }
14439
14457
  return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.Arrow01UpIcon, { className: "h-4 w-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.Arrow01DownIcon, { className: "h-4 w-4 text-ods-accent" });
14440
14458
  };
14441
- const isLgUp = _nullishCoalesce(_chunkDMUUWHIIcjs.useLgUp.call(void 0, ), () => ( false));
14459
+ const isLgUp = _nullishCoalesce(_chunk26GBOUIPcjs.useLgUp.call(void 0, ), () => ( false));
14442
14460
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
14443
14461
  "div",
14444
14462
  {
@@ -14495,7 +14513,7 @@ function TableHeader({
14495
14513
  onFilterChange
14496
14514
  }
14497
14515
  ),
14498
- column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InfoHint, { label: column.label, children: column.hint }) : null
14516
+ column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InfoHint, { label: column.label, children: column.hint }) : null
14499
14517
  ] })
14500
14518
  ) : (
14501
14519
  /* Non-filterable column — regular label with optional sort */
@@ -14521,7 +14539,7 @@ function TableHeader({
14521
14539
  hint exists, so a hint-less header keeps its DOM. */
14522
14540
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
14523
14541
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
14524
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InfoHint, { label: column.label, children: column.hint })
14542
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InfoHint, { label: column.label, children: column.hint })
14525
14543
  ] })
14526
14544
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
14527
14545
  getSortIcon(column)
@@ -14568,7 +14586,7 @@ function TableCardSkeleton({
14568
14586
  className,
14569
14587
  rowClassName
14570
14588
  }) {
14571
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _281 => _281.key]);
14589
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _284 => _284.key]);
14572
14590
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
14573
14591
  "div",
14574
14592
  {
@@ -14753,7 +14771,7 @@ function useTableMotion(enabled) {
14753
14771
  // src/components/ui/table/table.tsx
14754
14772
 
14755
14773
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref, actionsColumnWidth) {
14756
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _282 => _282.length])) || Boolean(renderRowActions);
14774
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _285 => _285.length])) || Boolean(renderRowActions);
14757
14775
  const result = [...columns];
14758
14776
  const actions = _nullishCoalesce(rowActions, () => ( []));
14759
14777
  if (hasActions) {
@@ -14860,7 +14878,7 @@ function Table({
14860
14878
  return rowKey(item);
14861
14879
  }
14862
14880
  const key = item[rowKey];
14863
- return _optionalChain([key, 'optionalAccess', _283 => _283.toString, 'call', _284 => _284()]) || index.toString();
14881
+ return _optionalChain([key, 'optionalAccess', _286 => _286.toString, 'call', _287 => _287()]) || index.toString();
14864
14882
  };
14865
14883
  const getRowClassName = (item, index) => {
14866
14884
  if (typeof rowClassName === "function") {
@@ -14894,25 +14912,25 @@ function Table({
14894
14912
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
14895
14913
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
14896
14914
  const sentinelRef = _react.useRef.call(void 0, null);
14897
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _285 => _285.onLoadMore]));
14915
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _288 => _288.onLoadMore]));
14898
14916
  _react.useEffect.call(void 0, () => {
14899
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _286 => _286.onLoadMore]);
14917
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _289 => _289.onLoadMore]);
14900
14918
  });
14901
14919
  _react.useEffect.call(void 0, () => {
14902
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _287 => _287.hasNextPage]) || infiniteScroll.isFetchingNextPage) return void 0;
14920
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _290 => _290.hasNextPage]) || infiniteScroll.isFetchingNextPage) return void 0;
14903
14921
  const sentinel = sentinelRef.current;
14904
14922
  if (!sentinel) return void 0;
14905
14923
  const observer = new IntersectionObserver(
14906
14924
  (entries) => {
14907
- if (_optionalChain([entries, 'access', _288 => _288[0], 'optionalAccess', _289 => _289.isIntersecting])) {
14908
- _optionalChain([onLoadMoreRef, 'access', _290 => _290.current, 'optionalCall', _291 => _291()]);
14925
+ if (_optionalChain([entries, 'access', _291 => _291[0], 'optionalAccess', _292 => _292.isIntersecting])) {
14926
+ _optionalChain([onLoadMoreRef, 'access', _293 => _293.current, 'optionalCall', _294 => _294()]);
14909
14927
  }
14910
14928
  },
14911
14929
  { rootMargin: "200px" }
14912
14930
  );
14913
14931
  observer.observe(sentinel);
14914
14932
  return () => observer.disconnect();
14915
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _292 => _292.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _293 => _293.isFetchingNextPage])]);
14933
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _295 => _295.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _296 => _296.isFetchingNextPage])]);
14916
14934
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex w-full flex-col gap-1", containerClassName), children: [
14917
14935
  showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-2 flex items-center justify-between rounded-[6px] border border-ods-border bg-ods-card p-3", children: [
14918
14936
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: [
@@ -14964,7 +14982,7 @@ function Table({
14964
14982
  columns,
14965
14983
  rows: skeletonRows,
14966
14984
  compact,
14967
- hasActions: (_nullishCoalesce(_optionalChain([rowActions, 'optionalAccess', _294 => _294.length]), () => ( 0))) > 0,
14985
+ hasActions: (_nullishCoalesce(_optionalChain([rowActions, 'optionalAccess', _297 => _297.length]), () => ( 0))) > 0,
14968
14986
  hasChevron: Boolean(rowHref)
14969
14987
  }
14970
14988
  ) : data.length === 0 ? (
@@ -14998,23 +15016,23 @@ function Table({
14998
15016
  selected: isRowSelected(item),
14999
15017
  onSelect: handleSelectRow,
15000
15018
  animateRowReorder,
15001
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _295 => _295.motionDiv])
15019
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _298 => _298.motionDiv])
15002
15020
  },
15003
15021
  getRowKey(item, index)
15004
15022
  ));
15005
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _296 => _296.LayoutGroup]);
15023
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _299 => _299.LayoutGroup]);
15006
15024
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
15007
15025
  })(),
15008
- _optionalChain([infiniteScroll, 'optionalAccess', _297 => _297.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15026
+ _optionalChain([infiniteScroll, 'optionalAccess', _300 => _300.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15009
15027
  TableCardSkeleton,
15010
15028
  {
15011
15029
  columns,
15012
15030
  rows: _nullishCoalesce(infiniteScroll.skeletonRows, () => ( 3)),
15013
- hasActions: (_nullishCoalesce(_optionalChain([rowActions, 'optionalAccess', _298 => _298.length]), () => ( 0))) > 0,
15031
+ hasActions: (_nullishCoalesce(_optionalChain([rowActions, 'optionalAccess', _301 => _301.length]), () => ( 0))) > 0,
15014
15032
  hasChevron: Boolean(rowHref)
15015
15033
  }
15016
15034
  ),
15017
- _optionalChain([infiniteScroll, 'optionalAccess', _299 => _299.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
15035
+ _optionalChain([infiniteScroll, 'optionalAccess', _302 => _302.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
15018
15036
  !infiniteScroll && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15019
15037
  PlaceholderRows,
15020
15038
  {
@@ -15133,9 +15151,9 @@ function TruncatedHeaderCell({ value, width }) {
15133
15151
  setIsTruncated(el.scrollWidth > el.clientWidth);
15134
15152
  }
15135
15153
  }, []);
15136
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
15137
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
15138
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
15154
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
15155
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
15156
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
15139
15157
  ] }) });
15140
15158
  }
15141
15159
 
@@ -15188,9 +15206,9 @@ function TruncatedCell({ value, className }) {
15188
15206
  setIsTruncated(el.scrollWidth > el.clientWidth);
15189
15207
  }
15190
15208
  }, []);
15191
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
15192
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "block truncate", className), children: value }) }),
15193
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
15209
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
15210
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "block truncate", className), children: value }) }),
15211
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
15194
15212
  ] }) });
15195
15213
  }
15196
15214
 
@@ -15289,7 +15307,7 @@ function QueryReportTable({
15289
15307
  const columns = _react.useMemo.call(void 0, () => deriveColumns(data, columnOrder), [data, columnOrder]);
15290
15308
  const handleExport = () => {
15291
15309
  exportToCSV(data, columns, exportFilename);
15292
- _optionalChain([onExport, 'optionalCall', _300 => _300()]);
15310
+ _optionalChain([onExport, 'optionalCall', _303 => _303()]);
15293
15311
  };
15294
15312
  const tableMinWidth = columns.length * (columnWidth + 16);
15295
15313
  const {
@@ -15306,7 +15324,7 @@ function QueryReportTable({
15306
15324
  onThumbPointerMove,
15307
15325
  onThumbPointerUp,
15308
15326
  onThumbPointerCancel
15309
- } = _chunkW4YXUJOFcjs.useHorizontalScrollbar.call(void 0, );
15327
+ } = _chunkVP6PJLMIcjs.useHorizontalScrollbar.call(void 0, );
15310
15328
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex w-full flex-col", isCompact ? "gap-0" : "gap-[var(--spacing-system-l)]", className), children: [
15311
15329
  !isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-[var(--spacing-system-l)]", children: [
15312
15330
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: title }),
@@ -15419,7 +15437,7 @@ function DataTableRowImpl({
15419
15437
  const handleClick = _react.useCallback.call(void 0,
15420
15438
  (e) => {
15421
15439
  const target = e.target;
15422
- if (!_optionalChain([containerRef, 'access', _301 => _301.current, 'optionalAccess', _302 => _302.contains, 'call', _303 => _303(target)])) {
15440
+ if (!_optionalChain([containerRef, 'access', _304 => _304.current, 'optionalAccess', _305 => _305.contains, 'call', _306 => _306(target)])) {
15423
15441
  if (isLinkMode) e.preventDefault();
15424
15442
  return;
15425
15443
  }
@@ -15427,7 +15445,7 @@ function DataTableRowImpl({
15427
15445
  if (isLinkMode) e.preventDefault();
15428
15446
  return;
15429
15447
  }
15430
- _optionalChain([onClick, 'optionalCall', _304 => _304(row.original)]);
15448
+ _optionalChain([onClick, 'optionalCall', _307 => _307(row.original)]);
15431
15449
  },
15432
15450
  [onClick, row.original, isLinkMode]
15433
15451
  );
@@ -15467,10 +15485,10 @@ function DataTableRowImpl({
15467
15485
  {
15468
15486
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
15469
15487
  "flex flex-col overflow-hidden",
15470
- alignJustify(_optionalChain([meta, 'optionalAccess', _305 => _305.align])),
15471
- _optionalChain([meta, 'optionalAccess', _306 => _306.width]) || "min-w-0 flex-1",
15472
- _optionalChain([meta, 'optionalAccess', _307 => _307.cellClassName]),
15473
- getHideClasses(_optionalChain([meta, 'optionalAccess', _308 => _308.hideAt]))
15488
+ alignJustify(_optionalChain([meta, 'optionalAccess', _308 => _308.align])),
15489
+ _optionalChain([meta, 'optionalAccess', _309 => _309.width]) || "min-w-0 flex-1",
15490
+ _optionalChain([meta, 'optionalAccess', _310 => _310.cellClassName]),
15491
+ getHideClasses(_optionalChain([meta, 'optionalAccess', _311 => _311.hideAt]))
15474
15492
  ),
15475
15493
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
15476
15494
  },
@@ -15578,7 +15596,7 @@ function DataTableBody({
15578
15596
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, ROW_STACK_CLASSES, className), children: [
15579
15597
  rows.map((row, index) => {
15580
15598
  const item = row.original;
15581
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _309 => _309(item)]), () => ( void 0));
15599
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _312 => _312(item)]), () => ( void 0));
15582
15600
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
15583
15601
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15584
15602
  DataTableRow,
@@ -15589,7 +15607,7 @@ function DataTableBody({
15589
15607
  compact,
15590
15608
  rowHeightClassName,
15591
15609
  className: cls,
15592
- subRow: _optionalChain([renderSubRow, 'optionalCall', _310 => _310(item)])
15610
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _313 => _313(item)])
15593
15611
  },
15594
15612
  row.id
15595
15613
  );
@@ -15641,7 +15659,7 @@ function DataTableColumnFilter({
15641
15659
  pending = false
15642
15660
  }) {
15643
15661
  const currentValue = column.getFilterValue();
15644
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _311 => _311.length]), () => ( 0));
15662
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _314 => _314.length]), () => ( 0));
15645
15663
  const sections = _react.useMemo.call(void 0,
15646
15664
  () => [
15647
15665
  {
@@ -15773,7 +15791,7 @@ function DataTableHeader({
15773
15791
  );
15774
15792
  }
15775
15793
  function keepsCellOnTablet(meta) {
15776
- return Boolean(_optionalChain([meta, 'optionalAccess', _312 => _312.filter])) || _optionalChain([meta, 'optionalAccess', _313 => _313.sortable]) === true || _optionalChain([meta, 'optionalAccess', _314 => _314.alwaysShowHeader]) === true;
15794
+ return Boolean(_optionalChain([meta, 'optionalAccess', _315 => _315.filter])) || _optionalChain([meta, 'optionalAccess', _316 => _316.sortable]) === true || _optionalChain([meta, 'optionalAccess', _317 => _317.alwaysShowHeader]) === true;
15777
15795
  }
15778
15796
  var SHOW_FROM = {
15779
15797
  md: "md:flex",
@@ -15811,11 +15829,11 @@ function HeaderCell({ header, sort, onSortChange }) {
15811
15829
  if (header.isPlaceholder) return null;
15812
15830
  const column = header.column;
15813
15831
  const meta = column.columnDef.meta;
15814
- const filter = _optionalChain([meta, 'optionalAccess', _315 => _315.filter]);
15832
+ const filter = _optionalChain([meta, 'optionalAccess', _318 => _318.filter]);
15815
15833
  const keepOnTablet = keepsCellOnTablet(meta);
15816
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _316 => _316.align]), () => ( "left"));
15817
- const canSort = _optionalChain([meta, 'optionalAccess', _317 => _317.sortable]) === true;
15818
- const sortDir = _optionalChain([sort, 'optionalAccess', _318 => _318.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
15834
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _319 => _319.align]), () => ( "left"));
15835
+ const canSort = _optionalChain([meta, 'optionalAccess', _320 => _320.sortable]) === true;
15836
+ const sortDir = _optionalChain([sort, 'optionalAccess', _321 => _321.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
15819
15837
  const filterTrigger = filter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15820
15838
  DataTableColumnFilter,
15821
15839
  {
@@ -15834,7 +15852,7 @@ function HeaderCell({ header, sort, onSortChange }) {
15834
15852
  "items-stretch",
15835
15853
  // Cells are hidden rather than dropped from the tree, so which columns
15836
15854
  // exist never depends on when an effect ran.
15837
- getCellVisibilityClasses(keepOnTablet, _optionalChain([meta, 'optionalAccess', _319 => _319.hideAt])),
15855
+ getCellVisibilityClasses(keepOnTablet, _optionalChain([meta, 'optionalAccess', _322 => _322.hideAt])),
15838
15856
  // Width applies from lg only. Stated as "always, neutralized below lg"
15839
15857
  // because `meta.width` is an opaque consumer string that cannot be
15840
15858
  // prefixed. Only `keepOnTablet` cells need the override — the rest are
@@ -15852,17 +15870,17 @@ function HeaderCell({ header, sort, onSortChange }) {
15852
15870
  // Specificity rather than `!important`: it stays a normal declaration, so a
15853
15871
  // consumer that genuinely needs a tablet width can still take it back with a
15854
15872
  // more specific rule — `!important` could only be answered with another one.
15855
- _optionalChain([meta, 'optionalAccess', _320 => _320.width]) || "min-w-0 flex-1",
15873
+ _optionalChain([meta, 'optionalAccess', _323 => _323.width]) || "min-w-0 flex-1",
15856
15874
  keepOnTablet && "max-lg:[&&]:w-auto max-lg:[&&]:flex-none max-lg:[&&]:basis-auto",
15857
- _optionalChain([meta, 'optionalAccess', _321 => _321.headerClassName])
15875
+ _optionalChain([meta, 'optionalAccess', _324 => _324.headerClassName])
15858
15876
  ),
15859
15877
  children: filterTrigger ? (
15860
15878
  // Only a column that HAS a hint gets the extra row, so every existing
15861
15879
  // filter header keeps its exact structure — the trigger stays a direct
15862
15880
  // child of the cell.
15863
- _optionalChain([meta, 'optionalAccess', _322 => _322.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
15881
+ _optionalChain([meta, 'optionalAccess', _325 => _325.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
15864
15882
  filterTrigger,
15865
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
15883
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
15866
15884
  ] }) : filterTrigger
15867
15885
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
15868
15886
  "div",
@@ -15876,9 +15894,9 @@ function HeaderCell({ header, sort, onSortChange }) {
15876
15894
  keepOnTablet && "max-lg:justify-start",
15877
15895
  canSort && "group cursor-pointer"
15878
15896
  ),
15879
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _323 => _323(column.id)]) : void 0,
15897
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _326 => _326(column.id)]) : void 0,
15880
15898
  children: [
15881
- _optionalChain([meta, 'optionalAccess', _324 => _324.hint]) ? (
15899
+ _optionalChain([meta, 'optionalAccess', _327 => _327.hint]) ? (
15882
15900
  // The hint shares a LABEL GROUP with the text, pinned to the FIRST
15883
15901
  // line (`items-start`): on a label that breaks onto a second line it
15884
15902
  // reads beside the opening word instead of floating in the gap
@@ -15887,7 +15905,7 @@ function HeaderCell({ header, sort, onSortChange }) {
15887
15905
  // centred on the row.
15888
15906
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
15889
15907
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
15890
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
15908
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
15891
15909
  ] })
15892
15910
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
15893
15911
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -15949,9 +15967,9 @@ function DataTableInfiniteFooter({
15949
15967
  loadMore.setSkeletonRows(requestedRows);
15950
15968
  return () => loadMore.setSkeletonRows(0);
15951
15969
  }, [loadMore, requestedRows]);
15952
- const tableRows = _optionalChain([useOptionalDataTableContext, 'call', _325 => _325(), 'optionalAccess', _326 => _326.getRowModel, 'call', _327 => _327(), 'access', _328 => _328.rows]);
15953
- const progressCount = _nullishCoalesce(loadedCount, () => ( _optionalChain([tableRows, 'optionalAccess', _329 => _329.length])));
15954
- const lastRowId = _nullishCoalesce(_optionalChain([tableRows, 'optionalAccess', _330 => _330[tableRows.length - 1], 'optionalAccess', _331 => _331.id]), () => ( ""));
15970
+ const tableRows = _optionalChain([useOptionalDataTableContext, 'call', _328 => _328(), 'optionalAccess', _329 => _329.getRowModel, 'call', _330 => _330(), 'access', _331 => _331.rows]);
15971
+ const progressCount = _nullishCoalesce(loadedCount, () => ( _optionalChain([tableRows, 'optionalAccess', _332 => _332.length])));
15972
+ const lastRowId = _nullishCoalesce(_optionalChain([tableRows, 'optionalAccess', _333 => _333[tableRows.length - 1], 'optionalAccess', _334 => _334.id]), () => ( ""));
15955
15973
  const tail = progressCount === void 0 ? null : `${progressCount}:${lastRowId}`;
15956
15974
  const [wasFetching, setWasFetching] = _react.useState.call(void 0, isFetchingNextPage);
15957
15975
  const [tailAtFetchStart, setTailAtFetchStart] = _react.useState.call(void 0, null);
@@ -15972,7 +15990,7 @@ function DataTableInfiniteFooter({
15972
15990
  if (!sentinel) return void 0;
15973
15991
  const observer = new IntersectionObserver(
15974
15992
  (entries) => {
15975
- if (_optionalChain([entries, 'access', _332 => _332[0], 'optionalAccess', _333 => _333.isIntersecting])) onLoadMoreRef.current();
15993
+ if (_optionalChain([entries, 'access', _335 => _335[0], 'optionalAccess', _336 => _336.isIntersecting])) onLoadMoreRef.current();
15976
15994
  },
15977
15995
  { root: findScrollParent(sentinel), rootMargin }
15978
15996
  );
@@ -15999,7 +16017,7 @@ function DataTableRowCount({
15999
16017
  const table = useDataTableContext();
16000
16018
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
16001
16019
  if (hideWhenEmpty && count === 0) return null;
16002
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _334 => _334(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
16020
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _337 => _337(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
16003
16021
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "whitespace-nowrap text-ods-text-secondary text-h6", className), children: [
16004
16022
  count,
16005
16023
  " ",
@@ -16118,12 +16136,12 @@ function PhoneInput({
16118
16136
  (phone) => {
16119
16137
  if (!phone || digitCount(phone) === 0) {
16120
16138
  setIsInvalid(false);
16121
- _optionalChain([onValidationChange, 'optionalCall', _335 => _335(false)]);
16139
+ _optionalChain([onValidationChange, 'optionalCall', _338 => _338(false)]);
16122
16140
  return;
16123
16141
  }
16124
16142
  const invalid = !validatePhoneNumber(phone, countryCode);
16125
16143
  setIsInvalid(invalid);
16126
- _optionalChain([onValidationChange, 'optionalCall', _336 => _336(invalid)]);
16144
+ _optionalChain([onValidationChange, 'optionalCall', _339 => _339(invalid)]);
16127
16145
  },
16128
16146
  [countryCode, digitCount, onValidationChange]
16129
16147
  );
@@ -16177,7 +16195,7 @@ function PhoneInput({
16177
16195
  debouncedValidation(val);
16178
16196
  } else if (digitCount(val) === 0) {
16179
16197
  setIsInvalid(false);
16180
- _optionalChain([onValidationChange, 'optionalCall', _337 => _337(false)]);
16198
+ _optionalChain([onValidationChange, 'optionalCall', _340 => _340(false)]);
16181
16199
  }
16182
16200
  }
16183
16201
  },
@@ -16266,10 +16284,10 @@ function SearchInput({
16266
16284
  }) {
16267
16285
  const [internalValue, setInternalValue] = _react.useState.call(void 0, defaultValue);
16268
16286
  const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
16269
- const debouncedValue = _chunkDMUUWHIIcjs.useDebounce.call(void 0, currentValue, debounceMs);
16287
+ const debouncedValue = _chunk26GBOUIPcjs.useDebounce.call(void 0, currentValue, debounceMs);
16270
16288
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
16271
16289
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
16272
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
16290
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
16273
16291
  const containerRef = _react.useRef.call(void 0, null);
16274
16292
  const currentPlaceholder = filterChips.length > 0 ? "Add filter..." : placeholder;
16275
16293
  const {
@@ -16279,7 +16297,7 @@ function SearchInput({
16279
16297
  textMeasureRef,
16280
16298
  badgeRef,
16281
16299
  inputRef
16282
- } = _chunkW4YXUJOFcjs.useAutoLimitTags.call(void 0, {
16300
+ } = _chunkVP6PJLMIcjs.useAutoLimitTags.call(void 0, {
16283
16301
  count: filterChips.length,
16284
16302
  limitTags,
16285
16303
  // When chips exist, pass empty placeholder so the hook only reserves input minWidth,
@@ -16294,7 +16312,7 @@ function SearchInput({
16294
16312
  if (!showHiddenTags) return void 0;
16295
16313
  const handleClick = (e) => {
16296
16314
  const target = e.target;
16297
- if (!_optionalChain([hiddenTagsRef, 'access', _338 => _338.current, 'optionalAccess', _339 => _339.contains, 'call', _340 => _340(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _341 => _341.current, 'optionalAccess', _342 => _342.contains, 'call', _343 => _343(target)])) {
16315
+ if (!_optionalChain([hiddenTagsRef, 'access', _341 => _341.current, 'optionalAccess', _342 => _342.contains, 'call', _343 => _343(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _344 => _344.current, 'optionalAccess', _345 => _345.contains, 'call', _346 => _346(target)])) {
16298
16316
  setShowHiddenTags(false);
16299
16317
  }
16300
16318
  };
@@ -16305,7 +16323,7 @@ function SearchInput({
16305
16323
  const popup = hiddenTagsPopupRef.current;
16306
16324
  const badge = badgeRef.current;
16307
16325
  if (!popup || !badge) return;
16308
- const originLeft = _nullishCoalesce(_optionalChain([containerRef, 'access', _344 => _344.current, 'optionalAccess', _345 => _345.getBoundingClientRect, 'call', _346 => _346(), 'access', _347 => _347.left]), () => ( 0));
16326
+ const originLeft = _nullishCoalesce(_optionalChain([containerRef, 'access', _347 => _347.current, 'optionalAccess', _348 => _348.getBoundingClientRect, 'call', _349 => _349(), 'access', _350 => _350.left]), () => ( 0));
16309
16327
  popup.style.left = `${badge.getBoundingClientRect().left - originLeft}px`;
16310
16328
  });
16311
16329
  const hiddenCount = filterChips.length - visibleCount;
@@ -16340,7 +16358,7 @@ function SearchInput({
16340
16358
  } else {
16341
16359
  setInternalValue(newVal);
16342
16360
  }
16343
- if (newVal === "" && currentValue !== "") _optionalChain([onSubmit, 'optionalCall', _348 => _348("")]);
16361
+ if (newVal === "" && currentValue !== "") _optionalChain([onSubmit, 'optionalCall', _351 => _351("")]);
16344
16362
  if (!isOpen) setIsOpen(true);
16345
16363
  setHighlightedIndex(-1);
16346
16364
  };
@@ -16352,11 +16370,11 @@ function SearchInput({
16352
16370
  } else {
16353
16371
  setInternalValue("");
16354
16372
  }
16355
- if (currentValue !== "") _optionalChain([onSubmit, 'optionalCall', _349 => _349("")]);
16356
- _optionalChain([inputRef, 'access', _350 => _350.current, 'optionalAccess', _351 => _351.focus, 'call', _352 => _352()]);
16373
+ if (currentValue !== "") _optionalChain([onSubmit, 'optionalCall', _352 => _352("")]);
16374
+ _optionalChain([inputRef, 'access', _353 => _353.current, 'optionalAccess', _354 => _354.focus, 'call', _355 => _355()]);
16357
16375
  };
16358
16376
  const handleResultClick = (result, e) => {
16359
- _optionalChain([onResultSelect, 'optionalCall', _353 => _353(
16377
+ _optionalChain([onResultSelect, 'optionalCall', _356 => _356(
16360
16378
  result,
16361
16379
  e ? {
16362
16380
  metaKey: e.metaKey,
@@ -16384,7 +16402,7 @@ function SearchInput({
16384
16402
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
16385
16403
  handleResultClick(flatResults[highlightedIndex]);
16386
16404
  } else {
16387
- _optionalChain([onSubmit, 'optionalCall', _354 => _354(currentValue)]);
16405
+ _optionalChain([onSubmit, 'optionalCall', _357 => _357(currentValue)]);
16388
16406
  }
16389
16407
  break;
16390
16408
  case "Escape":
@@ -16467,7 +16485,7 @@ function SearchInput({
16467
16485
  ),
16468
16486
  onClick: () => {
16469
16487
  if (disabled) return;
16470
- _optionalChain([inputRef, 'access', _355 => _355.current, 'optionalAccess', _356 => _356.focus, 'call', _357 => _357()]);
16488
+ _optionalChain([inputRef, 'access', _358 => _358.current, 'optionalAccess', _359 => _359.focus, 'call', _360 => _360()]);
16471
16489
  setIsOpen(true);
16472
16490
  },
16473
16491
  children: [
@@ -16555,10 +16573,10 @@ function SearchInput({
16555
16573
  collisionPadding: { bottom: keyboardPadding },
16556
16574
  onOpenAutoFocus: (e) => {
16557
16575
  e.preventDefault();
16558
- _optionalChain([inputRef, 'access', _358 => _358.current, 'optionalAccess', _359 => _359.focus, 'call', _360 => _360()]);
16576
+ _optionalChain([inputRef, 'access', _361 => _361.current, 'optionalAccess', _362 => _362.focus, 'call', _363 => _363()]);
16559
16577
  },
16560
16578
  onInteractOutside: (e) => {
16561
- if (_optionalChain([containerRef, 'access', _361 => _361.current, 'optionalAccess', _362 => _362.contains, 'call', _363 => _363(e.target)])) {
16579
+ if (_optionalChain([containerRef, 'access', _364 => _364.current, 'optionalAccess', _365 => _365.contains, 'call', _366 => _366(e.target)])) {
16562
16580
  e.preventDefault();
16563
16581
  }
16564
16582
  },
@@ -16575,7 +16593,7 @@ function SearchInput({
16575
16593
  ref: hiddenTagsPopupRef,
16576
16594
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
16577
16595
  onRemove: (removedTag) => {
16578
- _optionalChain([onFilterRemove, 'optionalCall', _364 => _364(removedTag)]);
16596
+ _optionalChain([onFilterRemove, 'optionalCall', _367 => _367(removedTag)]);
16579
16597
  if (hiddenCount <= 1) setShowHiddenTags(false);
16580
16598
  }
16581
16599
  }
@@ -16617,7 +16635,7 @@ function FilterListItem({
16617
16635
  }) {
16618
16636
  const handleToggle = () => {
16619
16637
  if (disabled) return;
16620
- _optionalChain([onToggle, 'optionalCall', _365 => _365(!selected)]);
16638
+ _optionalChain([onToggle, 'optionalCall', _368 => _368(!selected)]);
16621
16639
  };
16622
16640
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16623
16641
  "div",
@@ -16664,7 +16682,7 @@ function FilterListItem({
16664
16682
  CheckboxPrimitive4.Root,
16665
16683
  {
16666
16684
  checked: selected,
16667
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _366 => _366(c === true)]),
16685
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _369 => _369(c === true)]),
16668
16686
  onClick: (e) => e.stopPropagation(),
16669
16687
  disabled,
16670
16688
  "aria-label": title,
@@ -16732,7 +16750,7 @@ function TagSearchInput({
16732
16750
  limitTags = "auto"
16733
16751
  }) {
16734
16752
  const currentPlaceholder = tags.length === 0 ? placeholder : addMorePlaceholder;
16735
- const { visibleCount, middleRef, measureRef, textMeasureRef, badgeRef, inputRef } = _chunkW4YXUJOFcjs.useAutoLimitTags.call(void 0, {
16753
+ const { visibleCount, middleRef, measureRef, textMeasureRef, badgeRef, inputRef } = _chunkVP6PJLMIcjs.useAutoLimitTags.call(void 0, {
16736
16754
  count: tags.length,
16737
16755
  limitTags,
16738
16756
  placeholder: currentPlaceholder
@@ -16745,7 +16763,7 @@ function TagSearchInput({
16745
16763
  if (!showHiddenTags) return void 0;
16746
16764
  const handleClick = (e) => {
16747
16765
  const target = e.target;
16748
- if (!_optionalChain([hiddenTagsRef, 'access', _367 => _367.current, 'optionalAccess', _368 => _368.contains, 'call', _369 => _369(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _370 => _370.current, 'optionalAccess', _371 => _371.contains, 'call', _372 => _372(target)])) {
16766
+ if (!_optionalChain([hiddenTagsRef, 'access', _370 => _370.current, 'optionalAccess', _371 => _371.contains, 'call', _372 => _372(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _373 => _373.current, 'optionalAccess', _374 => _374.contains, 'call', _375 => _375(target)])) {
16749
16767
  setShowHiddenTags(false);
16750
16768
  }
16751
16769
  };
@@ -16756,7 +16774,7 @@ function TagSearchInput({
16756
16774
  const popup = hiddenTagsPopupRef.current;
16757
16775
  const badge = badgeRef.current;
16758
16776
  if (!popup || !badge) return;
16759
- const originLeft = _nullishCoalesce(_optionalChain([wrapperRef, 'access', _373 => _373.current, 'optionalAccess', _374 => _374.getBoundingClientRect, 'call', _375 => _375(), 'access', _376 => _376.left]), () => ( 0));
16777
+ const originLeft = _nullishCoalesce(_optionalChain([wrapperRef, 'access', _376 => _376.current, 'optionalAccess', _377 => _377.getBoundingClientRect, 'call', _378 => _378(), 'access', _379 => _379.left]), () => ( 0));
16760
16778
  popup.style.left = `${badge.getBoundingClientRect().left - originLeft}px`;
16761
16779
  });
16762
16780
  const hiddenCount = tags.length - visibleCount;
@@ -16768,13 +16786,13 @@ function TagSearchInput({
16768
16786
  e.preventDefault();
16769
16787
  onSubmit(searchValue);
16770
16788
  }
16771
- _optionalChain([onKeyDown, 'optionalCall', _377 => _377(e)]);
16789
+ _optionalChain([onKeyDown, 'optionalCall', _380 => _380(e)]);
16772
16790
  };
16773
16791
  const handleClearAll = (e) => {
16774
16792
  e.stopPropagation();
16775
16793
  e.preventDefault();
16776
- _optionalChain([onClearAll, 'optionalCall', _378 => _378()]);
16777
- _optionalChain([inputRef, 'access', _379 => _379.current, 'optionalAccess', _380 => _380.focus, 'call', _381 => _381()]);
16794
+ _optionalChain([onClearAll, 'optionalCall', _381 => _381()]);
16795
+ _optionalChain([inputRef, 'access', _382 => _382.current, 'optionalAccess', _383 => _383.focus, 'call', _384 => _384()]);
16778
16796
  };
16779
16797
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
16780
16798
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -16797,7 +16815,7 @@ function TagSearchInput({
16797
16815
  className
16798
16816
  ),
16799
16817
  onClick: () => {
16800
- if (!disabled) _optionalChain([inputRef, 'access', _382 => _382.current, 'optionalAccess', _383 => _383.focus, 'call', _384 => _384()]);
16818
+ if (!disabled) _optionalChain([inputRef, 'access', _385 => _385.current, 'optionalAccess', _386 => _386.focus, 'call', _387 => _387()]);
16801
16819
  },
16802
16820
  children: [
16803
16821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "size-4 text-ods-text-secondary md:size-6" }) }),
@@ -17013,7 +17031,7 @@ function MarkdownEditor({
17013
17031
  try {
17014
17032
  const mod = await Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor")));
17015
17033
  if (cancelled) return;
17016
- if (_optionalChain([mod, 'access', _385 => _385.commands, 'optionalAccess', _386 => _386.getExtraCommands])) {
17034
+ if (_optionalChain([mod, 'access', _388 => _388.commands, 'optionalAccess', _389 => _389.getExtraCommands])) {
17017
17035
  setDefaultExtraCommands(mod.commands.getExtraCommands());
17018
17036
  }
17019
17037
  } catch (error) {
@@ -17051,7 +17069,7 @@ function MarkdownEditor({
17051
17069
  const isImage = _chunkQTTBDMPOcjs.fileMediaType.call(void 0, file) === "image";
17052
17070
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
17053
17071
  insertTextAtCursor(markdown);
17054
- _optionalChain([onFileUploaded, 'optionalCall', _387 => _387(url, file.name)]);
17072
+ _optionalChain([onFileUploaded, 'optionalCall', _390 => _390(url, file.name)]);
17055
17073
  } catch (error) {
17056
17074
  console.error("File upload failed:", error);
17057
17075
  setUploadProgress("Upload failed. Please try again.");
@@ -17065,7 +17083,7 @@ function MarkdownEditor({
17065
17083
  const handleFileInputChange = _react.useCallback.call(void 0,
17066
17084
  (e) => {
17067
17085
  const input = e.target;
17068
- const file = _optionalChain([input, 'access', _388 => _388.files, 'optionalAccess', _389 => _389[0]]);
17086
+ const file = _optionalChain([input, 'access', _391 => _391.files, 'optionalAccess', _392 => _392[0]]);
17069
17087
  if (file) {
17070
17088
  void handleFileUpload(file);
17071
17089
  input.value = "";
@@ -17076,7 +17094,7 @@ function MarkdownEditor({
17076
17094
  const handlePaste = _react.useCallback.call(void 0,
17077
17095
  (e) => {
17078
17096
  if (!onUploadFile) return;
17079
- const items = _optionalChain([e, 'access', _390 => _390.clipboardData, 'optionalAccess', _391 => _391.items]);
17097
+ const items = _optionalChain([e, 'access', _393 => _393.clipboardData, 'optionalAccess', _394 => _394.items]);
17080
17098
  if (!items) return;
17081
17099
  for (const item of items) {
17082
17100
  if (item.type.startsWith("image/")) {
@@ -17101,7 +17119,7 @@ function MarkdownEditor({
17101
17119
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
17102
17120
  icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-3 w-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-3 w-3" }),
17103
17121
  execute: () => {
17104
- _optionalChain([fileInputRef, 'access', _392 => _392.current, 'optionalAccess', _393 => _393.click, 'call', _394 => _394()]);
17122
+ _optionalChain([fileInputRef, 'access', _395 => _395.current, 'optionalAccess', _396 => _396.click, 'call', _397 => _397()]);
17105
17123
  }
17106
17124
  } : null;
17107
17125
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -17113,7 +17131,7 @@ function MarkdownEditor({
17113
17131
  const EDGE_ZONE = 60;
17114
17132
  const MAX_SCROLL_SPEED = 15;
17115
17133
  const findScrollParent2 = _react.useCallback.call(void 0, (el) => {
17116
- let node = _optionalChain([el, 'optionalAccess', _395 => _395.parentElement]);
17134
+ let node = _optionalChain([el, 'optionalAccess', _398 => _398.parentElement]);
17117
17135
  while (node && node !== document.documentElement) {
17118
17136
  const { overflowY } = window.getComputedStyle(node);
17119
17137
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -17252,7 +17270,7 @@ function matchesAccept(file, accept) {
17252
17270
  });
17253
17271
  }
17254
17272
  function dragHasFiles(e) {
17255
- const types = _optionalChain([e, 'access', _396 => _396.dataTransfer, 'optionalAccess', _397 => _397.types]);
17273
+ const types = _optionalChain([e, 'access', _399 => _399.dataTransfer, 'optionalAccess', _400 => _400.types]);
17256
17274
  if (!types) return false;
17257
17275
  for (let i = 0; i < types.length; i++) {
17258
17276
  if (types[i] === "Files") return true;
@@ -17351,7 +17369,7 @@ function FileUpload({
17351
17369
  e.stopPropagation();
17352
17370
  setDragActive(false);
17353
17371
  if (disabled) return;
17354
- if (_optionalChain([e, 'access', _398 => _398.dataTransfer, 'access', _399 => _399.files, 'optionalAccess', _400 => _400.length])) {
17372
+ if (_optionalChain([e, 'access', _401 => _401.dataTransfer, 'access', _402 => _402.files, 'optionalAccess', _403 => _403.length])) {
17355
17373
  handleFiles(e.dataTransfer.files);
17356
17374
  }
17357
17375
  };
@@ -17379,7 +17397,7 @@ function FileUpload({
17379
17397
  e.preventDefault();
17380
17398
  dragCounter = 0;
17381
17399
  setDragActive(false);
17382
- if (_optionalChain([e, 'access', _401 => _401.dataTransfer, 'optionalAccess', _402 => _402.files, 'optionalAccess', _403 => _403.length])) {
17400
+ if (_optionalChain([e, 'access', _404 => _404.dataTransfer, 'optionalAccess', _405 => _405.files, 'optionalAccess', _406 => _406.length])) {
17383
17401
  handleFilesRef.current(e.dataTransfer.files);
17384
17402
  }
17385
17403
  };
@@ -17401,7 +17419,7 @@ function FileUpload({
17401
17419
  };
17402
17420
  }, [acceptWindowDrops, disabled]);
17403
17421
  const handleFileSelect = (e) => {
17404
- if (_optionalChain([e, 'access', _404 => _404.target, 'access', _405 => _405.files, 'optionalAccess', _406 => _406.length])) {
17422
+ if (_optionalChain([e, 'access', _407 => _407.target, 'access', _408 => _408.files, 'optionalAccess', _409 => _409.length])) {
17405
17423
  handleFiles(e.target.files);
17406
17424
  }
17407
17425
  };
@@ -17419,7 +17437,7 @@ function FileUpload({
17419
17437
  const openDialog = async () => {
17420
17438
  if (disabled) return;
17421
17439
  if (!pickFiles) {
17422
- _optionalChain([fileInputRef, 'access', _407 => _407.current, 'optionalAccess', _408 => _408.click, 'call', _409 => _409()]);
17440
+ _optionalChain([fileInputRef, 'access', _410 => _410.current, 'optionalAccess', _411 => _411.click, 'call', _412 => _412()]);
17423
17441
  return;
17424
17442
  }
17425
17443
  try {
@@ -17492,7 +17510,7 @@ function FileUpload({
17492
17510
  "button",
17493
17511
  {
17494
17512
  type: "button",
17495
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _410 => _410(entry.id)]),
17513
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _413 => _413(entry.id)]),
17496
17514
  className: "shrink-0 text-ods-error transition-opacity hover:opacity-80",
17497
17515
  "aria-label": `Remove ${entry.fileName}`,
17498
17516
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.TrashIcon, { className: "size-6" })
@@ -17624,7 +17642,7 @@ function ImageUploader({
17624
17642
  onChange(file);
17625
17643
  };
17626
17644
  const handleFileSelect = (e) => {
17627
- validateAndEmit(_optionalChain([e, 'access', _411 => _411.target, 'access', _412 => _412.files, 'optionalAccess', _413 => _413[0]]));
17645
+ validateAndEmit(_optionalChain([e, 'access', _414 => _414.target, 'access', _415 => _415.files, 'optionalAccess', _416 => _416[0]]));
17628
17646
  if (inputRef.current) inputRef.current.value = "";
17629
17647
  };
17630
17648
  const handleDrag = (e) => {
@@ -17639,11 +17657,11 @@ function ImageUploader({
17639
17657
  e.stopPropagation();
17640
17658
  setDragActive(false);
17641
17659
  if (!interactive) return;
17642
- validateAndEmit(_optionalChain([e, 'access', _414 => _414.dataTransfer, 'access', _415 => _415.files, 'optionalAccess', _416 => _416[0]]));
17660
+ validateAndEmit(_optionalChain([e, 'access', _417 => _417.dataTransfer, 'access', _418 => _418.files, 'optionalAccess', _419 => _419[0]]));
17643
17661
  };
17644
17662
  const openDialog = () => {
17645
17663
  if (!interactive) return;
17646
- _optionalChain([inputRef, 'access', _417 => _417.current, 'optionalAccess', _418 => _418.click, 'call', _419 => _419()]);
17664
+ _optionalChain([inputRef, 'access', _420 => _420.current, 'optionalAccess', _421 => _421.click, 'call', _422 => _422()]);
17647
17665
  };
17648
17666
  const handleRootKeyDown = (e) => {
17649
17667
  if (hasImage || !interactive) return;
@@ -17766,7 +17784,7 @@ var _reactcolorful = require('react-colorful');
17766
17784
  var Popover2 = PopoverPrimitive6.Root;
17767
17785
  var PopoverTrigger = PopoverPrimitive6.Trigger;
17768
17786
  var PopoverContent = _react.forwardRef.call(void 0, ({ className, align = "center", sideOffset = 4, collisionPadding, ...props }, ref) => {
17769
- const keyboardPadding = _chunkW4YXUJOFcjs.useKeyboardCollisionPadding.call(void 0, );
17787
+ const keyboardPadding = _chunkVP6PJLMIcjs.useKeyboardCollisionPadding.call(void 0, );
17770
17788
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17771
17789
  PopoverPrimitive6.Content,
17772
17790
  {
@@ -17815,28 +17833,28 @@ function ColorPresetSelect({
17815
17833
  }) {
17816
17834
  const selectedPreset = presets.find((p) => p.key === presetKey);
17817
17835
  const isCustom = !selectedPreset;
17818
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _420 => _420.label]), () => ( "Custom"));
17819
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _421 => _421.color]), () => ( value));
17836
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _423 => _423.label]), () => ( "Custom"));
17837
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _424 => _424.color]), () => ( value));
17820
17838
  const groups = [
17821
17839
  {
17822
17840
  items: [
17823
17841
  ...presets.map((p) => ({
17824
17842
  id: p.key,
17825
17843
  label: p.label,
17826
- icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: p.color }),
17844
+ icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: p.color }),
17827
17845
  onClick: () => onChange({ color: p.color, preset: p.key })
17828
17846
  })),
17829
17847
  {
17830
17848
  id: CUSTOM_PRESET_KEY,
17831
17849
  label: "Custom",
17832
- icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
17850
+ icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
17833
17851
  onClick: () => onChange({ color: value, preset: void 0 })
17834
17852
  }
17835
17853
  ]
17836
17854
  }
17837
17855
  ];
17838
17856
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17839
- _chunkLXKEHZUVcjs.ActionsMenuDropdown,
17857
+ _chunkCOX4CSXZcjs.ActionsMenuDropdown,
17840
17858
  {
17841
17859
  groups,
17842
17860
  align: "start",
@@ -17846,7 +17864,7 @@ function ColorPresetSelect({
17846
17864
  {
17847
17865
  disabled,
17848
17866
  "aria-label": `Color: ${displayLabel}`,
17849
- startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: displayColor }),
17867
+ startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: displayColor }),
17850
17868
  selectedLabel: displayLabel,
17851
17869
  endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
17852
17870
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "group", className)
@@ -17867,7 +17885,7 @@ function HexInputs({ value, onChange }) {
17867
17885
  }
17868
17886
  const commit = () => {
17869
17887
  const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
17870
- if (_chunkLXKEHZUVcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
17888
+ if (_chunkCOX4CSXZcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
17871
17889
  else setDraft(value);
17872
17890
  };
17873
17891
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -17931,12 +17949,12 @@ function ChannelInput({
17931
17949
  );
17932
17950
  }
17933
17951
  function RgbInputs({ value, onChange }) {
17934
- const rgb = _nullishCoalesce(_chunkLXKEHZUVcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
17952
+ const rgb = _nullishCoalesce(_chunkCOX4CSXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
17935
17953
  const update = (next) => {
17936
17954
  const r = _nullishCoalesce(next.r, () => ( rgb.r));
17937
17955
  const g = _nullishCoalesce(next.g, () => ( rgb.g));
17938
17956
  const b = _nullishCoalesce(next.b, () => ( rgb.b));
17939
- onChange(_chunkLXKEHZUVcjs.rgbToHex.call(void 0, r, g, b));
17957
+ onChange(_chunkCOX4CSXZcjs.rgbToHex.call(void 0, r, g, b));
17940
17958
  };
17941
17959
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
17942
17960
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
@@ -17945,14 +17963,14 @@ function RgbInputs({ value, onChange }) {
17945
17963
  ] });
17946
17964
  }
17947
17965
  function HslInputs({ value, onChange }) {
17948
- const rgb = _nullishCoalesce(_chunkLXKEHZUVcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
17949
- const hsl = _chunkLXKEHZUVcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
17966
+ const rgb = _nullishCoalesce(_chunkCOX4CSXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
17967
+ const hsl = _chunkCOX4CSXZcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
17950
17968
  const update = (next) => {
17951
17969
  const h = _nullishCoalesce(next.h, () => ( hsl.h));
17952
17970
  const s = _nullishCoalesce(next.s, () => ( hsl.s));
17953
17971
  const l = _nullishCoalesce(next.l, () => ( hsl.l));
17954
- const out = _chunkLXKEHZUVcjs.hslToRgb.call(void 0, h, s, l);
17955
- onChange(_chunkLXKEHZUVcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
17972
+ const out = _chunkCOX4CSXZcjs.hslToRgb.call(void 0, h, s, l);
17973
+ onChange(_chunkCOX4CSXZcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
17956
17974
  };
17957
17975
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
17958
17976
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
@@ -17978,7 +17996,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
17978
17996
  {
17979
17997
  disabled,
17980
17998
  "aria-label": "Pick custom color",
17981
- startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: value }),
17999
+ startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: value }),
17982
18000
  selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
17983
18001
  endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
17984
18002
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "group", className)
@@ -17994,7 +18012,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
17994
18012
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
17995
18013
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
17996
18014
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17997
- _chunkLXKEHZUVcjs.ActionsMenuDropdown,
18015
+ _chunkCOX4CSXZcjs.ActionsMenuDropdown,
17998
18016
  {
17999
18017
  groups: formatGroups,
18000
18018
  align: "start",
@@ -18042,7 +18060,7 @@ function TicketStatusConfigRow({
18042
18060
  isDragging,
18043
18061
  moveButtons
18044
18062
  }) {
18045
- const dragAndDropEnabled = _chunkW4YXUJOFcjs.useDragAndDropEnabled.call(void 0, );
18063
+ const dragAndDropEnabled = _chunkVP6PJLMIcjs.useDragAndDropEnabled.call(void 0, );
18046
18064
  const nameInputId = _react.useId.call(void 0, );
18047
18065
  const isSystem = variant === "system";
18048
18066
  const isCustomColor = !isSystem && presetKey === void 0;
@@ -18051,7 +18069,7 @@ function TicketStatusConfigRow({
18051
18069
  const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
18052
18070
  const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
18053
18071
  const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18054
- _chunkLXKEHZUVcjs.TicketStatusTag,
18072
+ _chunkCOX4CSXZcjs.TicketStatusTag,
18055
18073
  {
18056
18074
  status: statusKey,
18057
18075
  label: name || " ",
@@ -18112,7 +18130,7 @@ function TicketStatusConfigRow({
18112
18130
  {
18113
18131
  id: nameInputId,
18114
18132
  value: name,
18115
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _422 => _422(e.target.value)]),
18133
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _425 => _425(e.target.value)]),
18116
18134
  disabled: isSystem,
18117
18135
  readOnly: isSystem,
18118
18136
  maxLength: 50
@@ -18203,7 +18221,7 @@ function formatTestRunDuration(ms) {
18203
18221
  var RESULT_COLUMN_MIN_WIDTH = 176;
18204
18222
  var SKELETON_COLUMNS = 6;
18205
18223
  function TestResultsSkeleton() {
18206
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
18224
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
18207
18225
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-3/4 animate-pulse rounded-sm bg-ods-bg-surface" }) }, `skeleton-header-${i}`)) }),
18208
18226
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "animate-pulse overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] md:h-[78px]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[160px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 w-3/4 rounded-sm bg-ods-bg-surface" }) }, `skeleton-cell-${i}`)) }) })
18209
18227
  ] }) });
@@ -18238,13 +18256,13 @@ function TestResultsTable({ rows, loading }) {
18238
18256
  if (loading) {
18239
18257
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
18240
18258
  }
18241
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
18259
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
18242
18260
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
18243
18261
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
18244
18262
  ] }) }) });
18245
18263
  }
18246
18264
  function TestRunErrorBanner({ error, className }) {
18247
- const { copy } = _chunkW4YXUJOFcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
18265
+ const { copy } = _chunkVP6PJLMIcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
18248
18266
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
18249
18267
  "div",
18250
18268
  {
@@ -18344,7 +18362,7 @@ function useTestRunState(campaign) {
18344
18362
  const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
18345
18363
  const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
18346
18364
  const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
18347
- const startedLabel = showTiming && campaign.startedAt ? _chunkLXKEHZUVcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
18365
+ const startedLabel = showTiming && campaign.startedAt ? _chunkCOX4CSXZcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
18348
18366
  const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
18349
18367
  const displayRows = _react.useMemo.call(void 0,
18350
18368
  () => campaign.results.map(
@@ -18654,14 +18672,14 @@ function TicketInfoSection({
18654
18672
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18655
18673
  _chunkQTTBDMPOcjs.SquareAvatar,
18656
18674
  {
18657
- src: _optionalChain([organization, 'optionalAccess', _423 => _423.imageSrc]),
18658
- alt: _optionalChain([organization, 'optionalAccess', _424 => _424.name]),
18659
- fallback: _optionalChain([organization, 'optionalAccess', _425 => _425.name]) || "Org",
18675
+ src: _optionalChain([organization, 'optionalAccess', _426 => _426.imageSrc]),
18676
+ alt: _optionalChain([organization, 'optionalAccess', _427 => _427.name]),
18677
+ fallback: _optionalChain([organization, 'optionalAccess', _428 => _428.name]) || "Org",
18660
18678
  size: "md",
18661
18679
  className: "shrink-0"
18662
18680
  }
18663
18681
  ),
18664
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([organization, 'optionalAccess', _426 => _426.name]) || "Unassigned", label: "Organization" })
18682
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([organization, 'optionalAccess', _429 => _429.name]) || "Unassigned", label: "Organization" })
18665
18683
  ] }),
18666
18684
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18667
18685
  AssigneeDropdown,
@@ -18679,10 +18697,10 @@ function TicketInfoSection({
18679
18697
  ] }),
18680
18698
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block truncate text-ods-text-secondary text-h6", children: "Assigned" })
18681
18699
  ] }) }),
18682
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _427 => _427.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _428 => _428.icon]), onClick: _optionalChain([device, 'optionalAccess', _429 => _429.onClick]) }),
18700
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _430 => _430.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _431 => _431.icon]), onClick: _optionalChain([device, 'optionalAccess', _432 => _432.onClick]) }),
18683
18701
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
18684
18702
  (status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18685
- _chunkLXKEHZUVcjs.TicketStatusTag,
18703
+ _chunkCOX4CSXZcjs.TicketStatusTag,
18686
18704
  {
18687
18705
  status: _nullishCoalesce(status, () => ( "")),
18688
18706
  label: statusLabel,
@@ -18721,7 +18739,7 @@ function TicketInfoSection({
18721
18739
  expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
18722
18740
  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" }) }),
18723
18741
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
18724
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.SimpleMarkdownRenderer, { content: description }),
18742
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.SimpleMarkdownRenderer, { content: description }),
18725
18743
  attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
18726
18744
  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, _chunkQTTBDMPOcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
18727
18745
  (notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18746,7 +18764,7 @@ function renderTicketStatusOption(option, isSelected) {
18746
18764
  const { label, color } = option;
18747
18765
  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: [
18748
18766
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
18749
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color }),
18767
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color }),
18750
18768
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
18751
18769
  ] }),
18752
18770
  isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
@@ -18784,16 +18802,16 @@ function TakeOverTicketModal({
18784
18802
  setAssigneeId(_nullishCoalesce(initialAssigneeId, () => ( null)));
18785
18803
  }
18786
18804
  }
18787
- const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _430 => _430[0], 'optionalAccess', _431 => _431.value]))), () => ( null));
18805
+ const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _433 => _433[0], 'optionalAccess', _434 => _434.value]))), () => ( null));
18788
18806
  const selectedStatus = statusOptions.find((o) => o.value === selectedStatusId);
18789
18807
  const selectedAssignee = assigneeOptions.find((o) => o.value === assigneeId);
18790
18808
  const handleConfirm = () => {
18791
18809
  if (!selectedStatusId || !assigneeId || isPending) return;
18792
18810
  onConfirm({ statusId: selectedStatusId, assigneeId });
18793
18811
  };
18794
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen, onClose: isPending ? () => {
18812
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen, onClose: isPending ? () => {
18795
18813
  } : onClose, className: "text-left md:max-w-[600px]", children: [
18796
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: "Take Over Ticket" }) }),
18814
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: "Take Over Ticket" }) }),
18797
18815
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
18798
18816
  "The ticket ",
18799
18817
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
@@ -18808,7 +18826,7 @@ function TakeOverTicketModal({
18808
18826
  value: selectedStatusId,
18809
18827
  onChange: setStatusId,
18810
18828
  placeholder: "Select Status",
18811
- startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
18829
+ startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
18812
18830
  renderOption: renderTicketStatusOption
18813
18831
  }
18814
18832
  ) }),
@@ -18835,7 +18853,7 @@ function TakeOverTicketModal({
18835
18853
  }
18836
18854
  ) })
18837
18855
  ] }),
18838
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: [
18856
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: [
18839
18857
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
18840
18858
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
18841
18859
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18882,7 +18900,7 @@ function ReopenTicketModal({
18882
18900
  setReason("");
18883
18901
  }
18884
18902
  }
18885
- const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _432 => _432[0], 'optionalAccess', _433 => _433.value]))), () => ( null));
18903
+ const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _435 => _435[0], 'optionalAccess', _436 => _436.value]))), () => ( null));
18886
18904
  const selectedStatus = statusOptions.find((o) => o.value === selectedStatusId);
18887
18905
  const selectedAssignee = assigneeOptions.find((o) => o.value === assigneeId);
18888
18906
  const handleConfirm = () => {
@@ -18894,9 +18912,9 @@ function ReopenTicketModal({
18894
18912
  reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
18895
18913
  });
18896
18914
  };
18897
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen, onClose: isPending ? () => {
18915
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen, onClose: isPending ? () => {
18898
18916
  } : onClose, className: "text-left md:max-w-[600px]", children: [
18899
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: "Reopen Ticket" }) }),
18917
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
18900
18918
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
18901
18919
  "The ticket ",
18902
18920
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
@@ -18911,7 +18929,7 @@ function ReopenTicketModal({
18911
18929
  value: selectedStatusId,
18912
18930
  onChange: setStatusId,
18913
18931
  placeholder: "Select Status",
18914
- startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
18932
+ startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
18915
18933
  renderOption: renderTicketStatusOption
18916
18934
  }
18917
18935
  ) }),
@@ -18949,7 +18967,7 @@ function ReopenTicketModal({
18949
18967
  disabled: isPending
18950
18968
  }
18951
18969
  ) }),
18952
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: [
18970
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: [
18953
18971
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
18954
18972
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
18955
18973
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18998,9 +19016,9 @@ function ReopenTicketRequestModal({
18998
19016
  ...showHandoffOption ? { handoffToTechnician: handoff } : {}
18999
19017
  });
19000
19018
  };
19001
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Modal, { isOpen, onClose: isPending ? () => {
19019
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Modal, { isOpen, onClose: isPending ? () => {
19002
19020
  } : onClose, className: "text-left md:max-w-[600px]", children: [
19003
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ModalTitle, { children: "Reopen Ticket" }) }),
19021
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
19004
19022
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: "This ticket will be reopened and the AI assistant will continue helping you." }),
19005
19023
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19006
19024
  Textarea,
@@ -19024,7 +19042,7 @@ function ReopenTicketRequestModal({
19024
19042
  disabled: isPending
19025
19043
  }
19026
19044
  ),
19027
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.ModalFooter, { children: [
19045
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.ModalFooter, { children: [
19028
19046
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
19029
19047
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JRKNGJ4cjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
19030
19048
  ] })
@@ -19116,7 +19134,7 @@ function usePhotoOrientations(urls) {
19116
19134
  }
19117
19135
  };
19118
19136
  }, [key]);
19119
- return _optionalChain([measured, 'optionalAccess', _434 => _434.key]) === key ? measured.byUrl : null;
19137
+ return _optionalChain([measured, 'optionalAccess', _437 => _437.key]) === key ? measured.byUrl : null;
19120
19138
  }
19121
19139
  function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, loading = false }) {
19122
19140
  const rootRef = _react.useRef.call(void 0, null);
@@ -19125,7 +19143,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
19125
19143
  const root = rootRef.current;
19126
19144
  if (!root) return void 0;
19127
19145
  const read = () => setBox(
19128
- (previous) => _optionalChain([previous, 'optionalAccess', _435 => _435.width]) === root.clientWidth && previous.height === root.clientHeight ? previous : { width: root.clientWidth, height: root.clientHeight }
19146
+ (previous) => _optionalChain([previous, 'optionalAccess', _438 => _438.width]) === root.clientWidth && previous.height === root.clientHeight ? previous : { width: root.clientWidth, height: root.clientHeight }
19129
19147
  );
19130
19148
  read();
19131
19149
  if (typeof ResizeObserver === "undefined") return void 0;
@@ -19162,11 +19180,11 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
19162
19180
  if (images.length === 0 && !loading) return null;
19163
19181
  const columnsToDraw = loading ? null : layout;
19164
19182
  const gridStyle = {
19165
- gridTemplateColumns: `repeat(${_optionalChain([columnsToDraw, 'optionalAccess', _436 => _436.length]) || columns}, minmax(0, 1fr))`,
19183
+ gridTemplateColumns: `repeat(${_optionalChain([columnsToDraw, 'optionalAccess', _439 => _439.length]) || columns}, minmax(0, 1fr))`,
19166
19184
  gap: COLUMN_GAP_PX
19167
19185
  };
19168
19186
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunkX7CEWD6Vcjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19169
- _chunkLXKEHZUVcjs.MarqueeWall,
19187
+ _chunkCOX4CSXZcjs.MarqueeWall,
19170
19188
  {
19171
19189
  axis: "y",
19172
19190
  reverse: index % 2 === 1,
@@ -19257,9 +19275,9 @@ function LazyMount({
19257
19275
  placeholder = null,
19258
19276
  className,
19259
19277
  style,
19260
- rootMargin = _chunkDMUUWHIIcjs.NEAR_VIEWPORT_ROOT_MARGIN
19278
+ rootMargin = _chunk26GBOUIPcjs.NEAR_VIEWPORT_ROOT_MARGIN
19261
19279
  }) {
19262
- const { ref, isNear } = _chunkDMUUWHIIcjs.useNearViewport.call(void 0, rootMargin);
19280
+ const { ref, isNear } = _chunk26GBOUIPcjs.useNearViewport.call(void 0, rootMargin);
19263
19281
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className, style, children: isNear ? children : placeholder });
19264
19282
  }
19265
19283
 
@@ -19310,7 +19328,7 @@ var INCIDENT_TONE = {
19310
19328
  approved: "success"
19311
19329
  };
19312
19330
  function IncidentStatusLine({ status, label, className }) {
19313
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
19331
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
19314
19332
  }
19315
19333
  function SourceTag({ children }) {
19316
19334
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 rounded-md border border-ods-border px-2 py-1 text-ods-text-secondary text-h5", children });
@@ -19415,11 +19433,11 @@ function SnapCarousel({
19415
19433
  const trackRef = _react.useRef.call(void 0, null);
19416
19434
  const [index, setIndex] = _react.useState.call(void 0, 0);
19417
19435
  const [pressed, setPressed] = _react.useState.call(void 0, false);
19418
- const { ref: viewRef, inView } = _chunkW4YXUJOFcjs.useInView.call(void 0, { threshold: 0.5 });
19419
- const auto = _chunkW4YXUJOFcjs.useAutoplay.call(void 0, inView);
19436
+ const { ref: viewRef, inView } = _chunk26GBOUIPcjs.useInView.call(void 0, { threshold: 0.5 });
19437
+ const auto = _chunk26GBOUIPcjs.useAutoplay.call(void 0, inView);
19420
19438
  const count = items.length;
19421
19439
  const slideStep = _react.useCallback.call(void 0, () => {
19422
- const first = _optionalChain([trackRef, 'access', _437 => _437.current, 'optionalAccess', _438 => _438.firstElementChild]);
19440
+ const first = _optionalChain([trackRef, 'access', _440 => _440.current, 'optionalAccess', _441 => _441.firstElementChild]);
19423
19441
  return first ? first.offsetWidth + GAP_PX : 0;
19424
19442
  }, []);
19425
19443
  const goTo = _react.useCallback.call(void 0,
@@ -19815,10 +19833,10 @@ function AccountDetailsFields({
19815
19833
  onKeyDown,
19816
19834
  layout = "stacked"
19817
19835
  }) {
19818
- const firstNameErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _439 => _439.firstName]), firstName);
19819
- const lastNameErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _440 => _440.lastName]), lastName);
19820
- const passwordErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _441 => _441.password]), password);
19821
- const confirmErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _442 => _442.confirmPassword]), confirmPassword);
19836
+ const firstNameErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _442 => _442.firstName]), firstName);
19837
+ const lastNameErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _443 => _443.lastName]), lastName);
19838
+ const passwordErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _444 => _444.password]), password);
19839
+ const confirmErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _445 => _445.confirmPassword]), confirmPassword);
19822
19840
  const names = [
19823
19841
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19824
19842
  _chunkKWX65373cjs.Input,
@@ -20076,7 +20094,7 @@ function SsoProviderButtons({
20076
20094
  disabled: disabled || (enabledProviders ? !enabledProviders.includes(provider) : false),
20077
20095
  className: "disabled:bg-ods-bg",
20078
20096
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon2, { className: "h-5 w-5" }),
20079
- onClick: () => _optionalChain([onSsoClick, 'optionalCall', _443 => _443(provider)]),
20097
+ onClick: () => _optionalChain([onSsoClick, 'optionalCall', _446 => _446(provider)]),
20080
20098
  children: `${actionLabel} ${meta.name}`
20081
20099
  },
20082
20100
  provider
@@ -20258,9 +20276,9 @@ function CreateOrganizationForm({
20258
20276
  }) {
20259
20277
  const hasSso = !!ssoProviders && ssoProviders.length > 0;
20260
20278
  const fieldsDisabled = disabled || loading;
20261
- const emailErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _444 => _444.email]), _nullishCoalesce(email, () => ( "")));
20262
- const orgNameErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _445 => _445.organizationName]), organizationName);
20263
- const domainErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _446 => _446.domain]), domain);
20279
+ const emailErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _447 => _447.email]), _nullishCoalesce(email, () => ( "")));
20280
+ const orgNameErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _448 => _448.organizationName]), organizationName);
20281
+ const domainErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _449 => _449.domain]), domain);
20264
20282
  const handleKeyDown = (event) => {
20265
20283
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
20266
20284
  onSubmit();
@@ -20285,11 +20303,11 @@ function CreateOrganizationForm({
20285
20303
  label: "Email",
20286
20304
  placeholder: "username@mail.com",
20287
20305
  value: email,
20288
- error: _nullishCoalesce(emailErr.error, () => ( _optionalChain([emailStatus, 'optionalAccess', _447 => _447.message]))),
20289
- errorVariant: emailErr.error ? "error" : _optionalChain([emailStatus, 'optionalAccess', _448 => _448.variant]),
20306
+ error: _nullishCoalesce(emailErr.error, () => ( _optionalChain([emailStatus, 'optionalAccess', _450 => _450.message]))),
20307
+ errorVariant: emailErr.error ? "error" : _optionalChain([emailStatus, 'optionalAccess', _451 => _451.variant]),
20290
20308
  disabled: fieldsDisabled,
20291
20309
  onBlur: emailErr.onBlur,
20292
- onChange: (event) => _optionalChain([onEmailChange, 'optionalCall', _449 => _449(event.target.value)]),
20310
+ onChange: (event) => _optionalChain([onEmailChange, 'optionalCall', _452 => _452(event.target.value)]),
20293
20311
  onKeyDown: handleKeyDown
20294
20312
  }
20295
20313
  ),
@@ -20313,8 +20331,8 @@ function CreateOrganizationForm({
20313
20331
  label: "Domain",
20314
20332
  placeholder: domainPlaceholder,
20315
20333
  value: domain,
20316
- error: _nullishCoalesce(domainErr.error, () => ( _optionalChain([domainStatus, 'optionalAccess', _450 => _450.message]))),
20317
- errorVariant: domainErr.error ? "error" : _optionalChain([domainStatus, 'optionalAccess', _451 => _451.variant]),
20334
+ error: _nullishCoalesce(domainErr.error, () => ( _optionalChain([domainStatus, 'optionalAccess', _453 => _453.message]))),
20335
+ errorVariant: domainErr.error ? "error" : _optionalChain([domainStatus, 'optionalAccess', _454 => _454.variant]),
20318
20336
  disabled: fieldsDisabled,
20319
20337
  onBlur: domainErr.onBlur,
20320
20338
  endAdornment: domainSuffix ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: domainSuffix }) : void 0,
@@ -20349,7 +20367,7 @@ function CreateOrganizationForm({
20349
20367
  label: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TermsAgreementLabel, { termsUrl, privacyPolicyUrl }),
20350
20368
  checked: agreedToTerms,
20351
20369
  disabled: fieldsDisabled,
20352
- error: _optionalChain([errors, 'optionalAccess', _452 => _452.terms]),
20370
+ error: _optionalChain([errors, 'optionalAccess', _455 => _455.terms]),
20353
20371
  onCheckedChange: onAgreedToTermsChange
20354
20372
  }
20355
20373
  ),
@@ -20476,10 +20494,10 @@ function LoginForm({
20476
20494
  className
20477
20495
  }) {
20478
20496
  const fieldDisabled = disabled || loading;
20479
- const emailErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _453 => _453.email]), email);
20497
+ const emailErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _456 => _456.email]), email);
20480
20498
  const handleKeyDown = (event) => {
20481
20499
  if (event.key !== "Enter" || fieldDisabled || submitDisabled) return;
20482
- _optionalChain([onSubmitClick, 'optionalCall', _454 => _454()]);
20500
+ _optionalChain([onSubmitClick, 'optionalCall', _457 => _457()]);
20483
20501
  };
20484
20502
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
20485
20503
  "div",
@@ -20511,8 +20529,8 @@ function LoginForm({
20511
20529
  label: "Email",
20512
20530
  placeholder: emailPlaceholder,
20513
20531
  value: email,
20514
- error: _nullishCoalesce(emailErr.error, () => ( _optionalChain([emailStatus, 'optionalAccess', _455 => _455.message]))),
20515
- errorVariant: emailErr.error ? "error" : _optionalChain([emailStatus, 'optionalAccess', _456 => _456.variant]),
20532
+ error: _nullishCoalesce(emailErr.error, () => ( _optionalChain([emailStatus, 'optionalAccess', _458 => _458.message]))),
20533
+ errorVariant: emailErr.error ? "error" : _optionalChain([emailStatus, 'optionalAccess', _459 => _459.variant]),
20516
20534
  disabled: fieldDisabled,
20517
20535
  onBlur: emailErr.onBlur,
20518
20536
  onChange: (event) => onEmailChange(event.target.value),
@@ -20618,8 +20636,8 @@ function OpenFrameSsoLoginForm({
20618
20636
  className
20619
20637
  }) {
20620
20638
  const fieldsDisabled = disabled || loading;
20621
- const emailErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _457 => _457.email]), email);
20622
- const passwordErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _458 => _458.password]), password);
20639
+ const emailErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _460 => _460.email]), email);
20640
+ const passwordErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _461 => _461.password]), password);
20623
20641
  const handleKeyDown = (event) => {
20624
20642
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
20625
20643
  onSubmit();
@@ -20724,7 +20742,7 @@ function OpenFrameSsoSignUpForm({
20724
20742
  className
20725
20743
  }) {
20726
20744
  const fieldsDisabled = disabled || loading;
20727
- const emailErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _459 => _459.email]), email);
20745
+ const emailErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _462 => _462.email]), email);
20728
20746
  const handleKeyDown = (event) => {
20729
20747
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
20730
20748
  onSubmit();
@@ -20829,8 +20847,8 @@ function PasswordResetForm({
20829
20847
  className
20830
20848
  }) {
20831
20849
  const fieldsDisabled = disabled || loading;
20832
- const passwordErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _460 => _460.password]), password);
20833
- const confirmErr = _chunkW4YXUJOFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _461 => _461.confirmPassword]), confirmPassword);
20850
+ const passwordErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _463 => _463.password]), password);
20851
+ const confirmErr = _chunkVP6PJLMIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _464 => _464.confirmPassword]), confirmPassword);
20834
20852
  const handleKeyDown = (event) => {
20835
20853
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
20836
20854
  onSubmit();
@@ -20952,7 +20970,7 @@ function SsoJoinForm({
20952
20970
  className
20953
20971
  }) {
20954
20972
  const fieldsDisabled = disabled || loading;
20955
- const displayName = _optionalChain([name, 'optionalAccess', _462 => _462.trim, 'call', _463 => _463()]) || _optionalChain([email, 'optionalAccess', _464 => _464.trim, 'call', _465 => _465()]) || "";
20973
+ const displayName = _optionalChain([name, 'optionalAccess', _465 => _465.trim, 'call', _466 => _466()]) || _optionalChain([email, 'optionalAccess', _467 => _467.trim, 'call', _468 => _468()]) || "";
20956
20974
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
20957
20975
  "div",
20958
20976
  {
@@ -21135,7 +21153,7 @@ function ChangelogManager({
21135
21153
  descriptionLabel = "Description",
21136
21154
  descriptionPlaceholder = "Detailed explanation of the change..."
21137
21155
  }) {
21138
- const tagLabelOf = (value) => _optionalChain([tagOptions, 'optionalAccess', _466 => _466.find, 'call', _467 => _467((o) => o.value === value), 'optionalAccess', _468 => _468.label]);
21156
+ const tagLabelOf = (value) => _optionalChain([tagOptions, 'optionalAccess', _469 => _469.find, 'call', _470 => _470((o) => o.value === value), 'optionalAccess', _471 => _471.label]);
21139
21157
  const entryCount = entries.length;
21140
21158
  const allExpanded = () => new Set(Array.from({ length: entryCount }, (_, i) => i));
21141
21159
  const [expandedIndices, setExpandedIndices] = _react.useState.call(void 0,
@@ -21153,7 +21171,7 @@ function ChangelogManager({
21153
21171
  title: "",
21154
21172
  description: "",
21155
21173
  ...showVisibilityToggle && { visibility: "public" },
21156
- ..._optionalChain([tagOptions, 'optionalAccess', _469 => _469.length]) && { tag: tagOptions[0].value }
21174
+ ..._optionalChain([tagOptions, 'optionalAccess', _472 => _472.length]) && { tag: tagOptions[0].value }
21157
21175
  };
21158
21176
  onChange([...entries, newEntry]);
21159
21177
  setExpandedIndices((prev) => /* @__PURE__ */ new Set([...prev, entries.length]));
@@ -21639,13 +21657,13 @@ var SectionSelector = ({
21639
21657
  const listRef = _react.useRef.call(void 0, null);
21640
21658
  _react.useEffect.call(void 0, () => {
21641
21659
  const list = listRef.current;
21642
- const active = _optionalChain([list, 'optionalAccess', _470 => _470.querySelector, 'call', _471 => _471('[role="tab"][aria-selected="true"]')]);
21660
+ const active = _optionalChain([list, 'optionalAccess', _473 => _473.querySelector, 'call', _474 => _474('[role="tab"][aria-selected="true"]')]);
21643
21661
  if (!list || !active || list.scrollWidth <= list.clientWidth) return;
21644
21662
  const offset = active.getBoundingClientRect().left - list.getBoundingClientRect().left;
21645
21663
  list.scrollLeft += offset - (list.clientWidth - active.clientWidth) / 2;
21646
21664
  }, [activeSection]);
21647
21665
  const enabled = sections.filter((section) => !section.disabled && !disabled);
21648
- const tabStopId = enabled.some((section) => section.id === activeSection) ? activeSection : _optionalChain([enabled, 'access', _472 => _472[0], 'optionalAccess', _473 => _473.id]);
21666
+ const tabStopId = enabled.some((section) => section.id === activeSection) ? activeSection : _optionalChain([enabled, 'access', _475 => _475[0], 'optionalAccess', _476 => _476.id]);
21649
21667
  const onKeyDown = (event) => {
21650
21668
  const step = event.key === "ArrowRight" || event.key === "ArrowDown" ? 1 : event.key === "ArrowLeft" || event.key === "ArrowUp" ? -1 : 0;
21651
21669
  if (!step && event.key !== "Home" && event.key !== "End") return;
@@ -21658,7 +21676,7 @@ var SectionSelector = ({
21658
21676
  const next = event.key === "Home" ? enabled[0] : event.key === "End" ? enabled[enabled.length - 1] : enabled[(at + step + enabled.length) % enabled.length];
21659
21677
  onSectionChange(next.id);
21660
21678
  requestAnimationFrame(
21661
- () => _optionalChain([listRef, 'access', _474 => _474.current, 'optionalAccess', _475 => _475.querySelector, 'call', _476 => _476('[role="tab"][aria-selected="true"]'), 'optionalAccess', _477 => _477.focus, 'call', _478 => _478()])
21679
+ () => _optionalChain([listRef, 'access', _477 => _477.current, 'optionalAccess', _478 => _478.querySelector, 'call', _479 => _479('[role="tab"][aria-selected="true"]'), 'optionalAccess', _480 => _480.focus, 'call', _481 => _481()])
21662
21680
  );
21663
21681
  };
21664
21682
  const getButtonWidthClasses = () => {
@@ -21701,10 +21719,10 @@ var getContentDimensions = (config) => {
21701
21719
  const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
21702
21720
  const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
21703
21721
  const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
21704
- const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _479 => _479.mobileContentDimensions, 'optionalAccess', _480 => _480.width]))), () => ( defaultMobile.width));
21705
- const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _481 => _481.mobileContentDimensions, 'optionalAccess', _482 => _482.height]))), () => ( defaultMobile.height));
21706
- const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _483 => _483.desktopContentDimensions, 'optionalAccess', _484 => _484.width]))), () => ( defaultDesktop.width));
21707
- const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _485 => _485.desktopContentDimensions, 'optionalAccess', _486 => _486.height]))), () => ( defaultDesktop.height));
21722
+ const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _482 => _482.mobileContentDimensions, 'optionalAccess', _483 => _483.width]))), () => ( defaultMobile.width));
21723
+ const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _484 => _484.mobileContentDimensions, 'optionalAccess', _485 => _485.height]))), () => ( defaultMobile.height));
21724
+ const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _486 => _486.desktopContentDimensions, 'optionalAccess', _487 => _487.width]))), () => ( defaultDesktop.width));
21725
+ const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _488 => _488.desktopContentDimensions, 'optionalAccess', _489 => _489.height]))), () => ( defaultDesktop.height));
21708
21726
  return {
21709
21727
  mobile: { width: mobileWidth, height: mobileHeight },
21710
21728
  desktop: { width: desktopWidth, height: desktopHeight }
@@ -21860,7 +21878,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
21860
21878
  const contentDimensions = getContentDimensions(config);
21861
21879
  const mobileHeight = contentDimensions.mobile.height;
21862
21880
  const calculatedHeight = Math.max(mobileHeight + 100, 400);
21863
- return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _487 => _487.innerHeight]) * 0.85 || 650)}px`;
21881
+ return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _490 => _490.innerHeight]) * 0.85 || 650)}px`;
21864
21882
  })(),
21865
21883
  minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
21866
21884
  const contentDimensions = getContentDimensions(config);
@@ -21918,7 +21936,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
21918
21936
  sandbox: "allow-scripts allow-same-origin allow-popups allow-presentation",
21919
21937
  title: config.title,
21920
21938
  loading: "eager",
21921
- ..._chunkLXKEHZUVcjs.fetchPriorityProp.call(void 0, "high")
21939
+ ..._chunkCOX4CSXZcjs.fetchPriorityProp.call(void 0, "high")
21922
21940
  },
21923
21941
  iframeKey
21924
21942
  ),
@@ -21963,7 +21981,7 @@ var FigmaPrototypeViewer = ({
21963
21981
  const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
21964
21982
  const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
21965
21983
  const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
21966
- config.defaultSectionId || _optionalChain([config, 'access', _488 => _488.sections, 'access', _489 => _489[0], 'optionalAccess', _490 => _490.id]) || ""
21984
+ config.defaultSectionId || _optionalChain([config, 'access', _491 => _491.sections, 'access', _492 => _492[0], 'optionalAccess', _493 => _493.id]) || ""
21967
21985
  );
21968
21986
  const activeSection = externalActiveSection || internalActiveSection;
21969
21987
  const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
@@ -22061,19 +22079,19 @@ var FigmaPrototypeViewer = ({
22061
22079
  setIframeState("READY");
22062
22080
  break;
22063
22081
  case "PRESENTED_NODE_CHANGED":
22064
- if (_optionalChain([figmaEvent, 'access', _491 => _491.data, 'optionalAccess', _492 => _492.presentedNodeId])) {
22082
+ if (_optionalChain([figmaEvent, 'access', _494 => _494.data, 'optionalAccess', _495 => _495.presentedNodeId])) {
22065
22083
  setCurrentNodeId(figmaEvent.data.presentedNodeId);
22066
22084
  if (!isNavigating) {
22067
22085
  const matchingSection = configSections.find((s) => {
22068
- const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _493 => _493.data, 'optionalAccess', _494 => _494.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _495 => _495.data, 'optionalAccess', _496 => _496.presentedNodeId]);
22069
- const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _497 => _497.data, 'optionalAccess', _498 => _498.presentedNodeId]) || _optionalChain([s, 'access', _499 => _499.mobileStartingNodeId, 'optionalAccess', _500 => _500.replace, 'call', _501 => _501(":", "-")]) === _optionalChain([figmaEvent, 'access', _502 => _502.data, 'optionalAccess', _503 => _503.presentedNodeId]);
22086
+ const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _496 => _496.data, 'optionalAccess', _497 => _497.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _498 => _498.data, 'optionalAccess', _499 => _499.presentedNodeId]);
22087
+ const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _500 => _500.data, 'optionalAccess', _501 => _501.presentedNodeId]) || _optionalChain([s, 'access', _502 => _502.mobileStartingNodeId, 'optionalAccess', _503 => _503.replace, 'call', _504 => _504(":", "-")]) === _optionalChain([figmaEvent, 'access', _505 => _505.data, 'optionalAccess', _506 => _506.presentedNodeId]);
22070
22088
  return desktopMatch || mobileMatch;
22071
22089
  });
22072
22090
  if (matchingSection && matchingSection.id !== activeSection) {
22073
22091
  if (!externalActiveSection) {
22074
22092
  setInternalActiveSection(matchingSection.id);
22075
22093
  }
22076
- _optionalChain([onSectionChange, 'optionalCall', _504 => _504(matchingSection.id)]);
22094
+ _optionalChain([onSectionChange, 'optionalCall', _507 => _507(matchingSection.id)]);
22077
22095
  }
22078
22096
  }
22079
22097
  }
@@ -22087,7 +22105,7 @@ var FigmaPrototypeViewer = ({
22087
22105
  const navigateToSection = _react.useCallback.call(void 0,
22088
22106
  (sectionId) => {
22089
22107
  const section = config.sections.find((s) => s.id === sectionId);
22090
- if (!section || !_optionalChain([iframeRef, 'access', _505 => _505.current, 'optionalAccess', _506 => _506.contentWindow]) || !isInitialized) {
22108
+ if (!section || !_optionalChain([iframeRef, 'access', _508 => _508.current, 'optionalAccess', _509 => _509.contentWindow]) || !isInitialized) {
22091
22109
  return;
22092
22110
  }
22093
22111
  setIsNavigating(true);
@@ -22095,7 +22113,7 @@ var FigmaPrototypeViewer = ({
22095
22113
  if (!externalActiveSection) {
22096
22114
  setInternalActiveSection(sectionId);
22097
22115
  }
22098
- _optionalChain([config, 'access', _507 => _507.onSectionChange, 'optionalCall', _508 => _508(sectionId)]);
22116
+ _optionalChain([config, 'access', _510 => _510.onSectionChange, 'optionalCall', _511 => _511(sectionId)]);
22099
22117
  const command = {
22100
22118
  type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
22101
22119
  data: { nodeId }
@@ -22217,7 +22235,7 @@ var FigmaPrototypeViewer = ({
22217
22235
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-mono text-ods-text-primary", children: (() => {
22218
22236
  try {
22219
22237
  return resolveFileKey(config, viewMode);
22220
- } catch (e26) {
22238
+ } catch (e27) {
22221
22239
  return "Error";
22222
22240
  }
22223
22241
  })() })
@@ -22228,7 +22246,7 @@ var FigmaPrototypeViewer = ({
22228
22246
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-mono text-ods-text-primary", children: (() => {
22229
22247
  try {
22230
22248
  return resolveStartingPoint(config, viewMode);
22231
- } catch (e27) {
22249
+ } catch (e28) {
22232
22250
  return "Error";
22233
22251
  }
22234
22252
  })() })
@@ -22241,7 +22259,7 @@ var FigmaPrototypeViewer = ({
22241
22259
  const dims = getContentDimensions(config);
22242
22260
  const current = viewMode === "DESKTOP" ? dims.desktop : dims.mobile;
22243
22261
  return `${current.width}x${current.height}`;
22244
- } catch (e28) {
22262
+ } catch (e29) {
22245
22263
  return "Error";
22246
22264
  }
22247
22265
  })() })
@@ -22434,7 +22452,7 @@ var FiltersDropdown = ({
22434
22452
  defaults[section.id] = section.defaultSelected || [];
22435
22453
  });
22436
22454
  setSelectedFilters(defaults);
22437
- _optionalChain([onReset, 'optionalCall', _509 => _509()]);
22455
+ _optionalChain([onReset, 'optionalCall', _512 => _512()]);
22438
22456
  setIsOpen(false);
22439
22457
  };
22440
22458
  const handleApply = () => {
@@ -22722,7 +22740,7 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
22722
22740
  try {
22723
22741
  const url = await onUpload(file, mediaType);
22724
22742
  if (!url) throw new Error("no URL");
22725
- _optionalChain([onUploaded, 'optionalCall', _510 => _510({ file, mediaType, url })]);
22743
+ _optionalChain([onUploaded, 'optionalCall', _513 => _513({ file, mediaType, url })]);
22726
22744
  } catch (error) {
22727
22745
  console.error("Upload failed:", error);
22728
22746
  failed.push(file.name);
@@ -22745,7 +22763,7 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
22745
22763
  notice,
22746
22764
  busy: pending.length > 0,
22747
22765
  dropActive,
22748
- open: () => _optionalChain([inputRef, 'access', _511 => _511.current, 'optionalAccess', _512 => _512.click, 'call', _513 => _513()]),
22766
+ open: () => _optionalChain([inputRef, 'access', _514 => _514.current, 'optionalAccess', _515 => _515.click, 'call', _516 => _516()]),
22749
22767
  /** Spread on the element files may be dropped on (the area itself, or a whole gallery). */
22750
22768
  dropHandlers: {
22751
22769
  onDragOver: (event) => {
@@ -22911,7 +22929,7 @@ function MediaGalleryManager({
22911
22929
  ) }),
22912
22930
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: isVideoItem(item) ? (
22913
22931
  // <Video> SSOT (MuxPlayer): plays Mux HLS and MP4 alike; fit="cover" crops to the cell.
22914
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
22932
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
22915
22933
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22916
22934
  _chunkWLSFBRT5cjs.next_image_default,
22917
22935
  {
@@ -23345,7 +23363,7 @@ function PlatformFilterComponent({
23345
23363
  variant: selectedPlatform === platform.value ? "accent" : "outline",
23346
23364
  size,
23347
23365
  onClick: () => onPlatformChange(platform.value),
23348
- leftIcon: showIcons ? _chunkW4YXUJOFcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
23366
+ leftIcon: showIcons ? _chunkVP6PJLMIcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
23349
23367
  className: "text-h3",
23350
23368
  children: platform.label
23351
23369
  },
@@ -23395,60 +23413,60 @@ function CardSkeleton({
23395
23413
  function VendorCardContent({ showMetadata }) {
23396
23414
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-3 p-4", children: [
23397
23415
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
23398
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "sm", className: "h-11 w-11" }) }),
23416
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "sm", className: "h-11 w-11" }) }),
23399
23417
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
23400
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23401
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-1/2" })
23418
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23419
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-1/2" })
23402
23420
  ] })
23403
23421
  ] }),
23404
23422
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
23405
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23406
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
23423
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23424
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
23407
23425
  ] }) }),
23408
23426
  showMetadata && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
23409
23427
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 md:gap-4", children: [
23410
23428
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
23411
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
23412
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-8" })
23429
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
23430
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-8" })
23413
23431
  ] }),
23414
23432
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
23415
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
23416
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-10" })
23433
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
23434
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-10" })
23417
23435
  ] })
23418
23436
  ] }),
23419
23437
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
23420
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
23421
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
23438
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
23439
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
23422
23440
  ] }) })
23423
23441
  ] })
23424
23442
  ] });
23425
23443
  }
23426
23444
  function BlogCardContent({ showActions, showMetadata }) {
23427
23445
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
23428
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.CardImage, {}) }),
23446
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.CardImage, {}) }),
23429
23447
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-grow flex-col p-4", children: [
23430
23448
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[50.4px] items-center md:min-h-[56px] lg:min-h-[61.6px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
23431
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-full" }),
23432
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" })
23449
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-full" }),
23450
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" })
23433
23451
  ] }) }),
23434
23452
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-3 flex h-[28px] items-center gap-2", children: [
23435
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-16" }),
23436
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-12" })
23453
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-16" }),
23454
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-12" })
23437
23455
  ] }),
23438
23456
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[42px] items-center md:min-h-[45px] lg:min-h-[48px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
23439
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23440
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-1/2" })
23457
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23458
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-1/2" })
23441
23459
  ] }) }),
23442
- showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "h-8 w-24" }) }),
23460
+ showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "h-8 w-24" }) }),
23443
23461
  showMetadata && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 border-t border-ods-border pt-4", children: [
23444
23462
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
23445
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "sm" }),
23446
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
23463
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "sm" }),
23464
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
23447
23465
  ] }),
23448
23466
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3 text-ods-text-muted", children: [
23449
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-12" }),
23467
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-12" }),
23450
23468
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-1 w-1 rounded-full bg-ods-skeleton" }),
23451
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
23469
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
23452
23470
  ] })
23453
23471
  ] }) })
23454
23472
  ] })
@@ -23456,35 +23474,35 @@ function BlogCardContent({ showActions, showMetadata }) {
23456
23474
  }
23457
23475
  function CategoryCardContent() {
23458
23476
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4 p-4 md:p-6", children: [
23459
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "lg", className: "flex-shrink-0" }, index)) }),
23477
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "lg", className: "flex-shrink-0" }, index)) }),
23460
23478
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23461
23479
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
23462
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23463
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-1/2" })
23480
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23481
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-1/2" })
23464
23482
  ] }),
23465
23483
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between gap-4 md:items-end md:gap-6", children: [
23466
23484
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
23467
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23468
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
23485
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23486
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
23469
23487
  ] }),
23470
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "h-10 w-10 flex-shrink-0 md:h-12 md:w-12" })
23488
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "h-10 w-10 flex-shrink-0 md:h-12 md:w-12" })
23471
23489
  ] })
23472
23490
  ] })
23473
23491
  ] });
23474
23492
  }
23475
23493
  function AlternativeCardContent({ showActions }) {
23476
23494
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4 p-4", children: [
23477
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "md", className: "flex-shrink-0" }),
23495
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "md", className: "flex-shrink-0" }),
23478
23496
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
23479
23497
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
23480
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
23481
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
23498
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
23499
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
23482
23500
  ] }),
23483
23501
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
23484
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23485
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-5/6" })
23502
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23503
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-5/6" })
23486
23504
  ] }),
23487
- showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "h-8 w-20" }) })
23505
+ showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "h-8 w-20" }) })
23488
23506
  ] })
23489
23507
  ] });
23490
23508
  }
@@ -23535,12 +23553,12 @@ function HeroSkeleton() {
23535
23553
  background: "radial-gradient(circle at 50% 0%, #242323 0%, #1A1A1A 100%)"
23536
23554
  },
23537
23555
  children: [
23538
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "mb-4 h-12 w-full max-w-4xl md:mb-6 md:h-20 lg:h-24" }),
23556
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "mb-4 h-12 w-full max-w-4xl md:mb-6 md:h-20 lg:h-24" }),
23539
23557
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-8 w-full max-w-4xl space-y-3 px-2 md:mb-10", children: [
23540
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "h-5 md:h-7" }),
23541
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "mx-auto h-5 w-3/4 md:h-7" })
23558
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "h-5 md:h-7" }),
23559
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "mx-auto h-5 w-3/4 md:h-7" })
23542
23560
  ] }),
23543
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "h-12 w-full md:w-64" })
23561
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "h-12 w-full md:w-64" })
23544
23562
  ]
23545
23563
  }
23546
23564
  );
@@ -23551,14 +23569,14 @@ function SearchContainerSkeleton({
23551
23569
  }) {
23552
23570
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-4", className || ""), children: [
23553
23571
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 md:gap-4", children: [
23554
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Input, { className: "flex-1" }),
23555
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "w-32 md:w-40" })
23572
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Input, { className: "flex-1" }),
23573
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "w-32 md:w-40" })
23556
23574
  ] }),
23557
23575
  showFilters && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap gap-2", children: [
23558
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, {}),
23559
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-24" }),
23560
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-16" }),
23561
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-20" })
23576
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, {}),
23577
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-24" }),
23578
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-16" }),
23579
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-20" })
23562
23580
  ] })
23563
23581
  ] });
23564
23582
  }
@@ -23577,7 +23595,7 @@ function CategorySidebarSkeleton({ className }) {
23577
23595
  { type: "file", width: "w-36" }
23578
23596
  ];
23579
23597
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "w-full lg:w-[320px]", className), children: [
23580
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "mb-4 h-[14px] w-24 rounded" }),
23598
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "mb-4 h-[14px] w-24 rounded" }),
23581
23599
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1.5", children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
23582
23600
  "div",
23583
23601
  {
@@ -23587,12 +23605,12 @@ function CategorySidebarSkeleton({ className }) {
23587
23605
  ),
23588
23606
  children: [
23589
23607
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2.5", children: [
23590
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-4 w-4 shrink-0 rounded" }),
23591
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: `h-[14px] ${item.width} rounded` })
23608
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-4 w-4 shrink-0 rounded" }),
23609
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: `h-[14px] ${item.width} rounded` })
23592
23610
  ] }),
23593
23611
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-[18px] items-center gap-2", children: [
23594
- item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-[18px] w-14 rounded" }),
23595
- item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-4 w-4 rounded" })
23612
+ item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-[18px] w-14 rounded" }),
23613
+ item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-4 w-4 rounded" })
23596
23614
  ] })
23597
23615
  ]
23598
23616
  },
@@ -23602,17 +23620,17 @@ function CategorySidebarSkeleton({ className }) {
23602
23620
  }
23603
23621
  function BreadcrumbSkeleton({ className }) {
23604
23622
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "mb-6 flex items-center space-x-1", className), children: [
23605
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" }),
23606
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23607
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-24" }),
23608
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23609
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-32" }),
23610
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23611
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-24" })
23623
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" }),
23624
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23625
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-24" }),
23626
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23627
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-32" }),
23628
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
23629
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-24" })
23612
23630
  ] });
23613
23631
  }
23614
23632
  function ResultsHeaderSkeleton({ className }) {
23615
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "mb-6 flex flex-col items-start justify-between gap-4 md:flex-row md:items-center", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-48" }) }) });
23633
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "mb-6 flex flex-col items-start justify-between gap-4 md:flex-row md:items-center", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-48" }) }) });
23616
23634
  }
23617
23635
  function TwoColumnLayoutSkeleton({
23618
23636
  className,
@@ -23644,35 +23662,35 @@ function ArticleLayoutSkeleton({ className }) {
23644
23662
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "article", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "mx-auto max-w-4xl", className), children: [
23645
23663
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { className: "mb-8 space-y-4 md:mb-12 md:space-y-6", children: [
23646
23664
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2", children: [
23647
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, {}),
23648
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Chip, { className: "w-16" })
23665
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, {}),
23666
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Chip, { className: "w-16" })
23649
23667
  ] }),
23650
23668
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
23651
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-full" }),
23652
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-3/4" })
23669
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-full" }),
23670
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-3/4" })
23653
23671
  ] }),
23654
23672
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 border-t border-ods-divider pt-4", children: [
23655
23673
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
23656
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "sm" }),
23657
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-24" })
23674
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "sm" }),
23675
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-24" })
23658
23676
  ] }),
23659
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-20" }),
23660
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
23677
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-20" }),
23678
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
23661
23679
  ] })
23662
23680
  ] }),
23663
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.CardImage, { className: "h-64 w-full md:h-96" }) }),
23681
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.CardImage, { className: "h-64 w-full md:h-96" }) }),
23664
23682
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "prose prose-invert max-w-none space-y-6", children: [
23665
23683
  Array.from({ length: 12 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23666
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23667
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23668
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-5/6" }),
23669
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
23684
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23685
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23686
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-5/6" }),
23687
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
23670
23688
  ] }, index)),
23671
23689
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "py-4", children: [
23672
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "mb-4 w-2/3" }),
23690
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "mb-4 w-2/3" }),
23673
23691
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23674
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23675
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-4/5" })
23692
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23693
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-4/5" })
23676
23694
  ] })
23677
23695
  ] })
23678
23696
  ] })
@@ -23898,11 +23916,11 @@ function StatsSectionSkeleton({ className, columns = 3 }) {
23898
23916
  className
23899
23917
  ),
23900
23918
  children: Array.from({ length: columns }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
23901
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "lg" }),
23902
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23919
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "lg" }),
23920
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
23903
23921
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23904
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
23905
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
23922
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
23923
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
23906
23924
  ] })
23907
23925
  ] }) }, i))
23908
23926
  }
@@ -24043,7 +24061,7 @@ function useContentLoading(isLoading) {
24043
24061
 
24044
24062
  function ParagraphSkeleton({ className, lines = 4 }) {
24045
24063
  const lineWidths = ["w-full", "w-full", "w-5/6", "w-3/4", "w-4/5", "w-2/3"];
24046
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: lineWidths[index % lineWidths.length] }, index)) });
24064
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: lineWidths[index % lineWidths.length] }, index)) });
24047
24065
  }
24048
24066
  function ListSkeleton({
24049
24067
  className,
@@ -24053,12 +24071,12 @@ function ListSkeleton({
24053
24071
  }) {
24054
24072
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
24055
24073
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24056
- showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }),
24057
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-32 md:w-48" })
24074
+ showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }),
24075
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-32 md:w-48" })
24058
24076
  ] }),
24059
24077
  showActions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
24060
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-8" }),
24061
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4" })
24078
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-8" }),
24079
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4" })
24062
24080
  ] })
24063
24081
  ] }, index)) });
24064
24082
  }
@@ -24068,13 +24086,13 @@ function TableSkeleton({
24068
24086
  columns = 4
24069
24087
  }) {
24070
24088
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-4", className), children: [
24071
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
24089
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
24072
24090
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24073
24091
  "div",
24074
24092
  {
24075
24093
  className: "grid gap-4 border-b border-ods-divider py-2",
24076
24094
  style: { gridTemplateColumns: `repeat(${columns}, 1fr)` },
24077
- children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" }, colIndex))
24095
+ children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" }, colIndex))
24078
24096
  },
24079
24097
  rowIndex
24080
24098
  )) })
@@ -24083,13 +24101,13 @@ function TableSkeleton({
24083
24101
  function FormSkeleton({ className, fields = 4 }) {
24084
24102
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-6", className), children: [
24085
24103
  Array.from({ length: fields }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
24086
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-24" }),
24087
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Input, {}),
24088
- index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-48" })
24104
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-24" }),
24105
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Input, {}),
24106
+ index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-48" })
24089
24107
  ] }, index)),
24090
24108
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4 pt-4", children: [
24091
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, {}),
24092
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "bg-ods-border" })
24109
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, {}),
24110
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "bg-ods-border" })
24093
24111
  ] })
24094
24112
  ] });
24095
24113
  }
@@ -24104,7 +24122,7 @@ function NavigationSkeleton({
24104
24122
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex gap-4 md:gap-6", !horizontal && "flex-col", className),
24105
24123
  role: "status",
24106
24124
  "aria-label": "Loading navigation",
24107
- children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-16 md:w-20" }, index))
24125
+ children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-16 md:w-20" }, index))
24108
24126
  }
24109
24127
  );
24110
24128
  }
@@ -24115,30 +24133,30 @@ function ProfileSkeleton({
24115
24133
  }) {
24116
24134
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-4", className), children: [
24117
24135
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
24118
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "lg" }),
24136
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "lg" }),
24119
24137
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
24120
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-1/2" }),
24121
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-1/3" }),
24122
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
24138
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-1/2" }),
24139
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-1/3" }),
24140
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
24123
24141
  ] })
24124
24142
  ] }),
24125
24143
  showBio && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
24126
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
24127
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-4/5" }),
24128
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
24144
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
24145
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-4/5" }),
24146
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
24129
24147
  ] }),
24130
24148
  showStats && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-6", children: [
24131
24149
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
24132
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24133
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "mx-auto w-12" })
24150
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24151
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "mx-auto w-12" })
24134
24152
  ] }),
24135
24153
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
24136
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24137
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "mx-auto w-16" })
24154
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24155
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "mx-auto w-16" })
24138
24156
  ] }),
24139
24157
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
24140
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24141
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "mx-auto w-14" })
24158
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
24159
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "mx-auto w-14" })
24142
24160
  ] })
24143
24161
  ] })
24144
24162
  ] });
@@ -24150,32 +24168,32 @@ function CommentSkeleton({
24150
24168
  }) {
24151
24169
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-3", className), children: [
24152
24170
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24153
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "sm" }),
24171
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "sm" }),
24154
24172
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center gap-4", children: [
24155
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-24" }),
24156
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" }),
24157
- showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }, i)) })
24173
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-24" }),
24174
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" }),
24175
+ showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }, i)) })
24158
24176
  ] })
24159
24177
  ] }),
24160
24178
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 space-y-2", children: [
24161
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
24162
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" }),
24163
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-1/2" })
24179
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
24180
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" }),
24181
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-1/2" })
24164
24182
  ] }),
24165
24183
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 flex gap-4", children: [
24166
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-12" }),
24167
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" }),
24168
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-8" })
24184
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-12" }),
24185
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" }),
24186
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-8" })
24169
24187
  ] }),
24170
24188
  showReplies && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ml-11 space-y-4 border-l border-ods-divider pl-4", children: Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
24171
24189
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24172
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Avatar, { size: "sm" }),
24173
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-20" }),
24174
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-12" })
24190
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Avatar, { size: "sm" }),
24191
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-20" }),
24192
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-12" })
24175
24193
  ] }),
24176
24194
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11", children: [
24177
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
24178
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
24195
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
24196
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
24179
24197
  ] })
24180
24198
  ] }, index)) })
24181
24199
  ] });
@@ -24188,31 +24206,31 @@ function FeatureListSkeleton({
24188
24206
  }) {
24189
24207
  if (grouped) {
24190
24208
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: 3 }).map((_, groupIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
24191
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
24209
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
24192
24210
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-2", children: Array.from({ length: features / 3 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24193
- showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }),
24194
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
24211
+ showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }),
24212
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
24195
24213
  ] }, featureIndex)) })
24196
24214
  ] }, groupIndex)) });
24197
24215
  }
24198
24216
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: features }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24199
- showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }),
24200
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
24217
+ showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }),
24218
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
24201
24219
  ] }, index)) });
24202
24220
  }
24203
24221
  function TimelineSkeleton({ className, items = 5 }) {
24204
24222
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4", children: [
24205
24223
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-center", children: [
24206
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }),
24224
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }),
24207
24225
  index < items - 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2 h-12 w-px bg-ods-border" })
24208
24226
  ] }),
24209
24227
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
24210
24228
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24211
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-1/3" }),
24212
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
24229
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-1/3" }),
24230
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
24213
24231
  ] }),
24214
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
24215
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
24232
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
24233
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
24216
24234
  ] })
24217
24235
  ] }, index)) });
24218
24236
  }
@@ -24228,16 +24246,16 @@ function PricingSkeleton({ className, plans = 3 }) {
24228
24246
  className
24229
24247
  ),
24230
24248
  children: Array.from({ length: plans }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
24231
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-1/2" }),
24249
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-1/2" }),
24232
24250
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
24233
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-1/3" }),
24234
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-1/4" })
24251
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-1/3" }),
24252
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-1/4" })
24235
24253
  ] }),
24236
24254
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 py-4", children: Array.from({ length: 5 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
24237
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm" }),
24238
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
24255
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm" }),
24256
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
24239
24257
  ] }, featureIndex)) }),
24240
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Button, { className: "w-full" })
24258
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Button, { className: "w-full" })
24241
24259
  ] }) }, index))
24242
24260
  }
24243
24261
  );
@@ -24273,12 +24291,12 @@ function MspProfileFormSkeleton({ className, fields = 4 }) {
24273
24291
  "aria-label": "Loading MSP profile form",
24274
24292
  children: [
24275
24293
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col space-y-2", children: [
24276
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-28" }),
24277
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-full w-full rounded-lg", "aria-label": "Loading company logo" }) })
24294
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-28" }),
24295
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-full w-full rounded-lg", "aria-label": "Loading company logo" }) })
24278
24296
  ] }),
24279
24297
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: Array.from({ length: fields }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col space-y-2", children: [
24280
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-40" }),
24281
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.InteractiveSkeleton.Input, {})
24298
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-40" }),
24299
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InteractiveSkeleton.Input, {})
24282
24300
  ] }, idx)) })
24283
24301
  ]
24284
24302
  }
@@ -24298,13 +24316,13 @@ function CategoryCardSkeleton({ className }) {
24298
24316
  role: "status",
24299
24317
  "aria-label": "Loading category card",
24300
24318
  children: [
24301
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "circular", className: "h-10 w-10 flex-shrink-0", "aria-label": "Loading icon" }, i)) }),
24319
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "circular", className: "h-10 w-10 flex-shrink-0", "aria-label": "Loading icon" }, i)) }),
24302
24320
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col space-y-3", children: [
24303
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-3/4" }),
24304
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-1/2" }),
24305
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" })
24321
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-3/4" }),
24322
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-1/2" }),
24323
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" })
24306
24324
  ] }),
24307
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-12 w-12 rounded-[6px]", "aria-label": "Loading button" }) })
24325
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-12 w-12 rounded-[6px]", "aria-label": "Loading button" }) })
24308
24326
  ]
24309
24327
  }
24310
24328
  );
@@ -24321,12 +24339,12 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
24321
24339
  "aria-label": "Loading category section",
24322
24340
  children: [
24323
24341
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-6 max-w-xl space-y-2", children: [
24324
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-1/2" }),
24325
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-3/4" })
24342
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-1/2" }),
24343
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-3/4" })
24326
24344
  ] }),
24327
24345
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-6", children: Array.from({ length: subcategories }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
24328
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
24329
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
24346
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-1/3" }),
24347
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
24330
24348
  ] }, idx)) })
24331
24349
  ]
24332
24350
  }
@@ -24337,14 +24355,14 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
24337
24355
 
24338
24356
  function WizardLayoutSkeleton({ steps = 6, className }) {
24339
24357
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "space-y-6", className), role: "status", "aria-label": "Loading wizard layout", children: [
24340
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
24358
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
24341
24359
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "max-w-2xl space-y-2", children: [
24342
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Heading, { className: "w-2/3" }),
24343
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-1/2" })
24360
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Heading, { className: "w-2/3" }),
24361
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-1/2" })
24344
24362
  ] }),
24345
24363
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-10 flex justify-between", children: [
24346
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
24347
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-10 w-32 rounded" })
24364
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
24365
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-10 w-32 rounded" })
24348
24366
  ] })
24349
24367
  ] });
24350
24368
  }
@@ -24736,28 +24754,28 @@ function OrganizationCardSkeleton({
24736
24754
  }
24737
24755
  ),
24738
24756
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
24739
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
24740
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-1/2" })
24757
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Subheading, { className: "w-3/4" }),
24758
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-1/2" })
24741
24759
  ] })
24742
24760
  ] }),
24743
24761
  showDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
24744
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-full" }),
24745
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Body, { className: "w-2/3" })
24762
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-full" }),
24763
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Body, { className: "w-2/3" })
24746
24764
  ] }) }),
24747
24765
  showFooter && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
24748
24766
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 md:gap-4", children: [
24749
24767
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
24750
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
24751
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-8" })
24768
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
24769
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-8" })
24752
24770
  ] }),
24753
24771
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
24754
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
24755
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-10" })
24772
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
24773
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-10" })
24756
24774
  ] })
24757
24775
  ] }),
24758
24776
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
24759
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
24760
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TextSkeleton.Caption, { className: "w-16" })
24777
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
24778
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TextSkeleton.Caption, { className: "w-16" })
24761
24779
  ] }) })
24762
24780
  ] })
24763
24781
  ] })
@@ -24834,16 +24852,16 @@ function DeviceCardSkeletonGrid({ count = 12, className }) {
24834
24852
 
24835
24853
  function PushButtonSelectorSkeleton({ count = 3, hasTitle }) {
24836
24854
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", role: "status", "aria-label": "Loading options", children: [
24837
- hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-5 w-20", "aria-label": "Loading title" }),
24855
+ hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-5 w-20", "aria-label": "Loading title" }),
24838
24856
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: count }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-bg p-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4", children: [
24839
24857
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
24840
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-8 w-8", "aria-label": "Loading icon" }),
24858
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-8 w-8", "aria-label": "Loading icon" }),
24841
24859
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
24842
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "text", className: "mb-2 h-4 w-24", "aria-label": "Loading name" }),
24843
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { variant: "text", className: "h-4 w-36", "aria-label": "Loading description" })
24860
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "text", className: "mb-2 h-4 w-24", "aria-label": "Loading name" }),
24861
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { variant: "text", className: "h-4 w-36", "aria-label": "Loading description" })
24844
24862
  ] })
24845
24863
  ] }),
24846
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.UnifiedSkeleton, { className: "h-6 w-6", "aria-label": "Loading selection state" })
24864
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.UnifiedSkeleton, { className: "h-6 w-6", "aria-label": "Loading selection state" })
24847
24865
  ] }) }, i)) })
24848
24866
  ] });
24849
24867
  }
@@ -24877,9 +24895,9 @@ function PushButtonSelector({
24877
24895
  }) {
24878
24896
  const scrollRef = _react.useRef.call(void 0, null);
24879
24897
  const sentinelRef = _react.useRef.call(void 0, null);
24880
- const lazyHasMore = _nullishCoalesce(_optionalChain([lazyLoad, 'optionalAccess', _514 => _514.hasMore]), () => ( false));
24881
- const lazyFetching = _nullishCoalesce(_optionalChain([lazyLoad, 'optionalAccess', _515 => _515.isFetchingMore]), () => ( false));
24882
- const onLoadMore = _optionalChain([lazyLoad, 'optionalAccess', _516 => _516.onLoadMore]);
24898
+ const lazyHasMore = _nullishCoalesce(_optionalChain([lazyLoad, 'optionalAccess', _517 => _517.hasMore]), () => ( false));
24899
+ const lazyFetching = _nullishCoalesce(_optionalChain([lazyLoad, 'optionalAccess', _518 => _518.isFetchingMore]), () => ( false));
24900
+ const onLoadMore = _optionalChain([lazyLoad, 'optionalAccess', _519 => _519.onLoadMore]);
24883
24901
  const optionCount = options.length;
24884
24902
  _react.useEffect.call(void 0, () => {
24885
24903
  const sentinel = sentinelRef.current;
@@ -24965,9 +24983,9 @@ function PushButtonSelector({
24965
24983
  option.id
24966
24984
  );
24967
24985
  if (option.disabled && option.disabledReason) {
24968
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { children: [
24969
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipTrigger, { asChild: true, children: optionEl }),
24970
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
24986
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { children: [
24987
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, children: optionEl }),
24988
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
24971
24989
  ] }, option.id);
24972
24990
  }
24973
24991
  return optionEl;
@@ -25012,7 +25030,7 @@ function PushButtonSelector({
25012
25030
  lazyLoad.isFetchingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-2 text-center text-ods-text-secondary text-h6", children: "Loading more\u2026" }) : null
25013
25031
  ] }) : null
25014
25032
  ] });
25015
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
25033
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
25016
25034
  title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
25017
25035
  searchInput,
25018
25036
  lazyLoad ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -25209,7 +25227,7 @@ function SEOEditorPreview({
25209
25227
  const displayImage = hasOgImage || hasFeaturedImage;
25210
25228
  const handleImageUpload = async (event) => {
25211
25229
  if (!onOgImageUpload) return;
25212
- const file = _optionalChain([event, 'access', _517 => _517.target, 'access', _518 => _518.files, 'optionalAccess', _519 => _519[0]]);
25230
+ const file = _optionalChain([event, 'access', _520 => _520.target, 'access', _521 => _521.files, 'optionalAccess', _522 => _522[0]]);
25213
25231
  if (!file) return;
25214
25232
  setIsUploading(true);
25215
25233
  try {
@@ -25226,7 +25244,7 @@ function SEOEditorPreview({
25226
25244
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-2", children: [
25227
25245
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
25228
25246
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25229
- _chunkLXKEHZUVcjs.Field,
25247
+ _chunkCOX4CSXZcjs.Field,
25230
25248
  {
25231
25249
  label: "SEO Title",
25232
25250
  error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${SEO_TITLE_MAX_LENGTH})` : null,
@@ -25266,7 +25284,7 @@ function SEOEditorPreview({
25266
25284
  !seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
25267
25285
  ] }),
25268
25286
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25269
- _chunkLXKEHZUVcjs.Field,
25287
+ _chunkCOX4CSXZcjs.Field,
25270
25288
  {
25271
25289
  label: "SEO Keywords",
25272
25290
  labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -25298,7 +25316,7 @@ function SEOEditorPreview({
25298
25316
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-2", children: [
25299
25317
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
25300
25318
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25301
- _chunkLXKEHZUVcjs.Field,
25319
+ _chunkCOX4CSXZcjs.Field,
25302
25320
  {
25303
25321
  label: "SEO Description",
25304
25322
  error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${SEO_DESCRIPTION_MAX_LENGTH})` : null,
@@ -25366,7 +25384,7 @@ function SEOEditorPreview({
25366
25384
  type: "button",
25367
25385
  variant: "outline",
25368
25386
  size: "icon",
25369
- onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _520 => _520.click, 'call', _521 => _521()]),
25387
+ onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _523 => _523.click, 'call', _524 => _524()]),
25370
25388
  disabled: disabled || isUploading,
25371
25389
  className: "rounded-full bg-white text-black opacity-0 hover:bg-gray-100 group-hover:opacity-100",
25372
25390
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
@@ -25392,7 +25410,7 @@ function SEOEditorPreview({
25392
25410
  SEO_MEDIA_BOX_HEIGHT,
25393
25411
  "flex cursor-pointer flex-col items-center justify-center rounded-lg border-2 border-dashed border-ods-border bg-ods-bg-hover transition-colors hover:border-ods-accent"
25394
25412
  ),
25395
- onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _522 => _522.click, 'call', _523 => _523()]),
25413
+ onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _525 => _525.click, 'call', _526 => _526()]),
25396
25414
  children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
25397
25415
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "mb-2 h-8 w-8 text-ods-text-secondary" }),
25398
25416
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
@@ -25553,7 +25571,7 @@ function SocialLinksManager({
25553
25571
  className = ""
25554
25572
  }) {
25555
25573
  const addLink = () => {
25556
- const firstPlatform = _optionalChain([platforms, 'access', _524 => _524[0], 'optionalAccess', _525 => _525.name]) || "website";
25574
+ const firstPlatform = _optionalChain([platforms, 'access', _527 => _527[0], 'optionalAccess', _528 => _528.name]) || "website";
25557
25575
  onChange([...links, { platform: firstPlatform, url: "" }]);
25558
25576
  };
25559
25577
  const removeLink = (index) => {
@@ -25565,7 +25583,7 @@ function SocialLinksManager({
25565
25583
  onChange(updated);
25566
25584
  };
25567
25585
  const getIcon = (link, platform) => {
25568
- const iconKey = _optionalChain([platform, 'optionalAccess', _526 => _526.icon_name]) || link.platform;
25586
+ const iconKey = _optionalChain([platform, 'optionalAccess', _529 => _529.icon_name]) || link.platform;
25569
25587
  const key = normalizeSocialPlatform(iconKey);
25570
25588
  if (!key) return null;
25571
25589
  const IconComponent = SOCIAL_ICON_COMPONENTS[key];
@@ -25589,7 +25607,7 @@ function SocialLinksManager({
25589
25607
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25590
25608
  _chunkKWX65373cjs.Input,
25591
25609
  {
25592
- placeholder: _optionalChain([platform, 'optionalAccess', _527 => _527.placeholder]) || "Profile URL",
25610
+ placeholder: _optionalChain([platform, 'optionalAccess', _530 => _530.placeholder]) || "Profile URL",
25593
25611
  value: link.url,
25594
25612
  onChange: (e) => updateLink(index, "url", e.target.value),
25595
25613
  onKeyDown: (e) => {
@@ -25976,7 +25994,7 @@ function VideoBitesDisplay({
25976
25994
  filterPublished = true,
25977
25995
  showTitle = true
25978
25996
  }) {
25979
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
25997
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
25980
25998
  }
25981
25999
 
25982
26000
  // src/components/features/walkthrough-video.tsx
@@ -25985,8 +26003,8 @@ function VideoBitesDisplay({
25985
26003
 
25986
26004
  var isAtEnd = (duration, time) => duration > 0 && duration - time < 1;
25987
26005
  function theaterSeedFromLive(live, fallbackTime, fallbackMuted) {
25988
- const time = _nullishCoalesce(_optionalChain([live, 'optionalAccess', _528 => _528.getCurrentTime, 'call', _529 => _529()]), () => ( 0));
25989
- const atEnd = isAtEnd(_nullishCoalesce(_optionalChain([live, 'optionalAccess', _530 => _530.getDuration, 'call', _531 => _531()]), () => ( 0)), time);
26006
+ const time = _nullishCoalesce(_optionalChain([live, 'optionalAccess', _531 => _531.getCurrentTime, 'call', _532 => _532()]), () => ( 0));
26007
+ const atEnd = isAtEnd(_nullishCoalesce(_optionalChain([live, 'optionalAccess', _533 => _533.getDuration, 'call', _534 => _534()]), () => ( 0)), time);
25990
26008
  return {
25991
26009
  // At end -> start over, never rewind to an unrelated older anchor.
25992
26010
  time: atEnd ? 0 : time > 0.5 ? time : fallbackTime,
@@ -26019,11 +26037,11 @@ function WalkthroughVideo({
26019
26037
  const inline = placement === "inline";
26020
26038
  const dismissEnabled = dismissal !== false;
26021
26039
  const storageKey = dismissEnabled && dismissal.storageKey || WALKTHROUGH_VIDEO_DISMISS_KEY;
26022
- const dismissalId = _optionalChain([video, 'optionalAccess', _532 => _532.id]) != null ? String(video.id) : "dismissed";
26040
+ const dismissalId = _optionalChain([video, 'optionalAccess', _535 => _535.id]) != null ? String(video.id) : "dismissed";
26023
26041
  const [mounted, setMounted] = _react.useState.call(void 0, false);
26024
26042
  const [dismissed, setDismissed] = _react.useState.call(void 0, false);
26025
26043
  const hasVideo = video != null;
26026
- const videoId = _optionalChain([video, 'optionalAccess', _533 => _533.id]);
26044
+ const videoId = _optionalChain([video, 'optionalAccess', _536 => _536.id]);
26027
26045
  _react.useEffect.call(void 0, () => {
26028
26046
  let idleHandle = null;
26029
26047
  if (!hasVideo) return void 0;
@@ -26046,15 +26064,15 @@ function WalkthroughVideo({
26046
26064
  if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
26047
26065
  };
26048
26066
  }, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId]);
26049
- const hydrated = _chunkLXKEHZUVcjs.useIsHydrated.call(void 0, );
26067
+ const hydrated = _chunkCOX4CSXZcjs.useIsHydrated.call(void 0, );
26050
26068
  const previewSuppressed = _react.useMemo.call(void 0, () => {
26051
26069
  if (!hydrated) return false;
26052
26070
  try {
26053
- const reducedMotion = _nullishCoalesce(_optionalChain([window, 'access', _534 => _534.matchMedia, 'optionalCall', _535 => _535("(prefers-reduced-motion: reduce)"), 'access', _536 => _536.matches]), () => ( false));
26071
+ const reducedMotion = _nullishCoalesce(_optionalChain([window, 'access', _537 => _537.matchMedia, 'optionalCall', _538 => _538("(prefers-reduced-motion: reduce)"), 'access', _539 => _539.matches]), () => ( false));
26054
26072
  const conn = navigator.connection;
26055
- const saveData = _optionalChain([conn, 'optionalAccess', _537 => _537.saveData]) === true || _optionalChain([conn, 'optionalAccess', _538 => _538.effectiveType]) === "2g" || _optionalChain([conn, 'optionalAccess', _539 => _539.effectiveType]) === "slow-2g";
26073
+ const saveData = _optionalChain([conn, 'optionalAccess', _540 => _540.saveData]) === true || _optionalChain([conn, 'optionalAccess', _541 => _541.effectiveType]) === "2g" || _optionalChain([conn, 'optionalAccess', _542 => _542.effectiveType]) === "slow-2g";
26056
26074
  return Boolean(reducedMotion || saveData);
26057
- } catch (e29) {
26075
+ } catch (e30) {
26058
26076
  return false;
26059
26077
  }
26060
26078
  }, [hydrated]);
@@ -26062,7 +26080,7 @@ function WalkthroughVideo({
26062
26080
  if (!deepLinkParam || typeof window === "undefined") return false;
26063
26081
  try {
26064
26082
  return new URLSearchParams(window.location.search).has(deepLinkParam);
26065
- } catch (e30) {
26083
+ } catch (e31) {
26066
26084
  return false;
26067
26085
  }
26068
26086
  });
@@ -26078,7 +26096,7 @@ function WalkthroughVideo({
26078
26096
  const endedLatchRef = _react.useRef.call(void 0, false);
26079
26097
  const [hovered, setHovered] = _react.useState.call(void 0, false);
26080
26098
  const [handoff, setHandoff] = _react.useState.call(void 0,
26081
- () => autoPlayCard && !_optionalChain([video, 'optionalAccess', _540 => _540.youtubeUrl]) ? { time: 0, muted: true, playing: true } : null
26099
+ () => autoPlayCard && !_optionalChain([video, 'optionalAccess', _543 => _543.youtubeUrl]) ? { time: 0, muted: true, playing: true } : null
26082
26100
  );
26083
26101
  const [suspended, setSuspended] = _react.useState.call(void 0, false);
26084
26102
  const [theaterStart, setTheaterStart] = _react.useState.call(void 0, { time: 0, muted: false });
@@ -26087,18 +26105,18 @@ function WalkthroughVideo({
26087
26105
  const [cardMuted, setCardMuted] = _react.useState.call(void 0, false);
26088
26106
  const [cardPaused, setCardPaused] = _react.useState.call(void 0, false);
26089
26107
  const [userMuted, setUserMuted] = _react.useState.call(void 0, false);
26090
- const isYouTube = Boolean(_optionalChain([video, 'optionalAccess', _541 => _541.youtubeUrl]));
26108
+ const isYouTube = Boolean(_optionalChain([video, 'optionalAccess', _544 => _544.youtubeUrl]));
26091
26109
  const resumeMode = !open && handoff !== null && !isYouTube;
26092
26110
  const previewAllowed = !previewSuppressed && !isYouTube;
26093
26111
  const footerFadeKey = `${mounted ? 1 : 0}|${inline ? 1 : 0}|${hideNearSelector}|${pathname}`;
26094
- const footerHidden = _optionalChain([footerObservation, 'optionalAccess', _542 => _542.key]) === footerFadeKey && footerObservation.hidden;
26112
+ const footerHidden = _optionalChain([footerObservation, 'optionalAccess', _545 => _545.key]) === footerFadeKey && footerObservation.hidden;
26095
26113
  _react.useEffect.call(void 0, () => {
26096
26114
  if (!mounted) return void 0;
26097
26115
  if (inline) return void 0;
26098
26116
  const el = typeof document !== "undefined" ? document.querySelector(hideNearSelector) : null;
26099
26117
  if (!el || typeof IntersectionObserver === "undefined") return void 0;
26100
26118
  const io = new IntersectionObserver(
26101
- (entries) => setFooterObservation({ key: footerFadeKey, hidden: _nullishCoalesce(_optionalChain([entries, 'access', _543 => _543[0], 'optionalAccess', _544 => _544.isIntersecting]), () => ( false)) }),
26119
+ (entries) => setFooterObservation({ key: footerFadeKey, hidden: _nullishCoalesce(_optionalChain([entries, 'access', _546 => _546[0], 'optionalAccess', _547 => _547.isIntersecting]), () => ( false)) }),
26102
26120
  { rootMargin: "0px 0px -40px 0px" }
26103
26121
  );
26104
26122
  io.observe(el);
@@ -26124,8 +26142,8 @@ function WalkthroughVideo({
26124
26142
  if (!footerHidden) return;
26125
26143
  const h = _nullishCoalesce(resumeHandleRef.current, () => ( previewHandleRef.current));
26126
26144
  try {
26127
- _optionalChain([h, 'optionalAccess', _545 => _545.pause, 'call', _546 => _546()]);
26128
- } catch (e31) {
26145
+ _optionalChain([h, 'optionalAccess', _548 => _548.pause, 'call', _549 => _549()]);
26146
+ } catch (e32) {
26129
26147
  }
26130
26148
  }, [footerHidden, resumeMode, hovered]);
26131
26149
  const cardModeRef = _react.useRef.call(void 0, "poster");
@@ -26143,30 +26161,30 @@ function WalkthroughVideo({
26143
26161
  }, 400);
26144
26162
  }
26145
26163
  if (openProp === void 0) setOpenState(next);
26146
- _optionalChain([onOpenChange, 'optionalCall', _547 => _547(next)]);
26164
+ _optionalChain([onOpenChange, 'optionalCall', _550 => _550(next)]);
26147
26165
  },
26148
26166
  [openProp, onOpenChange]
26149
26167
  );
26150
26168
  const pausePreviewNow = _react.useCallback.call(void 0, () => {
26151
26169
  const h = _nullishCoalesce(resumeHandleRef.current, () => ( previewHandleRef.current));
26152
26170
  try {
26153
- _optionalChain([h, 'optionalAccess', _548 => _548.pause, 'call', _549 => _549()]);
26154
- } catch (e32) {
26171
+ _optionalChain([h, 'optionalAccess', _551 => _551.pause, 'call', _552 => _552()]);
26172
+ } catch (e33) {
26155
26173
  }
26156
26174
  setCardPaused(true);
26157
26175
  }, [setCardPaused]);
26158
26176
  const openTheater = _react.useCallback.call(void 0, () => {
26159
26177
  const handleBeforePause = _nullishCoalesce(resumeHandleRef.current, () => ( previewHandleRef.current));
26160
- const liveWasPlaying = _optionalChain([handleBeforePause, 'optionalAccess', _550 => _550.getPaused, 'call', _551 => _551()]) === false;
26178
+ const liveWasPlaying = _optionalChain([handleBeforePause, 'optionalAccess', _553 => _553.getPaused, 'call', _554 => _554()]) === false;
26161
26179
  pausePreviewNow();
26162
26180
  const liveHandle = _nullishCoalesce(resumeHandleRef.current, () => ( (cardModeRef.current === "preview" ? previewHandleRef.current : null)));
26163
- const liveTime = _nullishCoalesce(_optionalChain([liveHandle, 'optionalAccess', _552 => _552.getCurrentTime, 'call', _553 => _553()]), () => ( 0));
26164
- const liveDuration = _nullishCoalesce(_optionalChain([liveHandle, 'optionalAccess', _554 => _554.getDuration, 'call', _555 => _555()]), () => ( 0));
26181
+ const liveTime = _nullishCoalesce(_optionalChain([liveHandle, 'optionalAccess', _555 => _555.getCurrentTime, 'call', _556 => _556()]), () => ( 0));
26182
+ const liveDuration = _nullishCoalesce(_optionalChain([liveHandle, 'optionalAccess', _557 => _557.getDuration, 'call', _558 => _558()]), () => ( 0));
26165
26183
  const liveAtEnd = isAtEnd(liveDuration, liveTime);
26166
26184
  const start = {
26167
26185
  // At end -> start over. Falling back to `handoff.time` here would rewind
26168
26186
  // to an unrelated older anchor (e.g. 3:20) instead of restarting.
26169
- time: liveAtEnd ? 0 : liveTime > 0.5 ? liveTime : _nullishCoalesce(_optionalChain([handoff, 'optionalAccess', _556 => _556.time]), () => ( 0)),
26187
+ time: liveAtEnd ? 0 : liveTime > 0.5 ? liveTime : _nullishCoalesce(_optionalChain([handoff, 'optionalAccess', _559 => _559.time]), () => ( 0)),
26170
26188
  // Live element wins over remembered intent (the theater's own chrome may
26171
26189
  // have changed it) — EXCEPT when the element is muted only because
26172
26190
  // autoplay policy forced it, which is not intent.
@@ -26194,7 +26212,7 @@ function WalkthroughVideo({
26194
26212
  const selfDriven = selfDrivenFor === open;
26195
26213
  if (openProp !== void 0 && !selfDriven) {
26196
26214
  if (open) {
26197
- setTheaterStart(theaterSeedFromLive(resumeHandleRef.current, _nullishCoalesce(_optionalChain([handoff, 'optionalAccess', _557 => _557.time]), () => ( 0)), userMuted));
26215
+ setTheaterStart(theaterSeedFromLive(resumeHandleRef.current, _nullishCoalesce(_optionalChain([handoff, 'optionalAccess', _560 => _560.time]), () => ( 0)), userMuted));
26198
26216
  setHovered(false);
26199
26217
  setSuspended(false);
26200
26218
  setHandoff(null);
@@ -26220,7 +26238,7 @@ function WalkthroughVideo({
26220
26238
  const atEnd = isAtEnd(h.getDuration(), time);
26221
26239
  try {
26222
26240
  h.pause();
26223
- } catch (e33) {
26241
+ } catch (e34) {
26224
26242
  }
26225
26243
  if (!(muted && theaterForcedMuteRef.current && !userMutedRef.current)) {
26226
26244
  userMutedRef.current = muted;
@@ -26280,8 +26298,8 @@ function WalkthroughVideo({
26280
26298
  });
26281
26299
  _react.useEffect.call(void 0, () => {
26282
26300
  if (resumeMode) {
26283
- setCardMuted(_nullishCoalesce(_optionalChain([handoffRef, 'access', _558 => _558.current, 'optionalAccess', _559 => _559.muted]), () => ( false)));
26284
- setCardPaused(_optionalChain([handoffRef, 'access', _560 => _560.current, 'optionalAccess', _561 => _561.playing]) === false);
26301
+ setCardMuted(_nullishCoalesce(_optionalChain([handoffRef, 'access', _561 => _561.current, 'optionalAccess', _562 => _562.muted]), () => ( false)));
26302
+ setCardPaused(_optionalChain([handoffRef, 'access', _563 => _563.current, 'optionalAccess', _564 => _564.playing]) === false);
26285
26303
  }
26286
26304
  }, [resumeMode]);
26287
26305
  const [hoverSeeded, setHoverSeeded] = _react.useState.call(void 0, hovered);
@@ -26323,7 +26341,7 @@ function WalkthroughVideo({
26323
26341
  void h.play();
26324
26342
  setCardPaused(false);
26325
26343
  }
26326
- } catch (e34) {
26344
+ } catch (e35) {
26327
26345
  }
26328
26346
  },
26329
26347
  [cardFallback.blocked, cardPaused, activeHandle, setCardPaused, setCardMuted, setUserMuted]
@@ -26340,7 +26358,7 @@ function WalkthroughVideo({
26340
26358
  setCardMuted(next);
26341
26359
  userMutedRef.current = next;
26342
26360
  setUserMuted(next);
26343
- } catch (e35) {
26361
+ } catch (e36) {
26344
26362
  }
26345
26363
  },
26346
26364
  [cardPaused, activeHandle, setCardMuted, setUserMuted]
@@ -26358,16 +26376,16 @@ function WalkthroughVideo({
26358
26376
  h.pause();
26359
26377
  setCardPaused(true);
26360
26378
  }
26361
- } catch (e36) {
26379
+ } catch (e37) {
26362
26380
  }
26363
26381
  },
26364
26382
  [cardFallback.blocked, cardPaused, activeHandle, setCardPaused]
26365
26383
  );
26366
- const summaryTitle = _optionalChain([video, 'optionalAccess', _562 => _562.title]) || void 0;
26367
- const presenterAvatarSrc = _nullishCoalesce(_optionalChain([video, 'optionalAccess', _563 => _563.presenterAvatarUrl]), () => ( null));
26384
+ const summaryTitle = _optionalChain([video, 'optionalAccess', _565 => _565.title]) || void 0;
26385
+ const presenterAvatarSrc = _nullishCoalesce(_optionalChain([video, 'optionalAccess', _566 => _566.presenterAvatarUrl]), () => ( null));
26368
26386
  const embedUrlKey = _react.useMemo.call(void 0,
26369
- () => `${_nullishCoalesce(_optionalChain([video, 'optionalAccess', _564 => _564.mainVideoUrl]), () => ( ""))}|${_nullishCoalesce(_optionalChain([video, 'optionalAccess', _565 => _565.youtubeUrl]), () => ( ""))}`,
26370
- [_optionalChain([video, 'optionalAccess', _566 => _566.mainVideoUrl]), _optionalChain([video, 'optionalAccess', _567 => _567.youtubeUrl])]
26387
+ () => `${_nullishCoalesce(_optionalChain([video, 'optionalAccess', _567 => _567.mainVideoUrl]), () => ( ""))}|${_nullishCoalesce(_optionalChain([video, 'optionalAccess', _568 => _568.youtubeUrl]), () => ( ""))}`,
26388
+ [_optionalChain([video, 'optionalAccess', _569 => _569.mainVideoUrl]), _optionalChain([video, 'optionalAccess', _570 => _570.youtubeUrl])]
26371
26389
  );
26372
26390
  const cardActive = !open && previewAllowed && hovered && !resumeMode;
26373
26391
  const cardMode = resumeMode ? "resume" : cardActive ? "preview" : "poster";
@@ -26426,8 +26444,8 @@ function WalkthroughVideo({
26426
26444
  const el = e.target;
26427
26445
  let keyboard = false;
26428
26446
  try {
26429
- keyboard = _nullishCoalesce(_optionalChain([el, 'access', _568 => _568.matches, 'optionalCall', _569 => _569(":focus-visible")]), () => ( false));
26430
- } catch (e37) {
26447
+ keyboard = _nullishCoalesce(_optionalChain([el, 'access', _571 => _571.matches, 'optionalCall', _572 => _572(":focus-visible")]), () => ( false));
26448
+ } catch (e38) {
26431
26449
  keyboard = false;
26432
26450
  }
26433
26451
  if (justClosedRef.current) {
@@ -26445,7 +26463,7 @@ function WalkthroughVideo({
26445
26463
  },
26446
26464
  children: [
26447
26465
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26448
- _chunkLXKEHZUVcjs.VideoHoverPreviewSurface,
26466
+ _chunkCOX4CSXZcjs.VideoHoverPreviewSurface,
26449
26467
  {
26450
26468
  url: video.mainVideoUrl || "",
26451
26469
  posterUrl: video.posterUrl,
@@ -26460,15 +26478,15 @@ function WalkthroughVideo({
26460
26478
  previewHandleRef: cardMode === "resume" ? resumeHandleRef : previewHandleRef,
26461
26479
  mutedIntent: userMuted,
26462
26480
  continuation: cardMode === "resume",
26463
- autoPlay: cardMode === "resume" && _optionalChain([handoff, 'optionalAccess', _570 => _570.playing]) !== false && !footerHidden,
26464
- startTime: _optionalChain([resumeHandoff, 'optionalAccess', _571 => _571.time]),
26465
- startMuted: _nullishCoalesce(_optionalChain([resumeHandoff, 'optionalAccess', _572 => _572.muted]), () => ( false)),
26481
+ autoPlay: cardMode === "resume" && _optionalChain([handoff, 'optionalAccess', _573 => _573.playing]) !== false && !footerHidden,
26482
+ startTime: _optionalChain([resumeHandoff, 'optionalAccess', _574 => _574.time]),
26483
+ startMuted: _nullishCoalesce(_optionalChain([resumeHandoff, 'optionalAccess', _575 => _575.muted]), () => ( false)),
26466
26484
  onEnded: cardMode === "resume" ? () => setHandoff(null) : () => setCardPaused(true)
26467
26485
  },
26468
26486
  `card-${embedUrlKey}`
26469
26487
  ) }),
26470
26488
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26471
- _chunkLXKEHZUVcjs.CardHitLayer,
26489
+ _chunkCOX4CSXZcjs.CardHitLayer,
26472
26490
  {
26473
26491
  label: video.title ? `${label}: ${video.title}` : label,
26474
26492
  onPointerDown: pausePreviewNow,
@@ -26559,7 +26577,7 @@ function WalkthroughVideo({
26559
26577
  {
26560
26578
  onOpenAutoFocus: (e) => {
26561
26579
  e.preventDefault();
26562
- _optionalChain([closeButtonRef, 'access', _573 => _573.current, 'optionalAccess', _574 => _574.focus, 'call', _575 => _575()]);
26580
+ _optionalChain([closeButtonRef, 'access', _576 => _576.current, 'optionalAccess', _577 => _577.focus, 'call', _578 => _578()]);
26563
26581
  },
26564
26582
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
26565
26583
  // PURE theater: just the video, centered on a dimmed backdrop.
@@ -26583,7 +26601,7 @@ function WalkthroughVideo({
26583
26601
  children: [
26584
26602
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
26585
26603
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26586
- _chunkLXKEHZUVcjs.Video,
26604
+ _chunkCOX4CSXZcjs.Video,
26587
26605
  {
26588
26606
  kind: video.youtubeUrl ? "youtube" : "file",
26589
26607
  url: video.youtubeUrl || video.mainVideoUrl,
@@ -26634,7 +26652,7 @@ function InlineWalkthroughVideo(props) {
26634
26652
  var _reactquery = require('@tanstack/react-query');
26635
26653
  function useWalkthroughVideo(opts) {
26636
26654
  const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
26637
- const captions = _chunkLXKEHZUVcjs.useCaptions.call(void 0, );
26655
+ const captions = _chunkCOX4CSXZcjs.useCaptions.call(void 0, );
26638
26656
  const query = _reactquery.useQuery.call(void 0, {
26639
26657
  queryKey: ["walkthrough-video", endpoint],
26640
26658
  enabled,
@@ -26653,14 +26671,14 @@ function useWalkthroughVideo(opts) {
26653
26671
  if (res.status === 404) return null;
26654
26672
  if (!res.ok) throw new Error(`Walkthrough video request failed (${res.status})`);
26655
26673
  const body = await res.json();
26656
- return _nullishCoalesce(_optionalChain([body, 'optionalAccess', _576 => _576.walkthroughVideo]), () => ( null));
26674
+ return _nullishCoalesce(_optionalChain([body, 'optionalAccess', _579 => _579.walkthroughVideo]), () => ( null));
26657
26675
  },
26658
26676
  // Per-observer transform — NEVER mutate the cached data. `select` also runs
26659
26677
  // over `initialData`, so the SSR seed is rewritten too. Keeping the proxy
26660
26678
  // rewrite here (not in queryFn) means a second consumer of the same
26661
26679
  // endpoint can't inherit this observer's proxied captionsUrl from the cache.
26662
26680
  select: (video) => {
26663
- if (!_optionalChain([video, 'optionalAccess', _577 => _577.captionsUrl])) return video;
26681
+ if (!_optionalChain([video, 'optionalAccess', _580 => _580.captionsUrl])) return video;
26664
26682
  if (transformCaptionsUrl && video.captionsUrl.startsWith("/")) {
26665
26683
  return { ...video, captionsUrl: transformCaptionsUrl(video.captionsUrl) };
26666
26684
  }
@@ -26707,7 +26725,7 @@ function VideoSourceSelector({
26707
26725
  input.accept = "video/*";
26708
26726
  input.onchange = async (e) => {
26709
26727
  const target = e.target;
26710
- const file = _optionalChain([target, 'access', _578 => _578.files, 'optionalAccess', _579 => _579[0]]);
26728
+ const file = _optionalChain([target, 'access', _581 => _581.files, 'optionalAccess', _582 => _582[0]]);
26711
26729
  if (!file) return;
26712
26730
  setIsUploading(true);
26713
26731
  setUploadProgress(0);
@@ -26832,7 +26850,7 @@ function VideoSourceSelector({
26832
26850
  }
26833
26851
  function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
26834
26852
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
26835
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Video, { kind: "file", url: videoUrl }) }),
26853
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Video, { kind: "file", url: videoUrl }) }),
26836
26854
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26837
26855
  "button",
26838
26856
  {
@@ -26883,7 +26901,7 @@ function SubtitlesEditor({
26883
26901
  {
26884
26902
  id,
26885
26903
  value: subtitles || "",
26886
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _580 => _580(e.target.value)]),
26904
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _583 => _583(e.target.value)]),
26887
26905
  placeholder,
26888
26906
  disabled: disabled || !onSubtitlesChange,
26889
26907
  className: "h-full w-full resize-none border-0 bg-transparent p-4 text-ods-text-primary text-code placeholder:text-ods-text-secondary/50 focus:outline-none focus:ring-0",
@@ -27112,7 +27130,7 @@ var AIEnrichSection = ({
27112
27130
  }) => {
27113
27131
  const hasResults = status === "success" || status === "error";
27114
27132
  const shouldDisable = disabled || !canEnrich;
27115
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _581 => _581.filter, 'call', _582 => _582((f) => !f.isFilled)]) || [];
27133
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _584 => _584.filter, 'call', _585 => _585((f) => !f.isFilled)]) || [];
27116
27134
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
27117
27135
  "div",
27118
27136
  {
@@ -27144,7 +27162,7 @@ var AIEnrichSection = ({
27144
27162
  {
27145
27163
  id: "ai-enrich-custom-instructions",
27146
27164
  value: _nullishCoalesce(customInstructions, () => ( "")),
27147
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _583 => _583(e.target.value)]),
27165
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _586 => _586(e.target.value)]),
27148
27166
  placeholder: customInstructionsPlaceholder,
27149
27167
  disabled: loading,
27150
27168
  maxLength: customInstructionsMaxLength,
@@ -27266,7 +27284,7 @@ function HighlightVideoSection({
27266
27284
  input.accept = "video/*";
27267
27285
  input.onchange = async (e) => {
27268
27286
  const target = e.target;
27269
- const file = _optionalChain([target, 'access', _584 => _584.files, 'optionalAccess', _585 => _585[0]]);
27287
+ const file = _optionalChain([target, 'access', _587 => _587.files, 'optionalAccess', _588 => _588[0]]);
27270
27288
  if (!file) return;
27271
27289
  setUploadError(null);
27272
27290
  try {
@@ -27356,7 +27374,7 @@ function HighlightVideoSection({
27356
27374
  // Default simple preview — the <Video> SSOT (MuxPlayer) plays
27357
27375
  // MP4 and Mux HLS alike; aspect-video box reserves the height.
27358
27376
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
27359
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
27377
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
27360
27378
  onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
27361
27379
  "button",
27362
27380
  {
@@ -27383,7 +27401,7 @@ function HighlightConfigSection({
27383
27401
  disabled = false,
27384
27402
  className = ""
27385
27403
  }) {
27386
- 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, _chunkLXKEHZUVcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
27404
+ 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, _chunkCOX4CSXZcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
27387
27405
  Select,
27388
27406
  {
27389
27407
  value: targetDurationSeconds.toString(),
@@ -27702,7 +27720,7 @@ function HighlightVideoPreview({
27702
27720
  input.accept = "video/*";
27703
27721
  input.onchange = async (e) => {
27704
27722
  const target = e.target;
27705
- const file = _optionalChain([target, 'access', _586 => _586.files, 'optionalAccess', _587 => _587[0]]);
27723
+ const file = _optionalChain([target, 'access', _589 => _589.files, 'optionalAccess', _590 => _590[0]]);
27706
27724
  if (!file) return;
27707
27725
  await onUpload(file);
27708
27726
  };
@@ -27881,7 +27899,7 @@ function HighlightVideoCombinedSection({
27881
27899
  input.accept = "video/*";
27882
27900
  input.onchange = async (e) => {
27883
27901
  const target = e.target;
27884
- const file = _optionalChain([target, 'access', _588 => _588.files, 'optionalAccess', _589 => _589[0]]);
27902
+ const file = _optionalChain([target, 'access', _591 => _591.files, 'optionalAccess', _592 => _592[0]]);
27885
27903
  if (!file) return;
27886
27904
  await onUpload(file);
27887
27905
  };
@@ -28070,7 +28088,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
28070
28088
  if (level) onPermissionChange(categoryId, policy.id, level);
28071
28089
  };
28072
28090
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-m)] border-b border-ods-border bg-ods-bg px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] last:border-b-0 md:items-center", children: [
28073
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDMUUWHIIcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
28091
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk26GBOUIPcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
28074
28092
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
28075
28093
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h4", title: policy.name, children: policy.name }),
28076
28094
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "break-all text-ods-text-secondary text-h6", children: policy.commandPattern }),
@@ -28096,7 +28114,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
28096
28114
  ] });
28097
28115
  };
28098
28116
  var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
28099
- const { innerRef, containerStyle } = _chunkLXKEHZUVcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
28117
+ const { innerRef, containerStyle } = _chunkCOX4CSXZcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
28100
28118
  const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
28101
28119
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
28102
28120
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -28262,13 +28280,13 @@ function WaitlistForm({
28262
28280
  const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
28263
28281
  const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
28264
28282
  const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
28265
- const { toast } = _chunkW4YXUJOFcjs.useToast.call(void 0, );
28266
- const { honeypotInputProps, getSignals, resetSignals } = _chunkW4YXUJOFcjs.useHumanitySignals.call(void 0, );
28283
+ const { toast } = _chunkVP6PJLMIcjs.useToast.call(void 0, );
28284
+ const { honeypotInputProps, getSignals, resetSignals } = _chunkVP6PJLMIcjs.useHumanitySignals.call(void 0, );
28267
28285
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
28268
- const isClient = _chunkLXKEHZUVcjs.useIsHydrated.call(void 0, );
28286
+ const isClient = _chunkCOX4CSXZcjs.useIsHydrated.call(void 0, );
28269
28287
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
28270
28288
  const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
28271
- const rescue = _chunkW4YXUJOFcjs.useFormRescue.call(void 0, {
28289
+ const rescue = _chunkVP6PJLMIcjs.useFormRescue.call(void 0, {
28272
28290
  form: rescueForm,
28273
28291
  // The phone is reported as filled only; its value never leaves the form early.
28274
28292
  fieldNames: ["email", "phone"],
@@ -28319,7 +28337,7 @@ function WaitlistForm({
28319
28337
  await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
28320
28338
  rescue.complete();
28321
28339
  resetSignals();
28322
- } catch (e38) {
28340
+ } catch (e39) {
28323
28341
  }
28324
28342
  };
28325
28343
  if (!isClient) {
@@ -28574,19 +28592,19 @@ function NotificationsProvider({
28574
28592
  }, []);
28575
28593
  const markRead = _react.useCallback.call(void 0, (id) => {
28576
28594
  dispatch({ type: "markRead", id });
28577
- void _optionalChain([actionsRef, 'access', _590 => _590.current, 'optionalAccess', _591 => _591.onMarkRead, 'optionalCall', _592 => _592(id)]);
28595
+ void _optionalChain([actionsRef, 'access', _593 => _593.current, 'optionalAccess', _594 => _594.onMarkRead, 'optionalCall', _595 => _595(id)]);
28578
28596
  }, []);
28579
28597
  const markAllRead = _react.useCallback.call(void 0, () => {
28580
28598
  dispatch({ type: "markAllRead" });
28581
- void _optionalChain([actionsRef, 'access', _593 => _593.current, 'optionalAccess', _594 => _594.onMarkAllRead, 'optionalCall', _595 => _595()]);
28599
+ void _optionalChain([actionsRef, 'access', _596 => _596.current, 'optionalAccess', _597 => _597.onMarkAllRead, 'optionalCall', _598 => _598()]);
28582
28600
  }, []);
28583
28601
  const markSettled = _react.useCallback.call(void 0, (id) => {
28584
28602
  dispatch({ type: "markSettled", id });
28585
- void _optionalChain([actionsRef, 'access', _596 => _596.current, 'optionalAccess', _597 => _597.onMarkSettled, 'optionalCall', _598 => _598(id)]);
28603
+ void _optionalChain([actionsRef, 'access', _599 => _599.current, 'optionalAccess', _600 => _600.onMarkSettled, 'optionalCall', _601 => _601(id)]);
28586
28604
  }, []);
28587
28605
  const remove = _react.useCallback.call(void 0, (id) => {
28588
28606
  dispatch({ type: "remove", id });
28589
- void _optionalChain([actionsRef, 'access', _599 => _599.current, 'optionalAccess', _600 => _600.onRemove, 'optionalCall', _601 => _601(id)]);
28607
+ void _optionalChain([actionsRef, 'access', _602 => _602.current, 'optionalAccess', _603 => _603.onRemove, 'optionalCall', _604 => _604(id)]);
28590
28608
  }, []);
28591
28609
  const clear = _react.useCallback.call(void 0, () => dispatch({ type: "clear" }), []);
28592
28610
  const open = _react.useCallback.call(void 0, () => setIsOpen(true), []);
@@ -28595,14 +28613,14 @@ function NotificationsProvider({
28595
28613
  const setShowPopups = _react.useCallback.call(void 0,
28596
28614
  (value2) => {
28597
28615
  setShowPopupsState(value2);
28598
- _optionalChain([onShowPopupsChange, 'optionalCall', _602 => _602(value2)]);
28616
+ _optionalChain([onShowPopupsChange, 'optionalCall', _605 => _605(value2)]);
28599
28617
  },
28600
28618
  [onShowPopupsChange]
28601
28619
  );
28602
28620
  const setShowDesktopPopups = _react.useCallback.call(void 0,
28603
28621
  (value2) => {
28604
28622
  setShowDesktopPopupsState(value2);
28605
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _603 => _603(value2)]);
28623
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _606 => _606(value2)]);
28606
28624
  },
28607
28625
  [onShowDesktopPopupsChange]
28608
28626
  );
@@ -28718,7 +28736,7 @@ var AppLayoutDrawerRoot = ({
28718
28736
  const handleOpenChange = _react.useCallback.call(void 0,
28719
28737
  (next) => {
28720
28738
  if (!isControlled) setInternalOpen(next);
28721
- _optionalChain([onOpenChange, 'optionalCall', _604 => _604(next)]);
28739
+ _optionalChain([onOpenChange, 'optionalCall', _607 => _607(next)]);
28722
28740
  },
28723
28741
  [isControlled, onOpenChange]
28724
28742
  );
@@ -28735,9 +28753,9 @@ var AppLayoutDrawerRoot = ({
28735
28753
  }
28736
28754
  }));
28737
28755
  _react.useEffect.call(void 0, () => {
28738
- if (open) _optionalChain([coordination, 'optionalAccess', _605 => _605.notifyDrawerDidOpen, 'call', _606 => _606(selfHandle)]);
28756
+ if (open) _optionalChain([coordination, 'optionalAccess', _608 => _608.notifyDrawerDidOpen, 'call', _609 => _609(selfHandle)]);
28739
28757
  }, [open, coordination, selfHandle]);
28740
- _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _607 => _607.registerDrawer, 'call', _608 => _608(selfHandle)]), [coordination, selfHandle]);
28758
+ _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _610 => _610.registerDrawer, 'call', _611 => _611(selfHandle)]), [coordination, selfHandle]);
28741
28759
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive3.Root, { ...rest, open, onOpenChange: handleOpenChange, modal, children }) });
28742
28760
  };
28743
28761
  AppLayoutDrawerRoot.displayName = "AppLayoutDrawer";
@@ -28826,7 +28844,7 @@ function useContainedResizableSize({
28826
28844
  const clampToContainer = _react.useCallback.call(void 0,
28827
28845
  (value) => {
28828
28846
  const effectiveMax = available > 0 ? Math.min(maxSize, available - 40) : maxSize;
28829
- return _chunkDMUUWHIIcjs.clamp.call(void 0, value, minSize, Math.max(minSize, effectiveMax));
28847
+ return _chunk26GBOUIPcjs.clamp.call(void 0, value, minSize, Math.max(minSize, effectiveMax));
28830
28848
  },
28831
28849
  [available, minSize, maxSize]
28832
28850
  );
@@ -28840,7 +28858,7 @@ function useContainedResizableSize({
28840
28858
  const parsed = parseFloat(raw);
28841
28859
  if (!Number.isFinite(parsed)) return defaultSize;
28842
28860
  return parsed;
28843
- } catch (e39) {
28861
+ } catch (e40) {
28844
28862
  return defaultSize;
28845
28863
  }
28846
28864
  }, [enabled, storageKey, defaultSize]);
@@ -28851,7 +28869,7 @@ function useContainedResizableSize({
28851
28869
  if (!enabled || !storageKey || typeof window === "undefined") return;
28852
28870
  try {
28853
28871
  window.localStorage.setItem(storageKey, String(Math.round(size)));
28854
- } catch (e40) {
28872
+ } catch (e41) {
28855
28873
  }
28856
28874
  }, [enabled, size, storageKey]);
28857
28875
  return { size, setSize, clampSize: clampToContainer };
@@ -28906,7 +28924,7 @@ function AppLayoutDrawerResizeHandle({
28906
28924
  finishDrag(startRef, dragSizeRef, onSize);
28907
28925
  try {
28908
28926
  e.currentTarget.releasePointerCapture(e.pointerId);
28909
- } catch (e41) {
28927
+ } catch (e42) {
28910
28928
  }
28911
28929
  };
28912
28930
  const handleKeyDown = (e) => {
@@ -29078,7 +29096,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
29078
29096
  "data-state": open ? "open" : "closed",
29079
29097
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
29080
29098
  "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",
29081
- _chunkLXKEHZUVcjs.OVERLAY_BACKDROP_CLASS,
29099
+ _chunkCOX4CSXZcjs.OVERLAY_BACKDROP_CLASS,
29082
29100
  // Persist mode only: hold the fade-out's final (transparent) frame
29083
29101
  // so the backdrop doesn't snap back to opacity 1 and dim the whole
29084
29102
  // content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
@@ -29106,10 +29124,10 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
29106
29124
  ),
29107
29125
  style,
29108
29126
  onInteractOutside: (event) => {
29109
- _optionalChain([onInteractOutside, 'optionalCall', _609 => _609(event)]);
29127
+ _optionalChain([onInteractOutside, 'optionalCall', _612 => _612(event)]);
29110
29128
  if (event.defaultPrevented) return;
29111
29129
  const target = event.target;
29112
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _610 => _610.contains, 'call', _611 => _611(target)]);
29130
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _613 => _613.contains, 'call', _614 => _614(target)]);
29113
29131
  if (!isInsideContainer) {
29114
29132
  event.preventDefault();
29115
29133
  return;
@@ -29157,11 +29175,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
29157
29175
  }
29158
29176
  );
29159
29177
  AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
29160
- var AppLayoutDrawerHeader = _chunkLXKEHZUVcjs.DrawerHeader;
29161
- var AppLayoutDrawerTitle = _chunkLXKEHZUVcjs.DrawerTitle;
29162
- var AppLayoutDrawerDescription = _chunkLXKEHZUVcjs.DrawerDescription;
29163
- var AppLayoutDrawerBody = _chunkLXKEHZUVcjs.DrawerBody;
29164
- var AppLayoutDrawerFooter = _chunkLXKEHZUVcjs.DrawerFooter;
29178
+ var AppLayoutDrawerHeader = _chunkCOX4CSXZcjs.DrawerHeader;
29179
+ var AppLayoutDrawerTitle = _chunkCOX4CSXZcjs.DrawerTitle;
29180
+ var AppLayoutDrawerDescription = _chunkCOX4CSXZcjs.DrawerDescription;
29181
+ var AppLayoutDrawerBody = _chunkCOX4CSXZcjs.DrawerBody;
29182
+ var AppLayoutDrawerFooter = _chunkCOX4CSXZcjs.DrawerFooter;
29165
29183
 
29166
29184
  // src/components/features/notifications/notification-tile.tsx
29167
29185
 
@@ -29180,7 +29198,7 @@ var typeColorByVariant = {
29180
29198
  error: "text-ods-error"
29181
29199
  };
29182
29200
  var progressColorByVariant2 = {
29183
- ..._chunkW4YXUJOFcjs.progressColorByVariant,
29201
+ ..._chunkVP6PJLMIcjs.progressColorByVariant,
29184
29202
  default: "bg-ods-accent",
29185
29203
  info: "bg-ods-accent"
29186
29204
  };
@@ -29224,7 +29242,7 @@ function NotificationTile({
29224
29242
  if (!counting) return void 0;
29225
29243
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
29226
29244
  const timer = window.setTimeout(() => {
29227
- _optionalChain([onSettle, 'optionalCall', _612 => _612(id)]);
29245
+ _optionalChain([onSettle, 'optionalCall', _615 => _615(id)]);
29228
29246
  }, remaining);
29229
29247
  return () => window.clearTimeout(timer);
29230
29248
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -29257,7 +29275,7 @@ function NotificationTile({
29257
29275
  height: 16,
29258
29276
  unoptimized: true
29259
29277
  }
29260
- ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkW4YXUJOFcjs.dotColorByVariant[accentVariant]) }))) }),
29278
+ ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkVP6PJLMIcjs.dotColorByVariant[accentVariant]) }))) }),
29261
29279
  type ? lockscreen ? (
29262
29280
  // A phone names the sender in plain words and never cuts them.
29263
29281
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 break-words text-ods-text-secondary text-h6", children: type })
@@ -29267,7 +29285,7 @@ function NotificationTile({
29267
29285
  {
29268
29286
  dateTime: createdAtIso,
29269
29287
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
29270
- children: _nullishCoalesce(timeLabel, () => ( _chunkLXKEHZUVcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
29288
+ children: _nullishCoalesce(timeLabel, () => ( _chunkCOX4CSXZcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
29271
29289
  }
29272
29290
  ) : null,
29273
29291
  !lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
@@ -29275,7 +29293,7 @@ function NotificationTile({
29275
29293
  active: isLive,
29276
29294
  label: "Dismiss notification",
29277
29295
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.XmarkIcon, { size: 16 }),
29278
- onClick: () => _optionalChain([onSettle, 'optionalCall', _613 => _613(id)])
29296
+ onClick: () => _optionalChain([onSettle, 'optionalCall', _616 => _616(id)])
29279
29297
  },
29280
29298
  {
29281
29299
  active: !isLive,
@@ -29376,7 +29394,7 @@ function NotificationDrawer({
29376
29394
  const unreadNotifications = notifications.filter((n) => !n.read);
29377
29395
  const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
29378
29396
  /* @__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,
29379
- _chunkLXKEHZUVcjs.DrawerTitle,
29397
+ _chunkCOX4CSXZcjs.DrawerTitle,
29380
29398
  {
29381
29399
  hideClose: true,
29382
29400
  className: "truncate",
@@ -29435,8 +29453,8 @@ function NotificationDrawer({
29435
29453
  }
29436
29454
  ) });
29437
29455
  }
29438
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29439
- _chunkLXKEHZUVcjs.DrawerContent,
29456
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29457
+ _chunkCOX4CSXZcjs.DrawerContent,
29440
29458
  {
29441
29459
  side: "right",
29442
29460
  "aria-describedby": void 0,
@@ -29473,7 +29491,7 @@ function DrawerScrollList({
29473
29491
  if (!sentinel || !root) return void 0;
29474
29492
  const observer = new IntersectionObserver(
29475
29493
  (entries) => {
29476
- if (_optionalChain([entries, 'access', _614 => _614[0], 'optionalAccess', _615 => _615.isIntersecting])) _optionalChain([loadMoreRef, 'access', _616 => _616.current, 'optionalCall', _617 => _617()]);
29494
+ if (_optionalChain([entries, 'access', _617 => _617[0], 'optionalAccess', _618 => _618.isIntersecting])) _optionalChain([loadMoreRef, 'access', _619 => _619.current, 'optionalCall', _620 => _620()]);
29477
29495
  },
29478
29496
  { root, rootMargin: loadMoreRootMargin }
29479
29497
  );
@@ -29488,7 +29506,7 @@ function DrawerScrollList({
29488
29506
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
29489
29507
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
29490
29508
  unreadNotifications.map((n) => {
29491
- const custom = _optionalChain([renderTile, 'optionalCall', _618 => _618(n, { onComplete, onSettle, liveDurationMs })]);
29509
+ const custom = _optionalChain([renderTile, 'optionalCall', _621 => _621(n, { onComplete, onSettle, liveDurationMs })]);
29492
29510
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
29493
29511
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29494
29512
  NotificationTile,
@@ -29541,7 +29559,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
29541
29559
  ] });
29542
29560
  }
29543
29561
  function DesktopNotificationsToggleRow({ checked, onChange }) {
29544
- const { supported, permission, request } = _chunkW4YXUJOFcjs.useNotificationPermission.call(void 0, );
29562
+ const { supported, permission, request } = _chunkVP6PJLMIcjs.useNotificationPermission.call(void 0, );
29545
29563
  if (!supported) return null;
29546
29564
  const blocked = permission === "denied";
29547
29565
  const handleChange = async (value) => {
@@ -29608,7 +29626,7 @@ function NotificationPopups({
29608
29626
  }) {
29609
29627
  const ctx = useOptionalNotifications();
29610
29628
  const [now, setNow] = _react.useState.call(void 0, () => Date.now());
29611
- const hasAgeingNotifications = Boolean(_optionalChain([ctx, 'optionalAccess', _619 => _619.notifications, 'access', _620 => _620.some, 'call', _621 => _621((n) => !n.read && !n.settled)]));
29629
+ const hasAgeingNotifications = Boolean(_optionalChain([ctx, 'optionalAccess', _622 => _622.notifications, 'access', _623 => _623.some, 'call', _624 => _624((n) => !n.read && !n.settled)]));
29612
29630
  _react.useEffect.call(void 0, () => {
29613
29631
  if (!hasAgeingNotifications) return void 0;
29614
29632
  const id = setInterval(() => setNow(Date.now()), 500);
@@ -29651,7 +29669,7 @@ function NotificationPopups({
29651
29669
  className
29652
29670
  ),
29653
29671
  children: live.map((n) => {
29654
- const custom = _optionalChain([renderTile, 'optionalCall', _622 => _622(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
29672
+ const custom = _optionalChain([renderTile, 'optionalCall', _625 => _625(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
29655
29673
  if (custom) {
29656
29674
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
29657
29675
  }
@@ -29698,34 +29716,34 @@ function isApprovalNotificationType(type) {
29698
29716
  return typeof type === "string" && APPROVAL_REQUEST_TYPES.has(type);
29699
29717
  }
29700
29718
  function isApprovalNotification(notification) {
29701
- return isApprovalNotificationType(_optionalChain([notification, 'access', _623 => _623.meta, 'optionalAccess', _624 => _624.notificationType]));
29719
+ return isApprovalNotificationType(_optionalChain([notification, 'access', _626 => _626.meta, 'optionalAccess', _627 => _627.notificationType]));
29702
29720
  }
29703
29721
  function getApprovalMeta(notification) {
29704
29722
  if (!isApprovalNotification(notification)) return null;
29705
29723
  const meta = notification.meta;
29706
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _625 => _625.approvalRequestId]);
29707
- const toolCalls = _optionalChain([meta, 'optionalAccess', _626 => _626.toolCalls]);
29724
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _628 => _628.approvalRequestId]);
29725
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _629 => _629.toolCalls]);
29708
29726
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
29709
29727
  return {
29710
29728
  approvalRequestId,
29711
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _627 => _627.dialogId]), () => ( null)),
29712
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _628 => _628.ticketId]), () => ( null)),
29713
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _629 => _629.approvalType]), () => ( null)),
29714
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _630 => _630.resolution]), () => ( null)),
29715
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _631 => _631.resolvedByName]), () => ( null)),
29729
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _630 => _630.dialogId]), () => ( null)),
29730
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _631 => _631.ticketId]), () => ( null)),
29731
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _632 => _632.approvalType]), () => ( null)),
29732
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _633 => _633.resolution]), () => ( null)),
29733
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _634 => _634.resolvedByName]), () => ( null)),
29716
29734
  toolCalls
29717
29735
  };
29718
29736
  }
29719
29737
  function resolutionToStatus(resolution) {
29720
29738
  switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
29721
29739
  case "APPROVED":
29722
- return _chunkLXKEHZUVcjs.APPROVAL_STATUS.APPROVED;
29740
+ return _chunkCOX4CSXZcjs.APPROVAL_STATUS.APPROVED;
29723
29741
  case "REJECTED":
29724
- return _chunkLXKEHZUVcjs.APPROVAL_STATUS.REJECTED;
29742
+ return _chunkCOX4CSXZcjs.APPROVAL_STATUS.REJECTED;
29725
29743
  case "CANCELLED":
29726
- return _chunkLXKEHZUVcjs.APPROVAL_STATUS.CANCELLED;
29744
+ return _chunkCOX4CSXZcjs.APPROVAL_STATUS.CANCELLED;
29727
29745
  default:
29728
- return _chunkLXKEHZUVcjs.APPROVAL_STATUS.PENDING;
29746
+ return _chunkCOX4CSXZcjs.APPROVAL_STATUS.PENDING;
29729
29747
  }
29730
29748
  }
29731
29749
  function approvalMetaToBatchData(approval) {
@@ -29768,10 +29786,10 @@ function ApprovalRequestNotificationTile({
29768
29786
  const [processing, setProcessing] = _react.useState.call(void 0, false);
29769
29787
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
29770
29788
  const approval = getApprovalMeta(notification);
29771
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _632 => _632.resolution]));
29789
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _635 => _635.resolution]));
29772
29790
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
29773
29791
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
29774
- const { innerRef, containerStyle } = _chunkLXKEHZUVcjs.useCollapsible.call(void 0, { expanded });
29792
+ const { innerRef, containerStyle } = _chunkCOX4CSXZcjs.useCollapsible.call(void 0, { expanded });
29775
29793
  if (!approval || !batchData) return null;
29776
29794
  const tileNotification = {
29777
29795
  ...notification,
@@ -29784,7 +29802,7 @@ function ApprovalRequestNotificationTile({
29784
29802
  setLocalStatus(nextStatus);
29785
29803
  try {
29786
29804
  await action(batchData.approvalRequestId);
29787
- } catch (e42) {
29805
+ } catch (e43) {
29788
29806
  setLocalStatus(null);
29789
29807
  return;
29790
29808
  } finally {
@@ -29834,7 +29852,7 @@ function ApprovalRequestNotificationTile({
29834
29852
  }
29835
29853
  )
29836
29854
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
29837
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ApprovalStatusTag, { status }),
29855
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ApprovalStatusTag, { status }),
29838
29856
  approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
29839
29857
  "by ",
29840
29858
  approval.resolvedByName
@@ -29852,12 +29870,12 @@ function ApprovalRequestNotificationTile({
29852
29870
  "aria-expanded": expanded,
29853
29871
  "aria-label": toggleLabel,
29854
29872
  className: "ml-auto w-6 shrink-0 px-0 md:w-8",
29855
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.ExpandChevron, { expanded })
29873
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.ExpandChevron, { expanded })
29856
29874
  }
29857
29875
  )
29858
29876
  ] }),
29859
29877
  children: !lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29860
- _chunkLXKEHZUVcjs.ApprovalBatchMessage,
29878
+ _chunkCOX4CSXZcjs.ApprovalBatchMessage,
29861
29879
  {
29862
29880
  data: batchData,
29863
29881
  showExecutionStatus: false,
@@ -30105,7 +30123,7 @@ function TimeTrackerPanel({
30105
30123
  error: showFieldError ? "Required if no notes added" : void 0,
30106
30124
  disableClientFilter: !!onTicketSearch,
30107
30125
  onInputChange: (value, reason) => {
30108
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _633 => _633(value)]);
30126
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _636 => _636(value)]);
30109
30127
  }
30110
30128
  }
30111
30129
  ),
@@ -30120,7 +30138,7 @@ function TimeTrackerPanel({
30120
30138
  disabled: customerLocked,
30121
30139
  disableClientFilter: !!onCustomerSearch,
30122
30140
  onInputChange: (value, reason) => {
30123
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _634 => _634(value)]);
30141
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _637 => _637(value)]);
30124
30142
  },
30125
30143
  startAdornment: customerStartAdornment,
30126
30144
  renderOption: renderCustomerOption
@@ -30222,7 +30240,7 @@ function LastEntryRow({ entry, onClick }) {
30222
30240
  {
30223
30241
  variant: "outline",
30224
30242
  size: "icon",
30225
- onClick: () => _optionalChain([onClick, 'optionalCall', _635 => _635(entry)]),
30243
+ onClick: () => _optionalChain([onClick, 'optionalCall', _638 => _638(entry)]),
30226
30244
  disabled: !onClick,
30227
30245
  "aria-label": `Open entry: ${entry.title}`,
30228
30246
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -30306,28 +30324,28 @@ function HeaderButton({
30306
30324
  function TimeTrackerHeaderButton({ className, disabled }) {
30307
30325
  const ctx = useOptionalTimeTracker();
30308
30326
  const elapsedLabel = useTrackerClock({
30309
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _636 => _636.status]), () => ( "ready")),
30310
- runningSince: _optionalChain([ctx, 'optionalAccess', _637 => _637.runningSince]),
30311
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _638 => _638.accumulatedMs])
30327
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _639 => _639.status]), () => ( "ready")),
30328
+ runningSince: _optionalChain([ctx, 'optionalAccess', _640 => _640.runningSince]),
30329
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _641 => _641.accumulatedMs])
30312
30330
  });
30313
30331
  const layoutContainer = useAppLayoutDrawerContainer();
30314
30332
  const coordination = useAppLayoutDrawerCoordination();
30315
- const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _639 => _639.isOpen]), () => ( false));
30333
+ const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _642 => _642.isOpen]), () => ( false));
30316
30334
  const isOpenRef = _react.useRef.call(void 0, isOpen);
30317
- const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _640 => _640.close]));
30335
+ const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _643 => _643.close]));
30318
30336
  _react.useEffect.call(void 0, () => {
30319
30337
  isOpenRef.current = isOpen;
30320
- closeRef.current = _optionalChain([ctx, 'optionalAccess', _641 => _641.close]);
30338
+ closeRef.current = _optionalChain([ctx, 'optionalAccess', _644 => _644.close]);
30321
30339
  });
30322
30340
  const [selfHandle] = _react.useState.call(void 0, () => ({
30323
30341
  close: () => {
30324
- if (isOpenRef.current) _optionalChain([closeRef, 'access', _642 => _642.current, 'optionalCall', _643 => _643()]);
30342
+ if (isOpenRef.current) _optionalChain([closeRef, 'access', _645 => _645.current, 'optionalCall', _646 => _646()]);
30325
30343
  }
30326
30344
  }));
30327
30345
  _react.useEffect.call(void 0, () => {
30328
- if (isOpen) _optionalChain([coordination, 'optionalAccess', _644 => _644.notifyDrawerDidOpen, 'call', _645 => _645(selfHandle)]);
30346
+ if (isOpen) _optionalChain([coordination, 'optionalAccess', _647 => _647.notifyDrawerDidOpen, 'call', _648 => _648(selfHandle)]);
30329
30347
  }, [isOpen, coordination, selfHandle]);
30330
- _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _646 => _646.registerDrawer, 'call', _647 => _647(selfHandle)]), [coordination, selfHandle]);
30348
+ _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _649 => _649.registerDrawer, 'call', _650 => _650(selfHandle)]), [coordination, selfHandle]);
30331
30349
  if (!ctx) return null;
30332
30350
  const { open, close, status } = ctx;
30333
30351
  const isPaused = status === "paused";
@@ -30374,7 +30392,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
30374
30392
  "data-state": isOpen ? "open" : "closed",
30375
30393
  className: _chunkX7CEWD6Vcjs.cn.call(void 0,
30376
30394
  layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
30377
- _chunkLXKEHZUVcjs.OVERLAY_BACKDROP_CLASS,
30395
+ _chunkCOX4CSXZcjs.OVERLAY_BACKDROP_CLASS,
30378
30396
  "data-[state=open]:animate-in data-[state=open]:fade-in-0",
30379
30397
  "data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
30380
30398
  )
@@ -30504,7 +30522,7 @@ function RemoteAccessRequestCard({
30504
30522
  }) {
30505
30523
  const { organizationName } = party;
30506
30524
  const siteUrl = _nullishCoalesce(party.organizationSiteUrl, () => ( void 0));
30507
- const openableSite = _optionalChain([siteUrl, 'optionalAccess', _648 => _648.startsWith, 'call', _649 => _649("https://")]) ? siteUrl : void 0;
30525
+ const openableSite = _optionalChain([siteUrl, 'optionalAccess', _651 => _651.startsWith, 'call', _652 => _652("https://")]) ? siteUrl : void 0;
30508
30526
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
30509
30527
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "w-full text-ods-text-primary text-h2", children: "Your IT support team is requesting remote access" }),
30510
30528
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-m)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)]", children: [
@@ -30974,7 +30992,7 @@ function autoScrollAncestors(element) {
30974
30992
 
30975
30993
  // src/components/features/board/aim.ts
30976
30994
  var _closestedge = require('@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge');
30977
- var othersIn = (columns, columnId, ticketId) => (_nullishCoalesce(_optionalChain([columns, 'access', _650 => _650.find, 'call', _651 => _651((c) => c.id === columnId), 'optionalAccess', _652 => _652.tickets]), () => ( []))).filter((t) => t.id !== ticketId);
30995
+ var othersIn = (columns, columnId, ticketId) => (_nullishCoalesce(_optionalChain([columns, 'access', _653 => _653.find, 'call', _654 => _654((c) => c.id === columnId), 'optionalAccess', _655 => _655.tickets]), () => ( []))).filter((t) => t.id !== ticketId);
30978
30996
  function laneOf(columns, ticketId) {
30979
30997
  return _nullishCoalesce(columns.find((c) => c.tickets.some((t) => t.id === ticketId)), () => ( null));
30980
30998
  }
@@ -31018,11 +31036,11 @@ function aimToChange(columns, ticketId, aim) {
31018
31036
  const lane = laneOf(columns, ticketId);
31019
31037
  if (!lane) return null;
31020
31038
  const others = othersIn(columns, aim.columnId, ticketId);
31021
- const afterTicketId = _nullishCoalesce(_optionalChain([others, 'access', _653 => _653[aim.index - 1], 'optionalAccess', _654 => _654.id]), () => ( null));
31022
- const beforeTicketId = _nullishCoalesce(_optionalChain([others, 'access', _655 => _655[aim.index], 'optionalAccess', _656 => _656.id]), () => ( null));
31039
+ const afterTicketId = _nullishCoalesce(_optionalChain([others, 'access', _656 => _656[aim.index - 1], 'optionalAccess', _657 => _657.id]), () => ( null));
31040
+ const beforeTicketId = _nullishCoalesce(_optionalChain([others, 'access', _658 => _658[aim.index], 'optionalAccess', _659 => _659.id]), () => ( null));
31023
31041
  if (lane.id === aim.columnId) {
31024
31042
  const currentIndex = lane.tickets.findIndex((t) => t.id === ticketId);
31025
- if ((_nullishCoalesce(_optionalChain([lane, 'access', _657 => _657.tickets, 'access', _658 => _658[currentIndex - 1], 'optionalAccess', _659 => _659.id]), () => ( null))) === afterTicketId) return null;
31043
+ if ((_nullishCoalesce(_optionalChain([lane, 'access', _660 => _660.tickets, 'access', _661 => _661[currentIndex - 1], 'optionalAccess', _662 => _662.id]), () => ( null))) === afterTicketId) return null;
31026
31044
  }
31027
31045
  return { ticketId, fromColumnId: lane.id, toColumnId: aim.columnId, afterTicketId, beforeTicketId };
31028
31046
  }
@@ -31043,7 +31061,7 @@ function BoardColumnHeader({
31043
31061
  }) {
31044
31062
  const count = _nullishCoalesce(column.total, () => ( column.tickets.length));
31045
31063
  const tagStatus = _nullishCoalesce(column.statusKey, () => ( column.id));
31046
- const useStatusVariant = _chunkLXKEHZUVcjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
31064
+ const useStatusVariant = _chunkCOX4CSXZcjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
31047
31065
  const actionClass = "h-8 w-8 p-0 md:h-8 md:w-8";
31048
31066
  if (collapsed) {
31049
31067
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
@@ -31059,7 +31077,7 @@ function BoardColumnHeader({
31059
31077
  }
31060
31078
  ),
31061
31079
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31062
- _chunkLXKEHZUVcjs.TicketStatusTag,
31080
+ _chunkCOX4CSXZcjs.TicketStatusTag,
31063
31081
  {
31064
31082
  status: tagStatus,
31065
31083
  label: column.label,
@@ -31072,7 +31090,7 @@ function BoardColumnHeader({
31072
31090
  }
31073
31091
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
31074
31092
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
31075
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
31093
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
31076
31094
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5", style: useStatusVariant ? void 0 : { color: column.color }, children: count })
31077
31095
  ] }),
31078
31096
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
@@ -31224,7 +31242,7 @@ function holdMoveDragEffect(element) {
31224
31242
 
31225
31243
  function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
31226
31244
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
31227
- const { innerRef, containerStyle } = _chunkLXKEHZUVcjs.useCollapsible.call(void 0, { expanded });
31245
+ const { innerRef, containerStyle } = _chunkCOX4CSXZcjs.useCollapsible.call(void 0, { expanded });
31228
31246
  const isAdmin = pendingApproval.approvalType === "ADMIN";
31229
31247
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
31230
31248
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -31253,7 +31271,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
31253
31271
  }
31254
31272
  ),
31255
31273
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: "pt-[var(--spacing-system-xs)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31256
- _chunkLXKEHZUVcjs.ApprovalBatchMessage,
31274
+ _chunkCOX4CSXZcjs.ApprovalBatchMessage,
31257
31275
  {
31258
31276
  className: "mb-0",
31259
31277
  data: {
@@ -31294,14 +31312,14 @@ function useIsLanding(ticketId) {
31294
31312
  return _react.useContext.call(void 0, LandingCardContext) === ticketId;
31295
31313
  }
31296
31314
  function hasMoveSettled(columns, move) {
31297
- const tickets = _optionalChain([columns, 'access', _660 => _660.find, 'call', _661 => _661((c) => c.id === move.toColumnId), 'optionalAccess', _662 => _662.tickets]);
31315
+ const tickets = _optionalChain([columns, 'access', _663 => _663.find, 'call', _664 => _664((c) => c.id === move.toColumnId), 'optionalAccess', _665 => _665.tickets]);
31298
31316
  if (!tickets) return false;
31299
31317
  const index = tickets.findIndex((t) => t.id === move.ticketId);
31300
31318
  if (index < 0) return false;
31301
31319
  if (move.fromColumnId === move.toColumnId) {
31302
- return (_nullishCoalesce(_optionalChain([tickets, 'access', _663 => _663[index - 1], 'optionalAccess', _664 => _664.id]), () => ( null))) === move.afterTicketId;
31320
+ return (_nullishCoalesce(_optionalChain([tickets, 'access', _666 => _666[index - 1], 'optionalAccess', _667 => _667.id]), () => ( null))) === move.afterTicketId;
31303
31321
  }
31304
- return !_optionalChain([columns, 'access', _665 => _665.find, 'call', _666 => _666((c) => c.id === move.fromColumnId), 'optionalAccess', _667 => _667.tickets, 'access', _668 => _668.some, 'call', _669 => _669((t) => t.id === move.ticketId)]);
31322
+ return !_optionalChain([columns, 'access', _668 => _668.find, 'call', _669 => _669((c) => c.id === move.fromColumnId), 'optionalAccess', _670 => _670.tickets, 'access', _671 => _671.some, 'call', _672 => _672((t) => t.id === move.ticketId)]);
31305
31323
  }
31306
31324
 
31307
31325
  // src/components/features/board/ticket-card.tsx
@@ -31333,10 +31351,10 @@ function TicketCardBody({
31333
31351
  onLinkClick
31334
31352
  }) {
31335
31353
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
31336
- const newMessageTextColor = columnColor ? _chunkLXKEHZUVcjs.getReadableTextColor.call(void 0, columnColor) : void 0;
31337
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _670 => _670.deviceHostnames, 'optionalAccess', _671 => _671.length]) || ticket.organizationName);
31338
- const deviceText = [_optionalChain([ticket, 'access', _672 => _672.deviceHostnames, 'optionalAccess', _673 => _673.join, 'call', _674 => _674(", ")]), ticket.organizationName].filter(Boolean).join(", ");
31339
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _675 => _675.assignees, 'optionalAccess', _676 => _676.length]) || renderAssignSlot);
31354
+ const newMessageTextColor = columnColor ? _chunkCOX4CSXZcjs.getReadableTextColor.call(void 0, columnColor) : void 0;
31355
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _673 => _673.deviceHostnames, 'optionalAccess', _674 => _674.length]) || ticket.organizationName);
31356
+ const deviceText = [_optionalChain([ticket, 'access', _675 => _675.deviceHostnames, 'optionalAccess', _676 => _676.join, 'call', _677 => _677(", ")]), ticket.organizationName].filter(Boolean).join(", ");
31357
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _678 => _678.assignees, 'optionalAccess', _679 => _679.length]) || renderAssignSlot);
31340
31358
  const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
31341
31359
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31342
31360
  _chunkDWCV7IDUcjs.Flag02Icon,
@@ -31345,7 +31363,7 @@ function TicketCardBody({
31345
31363
  "aria-label": `Priority: ${ticket.priority}`
31346
31364
  }
31347
31365
  ),
31348
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _677 => _677.assignees, 'optionalAccess', _678 => _678.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
31366
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _680 => _680.assignees, 'optionalAccess', _681 => _681.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
31349
31367
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map(
31350
31368
  (a) => a.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31351
31369
  DeletedUserAvatar,
@@ -31372,8 +31390,8 @@ function TicketCardBody({
31372
31390
  ] })
31373
31391
  ] }) : null
31374
31392
  ] }) : null;
31375
- const timestampLabel = ticket.createdAt ? _chunkLXKEHZUVcjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
31376
- const tooltipLabel = ticket.createdAt ? _chunkLXKEHZUVcjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
31393
+ const timestampLabel = ticket.createdAt ? _chunkCOX4CSXZcjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
31394
+ const tooltipLabel = ticket.createdAt ? _chunkCOX4CSXZcjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
31377
31395
  const metaLabel = [ticket.ticketNumber || null, timestampLabel].filter(Boolean).join(" \u2022 ");
31378
31396
  const metaClass = "truncate text-ods-text-secondary text-h6";
31379
31397
  const meta = href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -31399,10 +31417,10 @@ function TicketCardBody({
31399
31417
  ] }),
31400
31418
  rightSection
31401
31419
  ] }),
31402
- _optionalChain([ticket, 'access', _679 => _679.tags, 'optionalAccess', _680 => _680.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
31403
- metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLXKEHZUVcjs.Tooltip, { children: [
31404
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipTrigger, { asChild: true, children: meta }),
31405
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLXKEHZUVcjs.TooltipContent, { children: tooltipLabel })
31420
+ _optionalChain([ticket, 'access', _682 => _682.tags, 'optionalAccess', _683 => _683.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
31421
+ metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { children: [
31422
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, children: meta }),
31423
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { children: tooltipLabel })
31406
31424
  ] }) }) : meta),
31407
31425
  ticket.escalatedByUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] text-ods-open-yellow text-h6", children: [
31408
31426
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDWCV7IDUcjs.UserCheckIcon, { className: "size-4 shrink-0" }),
@@ -31466,7 +31484,7 @@ var TicketCard = _react.memo.call(void 0, function TicketCardImpl({
31466
31484
  const isLanding = useIsLanding(ticket.id);
31467
31485
  const aim = useDropAim();
31468
31486
  const closestEdge = aim && aim.columnId === columnId && aim.ticketId === ticket.id ? aim.edge : null;
31469
- const isSource = isDragging || _optionalChain([aim, 'optionalAccess', _681 => _681.ticket, 'access', _682 => _682.id]) === ticket.id;
31487
+ const isSource = isDragging || _optionalChain([aim, 'optionalAccess', _684 => _684.ticket, 'access', _685 => _685.id]) === ticket.id;
31470
31488
  const lift = useBoardLift();
31471
31489
  const handleKeyDown = (e) => {
31472
31490
  if (e.key !== " " || dragDisabled || !lift) return;
@@ -31724,7 +31742,7 @@ var BoardColumn = _react.memo.call(void 0, function BoardColumnImpl({
31724
31742
  // large ones like the only thing that did.
31725
31743
  getData: ({ input, element: lane, source }) => {
31726
31744
  const nearest = nearestCardIn(lane, input.clientY, String(source.data.ticketId));
31727
- const ticketId = _optionalChain([nearest, 'optionalAccess', _683 => _683.dataset, 'access', _684 => _684.ticketId]);
31745
+ const ticketId = _optionalChain([nearest, 'optionalAccess', _686 => _686.dataset, 'access', _687 => _687.ticketId]);
31728
31746
  if (!nearest || !ticketId) return { type: "column", columnId: column.id };
31729
31747
  return _closestedge.attachClosestEdge.call(void 0,
31730
31748
  { type: "ticket", ticketId, columnId: column.id },
@@ -31736,7 +31754,7 @@ var BoardColumn = _react.memo.call(void 0, function BoardColumnImpl({
31736
31754
  onDrop: () => setIsOver(false)
31737
31755
  });
31738
31756
  }, [column.id, column.dropDisabled, column.allowedFromColumns, collapsed, touchMode]);
31739
- const handleToggleCollapse = _react.useCallback.call(void 0, () => _optionalChain([onToggleCollapse, 'optionalCall', _685 => _685(column.id)]), [onToggleCollapse, column.id]);
31757
+ const handleToggleCollapse = _react.useCallback.call(void 0, () => _optionalChain([onToggleCollapse, 'optionalCall', _688 => _688(column.id)]), [onToggleCollapse, column.id]);
31740
31758
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
31741
31759
  "div",
31742
31760
  {
@@ -31815,7 +31833,7 @@ function ColumnBody({
31815
31833
  const observer = new IntersectionObserver(
31816
31834
  (entries) => {
31817
31835
  if (entries.some((e) => e.isIntersecting)) {
31818
- _optionalChain([loadMoreRef, 'access', _686 => _686.current, 'optionalCall', _687 => _687(columnIdRef.current)]);
31836
+ _optionalChain([loadMoreRef, 'access', _689 => _689.current, 'optionalCall', _690 => _690(columnIdRef.current)]);
31819
31837
  }
31820
31838
  },
31821
31839
  { root, rootMargin: loadMoreRootMargin }
@@ -31840,7 +31858,7 @@ function ColumnBody({
31840
31858
  ticket: t,
31841
31859
  columnId: column.id,
31842
31860
  columnColor: column.color,
31843
- href: _optionalChain([getTicketHref, 'optionalCall', _688 => _688(t.id)]),
31861
+ href: _optionalChain([getTicketHref, 'optionalCall', _691 => _691(t.id)]),
31844
31862
  renderAssignSlot,
31845
31863
  onApprove,
31846
31864
  onReject,
@@ -31885,7 +31903,7 @@ function resolveBoardDrop(columns, { source, target }) {
31885
31903
  // src/components/features/board/use-board-collapse.ts
31886
31904
 
31887
31905
  function useBoardCollapse(storageKey) {
31888
- const [persisted, setPersisted] = _chunkW4YXUJOFcjs.useLocalStorage.call(void 0, _nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")), {});
31906
+ const [persisted, setPersisted] = _chunkVP6PJLMIcjs.useLocalStorage.call(void 0, _nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")), {});
31889
31907
  const [memory, setMemory] = _react.useState.call(void 0, {});
31890
31908
  const collapsed = storageKey ? persisted : memory;
31891
31909
  const setMap = storageKey ? setPersisted : setMemory;
@@ -31956,7 +31974,7 @@ var DROP_EASING = "cubic-bezier(0.2, 0, 0, 1)";
31956
31974
  var DRAG_PREVIEW_Z = 1200;
31957
31975
  var ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"];
31958
31976
  function Board(props) {
31959
- const dragAndDropEnabled = _chunkDMUUWHIIcjs.useMediaQuery.call(void 0, _chunkW4YXUJOFcjs.DRAG_AND_DROP_MEDIA_QUERY);
31977
+ const dragAndDropEnabled = _chunk26GBOUIPcjs.useMediaQuery.call(void 0, _chunkVP6PJLMIcjs.DRAG_AND_DROP_MEDIA_QUERY);
31960
31978
  if (dragAndDropEnabled === void 0) {
31961
31979
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex h-full min-h-0 flex-col", props.className) });
31962
31980
  }
@@ -31989,7 +32007,7 @@ function DragBoard({
31989
32007
  onThumbPointerMove,
31990
32008
  onThumbPointerUp,
31991
32009
  onThumbPointerCancel
31992
- } = _chunkW4YXUJOFcjs.useHorizontalScrollbar.call(void 0, );
32010
+ } = _chunkVP6PJLMIcjs.useHorizontalScrollbar.call(void 0, );
31993
32011
  const columnsRef = _react.useRef.call(void 0, columns);
31994
32012
  const onChangeRef = _react.useRef.call(void 0, onChange);
31995
32013
  const boardRef = _react.useRef.call(void 0, null);
@@ -32017,7 +32035,7 @@ function DragBoard({
32017
32035
  const [landing, setLanding] = _react.useState.call(void 0, null);
32018
32036
  const landingTimer = _react.useRef.call(void 0, null);
32019
32037
  const pointRef = _react.useRef.call(void 0, { x: 0, y: 0 });
32020
- const laneLabel = _react.useCallback.call(void 0, (columnId) => _nullishCoalesce(_optionalChain([view, 'access', _689 => _689.find, 'call', _690 => _690((c) => c.id === columnId), 'optionalAccess', _691 => _691.label]), () => ( columnId)), [view]);
32038
+ const laneLabel = _react.useCallback.call(void 0, (columnId) => _nullishCoalesce(_optionalChain([view, 'access', _692 => _692.find, 'call', _693 => _693((c) => c.id === columnId), 'optionalAccess', _694 => _694.label]), () => ( columnId)), [view]);
32021
32039
  const acceptsLifted = _react.useCallback.call(void 0,
32022
32040
  (fromColumnId) => (column) => {
32023
32041
  if (column.dropDisabled || collapsed[column.id]) return false;
@@ -32031,7 +32049,7 @@ function DragBoard({
32031
32049
  const start = initialAim(view, ticketId);
32032
32050
  if (!start) return;
32033
32051
  setLifted({ ticketId, aim: start });
32034
- const title = _nullishCoalesce(_optionalChain([laneOf, 'call', _692 => _692(view, ticketId), 'optionalAccess', _693 => _693.tickets, 'access', _694 => _694.find, 'call', _695 => _695((t) => t.id === ticketId), 'optionalAccess', _696 => _696.title]), () => ( "Ticket"));
32052
+ const title = _nullishCoalesce(_optionalChain([laneOf, 'call', _695 => _695(view, ticketId), 'optionalAccess', _696 => _696.tickets, 'access', _697 => _697.find, 'call', _698 => _698((t) => t.id === ticketId), 'optionalAccess', _699 => _699.title]), () => ( "Ticket"));
32035
32053
  setAnnouncement(`${title} lifted. Use the arrow keys to move it, space to drop it, escape to put it back.`);
32036
32054
  },
32037
32055
  [view]
@@ -32056,11 +32074,11 @@ function DragBoard({
32056
32074
  const walk = _react.useCallback.call(void 0,
32057
32075
  (key) => {
32058
32076
  if (!lifted) return;
32059
- const from = _nullishCoalesce(_optionalChain([laneOf, 'call', _697 => _697(view, lifted.ticketId), 'optionalAccess', _698 => _698.id]), () => ( lifted.aim.columnId));
32077
+ const from = _nullishCoalesce(_optionalChain([laneOf, 'call', _700 => _700(view, lifted.ticketId), 'optionalAccess', _701 => _701.id]), () => ( lifted.aim.columnId));
32060
32078
  const next = moveAim(view, lifted.ticketId, lifted.aim, key, acceptsLifted(from));
32061
32079
  if (next === lifted.aim) return;
32062
32080
  setLifted({ ...lifted, aim: next });
32063
- const total = (_nullishCoalesce(_optionalChain([view, 'access', _699 => _699.find, 'call', _700 => _700((c) => c.id === next.columnId), 'optionalAccess', _701 => _701.tickets]), () => ( []))).filter(
32081
+ const total = (_nullishCoalesce(_optionalChain([view, 'access', _702 => _702.find, 'call', _703 => _703((c) => c.id === next.columnId), 'optionalAccess', _704 => _704.tickets]), () => ( []))).filter(
32064
32082
  (t) => t.id !== lifted.ticketId
32065
32083
  ).length;
32066
32084
  setAnnouncement(`${laneLabel(next.columnId)}, position ${next.index + 1} of ${total + 1}.`);
@@ -32087,11 +32105,11 @@ function DragBoard({
32087
32105
  }, [lifted, drop, walk]);
32088
32106
  _react.useEffect.call(void 0, () => {
32089
32107
  if (!lifted) return;
32090
- _optionalChain([boardRef, 'access', _702 => _702.current, 'optionalAccess', _703 => _703.querySelector, 'call', _704 => _704(`[${DROP_LINE_ATTRIBUTE}]`), 'optionalAccess', _705 => _705.scrollIntoView, 'call', _706 => _706({ block: "nearest", inline: "nearest" })]);
32108
+ _optionalChain([boardRef, 'access', _705 => _705.current, 'optionalAccess', _706 => _706.querySelector, 'call', _707 => _707(`[${DROP_LINE_ATTRIBUTE}]`), 'optionalAccess', _708 => _708.scrollIntoView, 'call', _709 => _709({ block: "nearest", inline: "nearest" })]);
32091
32109
  }, [lifted]);
32092
32110
  const keyboardAim = _react.useMemo.call(void 0, () => {
32093
32111
  if (!lifted) return null;
32094
- const ticket = _optionalChain([laneOf, 'call', _707 => _707(view, lifted.ticketId), 'optionalAccess', _708 => _708.tickets, 'access', _709 => _709.find, 'call', _710 => _710((t) => t.id === lifted.ticketId)]);
32112
+ const ticket = _optionalChain([laneOf, 'call', _710 => _710(view, lifted.ticketId), 'optionalAccess', _711 => _711.tickets, 'access', _712 => _712.find, 'call', _713 => _713((t) => t.id === lifted.ticketId)]);
32095
32113
  if (!ticket) return null;
32096
32114
  const anchor = aimToChange(view, lifted.ticketId, lifted.aim) ? aimAnchor(view, lifted.ticketId, lifted.aim) : { ticketId: null, edge: null };
32097
32115
  return { columnId: lifted.aim.columnId, ...anchor, ticket };
@@ -32113,7 +32131,7 @@ function DragBoard({
32113
32131
  return { columnId: slot.columnId, ...anchor, ticket };
32114
32132
  };
32115
32133
  const aimAt = (source, targets) => {
32116
- const next = readAim(source, _optionalChain([targets, 'access', _711 => _711[0], 'optionalAccess', _712 => _712.data]));
32134
+ const next = readAim(source, _optionalChain([targets, 'access', _714 => _714[0], 'optionalAccess', _715 => _715.data]));
32117
32135
  setAim((prev) => isSameAim(prev, next) ? prev : next);
32118
32136
  };
32119
32137
  return _combine.combine.call(void 0,
@@ -32142,7 +32160,7 @@ function DragBoard({
32142
32160
  setLanding(null);
32143
32161
  dragGeometry.current = {
32144
32162
  ticket,
32145
- columnColor: _optionalChain([columnsRef, 'access', _713 => _713.current, 'access', _714 => _714.find, 'call', _715 => _715((c) => c.id === source.data.columnId), 'optionalAccess', _716 => _716.color]),
32163
+ columnColor: _optionalChain([columnsRef, 'access', _716 => _716.current, 'access', _717 => _717.find, 'call', _718 => _718((c) => c.id === source.data.columnId), 'optionalAccess', _719 => _719.color]),
32146
32164
  width: rect.width,
32147
32165
  grabX: clientX - rect.left,
32148
32166
  grabY: clientY - rect.top
@@ -32159,7 +32177,7 @@ function DragBoard({
32159
32177
  setAim(null);
32160
32178
  const change = resolveBoardDrop(columnsRef.current, {
32161
32179
  source: source.data,
32162
- target: _optionalChain([location, 'access', _717 => _717.current, 'access', _718 => _718.dropTargets, 'access', _719 => _719[0], 'optionalAccess', _720 => _720.data])
32180
+ target: _optionalChain([location, 'access', _720 => _720.current, 'access', _721 => _721.dropTargets, 'access', _722 => _722[0], 'optionalAccess', _723 => _723.data])
32163
32181
  });
32164
32182
  if (!change) return;
32165
32183
  setPendingMove({
@@ -32192,7 +32210,7 @@ function DragBoard({
32192
32210
  return void 0;
32193
32211
  }
32194
32212
  const to = card.getBoundingClientRect();
32195
- const lane = _optionalChain([nearestScrollableAncestor, 'call', _721 => _721(card), 'optionalAccess', _722 => _722.getBoundingClientRect, 'call', _723 => _723()]);
32213
+ const lane = _optionalChain([nearestScrollableAncestor, 'call', _724 => _724(card), 'optionalAccess', _725 => _725.getBoundingClientRect, 'call', _726 => _726()]);
32196
32214
  if (lane && (to.top < lane.top || to.bottom > lane.bottom)) {
32197
32215
  finish();
32198
32216
  return void 0;
@@ -32251,8 +32269,8 @@ function DragBoard({
32251
32269
  children: view.map((column, i) => {
32252
32270
  const prev = view[i - 1];
32253
32271
  const next = view[i + 1];
32254
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _724 => _724.system]));
32255
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _725 => _725.system]));
32272
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _727 => _727.system]));
32273
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _728 => _728.system]));
32256
32274
  const showGap = i > 0 && !joinLeft;
32257
32275
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react.Fragment, { children: [
32258
32276
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -32420,7 +32438,7 @@ function useSortableListContext() {
32420
32438
  }
32421
32439
  function SortableList({ onReorder, getItemLabel, disabled = false, className, children }) {
32422
32440
  const listRef = _react.useRef.call(void 0, null);
32423
- const dragAndDropEnabled = _chunkW4YXUJOFcjs.useDragAndDropEnabled.call(void 0, );
32441
+ const dragAndDropEnabled = _chunkVP6PJLMIcjs.useDragAndDropEnabled.call(void 0, );
32424
32442
  const dragType = _react.useId.call(void 0, );
32425
32443
  const [announcement, setAnnouncement] = _react.useState.call(void 0, "");
32426
32444
  const onReorderRef = _react.useRef.call(void 0, onReorder);
@@ -32433,13 +32451,13 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
32433
32451
  const [flipTick, setFlipTick] = _react.useState.call(void 0, 0);
32434
32452
  const flipTimer = _react.useRef.call(void 0, null);
32435
32453
  const readItems = _react.useCallback.call(void 0,
32436
- () => [..._nullishCoalesce(_optionalChain([listRef, 'access', _726 => _726.current, 'optionalAccess', _727 => _727.querySelectorAll, 'call', _728 => _728(`[${SORTABLE_ITEM_ATTRIBUTE}]`)]), () => ( []))],
32454
+ () => [..._nullishCoalesce(_optionalChain([listRef, 'access', _729 => _729.current, 'optionalAccess', _730 => _730.querySelectorAll, 'call', _731 => _731(`[${SORTABLE_ITEM_ATTRIBUTE}]`)]), () => ( []))],
32437
32455
  []
32438
32456
  );
32439
32457
  const reorder = _react.useCallback.call(void 0,
32440
32458
  (from, to) => {
32441
32459
  if (from === to) return;
32442
- const label = _nullishCoalesce(_optionalChain([getItemLabelRef, 'access', _729 => _729.current, 'optionalCall', _730 => _730(from)]), () => ( "Item"));
32460
+ const label = _nullishCoalesce(_optionalChain([getItemLabelRef, 'access', _732 => _732.current, 'optionalCall', _733 => _733(from)]), () => ( "Item"));
32443
32461
  setAnnouncement(`${label} moved to position ${to + 1} of ${readItems().length}.`);
32444
32462
  onReorderRef.current(from, to);
32445
32463
  },
@@ -32527,7 +32545,7 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
32527
32545
  moving.push(item);
32528
32546
  }
32529
32547
  if (moving.length === 0) return;
32530
- void _optionalChain([listRef, 'access', _731 => _731.current, 'optionalAccess', _732 => _732.offsetHeight]);
32548
+ void _optionalChain([listRef, 'access', _734 => _734.current, 'optionalAccess', _735 => _735.offsetHeight]);
32531
32549
  for (const item of moving) {
32532
32550
  item.style.transition = `transform ${DROP_MS2}ms ${EASING}`;
32533
32551
  item.style.transform = "";
@@ -32564,8 +32582,8 @@ function SortableMoveButtons({ index, count, label, className }) {
32564
32582
  if (to < 0 || to >= count) return;
32565
32583
  reorder(index, to);
32566
32584
  requestAnimationFrame(() => {
32567
- if (step === -1 && to === 0) _optionalChain([downRef, 'access', _733 => _733.current, 'optionalAccess', _734 => _734.focus, 'call', _735 => _735()]);
32568
- if (step === 1 && to === count - 1) _optionalChain([upRef, 'access', _736 => _736.current, 'optionalAccess', _737 => _737.focus, 'call', _738 => _738()]);
32585
+ if (step === -1 && to === 0) _optionalChain([downRef, 'access', _736 => _736.current, 'optionalAccess', _737 => _737.focus, 'call', _738 => _738()]);
32586
+ if (step === 1 && to === count - 1) _optionalChain([upRef, 'access', _739 => _739.current, 'optionalAccess', _740 => _740.focus, 'call', _741 => _741()]);
32569
32587
  });
32570
32588
  };
32571
32589
  const subject = _nullishCoalesce(label, () => ( "item"));
@@ -32613,7 +32631,7 @@ function useSortableItem() {
32613
32631
  const [handle, setHandle] = _react.useState.call(void 0, null);
32614
32632
  const [isDragging, setIsDragging] = _react.useState.call(void 0, false);
32615
32633
  const itemRef = _react.useCallback.call(void 0, (node) => {
32616
- _optionalChain([node, 'optionalAccess', _739 => _739.setAttribute, 'call', _740 => _740(SORTABLE_ITEM_ATTRIBUTE, "")]);
32634
+ _optionalChain([node, 'optionalAccess', _742 => _742.setAttribute, 'call', _743 => _743(SORTABLE_ITEM_ATTRIBUTE, "")]);
32617
32635
  setItem(node);
32618
32636
  }, []);
32619
32637
  _react.useEffect.call(void 0, () => {
@@ -32643,7 +32661,7 @@ function useSortableItem() {
32643
32661
  if (from < 0 || to < 0 || to >= items.length) return;
32644
32662
  event.preventDefault();
32645
32663
  reorder(from, to);
32646
- requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess', _741 => _741.focus, 'call', _742 => _742()]));
32664
+ requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess', _744 => _744.focus, 'call', _745 => _745()]));
32647
32665
  },
32648
32666
  [inert, readItems, reorder, handle]
32649
32667
  );
@@ -32665,7 +32683,7 @@ function TicketStatusConfigList({
32665
32683
  onReorder,
32666
32684
  getItemLabel,
32667
32685
  className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xs)]", className),
32668
- children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { index, count: items.length, label: _optionalChain([getItemLabel, 'optionalCall', _743 => _743(index)]), children: (args) => renderRow(item, args) }, item.id))
32686
+ children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { index, count: items.length, label: _optionalChain([getItemLabel, 'optionalCall', _746 => _746(index)]), children: (args) => renderRow(item, args) }, item.id))
32669
32687
  }
32670
32688
  );
32671
32689
  }
@@ -33437,5 +33455,8 @@ function ConversationCard({
33437
33455
 
33438
33456
 
33439
33457
 
33440
- exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.Autocomplete = Autocomplete; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; 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.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; 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.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; 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.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS = HUBSPOT_DO_NOT_COLLECT_FORM_PROPS; exports.AdminFormDrawer = AdminFormDrawer; exports.PlaybackToggle = PlaybackToggle; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator2; 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.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.FullscreenSwitchController = FullscreenSwitchController; 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.SOCIAL_PLATFORM_ALIASES = SOCIAL_PLATFORM_ALIASES; exports.normalizeSocialPlatform = normalizeSocialPlatform; exports.hostMatches = hostMatches; exports.SOCIAL_PLATFORM_ALT_HOSTS = SOCIAL_PLATFORM_ALT_HOSTS; exports.socialPlatformHosts = socialPlatformHosts; exports.classifySocialHost = classifySocialHost; exports.pickSocialLink = pickSocialLink; 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.StatusIndicator = StatusIndicator; exports.BACK_BUTTON_SKELETON_CLASS = BACK_BUTTON_SKELETON_CLASS; exports.BackButton = BackButton; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.getCountryByName = getCountryByName; exports.getFlagFromCountryName = getFlagFromCountryName; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.COMPLIANCE_STANDARDS = COMPLIANCE_STANDARDS; exports.complianceStandardForName = complianceStandardForName; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.ENTITY_QUOTES_TITLE = ENTITY_QUOTES_TITLE; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.normalizeSchedulingSlug = normalizeSchedulingSlug; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.ODS_SPACING_TOKENS = ODS_SPACING_TOKENS; exports.ODS_SPACING_TOKEN_PATTERN = ODS_SPACING_TOKEN_PATTERN; exports.ODS_SPACING_PROPS = ODS_SPACING_PROPS; exports.TAILWIND_STEP_TO_ODS_TOKEN = TAILWIND_STEP_TO_ODS_TOKEN; exports.CSV_CONTENT_TYPE = CSV_CONTENT_TYPE; exports.csvEscape = csvEscape; exports.toCsv = toCsv; exports.copyrightLine = copyrightLine; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; 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.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.TouchFriendlyTooltip = TouchFriendlyTooltip; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.TableEmptyState = TableEmptyState; 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.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.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.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.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; 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.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.PushButtonSelector = PushButtonSelector; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.SOCIAL_ICON_COMPONENTS = SOCIAL_ICON_COMPONENTS; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; 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.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerContainerContext = AppLayoutDrawerContainerContext; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerCoordinationContext = AppLayoutDrawerCoordinationContext; 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.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.RemoteSessionScope = RemoteSessionScope; exports.RemoteSessionOrgLogo = RemoteSessionOrgLogo; exports.RemoteSessionRecordingTag = RemoteSessionRecordingTag; exports.REMOTE_SESSION_DRAG_HANDLE_CLASS = REMOTE_SESSION_DRAG_HANDLE_CLASS; exports.RemoteSessionDragger = RemoteSessionDragger; exports.formatRemoteSessionElapsed = formatRemoteSessionElapsed; exports.useRemoteSessionTimer = useRemoteSessionTimer; exports.RemoteAccessRequestCard = RemoteAccessRequestCard; exports.RemoteSessionBlockFrame = RemoteSessionBlockFrame; exports.RemoteSessionEndButton = RemoteSessionEndButton; exports.RemoteSessionSummary = RemoteSessionSummary; exports.RemoteSessionMinimizedChip = RemoteSessionMinimizedChip; exports.RemoteSessionChatPanel = RemoteSessionChatPanel; exports.RemoteSessionDialog = RemoteSessionDialog; exports.RemoteSessionBorder = RemoteSessionBorder; exports.RemoteSessionPill = RemoteSessionPill; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableList = SortableList; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.ConversationCard = ConversationCard; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.DataTableEmpty = DataTableEmpty; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; 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.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PhoneFrame = PhoneFrame; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.SnapCarousel = SnapCarousel; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.IconTile = IconTile;
33441
- //# sourceMappingURL=chunk-C36HIYNP.cjs.map
33458
+
33459
+
33460
+
33461
+ exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.Autocomplete = Autocomplete; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; 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.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; 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.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; 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.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS = HUBSPOT_DO_NOT_COLLECT_FORM_PROPS; exports.AdminFormDrawer = AdminFormDrawer; exports.PlaybackToggle = PlaybackToggle; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator2; 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.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.FullscreenSwitchController = FullscreenSwitchController; 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.SOCIAL_PLATFORM_ALIASES = SOCIAL_PLATFORM_ALIASES; exports.normalizeSocialPlatform = normalizeSocialPlatform; exports.hostMatches = hostMatches; exports.SOCIAL_PLATFORM_ALT_HOSTS = SOCIAL_PLATFORM_ALT_HOSTS; exports.socialPlatformHosts = socialPlatformHosts; exports.classifySocialHost = classifySocialHost; exports.pickSocialLink = pickSocialLink; 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.StatusIndicator = StatusIndicator; exports.BACK_BUTTON_SKELETON_CLASS = BACK_BUTTON_SKELETON_CLASS; exports.BackButton = BackButton; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.getCountryByName = getCountryByName; exports.getFlagFromCountryName = getFlagFromCountryName; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.COMPLIANCE_STANDARDS = COMPLIANCE_STANDARDS; exports.complianceStandardForName = complianceStandardForName; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.ENTITY_QUOTES_TITLE = ENTITY_QUOTES_TITLE; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.normalizeSchedulingSlug = normalizeSchedulingSlug; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.ODS_SPACING_TOKENS = ODS_SPACING_TOKENS; exports.ODS_SPACING_TOKEN_PATTERN = ODS_SPACING_TOKEN_PATTERN; exports.ODS_SPACING_PROPS = ODS_SPACING_PROPS; exports.TAILWIND_STEP_TO_ODS_TOKEN = TAILWIND_STEP_TO_ODS_TOKEN; exports.CSV_CONTENT_TYPE = CSV_CONTENT_TYPE; exports.csvEscape = csvEscape; exports.toCsv = toCsv; exports.copyrightLine = copyrightLine; exports.isValidPathPattern = isValidPathPattern; exports.matchesPathPattern = matchesPathPattern; exports.pathMatchesAny = pathMatchesAny; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; 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.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.TouchFriendlyTooltip = TouchFriendlyTooltip; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.TableEmptyState = TableEmptyState; 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.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.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.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.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; 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.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.PushButtonSelector = PushButtonSelector; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.SOCIAL_ICON_COMPONENTS = SOCIAL_ICON_COMPONENTS; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; 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.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerContainerContext = AppLayoutDrawerContainerContext; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerCoordinationContext = AppLayoutDrawerCoordinationContext; 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.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.RemoteSessionScope = RemoteSessionScope; exports.RemoteSessionOrgLogo = RemoteSessionOrgLogo; exports.RemoteSessionRecordingTag = RemoteSessionRecordingTag; exports.REMOTE_SESSION_DRAG_HANDLE_CLASS = REMOTE_SESSION_DRAG_HANDLE_CLASS; exports.RemoteSessionDragger = RemoteSessionDragger; exports.formatRemoteSessionElapsed = formatRemoteSessionElapsed; exports.useRemoteSessionTimer = useRemoteSessionTimer; exports.RemoteAccessRequestCard = RemoteAccessRequestCard; exports.RemoteSessionBlockFrame = RemoteSessionBlockFrame; exports.RemoteSessionEndButton = RemoteSessionEndButton; exports.RemoteSessionSummary = RemoteSessionSummary; exports.RemoteSessionMinimizedChip = RemoteSessionMinimizedChip; exports.RemoteSessionChatPanel = RemoteSessionChatPanel; exports.RemoteSessionDialog = RemoteSessionDialog; exports.RemoteSessionBorder = RemoteSessionBorder; exports.RemoteSessionPill = RemoteSessionPill; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableList = SortableList; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.ConversationCard = ConversationCard; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.DataTableEmpty = DataTableEmpty; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; 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.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PhoneFrame = PhoneFrame; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.SnapCarousel = SnapCarousel; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.IconTile = IconTile;
33462
+ //# sourceMappingURL=chunk-4FS56YZS.cjs.map