@flamingo-stack/openframe-frontend-core 0.0.698-2527.7789.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 (119) hide show
  1. package/dist/{chunk-2BS7SRKK.js → chunk-2QESJBGE.js} +6 -6
  2. package/dist/{chunk-XUXPIXEQ.cjs → chunk-3CFHHJKK.cjs} +3 -3
  3. package/dist/{chunk-XUXPIXEQ.cjs.map → chunk-3CFHHJKK.cjs.map} +1 -1
  4. package/dist/{chunk-U5N4424J.cjs → chunk-4FS56YZS.cjs} +349 -328
  5. package/dist/chunk-4FS56YZS.cjs.map +1 -0
  6. package/dist/{chunk-FXXBZHEM.cjs → chunk-55L6XDGC.cjs} +7 -7
  7. package/dist/{chunk-FXXBZHEM.cjs.map → chunk-55L6XDGC.cjs.map} +1 -1
  8. package/dist/{chunk-YQPN6IGK.js → chunk-5VXVHYHC.js} +3 -3
  9. package/dist/{chunk-BB246CT4.cjs → chunk-676MGKZW.cjs} +3 -3
  10. package/dist/{chunk-BB246CT4.cjs.map → chunk-676MGKZW.cjs.map} +1 -1
  11. package/dist/{chunk-AKMQG7PN.js → chunk-7QAT2DV5.js} +3 -3
  12. package/dist/{chunk-3523KRUN.js → chunk-AC6OEPUV.js} +4 -4
  13. package/dist/{chunk-ZSJOUXQZ.cjs → chunk-BRTCMVBG.cjs} +6 -6
  14. package/dist/{chunk-ZSJOUXQZ.cjs.map → chunk-BRTCMVBG.cjs.map} +1 -1
  15. package/dist/{chunk-ERHBYCLP.cjs → chunk-BZHARMWU.cjs} +55 -55
  16. package/dist/{chunk-ERHBYCLP.cjs.map → chunk-BZHARMWU.cjs.map} +1 -1
  17. package/dist/{chunk-BOZJLRDG.cjs → chunk-FBXR26Q4.cjs} +40 -40
  18. package/dist/{chunk-BOZJLRDG.cjs.map → chunk-FBXR26Q4.cjs.map} +1 -1
  19. package/dist/{chunk-5SDHD3PY.js → chunk-FI7ZPOYQ.js} +23 -2
  20. package/dist/chunk-FI7ZPOYQ.js.map +1 -0
  21. package/dist/{chunk-KSLQXGCP.js → chunk-FWVIDEOA.js} +2 -2
  22. package/dist/{chunk-K32G3W5N.js → chunk-HNHKXOCZ.js} +5 -5
  23. package/dist/{chunk-3XSOSIJJ.cjs → chunk-IRWS22CP.cjs} +17 -17
  24. package/dist/{chunk-3XSOSIJJ.cjs.map → chunk-IRWS22CP.cjs.map} +1 -1
  25. package/dist/{chunk-Q2PQXELU.js → chunk-J3ZS6CRA.js} +3 -3
  26. package/dist/{chunk-J3W4DGON.js → chunk-J6ZEVCVN.js} +2 -2
  27. package/dist/{chunk-SLO5WH6A.js → chunk-MOEOLUVD.js} +2 -2
  28. package/dist/{chunk-RD2RMUXY.cjs → chunk-OEX2WLZX.cjs} +10 -10
  29. package/dist/{chunk-RD2RMUXY.cjs.map → chunk-OEX2WLZX.cjs.map} +1 -1
  30. package/dist/{chunk-YS6UKG6O.js → chunk-R2XJXMAT.js} +5 -5
  31. package/dist/{chunk-6W4EKHPI.js → chunk-R4JFUVQ4.js} +2 -2
  32. package/dist/{chunk-RHP4QPBC.js → chunk-TN2RFU6D.js} +25 -18
  33. package/dist/{chunk-RHP4QPBC.js.map → chunk-TN2RFU6D.js.map} +1 -1
  34. package/dist/{chunk-QILYO7ZD.cjs → chunk-UXU4DROI.cjs} +3 -3
  35. package/dist/{chunk-QILYO7ZD.cjs.map → chunk-UXU4DROI.cjs.map} +1 -1
  36. package/dist/{chunk-DFXVX4OW.cjs → chunk-VCEO6AGC.cjs} +15 -15
  37. package/dist/{chunk-DFXVX4OW.cjs.map → chunk-VCEO6AGC.cjs.map} +1 -1
  38. package/dist/{chunk-Q4HYMAP7.cjs → chunk-VO2FJ2AL.cjs} +23 -23
  39. package/dist/{chunk-Q4HYMAP7.cjs.map → chunk-VO2FJ2AL.cjs.map} +1 -1
  40. package/dist/{chunk-XBB53UGE.js → chunk-VOSO3SC5.js} +4 -4
  41. package/dist/{chunk-KLJK5HSA.cjs → chunk-VP6PJLMI.cjs} +9 -2
  42. package/dist/chunk-VP6PJLMI.cjs.map +1 -0
  43. package/dist/{chunk-ZA4JA7EN.cjs → chunk-VQEXKCFM.cjs} +3 -3
  44. package/dist/{chunk-ZA4JA7EN.cjs.map → chunk-VQEXKCFM.cjs.map} +1 -1
  45. package/dist/{chunk-UCIH6J3Y.cjs → chunk-X2W4ANCM.cjs} +33 -33
  46. package/dist/{chunk-UCIH6J3Y.cjs.map → chunk-X2W4ANCM.cjs.map} +1 -1
  47. package/dist/{chunk-3PH2TF2S.js → chunk-YNBOPBO7.js} +3 -3
  48. package/dist/{chunk-7VOCFD43.cjs → chunk-YRSPHPGO.cjs} +21 -21
  49. package/dist/{chunk-7VOCFD43.cjs.map → chunk-YRSPHPGO.cjs.map} +1 -1
  50. package/dist/{chunk-URC357EJ.js → chunk-ZNJK5HOE.js} +2 -2
  51. package/dist/components/announcement-bar.d.ts.map +1 -1
  52. package/dist/components/case-studies/index.cjs +13 -13
  53. package/dist/components/case-studies/index.js +3 -3
  54. package/dist/components/contact/index.cjs +4 -4
  55. package/dist/components/contact/index.js +3 -3
  56. package/dist/components/docs/index.cjs +7 -7
  57. package/dist/components/docs/index.js +6 -6
  58. package/dist/components/embeds/index.cjs +4 -4
  59. package/dist/components/embeds/index.js +3 -3
  60. package/dist/components/faq/index.cjs +4 -4
  61. package/dist/components/faq/index.js +3 -3
  62. package/dist/components/features/index.cjs +3 -3
  63. package/dist/components/features/index.js +2 -2
  64. package/dist/components/help-center-pages/index.cjs +52 -52
  65. package/dist/components/help-center-pages/index.js +14 -14
  66. package/dist/components/index.cjs +36 -35
  67. package/dist/components/index.cjs.map +1 -1
  68. package/dist/components/index.js +15 -14
  69. package/dist/components/index.js.map +1 -1
  70. package/dist/components/meeting-scheduler/index.cjs +28 -28
  71. package/dist/components/meeting-scheduler/index.js +2 -2
  72. package/dist/components/navigation/index.cjs +6 -6
  73. package/dist/components/navigation/index.js +5 -5
  74. package/dist/components/onboarding-guides/index.cjs +6 -6
  75. package/dist/components/onboarding-guides/index.js +5 -5
  76. package/dist/components/tickets/index.cjs +7 -7
  77. package/dist/components/tickets/index.js +6 -6
  78. package/dist/components/ui/index.cjs +3 -3
  79. package/dist/components/ui/index.js +2 -2
  80. package/dist/hooks/index.cjs +2 -2
  81. package/dist/hooks/index.js +1 -1
  82. package/dist/hooks/use-scenario-player.d.ts +3 -0
  83. package/dist/hooks/use-scenario-player.d.ts.map +1 -1
  84. package/dist/index.cjs +13 -7
  85. package/dist/index.cjs.map +1 -1
  86. package/dist/index.js +12 -6
  87. package/dist/index.js.map +1 -1
  88. package/dist/utils/index.cjs +21 -0
  89. package/dist/utils/index.cjs.map +1 -1
  90. package/dist/utils/index.d.ts +1 -0
  91. package/dist/utils/index.d.ts.map +1 -1
  92. package/dist/utils/index.js +19 -1
  93. package/dist/utils/index.js.map +1 -1
  94. package/dist/utils/path-pattern.d.ts +5 -0
  95. package/dist/utils/path-pattern.d.ts.map +1 -0
  96. package/package.json +1 -1
  97. package/src/components/announcement-bar.tsx +3 -2
  98. package/src/hooks/__tests__/use-scenario-player.test.tsx +48 -0
  99. package/src/hooks/use-scenario-player.ts +22 -2
  100. package/src/utils/__tests__/path-pattern.test.ts +30 -0
  101. package/src/utils/index.ts +1 -0
  102. package/src/utils/path-pattern.ts +31 -0
  103. package/dist/chunk-5SDHD3PY.js.map +0 -1
  104. package/dist/chunk-KLJK5HSA.cjs.map +0 -1
  105. package/dist/chunk-U5N4424J.cjs.map +0 -1
  106. /package/dist/{chunk-2BS7SRKK.js.map → chunk-2QESJBGE.js.map} +0 -0
  107. /package/dist/{chunk-YQPN6IGK.js.map → chunk-5VXVHYHC.js.map} +0 -0
  108. /package/dist/{chunk-AKMQG7PN.js.map → chunk-7QAT2DV5.js.map} +0 -0
  109. /package/dist/{chunk-3523KRUN.js.map → chunk-AC6OEPUV.js.map} +0 -0
  110. /package/dist/{chunk-KSLQXGCP.js.map → chunk-FWVIDEOA.js.map} +0 -0
  111. /package/dist/{chunk-K32G3W5N.js.map → chunk-HNHKXOCZ.js.map} +0 -0
  112. /package/dist/{chunk-Q2PQXELU.js.map → chunk-J3ZS6CRA.js.map} +0 -0
  113. /package/dist/{chunk-J3W4DGON.js.map → chunk-J6ZEVCVN.js.map} +0 -0
  114. /package/dist/{chunk-SLO5WH6A.js.map → chunk-MOEOLUVD.js.map} +0 -0
  115. /package/dist/{chunk-YS6UKG6O.js.map → chunk-R2XJXMAT.js.map} +0 -0
  116. /package/dist/{chunk-6W4EKHPI.js.map → chunk-R4JFUVQ4.js.map} +0 -0
  117. /package/dist/{chunk-XBB53UGE.js.map → chunk-VOSO3SC5.js.map} +0 -0
  118. /package/dist/{chunk-3PH2TF2S.js.map → chunk-YNBOPBO7.js.map} +0 -0
  119. /package/dist/{chunk-URC357EJ.js.map → chunk-ZNJK5HOE.js.map} +0 -0
