@flamingo-stack/openframe-frontend-core 0.0.579 → 0.0.580-1952.5355.1

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 (171) hide show
  1. package/dist/chat-protocol/decode.d.ts.map +1 -1
  2. package/dist/chat-protocol/events.d.ts +1 -47
  3. package/dist/chat-protocol/events.d.ts.map +1 -1
  4. package/dist/chat-protocol/index.cjs +0 -51
  5. package/dist/chat-protocol/index.cjs.map +1 -1
  6. package/dist/chat-protocol/index.js +1 -48
  7. package/dist/chat-protocol/index.js.map +1 -1
  8. package/dist/chat-protocol/leading-frames.d.ts +3 -9
  9. package/dist/chat-protocol/leading-frames.d.ts.map +1 -1
  10. package/dist/chat-protocol/nats-decoder.d.ts +0 -41
  11. package/dist/chat-protocol/nats-decoder.d.ts.map +1 -1
  12. package/dist/{chunk-OGZAFM6M.cjs → chunk-3HON5UEM.cjs} +5 -5
  13. package/dist/{chunk-OGZAFM6M.cjs.map → chunk-3HON5UEM.cjs.map} +1 -1
  14. package/dist/{chunk-PMENIZXI.js → chunk-3IQ5EPTU.js} +4 -4
  15. package/dist/{chunk-BCJQ7CJE.cjs → chunk-4VXIRT7T.cjs} +9 -9
  16. package/dist/{chunk-BCJQ7CJE.cjs.map → chunk-4VXIRT7T.cjs.map} +1 -1
  17. package/dist/{chunk-IFYQ7DHV.cjs → chunk-5UWZEYWX.cjs} +43 -43
  18. package/dist/{chunk-IFYQ7DHV.cjs.map → chunk-5UWZEYWX.cjs.map} +1 -1
  19. package/dist/{chunk-CP5EYMNL.js → chunk-6IIFWQMC.js} +2 -2
  20. package/dist/{chunk-O2FTVZOD.js → chunk-D6FA6PG5.js} +3 -3
  21. package/dist/{chunk-DB3TV4CW.js → chunk-DNM5EXQS.js} +3 -3
  22. package/dist/{chunk-H4BPHGU5.js → chunk-E4VOSHP4.js} +2 -2
  23. package/dist/{chunk-36TJYCF3.cjs → chunk-E5AYJ337.cjs} +21 -21
  24. package/dist/{chunk-36TJYCF3.cjs.map → chunk-E5AYJ337.cjs.map} +1 -1
  25. package/dist/{chunk-H54EPP3P.cjs → chunk-GKKPUEMT.cjs} +4 -4
  26. package/dist/{chunk-H54EPP3P.cjs.map → chunk-GKKPUEMT.cjs.map} +1 -1
  27. package/dist/{chunk-BW4WDUSI.js → chunk-GSLJDW4F.js} +2 -2
  28. package/dist/{chunk-4FJSN2XW.cjs → chunk-GUILHB3S.cjs} +10 -10
  29. package/dist/{chunk-4FJSN2XW.cjs.map → chunk-GUILHB3S.cjs.map} +1 -1
  30. package/dist/{chunk-NPVDKOGD.cjs → chunk-IA3HSKNP.cjs} +22 -22
  31. package/dist/{chunk-NPVDKOGD.cjs.map → chunk-IA3HSKNP.cjs.map} +1 -1
  32. package/dist/{chunk-FEVLXRTC.cjs → chunk-JHKKXU2F.cjs} +159 -159
  33. package/dist/{chunk-FEVLXRTC.cjs.map → chunk-JHKKXU2F.cjs.map} +1 -1
  34. package/dist/{chunk-37XJYOAY.cjs → chunk-JZGN2RH3.cjs} +10 -10
  35. package/dist/{chunk-37XJYOAY.cjs.map → chunk-JZGN2RH3.cjs.map} +1 -1
  36. package/dist/{chunk-L2CF2QZW.js → chunk-L2TJ5AIY.js} +5 -5
  37. package/dist/{chunk-4LZ7B5H5.cjs → chunk-NAT4RZ27.cjs} +3 -3
  38. package/dist/{chunk-4LZ7B5H5.cjs.map → chunk-NAT4RZ27.cjs.map} +1 -1
  39. package/dist/{chunk-YW4WBNYV.cjs → chunk-NFZSFZK7.cjs} +24 -24
  40. package/dist/{chunk-YW4WBNYV.cjs.map → chunk-NFZSFZK7.cjs.map} +1 -1
  41. package/dist/{chunk-QCP2KV7P.js → chunk-O4NV4EYT.js} +3 -3
  42. package/dist/{chunk-A6C5HOD7.cjs → chunk-POIFPUEC.cjs} +15 -15
  43. package/dist/{chunk-A6C5HOD7.cjs.map → chunk-POIFPUEC.cjs.map} +1 -1
  44. package/dist/{chunk-AKPLEWMH.js → chunk-Q2BEBMWV.js} +2 -2
  45. package/dist/{chunk-4WSKSNXL.js → chunk-QHEFJMGH.js} +6 -6
  46. package/dist/{chunk-3AX3ZEY3.js → chunk-QZSNH7XU.js} +1317 -1480
  47. package/dist/chunk-QZSNH7XU.js.map +1 -0
  48. package/dist/{chunk-HGA74X35.js → chunk-RCFPYPV5.js} +3 -3
  49. package/dist/{chunk-PWOYEUIQ.js → chunk-RU2VPCO3.js} +5 -5
  50. package/dist/{chunk-M5GWCMYE.cjs → chunk-VI5NVHZ5.cjs} +32 -32
  51. package/dist/{chunk-M5GWCMYE.cjs.map → chunk-VI5NVHZ5.cjs.map} +1 -1
  52. package/dist/{chunk-HHJVIHVR.cjs → chunk-VMXQASS5.cjs} +69 -69
  53. package/dist/{chunk-HHJVIHVR.cjs.map → chunk-VMXQASS5.cjs.map} +1 -1
  54. package/dist/{chunk-QGJYWLF4.js → chunk-VSHN2F34.js} +2 -2
  55. package/dist/{chunk-RKGOVTXZ.cjs → chunk-VYQNM75R.cjs} +167 -330
  56. package/dist/chunk-VYQNM75R.cjs.map +1 -0
  57. package/dist/{chunk-5Y6TPFW7.js → chunk-WXTXA22M.js} +5 -5
  58. package/dist/{chunk-4HGRXFQP.cjs → chunk-WZRXOP7V.cjs} +3 -3
  59. package/dist/{chunk-4HGRXFQP.cjs.map → chunk-WZRXOP7V.cjs.map} +1 -1
  60. package/dist/{chunk-D44S2QLI.js → chunk-Y5XXRM53.js} +3 -3
  61. package/dist/components/case-studies/index.cjs +9 -9
  62. package/dist/components/case-studies/index.js +3 -3
  63. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  64. package/dist/components/chat/index.cjs +2 -10
  65. package/dist/components/chat/index.cjs.map +1 -1
  66. package/dist/components/chat/index.d.ts +0 -1
  67. package/dist/components/chat/index.d.ts.map +1 -1
  68. package/dist/components/chat/index.js +1 -9
  69. package/dist/components/chat/stream/chat-stream-reducer.d.ts +0 -9
  70. package/dist/components/chat/stream/chat-stream-reducer.d.ts.map +1 -1
  71. package/dist/components/chat/stream/delta-batcher.d.ts +3 -3
  72. package/dist/components/chat/stream/delta-batcher.d.ts.map +1 -1
  73. package/dist/components/chat/stream/message-mutations.d.ts.map +1 -1
  74. package/dist/components/chat/types/component.types.d.ts +0 -6
  75. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  76. package/dist/components/chat/types/message.types.d.ts +2 -30
  77. package/dist/components/chat/types/message.types.d.ts.map +1 -1
  78. package/dist/components/chat/types/network.types.d.ts +1 -3
  79. package/dist/components/chat/types/network.types.d.ts.map +1 -1
  80. package/dist/components/chat/types/processing.types.d.ts +1 -4
  81. package/dist/components/chat/types/processing.types.d.ts.map +1 -1
  82. package/dist/components/chat/utils/approval-display.d.ts +8 -36
  83. package/dist/components/chat/utils/approval-display.d.ts.map +1 -1
  84. package/dist/components/chat/utils/extract-incomplete-message-state.d.ts.map +1 -1
  85. package/dist/components/chat/utils/index.d.ts +1 -1
  86. package/dist/components/chat/utils/index.d.ts.map +1 -1
  87. package/dist/components/chat/utils/message-segment-accumulator.d.ts +4 -16
  88. package/dist/components/chat/utils/message-segment-accumulator.d.ts.map +1 -1
  89. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  90. package/dist/components/chat/utils/resolve-fetched-card-href.d.ts +1 -1
  91. package/dist/components/contact/index.cjs +4 -4
  92. package/dist/components/contact/index.js +3 -3
  93. package/dist/components/docs/index.cjs +7 -7
  94. package/dist/components/docs/index.js +6 -6
  95. package/dist/components/embeds/index.cjs +4 -4
  96. package/dist/components/embeds/index.js +3 -3
  97. package/dist/components/faq/index.cjs +4 -4
  98. package/dist/components/faq/index.js +3 -3
  99. package/dist/components/features/index.cjs +3 -3
  100. package/dist/components/features/index.js +2 -2
  101. package/dist/components/help-center-pages/index.cjs +23 -23
  102. package/dist/components/help-center-pages/index.js +14 -14
  103. package/dist/components/index.cjs +121 -129
  104. package/dist/components/index.cjs.map +1 -1
  105. package/dist/components/index.js +13 -21
  106. package/dist/components/index.js.map +1 -1
  107. package/dist/components/meeting-scheduler/index.cjs +21 -21
  108. package/dist/components/meeting-scheduler/index.js +2 -2
  109. package/dist/components/navigation/index.cjs +6 -6
  110. package/dist/components/navigation/index.js +5 -5
  111. package/dist/components/onboarding-guides/index.cjs +6 -6
  112. package/dist/components/onboarding-guides/index.js +5 -5
  113. package/dist/components/tickets/index.cjs +7 -7
  114. package/dist/components/tickets/index.js +6 -6
  115. package/dist/components/ui/index.cjs +3 -11
  116. package/dist/components/ui/index.cjs.map +1 -1
  117. package/dist/components/ui/index.js +2 -10
  118. package/dist/index.cjs +7 -15
  119. package/dist/index.cjs.map +1 -1
  120. package/dist/index.js +6 -14
  121. package/dist/index.js.map +1 -1
  122. package/dist/utils/index.cjs.map +1 -1
  123. package/dist/utils/index.js.map +1 -1
  124. package/package.json +1 -1
  125. package/src/chat-protocol/__tests__/__snapshots__/nats-decoder-golden.test.ts.snap +0 -80
  126. package/src/chat-protocol/__tests__/nats-decoder-golden.test.ts +1 -118
  127. package/src/chat-protocol/decode.ts +3 -4
  128. package/src/chat-protocol/events.ts +0 -51
  129. package/src/chat-protocol/leading-frames.ts +3 -9
  130. package/src/chat-protocol/nats-decoder.ts +1 -110
  131. package/src/components/chat/__tests__/chat-pending-turn.test.tsx +0 -19
  132. package/src/components/chat/chat-message-enhanced.tsx +1 -13
  133. package/src/components/chat/index.ts +0 -1
  134. package/src/components/chat/stream/__tests__/chat-stream-reducer.test.ts +0 -90
  135. package/src/components/chat/stream/chat-dialog-store.ts +1 -1
  136. package/src/components/chat/stream/chat-stream-reducer.ts +11 -49
  137. package/src/components/chat/stream/delta-batcher.ts +4 -9
  138. package/src/components/chat/stream/message-mutations.ts +0 -2
  139. package/src/components/chat/types/component.types.ts +0 -9
  140. package/src/components/chat/types/message.types.ts +0 -32
  141. package/src/components/chat/types/network.types.ts +1 -3
  142. package/src/components/chat/types/processing.types.ts +1 -4
  143. package/src/components/chat/utils/__tests__/process-historical-messages-approvals.test.ts +0 -93
  144. package/src/components/chat/utils/__tests__/process-historical-messages-golden.test.ts +1 -78
  145. package/src/components/chat/utils/approval-display.ts +8 -53
  146. package/src/components/chat/utils/extract-incomplete-message-state.ts +0 -1
  147. package/src/components/chat/utils/index.ts +1 -6
  148. package/src/components/chat/utils/message-segment-accumulator.ts +3 -37
  149. package/src/components/chat/utils/process-historical-messages.ts +7 -44
  150. package/src/components/chat/utils/resolve-fetched-card-href.ts +1 -1
  151. package/src/stories/ChatMessageEnhanced.stories.tsx +3 -7
  152. package/dist/chunk-3AX3ZEY3.js.map +0 -1
  153. package/dist/chunk-RKGOVTXZ.cjs.map +0 -1
  154. package/dist/components/chat/guide-display.d.ts +0 -14
  155. package/dist/components/chat/guide-display.d.ts.map +0 -1
  156. package/src/components/chat/guide-display.tsx +0 -42
  157. /package/dist/{chunk-PMENIZXI.js.map → chunk-3IQ5EPTU.js.map} +0 -0
  158. /package/dist/{chunk-CP5EYMNL.js.map → chunk-6IIFWQMC.js.map} +0 -0
  159. /package/dist/{chunk-O2FTVZOD.js.map → chunk-D6FA6PG5.js.map} +0 -0
  160. /package/dist/{chunk-DB3TV4CW.js.map → chunk-DNM5EXQS.js.map} +0 -0
  161. /package/dist/{chunk-H4BPHGU5.js.map → chunk-E4VOSHP4.js.map} +0 -0
  162. /package/dist/{chunk-BW4WDUSI.js.map → chunk-GSLJDW4F.js.map} +0 -0
  163. /package/dist/{chunk-L2CF2QZW.js.map → chunk-L2TJ5AIY.js.map} +0 -0
  164. /package/dist/{chunk-QCP2KV7P.js.map → chunk-O4NV4EYT.js.map} +0 -0
  165. /package/dist/{chunk-AKPLEWMH.js.map → chunk-Q2BEBMWV.js.map} +0 -0
  166. /package/dist/{chunk-4WSKSNXL.js.map → chunk-QHEFJMGH.js.map} +0 -0
  167. /package/dist/{chunk-HGA74X35.js.map → chunk-RCFPYPV5.js.map} +0 -0
  168. /package/dist/{chunk-PWOYEUIQ.js.map → chunk-RU2VPCO3.js.map} +0 -0
  169. /package/dist/{chunk-QGJYWLF4.js.map → chunk-VSHN2F34.js.map} +0 -0
  170. /package/dist/{chunk-5Y6TPFW7.js.map → chunk-WXTXA22M.js.map} +0 -0
  171. /package/dist/{chunk-D44S2QLI.js.map → chunk-Y5XXRM53.js.map} +0 -0