@@ -23,7 +23,7 @@ var _chunkTON3YCCWcjs = require('./chunk-TON3YCCW.cjs');
23
23
 
24
24
 
25
25
 
26
- var _chunkKLJK5HSAcjs = require('./chunk-KLJK5HSA.cjs');
26
+ var _chunkVP6PJLMIcjs = require('./chunk-VP6PJLMI.cjs');
27
27
 
28
28
 
29
29
  var _chunkHT7SU5UNcjs = require('./chunk-HT7SU5UN.cjs');
@@ -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 = _chunkKLJK5HSAcjs.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
- } = _chunkKLJK5HSAcjs.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
@@ -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 } = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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();
@@ -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 = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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);
@@ -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 } = _chunkKLJK5HSAcjs.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, () => ( _chunkKLJK5HSAcjs.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 ? _chunkKLJK5HSAcjs.isFigmaSlidesUrl.call(void 0, url) : false;
6463
- const embedSrc = url ? _chunkKLJK5HSAcjs.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(_chunkKLJK5HSAcjs.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:";
@@ -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
  },
@@ -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 } = _chunkKLJK5HSAcjs.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
  }
@@ -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
  }
@@ -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
  {
@@ -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
- } = _chunkKLJK5HSAcjs.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,15 +15870,15 @@ 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
15883
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
15866
15884
  ] }) : filterTrigger