@@ -89,7 +89,7 @@ var _chunkIKDC3R7Vcjs = require('./chunk-IKDC3R7V.cjs');
89
89
 
90
90
 
91
91
 
92
- var _chunkRKGOVTXZcjs = require('./chunk-RKGOVTXZ.cjs');
92
+ var _chunkVYQNM75Rcjs = require('./chunk-VYQNM75R.cjs');
93
93
 
94
94
 
95
95
 
@@ -329,7 +329,7 @@ function ThemeProvider({ children, ...overrides }) {
329
329
  var useTheme = _nextthemes.useTheme;
330
330
  function useThemeToggle() {
331
331
  const { resolvedTheme, theme, setTheme } = useTheme();
332
- const mounted = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
332
+ const mounted = _chunkVYQNM75Rcjs.useIsHydrated.call(void 0, );
333
333
  const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
334
334
  const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
335
335
  const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
@@ -606,7 +606,7 @@ function TruncateText({
606
606
  const { ref, isTruncated } = _chunkZI27ALYXcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
607
607
  const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
608
608
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
609
- _chunkRKGOVTXZcjs.FloatingTooltip,
609
+ _chunkVYQNM75Rcjs.FloatingTooltip,
610
610
  {
611
611
  content: _nullishCoalesce(tooltip, () => ( children)),
612
612
  side,
@@ -908,7 +908,7 @@ function AutocompleteInner(props, ref) {
908
908
  ),
909
909
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
910
910
  multiple && visibleTags.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
911
- _chunkRKGOVTXZcjs.Tag,
911
+ _chunkVYQNM75Rcjs.Tag,
912
912
  {
913
913
  variant: "outline",
914
914
  labelClassName: "max-w-[90px] truncate",
@@ -1114,7 +1114,7 @@ function AutocompleteInner(props, ref) {
1114
1114
  "aria-hidden": "true",
1115
1115
  className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
1116
1116
  children: selectedOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1117
- _chunkRKGOVTXZcjs.Tag,
1117
+ _chunkVYQNM75Rcjs.Tag,
1118
1118
  {
1119
1119
  variant: "outline",
1120
1120
  labelClassName: "max-w-[90px] truncate",
@@ -2498,7 +2498,7 @@ function InfoHint({ children, label, side = "top", className }) {
2498
2498
  const describedById = _react.useId.call(void 0, );
2499
2499
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "inline-flex shrink-0 items-center", className), children: [
2500
2500
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2501
- _chunkRKGOVTXZcjs.FloatingTooltip,
2501
+ _chunkVYQNM75Rcjs.FloatingTooltip,
2502
2502
  {
2503
2503
  content: children,
2504
2504
  side,
@@ -2592,7 +2592,7 @@ function Value2({ value, depth }) {
2592
2592
  }
2593
2593
  if (typeof value === "string") {
2594
2594
  if (ISO_DATE.test(value)) {
2595
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkRKGOVTXZcjs.formatRelativeTime.call(void 0, value) });
2595
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkVYQNM75Rcjs.formatRelativeTime.call(void 0, value) });
2596
2596
  }
2597
2597
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
2598
2598
  }
@@ -3224,7 +3224,7 @@ function RowValue({ value }) {
3224
3224
  }
3225
3225
  case "status": {
3226
3226
  const { type: _type, ...props } = value;
3227
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TicketStatusTag, { ...props });
3227
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TicketStatusTag, { ...props });
3228
3228
  }
3229
3229
  case "custom":
3230
3230
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
@@ -4135,7 +4135,7 @@ function TagsManager({
4135
4135
  }
4136
4136
  ),
4137
4137
  selectedTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4138
- _chunkRKGOVTXZcjs.Tag,
4138
+ _chunkVYQNM75Rcjs.Tag,
4139
4139
  {
4140
4140
  label: tag.name,
4141
4141
  variant: "outline",
@@ -4680,10 +4680,10 @@ function useConfirm() {
4680
4680
  },
4681
4681
  []
4682
4682
  );
4683
- const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
4684
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: pending.title }) }),
4685
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
4686
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
4683
+ const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
4684
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: pending.title }) }),
4685
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
4686
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: [
4687
4687
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
4688
4688
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
4689
4689
  ] })