@@ -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
@@ -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
  },
@@ -16269,7 +16287,7 @@ function SearchInput({
16269
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 = _chunkKLJK5HSAcjs.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
- } = _chunkKLJK5HSAcjs.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 } = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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,8 +17833,8 @@ 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: [
@@ -18042,7 +18060,7 @@ function TicketStatusConfigRow({
18042
18060
  isDragging,
18043
18061
  moveButtons
18044
18062
  }) {
18045
- const dragAndDropEnabled = _chunkKLJK5HSAcjs.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;
@@ -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
@@ -18244,7 +18262,7 @@ function TestResultsTable({ rows, loading }) {
18244
18262
  ] }) }) });
18245
18263
  }
18246
18264
  function TestRunErrorBanner({ error, className }) {
18247
- const { copy } = _chunkKLJK5HSAcjs.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
  {
@@ -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,7 +18697,7 @@ 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
18703
  _chunkCOX4CSXZcjs.TicketStatusTag,
@@ -18784,7 +18802,7 @@ 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 = () => {
@@ -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 = () => {
@@ -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,7 +19180,7 @@ 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,
@@ -19419,7 +19437,7 @@ function SnapCarousel({
19419
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 = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _439 => _439.firstName]), firstName);
19819
- const lastNameErr = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _440 => _440.lastName]), lastName);
19820
- const passwordErr = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _441 => _441.password]), password);
19821
- const confirmErr = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _444 => _444.email]), _nullishCoalesce(email, () => ( "")));
20262
- const orgNameErr = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _445 => _445.organizationName]), organizationName);
20263
- const domainErr = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _457 => _457.email]), email);
20622
- const passwordErr = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _460 => _460.password]), password);
20833
- const confirmErr = _chunkKLJK5HSAcjs.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);
@@ -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) => {
@@ -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 ? _chunkKLJK5HSAcjs.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
  },