@@ -4741,9 +4741,9 @@ function AdminFormModal({
4741
4741
  body: "Your edits have not been saved. Close and discard them?"
4742
4742
  });
4743
4743
  if (!isOpen) return null;
4744
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
4745
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: [
4746
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: title }),
4744
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
4745
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: [
4746
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: title }),
4747
4747
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
4748
4748
  ] }),
4749
4749
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -4767,7 +4767,7 @@ function AdminFormModal({
4767
4767
  // a shrink-to-fit flex item pinned to the left of a 1400px panel).
4768
4768
  // The placeholder owns its own layout and mirrors the column count so
4769
4769
  // the modal doesn't visibly re-flow when the entity lands.
4770
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4770
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4771
4771
  "div",
4772
4772
  {
4773
4773
  "aria-busy": "true",
@@ -4788,12 +4788,12 @@ function AdminFormModal({
4788
4788
  ]
4789
4789
  }
4790
4790
  ) })
4791
- ) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { className: contentClassName, children }),
4791
+ ) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalContent, { className: contentClassName, children }),
4792
4792
  error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
4793
4793
  ]
4794
4794
  }
4795
4795
  ),
4796
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
4796
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
4797
4797
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
4798
4798
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
4799
4799
  footerStatus,
@@ -6891,7 +6891,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
6891
6891
  };
6892
6892
  const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
6893
6893
  const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6894
- _chunkRKGOVTXZcjs.Video,
6894
+ _chunkVYQNM75Rcjs.Video,
6895
6895
  {
6896
6896
  url: item.src,
6897
6897
  poster: item.poster ? displayImageSrc(item.poster) : void 0,
@@ -7615,7 +7615,7 @@ function buildRichEmbedOverrides({
7615
7615
  ogEndpointPath,
7616
7616
  textSizes
7617
7617
  }) {
7618
- const standard = _chunkRKGOVTXZcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7618
+ const standard = _chunkVYQNM75Rcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7619
7619
  return {
7620
7620
  // Fence-language embeds (```youtube-embed etc.); everything else
7621
7621
  // (mermaid, highlighted blocks, inline code) falls through to `standard`.
@@ -7625,7 +7625,7 @@ function buildRichEmbedOverrides({
7625
7625
  const language = match ? match[1] : "";
7626
7626
  const fenceText = () => String(children).replace(/\n$/, "").trim();
7627
7627
  if (language === "youtube-embed") {
7628
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "youtube", url: fenceText() });
7628
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "youtube", url: fenceText() });
7629
7629
  }
7630
7630
  if (language === "reddit-embed") {
7631
7631
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
@@ -7666,7 +7666,7 @@ function buildRichEmbedOverrides({
7666
7666
  "data-figma-url": figmaUrl
7667
7667
  } = divProps;
7668
7668
  if (className === "youtube-embed" && videoId) {
7669
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "youtube", url: videoId });
7669
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "youtube", url: videoId });
7670
7670
  }
7671
7671
  if (className === "reddit-embed" && postUrl) {
7672
7672
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
@@ -7751,14 +7751,14 @@ function buildRichEmbedOverrides({
7751
7751
  // rich-markdown runtime (Supabase optimization on the hub, identity
7752
7752
  // elsewhere). Guard against empty `![]()`.
7753
7753
  img: ({ src, alt }) => {
7754
- if (!_chunkRKGOVTXZcjs.hasRenderableSrc.call(void 0, src)) return null;
7754
+ if (!_chunkVYQNM75Rcjs.hasRenderableSrc.call(void 0, src)) return null;
7755
7755
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
7756
7756
  },
7757
7757
  // Raw <video> tags in stored content (blog publisher injection) route
7758
7758
  // to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
7759
7759
  video: ({ src, poster, className }) => {
7760
- if (!_chunkRKGOVTXZcjs.hasRenderableSrc.call(void 0, src)) return null;
7761
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
7760
+ if (!_chunkVYQNM75Rcjs.hasRenderableSrc.call(void 0, src)) return null;
7761
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
7762
7762
  }
7763
7763
  };
7764
7764
  }
@@ -7941,13 +7941,13 @@ var RichMarkdownInner = ({
7941
7941
  },
7942
7942
  [resolveLinkEndpointUrl, resolveSource]
7943
7943
  );
7944
- const textSizes = _react.useMemo.call(void 0, () => _chunkRKGOVTXZcjs.resolveTextSizeConfig.call(void 0, "article"), []);
7944
+ const textSizes = _react.useMemo.call(void 0, () => _chunkVYQNM75Rcjs.resolveTextSizeConfig.call(void 0, "article"), []);
7945
7945
  const componentOverrides = _react.useMemo.call(void 0,
7946
7946
  () => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
7947
7947
  [ogApiBaseUrl, ogEndpointPath, textSizes]
7948
7948
  );
7949
7949
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7950
- _chunkRKGOVTXZcjs.MarkdownEngine,
7950
+ _chunkVYQNM75Rcjs.MarkdownEngine,
7951
7951
  {
7952
7952
  content,
7953
7953
  className,
@@ -7969,7 +7969,7 @@ var RichMarkdownRendererImpl = ({
7969
7969
  className = "",
7970
7970
  sectionIds,
7971
7971
  onInternalLinkClick,
7972
- brokenLinks = _chunkRKGOVTXZcjs.NO_BROKEN_LINKS,
7972
+ brokenLinks = _chunkVYQNM75Rcjs.NO_BROKEN_LINKS,
7973
7973
  currentPath,
7974
7974
  resolveSource = "openframe-docs",
7975
7975
  resolveLinkEndpointUrl = "/api/docs/resolve-link",
@@ -8542,7 +8542,7 @@ function FilterModal({
8542
8542
  const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _161 => _161.defaultSort]), () => ( "desc"));
8543
8543
  const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _162 => _162.sort]), () => ( dateDefaultSort)));
8544
8544
  const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _163 => _163.range]));
8545
- const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkRKGOVTXZcjs.useScrollFade.call(void 0, );
8545
+ const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkVYQNM75Rcjs.useScrollFade.call(void 0, );
8546
8546
  const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
8547
8547
  const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
8548
8548
  _react.useEffect.call(void 0, () => {
@@ -8587,10 +8587,10 @@ function FilterModal({
8587
8587
  const hasFilterGroups = filterGroups.length > 0;
8588
8588
  const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
8589
8589
  const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
8590
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose, className: _chunkPRPZBXWZcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
8591
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: title }) }),
8590
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen, onClose, className: _chunkPRPZBXWZcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
8591
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: title }) }),
8592
8592
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8593
- _chunkRKGOVTXZcjs.ModalContent,
8593
+ _chunkVYQNM75Rcjs.ModalContent,
8594
8594
  {
8595
8595
  className: _chunkPRPZBXWZcjs.cn.call(void 0,
8596
8596
  "flex min-h-0 flex-1 flex-col",
@@ -8682,12 +8682,12 @@ function FilterModal({
8682
8682
  ] })
8683
8683
  }
8684
8684
  ),
8685
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
8686
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
8685
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
8686
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
8687
8687
  ] })
8688
8688
  }
8689
8689
  ),
8690
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
8690
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: [
8691
8691
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
8692
8692
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
8693
8693
  ] })
@@ -8731,9 +8731,9 @@ function actionToMenuItems(action, idx) {
8731
8731
  function renderActionButton(action, opts = {}) {
8732
8732
  const button = renderRawActionButton(action, opts);
8733
8733
  if (!action.tooltip) return button;
8734
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
8735
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: button }),
8736
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { children: action.tooltip })
8734
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { children: [
8735
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipTrigger, { asChild: true, children: button }),
8736
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { children: action.tooltip })
8737
8737
  ] }) });
8738
8738
  }
8739
8739
  function renderRawActionButton(action, opts = {}) {
@@ -8757,7 +8757,7 @@ function renderRawActionButton(action, opts = {}) {
8757
8757
  }
8758
8758
  if (action.submenu && action.submenu.length > 0) {
8759
8759
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8760
- _chunkRKGOVTXZcjs.ActionsMenuDropdown,
8760
+ _chunkVYQNM75Rcjs.ActionsMenuDropdown,
8761
8761
  {
8762
8762
  groups: [{ items: action.submenu }],
8763
8763
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -8892,10 +8892,10 @@ function IconButtonsVariant({
8892
8892
  selector,
8893
8893
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
8894
8894
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
8895
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: menuActions })
8895
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ActionsMenuDropdown, { groups: menuActions })
8896
8896
  ] })
8897
8897
  ] }),
8898
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
8898
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
8899
8899
  ] });
8900
8900
  }
8901
8901
  function PrimaryButtonsVariant({
@@ -8933,11 +8933,11 @@ function MenuPrimaryVariant({
8933
8933
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "hidden items-center md:flex", ACTIONS_GAP, className), children: [
8934
8934
  selector,
8935
8935
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
8936
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: menuActions }),
8936
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ActionsMenuDropdown, { groups: menuActions }),
8937
8937
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
8938
8938
  ] })
8939
8939
  ] }),
8940
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
8940
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
8941
8941
  ] });
8942
8942
  }