@@ -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;
@@ -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 {
@@ -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) => {
@@ -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;
@@ -26050,11 +26068,11 @@ function WalkthroughVideo({
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) {
@@ -26460,9 +26478,9 @@ 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}`
@@ -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.
@@ -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);
@@ -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 {
@@ -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
  };
@@ -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 } = _chunkKLJK5HSAcjs.useToast.call(void 0, );
28266
- const { honeypotInputProps, getSignals, resetSignals } = _chunkKLJK5HSAcjs.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
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 = _chunkKLJK5HSAcjs.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";
@@ -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) => {
@@ -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;
@@ -29180,7 +29198,7 @@ var typeColorByVariant = {
29180
29198
  error: "text-ods-error"
29181
29199
  };
29182
29200
  var progressColorByVariant2 = {
29183
- ..._chunkKLJK5HSAcjs.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", _chunkKLJK5HSAcjs.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 })
@@ -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,
@@ -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 } = _chunkKLJK5HSAcjs.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,21 +29716,21 @@ 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
  }
@@ -29768,7 +29786,7 @@ 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
29792
  const { innerRef, containerStyle } = _chunkCOX4CSXZcjs.useCollapsible.call(void 0, { expanded });
@@ -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 {
@@ -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";
@@ -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
  }
@@ -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
@@ -31334,9 +31352,9 @@ function TicketCardBody({
31334
31352
  }) {
31335
31353
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
31336
31354
  const newMessageTextColor = columnColor ? _chunkCOX4CSXZcjs.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);
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,
@@ -31399,7 +31417,7 @@ 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,
31420
+ _optionalChain([ticket, 'access', _682 => _682.tags, 'optionalAccess', _683 => _683.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
31403
31421
  metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOX4CSXZcjs.Tooltip, { children: [
31404
31422
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipTrigger, { asChild: true, children: meta }),
31405
31423
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOX4CSXZcjs.TooltipContent, { children: tooltipLabel })
@@ -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] = _chunkKLJK5HSAcjs.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 = _chunk26GBOUIPcjs.useMediaQuery.call(void 0, _chunkKLJK5HSAcjs.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
- } = _chunkKLJK5HSAcjs.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 = _chunkKLJK5HSAcjs.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-U5N4424J.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