8943
8943
  function MobileBottomActions({ actions, loading }) {
@@ -9339,7 +9339,7 @@ function TitleBlock({
9339
9339
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
9340
9340
  (loading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
9341
9341
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9342
- _chunkRKGOVTXZcjs.FloatingTooltip,
9342
+ _chunkVYQNM75Rcjs.FloatingTooltip,
9343
9343
  {
9344
9344
  content: title,
9345
9345
  side: "bottom",
@@ -9356,12 +9356,12 @@ function TitleBlock({
9356
9356
  }
9357
9357
  ),
9358
9358
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
9359
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
9359
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
9360
9360
  hasSubtitleRow && /* The NBSP is a pure spacer, reached only in `'always'` mode: an
9361
9361
  empty `p` collapses to zero height (its only content would be
9362
9362
  collapsible whitespace), which is exactly the shift that mode
9363
9363
  exists to prevent. Hidden from AT — it carries no meaning. */
9364
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9364
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9365
9365
  "p",
9366
9366
  {
9367
9367
  ref: subtitleRef,
@@ -9372,7 +9372,7 @@ function TitleBlock({
9372
9372
  ) })
9373
9373
  ] })
9374
9374
  ] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
9375
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass), children: title }) }),
9375
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass), children: title }) }),
9376
9376
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
9377
9377
  ] }) : (
9378
9378
  /* This branch never had the single-line clamp, so text already
@@ -10969,7 +10969,7 @@ function extractSections(markdown, options = {}) {
10969
10969
  if (heading.level > opts.maxLevel) continue;
10970
10970
  let title = heading.text;
10971
10971
  if (opts.stripFormattingMarkers) {
10972
- title = _chunkRKGOVTXZcjs.stripInlineMarkdown.call(void 0, title).trim();
10972
+ title = _chunkVYQNM75Rcjs.stripInlineMarkdown.call(void 0, title).trim();
10973
10973
  }
10974
10974
  const baseId = _chunkZI27ALYXcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkZI27ALYXcjs.stripHeadingEmojis.call(void 0, title) : title);
10975
10975
  const cleanId = baseId || `section-${sections.length + 1}`;
@@ -11461,7 +11461,7 @@ function DashboardInfoCard({
11461
11461
  const asTag = percentageDisplay === "tag" || percentageDisplay === "auto" && (progressVariant === "warning" || progressVariant === "error");
11462
11462
  if (asTag) {
11463
11463
  const tagVariant = progressVariant === "warning" || progressVariant === "error" ? progressVariant : progressVariant === "success" ? "success" : "grey";
11464
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: tagVariant, label: `${percentage}%` });
11464
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: tagVariant, label: `${percentage}%` });
11465
11465
  }
11466
11466
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: [
11467
11467
  "(",
@@ -11515,7 +11515,7 @@ function DashboardInfoCard({
11515
11515
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "truncate text-ods-text-primary text-h3 md:text-h2", valueClassName), children: formattedValue }),
11516
11516
  subValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: subValue }),
11517
11517
  renderPercentage(),
11518
- tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: tooltip, side: "top", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "cursor-help text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.QuestionCircleIcon, { size: 20 }) }) })
11518
+ tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.FloatingTooltip, { content: tooltip, side: "top", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "cursor-help text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.QuestionCircleIcon, { size: 20 }) }) })
11519
11519
  ] })
11520
11520
  ] }),
11521
11521
  renderProgress()
@@ -11698,7 +11698,7 @@ function DeviceCard({
11698
11698
  ] }),
11699
11699
  (statusTag || device.lastSeen) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
11700
11700
  statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11701
- _chunkRKGOVTXZcjs.Tag,
11701
+ _chunkVYQNM75Rcjs.Tag,
11702
11702
  {
11703
11703
  variant: statusTag.variant,
11704
11704
  icon: statusTag.icon,
@@ -11712,7 +11712,7 @@ function DeviceCard({
11712
11712
  formatLastSeen(device.lastSeen)
11713
11713
  ] })
11714
11714
  ] }),
11715
- device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: tag }, index)) })
11715
+ device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: "outline", label: tag }, index)) })
11716
11716
  ]
11717
11717
  }
11718
11718
  );
@@ -11860,7 +11860,7 @@ function FeatureList({ items, className = "", iconBoxSize = 72 }) {
11860
11860
 
11861
11861
  function SourceTooltip({ intro, sources, note, iconClassName, triggerAnchorProps }) {
11862
11862
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11863
- _chunkRKGOVTXZcjs.FloatingTooltip,
11863
+ _chunkVYQNM75Rcjs.FloatingTooltip,
11864
11864
  {
11865
11865
  as: "span",
11866
11866
  side: "top",
@@ -12044,7 +12044,7 @@ function DropdownButton({
12044
12044
  )
12045
12045
  );
12046
12046
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12047
- _chunkRKGOVTXZcjs.ActionsMenuDropdown,
12047
+ _chunkVYQNM75Rcjs.ActionsMenuDropdown,
12048
12048
  {
12049
12049
  groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
12050
12050
  open,
@@ -12282,7 +12282,7 @@ function ServiceCardRowItem({ row }) {
12282
12282
  ),
12283
12283
  children: [
12284
12284
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12285
- _chunkRKGOVTXZcjs.FloatingTooltip,
12285
+ _chunkVYQNM75Rcjs.FloatingTooltip,
12286
12286
  {
12287
12287
  content: row.value,
12288
12288
  side: "top",
@@ -12408,9 +12408,9 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
12408
12408
  return next;
12409
12409
  });
12410
12410
  };
12411
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open, onOpenChange: setOpen, children: [
12411
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { open, onOpenChange: setOpen, children: [
12412
12412
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12413
- _chunkRKGOVTXZcjs.TooltipTrigger,
12413
+ _chunkVYQNM75Rcjs.TooltipTrigger,
12414
12414
  {
12415
12415
  asChild: true,
12416
12416
  onPointerDown: (e) => {
@@ -12428,7 +12428,7 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
12428
12428
  children
12429
12429
  }
12430
12430
  ),
12431
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side, className: "max-w-xs", children: content })
12431
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { side, className: "max-w-xs", children: content })
12432
12432
  ] }) });
12433
12433
  }
12434
12434
 
@@ -13443,9 +13443,9 @@ function TruncatedHeaderCell({ value, width }) {
13443
13443
  setIsTruncated(el.scrollWidth > el.clientWidth);
13444
13444
  }
13445
13445
  }, []);
13446
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
13447
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
13448
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
13446
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
13447
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
13448
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
13449
13449
  ] }) });
13450
13450
  }
13451
13451
 
@@ -13498,9 +13498,9 @@ function TruncatedCell({ value, className }) {
13498
13498
  setIsTruncated(el.scrollWidth > el.clientWidth);
13499
13499
  }
13500
13500
  }, []);
13501
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
13502
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, "block truncate", className), children: value }) }),
13503
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
13501
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
13502
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, "block truncate", className), children: value }) }),
13503
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
13504
13504
  ] }) });
13505
13505
  }
13506
13506
 
@@ -14784,7 +14784,7 @@ function SearchInput({
14784
14784
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}) }),
14785
14785
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
14786
14786
  visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14787
- _chunkRKGOVTXZcjs.Tag,
14787
+ _chunkVYQNM75Rcjs.Tag,
14788
14788
  {
14789
14789
  variant: chipVariantToTagVariant(chip.variant),
14790
14790
  label: chip.label,
@@ -14898,7 +14898,7 @@ function SearchInput({
14898
14898
  }
14899
14899
  ),
14900
14900
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: measureRef, "aria-hidden": "true", className: "pointer-events-none fixed -left-[9999px] top-0 flex gap-2", children: filterChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14901
- _chunkRKGOVTXZcjs.Tag,
14901
+ _chunkVYQNM75Rcjs.Tag,
14902
14902
  {
14903
14903
  variant: chipVariantToTagVariant(chip.variant),
14904
14904
  label: chip.label,
@@ -15111,7 +15111,7 @@ function TagSearchInput({
15111
15111
  /* @__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" }) }),
15112
15112
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
15113
15113
  visibleTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15114
- _chunkRKGOVTXZcjs.Tag,
15114
+ _chunkVYQNM75Rcjs.Tag,
15115
15115
  {
15116
15116
  variant: "outline",
15117
15117
  label: renderTag ? renderTag(tag) : tag.label,
@@ -15199,7 +15199,7 @@ function TagSearchInput({
15199
15199
  "aria-hidden": "true",
15200
15200
  className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
15201
15201
  children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15202
- _chunkRKGOVTXZcjs.Tag,
15202
+ _chunkVYQNM75Rcjs.Tag,
15203
15203
  {
15204
15204
  variant: "outline",
15205
15205
  label: renderTag ? renderTag(tag) : tag.label,
@@ -16088,20 +16088,20 @@ function ColorPresetSelect({
16088
16088
  ...presets.map((p) => ({
16089
16089
  id: p.key,
16090
16090
  label: p.label,
16091
- icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: p.color }),
16091
+ icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: p.color }),
16092
16092
  onClick: () => onChange({ color: p.color, preset: p.key })
16093
16093
  })),
16094
16094
  {
16095
16095
  id: CUSTOM_PRESET_KEY,
16096
16096
  label: "Custom",
16097
- icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
16097
+ icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
16098
16098
  onClick: () => onChange({ color: value, preset: void 0 })
16099
16099
  }
16100
16100
  ]
16101
16101
  }
16102
16102
  ];
16103
16103
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16104
- _chunkRKGOVTXZcjs.ActionsMenuDropdown,
16104
+ _chunkVYQNM75Rcjs.ActionsMenuDropdown,
16105
16105
  {
16106
16106
  groups,
16107
16107
  align: "start",
@@ -16111,7 +16111,7 @@ function ColorPresetSelect({
16111
16111
  {
16112
16112
  disabled,
16113
16113
  "aria-label": `Color: ${displayLabel}`,
16114
- startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: displayColor }),
16114
+ startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: displayColor }),
16115
16115
  selectedLabel: displayLabel,
16116
16116
  endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
16117
16117
  className: _chunkPRPZBXWZcjs.cn.call(void 0, "group", className)
@@ -16132,7 +16132,7 @@ function HexInputs({ value, onChange }) {
16132
16132
  }
16133
16133
  const commit = () => {
16134
16134
  const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
16135
- if (_chunkRKGOVTXZcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
16135
+ if (_chunkVYQNM75Rcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
16136
16136
  else setDraft(value);
16137
16137
  };
16138
16138
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -16196,12 +16196,12 @@ function ChannelInput({
16196
16196
  );
16197
16197
  }
16198
16198
  function RgbInputs({ value, onChange }) {
16199
- const rgb = _nullishCoalesce(_chunkRKGOVTXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
16199
+ const rgb = _nullishCoalesce(_chunkVYQNM75Rcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
16200
16200
  const update = (next) => {
16201
16201
  const r = _nullishCoalesce(next.r, () => ( rgb.r));
16202
16202
  const g = _nullishCoalesce(next.g, () => ( rgb.g));
16203
16203
  const b = _nullishCoalesce(next.b, () => ( rgb.b));
16204
- onChange(_chunkRKGOVTXZcjs.rgbToHex.call(void 0, r, g, b));
16204
+ onChange(_chunkVYQNM75Rcjs.rgbToHex.call(void 0, r, g, b));
16205
16205
  };
16206
16206
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16207
16207
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
@@ -16210,14 +16210,14 @@ function RgbInputs({ value, onChange }) {
16210
16210
  ] });
16211
16211
  }
16212
16212
  function HslInputs({ value, onChange }) {
16213
- const rgb = _nullishCoalesce(_chunkRKGOVTXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
16214
- const hsl = _chunkRKGOVTXZcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
16213
+ const rgb = _nullishCoalesce(_chunkVYQNM75Rcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
16214
+ const hsl = _chunkVYQNM75Rcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
16215
16215
  const update = (next) => {
16216
16216
  const h = _nullishCoalesce(next.h, () => ( hsl.h));
16217
16217
  const s = _nullishCoalesce(next.s, () => ( hsl.s));
16218
16218
  const l = _nullishCoalesce(next.l, () => ( hsl.l));
16219
- const out = _chunkRKGOVTXZcjs.hslToRgb.call(void 0, h, s, l);
16220
- onChange(_chunkRKGOVTXZcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
16219
+ const out = _chunkVYQNM75Rcjs.hslToRgb.call(void 0, h, s, l);
16220
+ onChange(_chunkVYQNM75Rcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
16221
16221
  };
16222
16222
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16223
16223
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
@@ -16243,7 +16243,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
16243
16243
  {
16244
16244
  disabled,
16245
16245
  "aria-label": "Pick custom color",
16246
- startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: value }),
16246
+ startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: value }),
16247
16247
  selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
16248
16248
  endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
16249
16249
  className: _chunkPRPZBXWZcjs.cn.call(void 0, "group", className)
@@ -16259,7 +16259,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
16259
16259
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
16260
16260
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
16261
16261
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16262
- _chunkRKGOVTXZcjs.ActionsMenuDropdown,
16262
+ _chunkVYQNM75Rcjs.ActionsMenuDropdown,
16263
16263
  {
16264
16264
  groups: formatGroups,
16265
16265
  align: "start",
@@ -16316,7 +16316,7 @@ function TicketStatusConfigRow({
16316
16316
  const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
16317
16317
  const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
16318
16318
  const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16319
- _chunkRKGOVTXZcjs.TicketStatusTag,
16319
+ _chunkVYQNM75Rcjs.TicketStatusTag,
16320
16320
  {
16321
16321
  status: statusKey,
16322
16322
  label: name || " ",
@@ -16468,7 +16468,7 @@ function formatTestRunDuration(ms) {
16468
16468
  var RESULT_COLUMN_MIN_WIDTH = 176;
16469
16469
  var SKELETON_COLUMNS = 6;
16470
16470
  function TestResultsSkeleton() {
16471
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
16471
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
16472
16472
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-3/4 animate-pulse rounded-sm bg-ods-bg-surface" }) }, `skeleton-header-${i}`)) }),
16473
16473
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "animate-pulse overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] md:h-[78px]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[160px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 w-3/4 rounded-sm bg-ods-bg-surface" }) }, `skeleton-cell-${i}`)) }) })
16474
16474
  ] }) });
@@ -16503,7 +16503,7 @@ function TestResultsTable({ rows, loading }) {
16503
16503
  if (loading) {
16504
16504
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
16505
16505
  }
16506
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
16506
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
16507
16507
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
16508
16508
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
16509
16509
  ] }) }) });
@@ -16563,7 +16563,7 @@ var TEST_RUN_STATUS_TAGS = {
16563
16563
  function TestRunStatusStat({ status, className }) {
16564
16564
  const tag = status === "idle" ? null : TEST_RUN_STATUS_TAGS[status];
16565
16565
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", className), children: [
16566
- tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { label: tag.label, variant: tag.variant, className: "pointer-events-none" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: "-" }),
16566
+ tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { label: tag.label, variant: tag.variant, className: "pointer-events-none" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: "-" }),
16567
16567
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Status" })
16568
16568
  ] });
16569
16569
  }
@@ -16606,7 +16606,7 @@ function useTestRunState(campaign) {
16606
16606
  const firstError = isFinished && campaign.errors.length > 0 ? campaign.errors[0].error : null;
16607
16607
  const status = isActive ? "running" : hasRun && isFinished ? firstError ? "error" : "success" : "idle";
16608
16608
  const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
16609
- const startedLabel = showTiming && campaign.startedAt ? _chunkRKGOVTXZcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
16609
+ const startedLabel = showTiming && campaign.startedAt ? _chunkVYQNM75Rcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
16610
16610
  const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
16611
16611
  const displayRows = _react.useMemo.call(void 0,
16612
16612
  () => campaign.results.map(
@@ -16944,7 +16944,7 @@ function TicketInfoSection({
16944
16944
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _390 => _390.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _391 => _391.icon]), onClick: _optionalChain([device, 'optionalAccess', _392 => _392.onClick]) }),
16945
16945
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
16946
16946
  (status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16947
- _chunkRKGOVTXZcjs.TicketStatusTag,
16947
+ _chunkVYQNM75Rcjs.TicketStatusTag,
16948
16948
  {
16949
16949
  status: _nullishCoalesce(status, () => ( "")),
16950
16950
  label: statusLabel,
@@ -16983,9 +16983,9 @@ function TicketInfoSection({
16983
16983
  expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16984
16984
  createdAt && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-bg px-4 py-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: createdAt, label: "Created" }) }),
16985
16985
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
16986
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.SimpleMarkdownRenderer, { content: description }),
16986
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.SimpleMarkdownRenderer, { content: description }),
16987
16987
  attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
16988
- tags && tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Tags", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
16988
+ tags && tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Tags", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
16989
16989
  (notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16990
16990
  TicketNotesSection,
16991
16991
  {
@@ -17008,7 +17008,7 @@ function renderTicketStatusOption(option, isSelected) {
17008
17008
  const { label, color } = option;
17009
17009
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-[var(--spacing-system-xs)]", children: [
17010
17010
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
17011
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color }),
17011
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color }),
17012
17012
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
17013
17013
  ] }),
17014
17014
  isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
@@ -17053,9 +17053,9 @@ function TakeOverTicketModal({
17053
17053
  if (!selectedStatusId || !assigneeId || isPending) return;
17054
17054
  onConfirm({ statusId: selectedStatusId, assigneeId });
17055
17055
  };
17056
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
17056
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen, onClose: isPending ? () => {
17057
17057
  } : onClose, className: "text-left md:max-w-[600px]", children: [
17058
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Take Over Ticket" }) }),
17058
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: "Take Over Ticket" }) }),
17059
17059
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
17060
17060
  "The ticket ",
17061
17061
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
@@ -17070,7 +17070,7 @@ function TakeOverTicketModal({
17070
17070
  value: selectedStatusId,
17071
17071
  onChange: setStatusId,
17072
17072
  placeholder: "Select Status",
17073
- startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
17073
+ startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
17074
17074
  renderOption: renderTicketStatusOption
17075
17075
  }
17076
17076
  ) }),
@@ -17097,7 +17097,7 @@ function TakeOverTicketModal({
17097
17097
  }
17098
17098
  ) })
17099
17099
  ] }),
17100
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
17100
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: [
17101
17101
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
17102
17102
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
17103
17103
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -17156,9 +17156,9 @@ function ReopenTicketModal({
17156
17156
  reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
17157
17157
  });
17158
17158
  };
17159
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
17159
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen, onClose: isPending ? () => {
17160
17160
  } : onClose, className: "text-left md:max-w-[600px]", children: [
17161
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
17161
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: "Reopen Ticket" }) }),
17162
17162
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
17163
17163
  "The ticket ",
17164
17164
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
@@ -17173,7 +17173,7 @@ function ReopenTicketModal({
17173
17173
  value: selectedStatusId,
17174
17174
  onChange: setStatusId,
17175
17175
  placeholder: "Select Status",
17176
- startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
17176
+ startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
17177
17177
  renderOption: renderTicketStatusOption
17178
17178
  }
17179
17179
  ) }),
@@ -17211,7 +17211,7 @@ function ReopenTicketModal({
17211
17211
  disabled: isPending
17212
17212
  }
17213
17213
  ) }),
17214
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
17214
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: [
17215
17215
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
17216
17216
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
17217
17217
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -17259,9 +17259,9 @@ function ReopenTicketRequestModal({
17259
17259
  ...showHandoffOption ? { handoffToTechnician: handoff } : {}
17260
17260
  });
17261
17261
  };
17262
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
17262
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Modal, { isOpen, onClose: isPending ? () => {
17263
17263
  } : onClose, className: "text-left md:max-w-[600px]", children: [
17264
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
17264
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ModalTitle, { children: "Reopen Ticket" }) }),
17265
17265
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: "This ticket will be reopened and the AI assistant will continue helping you." }),
17266
17266
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17267
17267
  Textarea,
@@ -17285,7 +17285,7 @@ function ReopenTicketRequestModal({
17285
17285
  disabled: isPending
17286
17286
  }
17287
17287
  ),
17288
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
17288
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.ModalFooter, { children: [
17289
17289
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
17290
17290
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
17291
17291
  ] })
@@ -19282,7 +19282,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
19282
19282
  sandbox: "allow-scripts allow-same-origin allow-popups allow-presentation",
19283
19283
  title: config.title,
19284
19284
  loading: "eager",
19285
- ..._chunkRKGOVTXZcjs.fetchPriorityProp.call(void 0, "high")
19285
+ ..._chunkVYQNM75Rcjs.fetchPriorityProp.call(void 0, "high")
19286
19286
  },
19287
19287
  iframeKey
19288
19288
  ),
@@ -20132,7 +20132,7 @@ function MediaGalleryManager({
20132
20132
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: mediaItem.media_type === "video" || mediaItem.media_type === "demo" ? (
20133
20133
  // <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
20134
20134
  // fit="cover" crops to the aspect-video cell.
20135
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: mediaItem.media_url, fit: "cover", className: "h-full w-full" })
20135
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "file", url: mediaItem.media_url, fit: "cover", className: "h-full w-full" })
20136
20136
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20137
20137
  _chunkWLSFBRT5cjs.next_image_default,
20138
20138
  {
@@ -20689,9 +20689,9 @@ function PushButtonSelector({
20689
20689
  option.id
20690
20690
  );
20691
20691
  if (option.disabled && option.disabledReason) {
20692
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
20693
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: optionEl }),
20694
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
20692
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { children: [
20693
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipTrigger, { asChild: true, children: optionEl }),
20694
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
20695
20695
  ] }, option.id);
20696
20696
  }
20697
20697
  return optionEl;
@@ -20728,7 +20728,7 @@ function PushButtonSelector({
20728
20728
  ungroupedOptions.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-2", children: ungroupedOptions.map(renderOption) })
20729
20729
  ] });
20730
20730
  };
20731
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
20731
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
20732
20732
  title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
20733
20733
  renderOptionsContent(),
20734
20734
  selectionSummary && validSelectedIds.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rounded-lg border border-ods-success bg-ods-success-secondary p-4", children: [
@@ -20891,7 +20891,7 @@ function ReleaseMediaManager({ media, onChange, onUpload, className = "" }) {
20891
20891
  item.media_url && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video bg-ods-bg", children: item.media_type === "video" || item.media_type === "demo" ? (
20892
20892
  // <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
20893
20893
  // fit="cover" crops to the aspect-video cell.
20894
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
20894
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
20895
20895
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20896
20896
  _chunkWLSFBRT5cjs.next_image_default,
20897
20897
  {
@@ -21024,7 +21024,7 @@ var SelectButton = _react2.default.forwardRef(
21024
21024
  }
21025
21025
  )
21026
21026
  ] }),
21027
- tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
21027
+ tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
21028
21028
  selected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckCircleIcon, { className: "size-4 shrink-0 text-ods-accent md:size-6" })
21029
21029
  ]
21030
21030
  }
@@ -21810,7 +21810,7 @@ function VideoBitesDisplay({
21810
21810
  filterPublished = true,
21811
21811
  showTitle = true
21812
21812
  }) {
21813
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
21813
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
21814
21814
  }
21815
21815
 
21816
21816
  // src/components/features/walkthrough-video.tsx
@@ -21879,7 +21879,7 @@ function WalkthroughVideo({
21879
21879
  if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
21880
21880
  };
21881
21881
  }, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId]);
21882
- const hydrated = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
21882
+ const hydrated = _chunkVYQNM75Rcjs.useIsHydrated.call(void 0, );
21883
21883
  const previewSuppressed = _react.useMemo.call(void 0, () => {
21884
21884
  if (!hydrated) return false;
21885
21885
  try {
@@ -22276,7 +22276,7 @@ function WalkthroughVideo({
22276
22276
  },
22277
22277
  children: [
22278
22278
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22279
- _chunkRKGOVTXZcjs.VideoHoverPreviewSurface,
22279
+ _chunkVYQNM75Rcjs.VideoHoverPreviewSurface,
22280
22280
  {
22281
22281
  url: video.mainVideoUrl || "",
22282
22282
  posterUrl: video.posterUrl,
@@ -22299,7 +22299,7 @@ function WalkthroughVideo({
22299
22299
  `card-${embedUrlKey}`
22300
22300
  ) }),
22301
22301
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22302
- _chunkRKGOVTXZcjs.CardHitLayer,
22302
+ _chunkVYQNM75Rcjs.CardHitLayer,
22303
22303
  {
22304
22304
  label: video.title ? `${label}: ${video.title}` : label,
22305
22305
  onPointerDown: pausePreviewNow,
@@ -22308,7 +22308,7 @@ function WalkthroughVideo({
22308
22308
  }
22309
22309
  ),
22310
22310
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "pointer-events-none absolute bottom-[var(--spacing-system-xsf)] left-[var(--spacing-system-xsf)] z-20 flex max-w-[calc(100%-2*var(--spacing-system-xsf))] items-center gap-[var(--spacing-system-xsf)] rounded-full bg-ods-overlay py-[var(--spacing-system-xxs)] pl-[var(--spacing-system-xxs)] pr-[var(--spacing-system-sf)] text-ods-text-primary text-h6", children: [
22311
- presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
22311
+ presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
22312
22312
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: summaryTitle || label })
22313
22313
  ] }),
22314
22314
  showBigUnmute && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -22321,7 +22321,7 @@ function WalkthroughVideo({
22321
22321
  onPointerDown: (e) => e.stopPropagation(),
22322
22322
  onClick: onUnmuteOrPlay,
22323
22323
  className: "absolute inset-0 z-30 m-auto hidden sm:inline-flex",
22324
- children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoPlayBadge, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoUnmuteGlyph, {})
22324
+ children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.VideoPlayBadge, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.VideoUnmuteGlyph, {})
22325
22325
  }
22326
22326
  ),
22327
22327
  showPlaybackControls && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "absolute left-[var(--spacing-system-xsf)] top-[var(--spacing-system-xsf)] z-30 flex items-center gap-[var(--spacing-system-xxs)]", children: [
@@ -22414,7 +22414,7 @@ function WalkthroughVideo({
22414
22414
  children: [
22415
22415
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
22416
22416
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22417
- _chunkRKGOVTXZcjs.Video,
22417
+ _chunkVYQNM75Rcjs.Video,
22418
22418
  {
22419
22419
  kind: video.youtubeUrl ? "youtube" : "file",
22420
22420
  url: video.youtubeUrl || video.mainVideoUrl,
@@ -22465,7 +22465,7 @@ function InlineWalkthroughVideo(props) {
22465
22465
  var _reactquery = require('@tanstack/react-query');
22466
22466
  function useWalkthroughVideo(opts) {
22467
22467
  const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
22468
- const captions = _chunkRKGOVTXZcjs.useCaptions.call(void 0, );
22468
+ const captions = _chunkVYQNM75Rcjs.useCaptions.call(void 0, );
22469
22469
  const query = _reactquery.useQuery.call(void 0, {
22470
22470
  queryKey: ["walkthrough-video", endpoint],
22471
22471
  enabled,
@@ -22663,7 +22663,7 @@ function VideoSourceSelector({
22663
22663
  }
22664
22664
  function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
22665
22665
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
22666
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: videoUrl }) }),
22666
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "file", url: videoUrl }) }),
22667
22667
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22668
22668
  "button",
22669
22669
  {
@@ -23187,7 +23187,7 @@ function HighlightVideoSection({
23187
23187
  // Default simple preview — the <Video> SSOT (MuxPlayer) plays
23188
23188
  // MP4 and Mux HLS alike; aspect-video box reserves the height.
23189
23189
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
23190
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
23190
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
23191
23191
  onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
23192
23192
  "button",
23193
23193
  {
@@ -23923,7 +23923,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
23923
23923
  ] });
23924
23924
  };
23925
23925
  var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
23926
- const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
23926
+ const { innerRef, containerStyle } = _chunkVYQNM75Rcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
23927
23927
  const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
23928
23928
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
23929
23929
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -24091,7 +24091,7 @@ function WaitlistForm({
24091
24091
  const { toast } = _chunkLEISUAHFcjs.useToast.call(void 0, );
24092
24092
  const { honeypotInputProps, getSignals, resetSignals } = _chunkLEISUAHFcjs.useHumanitySignals.call(void 0, );
24093
24093
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
24094
- const isClient = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
24094
+ const isClient = _chunkVYQNM75Rcjs.useIsHydrated.call(void 0, );
24095
24095
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
24096
24096
  const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
24097
24097
  const isMailDomainGeneric = hasGenericEmailDomain(email);
@@ -24895,7 +24895,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
24895
24895
  "data-state": open ? "open" : "closed",
24896
24896
  className: _chunkPRPZBXWZcjs.cn.call(void 0,
24897
24897
  "absolute inset-0 z-[102] outline-none data-[state=closed]:pointer-events-none data-[state=open]:pointer-events-auto data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
24898
- _chunkRKGOVTXZcjs.OVERLAY_BACKDROP_CLASS,
24898
+ _chunkVYQNM75Rcjs.OVERLAY_BACKDROP_CLASS,
24899
24899
  // Persist mode only: hold the fade-out's final (transparent) frame
24900
24900
  // so the backdrop doesn't snap back to opacity 1 and dim the whole
24901
24901
  // content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
@@ -24971,11 +24971,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
24971
24971
  }
24972
24972
  );
24973
24973
  AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
24974
- var AppLayoutDrawerHeader = _chunkRKGOVTXZcjs.DrawerHeader;
24975
- var AppLayoutDrawerTitle = _chunkRKGOVTXZcjs.DrawerTitle;
24976
- var AppLayoutDrawerDescription = _chunkRKGOVTXZcjs.DrawerDescription;
24977
- var AppLayoutDrawerBody = _chunkRKGOVTXZcjs.DrawerBody;
24978
- var AppLayoutDrawerFooter = _chunkRKGOVTXZcjs.DrawerFooter;
24974
+ var AppLayoutDrawerHeader = _chunkVYQNM75Rcjs.DrawerHeader;
24975
+ var AppLayoutDrawerTitle = _chunkVYQNM75Rcjs.DrawerTitle;
24976
+ var AppLayoutDrawerDescription = _chunkVYQNM75Rcjs.DrawerDescription;
24977
+ var AppLayoutDrawerBody = _chunkVYQNM75Rcjs.DrawerBody;
24978
+ var AppLayoutDrawerFooter = _chunkVYQNM75Rcjs.DrawerFooter;
24979
24979
 
24980
24980
  // src/components/features/notifications/notification-tile.tsx
24981
24981
 
@@ -25063,7 +25063,7 @@ function NotificationTile({
25063
25063
  }
25064
25064
  ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkLEISUAHFcjs.dotColorByVariant[accentVariant]) }))) }),
25065
25065
  type ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "min-w-0 flex-1 truncate text-h5", typeColorByVariant[accentVariant]), title: type, children: type }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1" }),
25066
- !isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkRKGOVTXZcjs.formatTicketRelativeTime.call(void 0, createdAtIso) }) : null,
25066
+ !isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkVYQNM75Rcjs.formatTicketRelativeTime.call(void 0, createdAtIso) }) : null,
25067
25067
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
25068
25068
  {
25069
25069
  active: isLive,
@@ -25160,7 +25160,7 @@ function NotificationDrawer({
25160
25160
  const unreadNotifications = notifications.filter((n) => !n.read);
25161
25161
  const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
25162
25162
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-m)] pt-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25163
- _chunkRKGOVTXZcjs.DrawerTitle,
25163
+ _chunkVYQNM75Rcjs.DrawerTitle,
25164
25164
  {
25165
25165
  hideClose: true,
25166
25166
  className: "truncate",
@@ -25219,8 +25219,8 @@ function NotificationDrawer({
25219
25219
  }
25220
25220
  ) });
25221
25221
  }
25222
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25223
- _chunkRKGOVTXZcjs.DrawerContent,
25222
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25223
+ _chunkVYQNM75Rcjs.DrawerContent,
25224
25224
  {
25225
25225
  side: "right",
25226
25226
  "aria-describedby": void 0,
@@ -25495,13 +25495,13 @@ function getApprovalMeta(notification) {
25495
25495
  function resolutionToStatus(resolution) {
25496
25496
  switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
25497
25497
  case "APPROVED":
25498
- return _chunkRKGOVTXZcjs.APPROVAL_STATUS.APPROVED;
25498
+ return _chunkVYQNM75Rcjs.APPROVAL_STATUS.APPROVED;
25499
25499
  case "REJECTED":
25500
- return _chunkRKGOVTXZcjs.APPROVAL_STATUS.REJECTED;
25500
+ return _chunkVYQNM75Rcjs.APPROVAL_STATUS.REJECTED;
25501
25501
  case "CANCELLED":
25502
- return _chunkRKGOVTXZcjs.APPROVAL_STATUS.CANCELLED;
25502
+ return _chunkVYQNM75Rcjs.APPROVAL_STATUS.CANCELLED;
25503
25503
  default:
25504
- return _chunkRKGOVTXZcjs.APPROVAL_STATUS.PENDING;
25504
+ return _chunkVYQNM75Rcjs.APPROVAL_STATUS.PENDING;
25505
25505
  }
25506
25506
  }
25507
25507
  function approvalMetaToBatchData(approval) {
@@ -25541,7 +25541,7 @@ function ApprovalRequestNotificationTile({
25541
25541
  const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _580 => _580.resolution]));
25542
25542
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
25543
25543
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
25544
- const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded });
25544
+ const { innerRef, containerStyle } = _chunkVYQNM75Rcjs.useCollapsible.call(void 0, { expanded });
25545
25545
  if (!approval || !batchData) return null;
25546
25546
  const tileNotification = {
25547
25547
  ...notification,
@@ -25594,7 +25594,7 @@ function ApprovalRequestNotificationTile({
25594
25594
  }
25595
25595
  )
25596
25596
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
25597
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ApprovalStatusTag, { status }),
25597
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ApprovalStatusTag, { status }),
25598
25598
  approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
25599
25599
  "by ",
25600
25600
  approval.resolvedByName
@@ -25612,12 +25612,12 @@ function ApprovalRequestNotificationTile({
25612
25612
  "aria-expanded": expanded,
25613
25613
  "aria-label": toggleLabel,
25614
25614
  className: "ml-auto w-6 shrink-0 px-0 md:w-8",
25615
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ExpandChevron, { expanded })
25615
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.ExpandChevron, { expanded })
25616
25616
  }
25617
25617
  )
25618
25618
  ] }),
25619
25619
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25620
- _chunkRKGOVTXZcjs.ApprovalBatchMessage,
25620
+ _chunkVYQNM75Rcjs.ApprovalBatchMessage,
25621
25621
  {
25622
25622
  data: batchData,
25623
25623
  showExecutionStatus: false,
@@ -25948,7 +25948,7 @@ var STATUS_TAG_SKIN = "gap-[var(--spacing-system-xs)] font-mono font-medium uppe
25948
25948
  function StatusTag({ status }) {
25949
25949
  if (status === "tracking") {
25950
25950
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25951
- _chunkRKGOVTXZcjs.Tag,
25951
+ _chunkVYQNM75Rcjs.Tag,
25952
25952
  {
25953
25953
  variant: "success",
25954
25954
  className: STATUS_TAG_SKIN,
@@ -25958,9 +25958,9 @@ function StatusTag({ status }) {
25958
25958
  );
25959
25959
  }
25960
25960
  if (status === "paused") {
25961
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
25961
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
25962
25962
  }
25963
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
25963
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
25964
25964
  }
25965
25965
  function LastEntryRow({ entry, onClick }) {
25966
25966
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] border-b border-ods-border bg-ods-bg px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] last:border-b-0", children: [
@@ -26129,7 +26129,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
26129
26129
  "data-state": isOpen ? "open" : "closed",
26130
26130
  className: _chunkPRPZBXWZcjs.cn.call(void 0,
26131
26131
  layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
26132
- _chunkRKGOVTXZcjs.OVERLAY_BACKDROP_CLASS,
26132
+ _chunkVYQNM75Rcjs.OVERLAY_BACKDROP_CLASS,
26133
26133
  "data-[state=open]:animate-in data-[state=open]:fade-in-0",
26134
26134
  "data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
26135
26135
  )
@@ -26283,7 +26283,7 @@ function BoardColumnHeader({
26283
26283
  }) {
26284
26284
  const count = _nullishCoalesce(column.total, () => ( column.tickets.length));
26285
26285
  const tagStatus = _nullishCoalesce(column.statusKey, () => ( column.id));
26286
- const useStatusVariant = _chunkRKGOVTXZcjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
26286
+ const useStatusVariant = _chunkVYQNM75Rcjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
26287
26287
  if (collapsed) {
26288
26288
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
26289
26289
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -26298,7 +26298,7 @@ function BoardColumnHeader({
26298
26298
  }
26299
26299
  ),
26300
26300
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26301
- _chunkRKGOVTXZcjs.TicketStatusTag,
26301
+ _chunkVYQNM75Rcjs.TicketStatusTag,
26302
26302
  {
26303
26303
  status: tagStatus,
26304
26304
  label: column.label,
@@ -26311,7 +26311,7 @@ function BoardColumnHeader({
26311
26311
  }
26312
26312
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
26313
26313
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
26314
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
26314
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
26315
26315
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5", style: useStatusVariant ? void 0 : { color: column.color }, children: count })
26316
26316
  ] }),
26317
26317
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
@@ -26462,7 +26462,7 @@ function holdMoveDragEffect(element) {
26462
26462
 
26463
26463
  function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
26464
26464
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
26465
- const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded });
26465
+ const { innerRef, containerStyle } = _chunkVYQNM75Rcjs.useCollapsible.call(void 0, { expanded });
26466
26466
  const isAdmin = pendingApproval.approvalType === "ADMIN";
26467
26467
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
26468
26468
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -26491,7 +26491,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
26491
26491
  }
26492
26492
  ),
26493
26493
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: "pt-[var(--spacing-system-xs)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26494
- _chunkRKGOVTXZcjs.ApprovalBatchMessage,
26494
+ _chunkVYQNM75Rcjs.ApprovalBatchMessage,
26495
26495
  {
26496
26496
  className: "mb-0",
26497
26497
  data: {
@@ -26563,7 +26563,7 @@ var ACTIVITY_DEFAULT_LABEL = {
26563
26563
  var TICKET_CARD_SHELL = "relative flex flex-col gap-[var(--spacing-system-sf)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-sf)] select-none text-left";
26564
26564
  function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
26565
26565
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
26566
- const newMessageTextColor = columnColor ? _chunkRKGOVTXZcjs.getReadableTextColor.call(void 0, columnColor) : void 0;
26566
+ const newMessageTextColor = columnColor ? _chunkVYQNM75Rcjs.getReadableTextColor.call(void 0, columnColor) : void 0;
26567
26567
  const showDeviceRow = !!(_optionalChain([ticket, 'access', _616 => _616.deviceHostnames, 'optionalAccess', _617 => _617.length]) || ticket.organizationName);
26568
26568
  const deviceText = [_optionalChain([ticket, 'access', _618 => _618.deviceHostnames, 'optionalAccess', _619 => _619.join, 'call', _620 => _620(", ")]), ticket.organizationName].filter(Boolean).join(", ");
26569
26569
  const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _621 => _621.assignees, 'optionalAccess', _622 => _622.length]) || renderAssignSlot);
@@ -26602,8 +26602,8 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
26602
26602
  ] })
26603
26603
  ] }) : null
26604
26604
  ] }) : null;
26605
- const timestampLabel = ticket.createdAt ? _chunkRKGOVTXZcjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
26606
- const tooltipLabel = ticket.createdAt ? _chunkRKGOVTXZcjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
26605
+ const timestampLabel = ticket.createdAt ? _chunkVYQNM75Rcjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
26606
+ const tooltipLabel = ticket.createdAt ? _chunkVYQNM75Rcjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
26607
26607
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
26608
26608
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-sf)]", children: [
26609
26609
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-zero)]", title: ticket.title, children: [
@@ -26616,9 +26616,9 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
26616
26616
  rightSection
26617
26617
  ] }),
26618
26618
  _optionalChain([ticket, 'access', _625 => _625.tags, 'optionalAccess', _626 => _626.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
26619
- timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
26620
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto truncate text-ods-text-secondary text-h6", children: timestampLabel }) }),
26621
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { children: tooltipLabel })
26619
+ timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVYQNM75Rcjs.Tooltip, { children: [
26620
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto truncate text-ods-text-secondary text-h6", children: timestampLabel }) }),
26621
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.TooltipContent, { children: tooltipLabel })
26622
26622
  ] }) }),
26623
26623
  ticket.escalatedByUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] text-ods-open-yellow text-h6", children: [
26624
26624
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.UserCheckIcon, { className: "size-4 shrink-0" }),
@@ -26638,7 +26638,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
26638
26638
  }
26639
26639
  ),
26640
26640
  showNewMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26641
- _chunkRKGOVTXZcjs.Tag,
26641
+ _chunkVYQNM75Rcjs.Tag,
26642
26642
  {
26643
26643
  label: "New Message",
26644
26644
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.MessagesIcon, { size: 16, color: newMessageTextColor }),
@@ -26852,8 +26852,8 @@ function TicketTagRow({ tags }) {
26852
26852
  const visible = tags.slice(0, MAX_VISIBLE_TAGS);
26853
26853
  const hidden = tags.length - visible.length;
26854
26854
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-8 flex-wrap items-start gap-[var(--spacing-system-xxs)] overflow-clip", children: [
26855
- visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: tag }, tag)),
26856
- hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: `+${hidden}` })
26855
+ visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: "outline", label: tag }, tag)),
26856
+ hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVYQNM75Rcjs.Tag, { variant: "outline", label: `+${hidden}` })
26857
26857
  ] });
26858
26858
  }
26859
26859
 
@@ -28410,4 +28410,4 @@ function SortableRow({
28410
28410
 
28411
28411
 
28412
28412
  exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.Autocomplete = Autocomplete; 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.InfoHint = InfoHint; exports.Field = Field; 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.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.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.StatusIndicator = StatusIndicator; 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.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; 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.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; 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.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.BenefitCard = BenefitCard; 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.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.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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; 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.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.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; 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.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; 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.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.TableHeader = TableHeader; exports.TableCell = TableCell; exports.COMPACT_ROW_MIN_HEIGHT_PX = COMPACT_ROW_MIN_HEIGHT_PX; 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.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.DataTableEmpty = DataTableEmpty; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; 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.FilterPillRow = FilterPillRow;
28413
- //# sourceMappingURL=chunk-FEVLXRTC.cjs.map
28413
+ //# sourceMappingURL=chunk-JHKKXU2F.cjs.map