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

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 (114) hide show
  1. package/dist/chat-protocol/events.d.ts +4 -1
  2. package/dist/chat-protocol/events.d.ts.map +1 -1
  3. package/dist/chat-protocol/index.cjs +90 -40
  4. package/dist/chat-protocol/nats-decoder.d.ts.map +1 -1
  5. package/dist/chat-protocol/nats-decoder.js +5 -1
  6. package/dist/chat-protocol/policy-review.d.ts +18 -0
  7. package/dist/chat-protocol/policy-review.d.ts.map +1 -0
  8. package/dist/chat-protocol/policy-review.js +55 -0
  9. package/dist/{chunk-ZDSC3GFX.cjs → chunk-2NGW73T2.cjs} +3 -3
  10. package/dist/{chunk-2QZUTNL3.cjs → chunk-2WZHNMQY.cjs} +67 -67
  11. package/dist/{chunk-R5JPZ6TY.cjs → chunk-5SEJEBAB.cjs} +8 -8
  12. package/dist/{chunk-TX4NTH22.cjs → chunk-B6D4WWKD.cjs} +36 -36
  13. package/dist/{chunk-FXLROQUT.cjs → chunk-CDW6JTAQ.cjs} +442 -459
  14. package/dist/{chunk-5PIR77V5.cjs → chunk-DN227KZH.cjs} +4 -4
  15. package/dist/{chunk-QJER2ZNA.cjs → chunk-FGSN5UNY.cjs} +3 -3
  16. package/dist/{chunk-ZGEWT3SF.cjs → chunk-HXURNKXI.cjs} +3 -3
  17. package/dist/{chunk-FRG724DU.cjs → chunk-KRTTH3ET.cjs} +4 -4
  18. package/dist/{chunk-YJZ7R3W5.cjs → chunk-KXFIYO4O.cjs} +8 -8
  19. package/dist/{chunk-4YBS4HIO.cjs → chunk-LM7EL3UQ.cjs} +444 -27
  20. package/dist/{chunk-LGYPCUHO.cjs → chunk-NQEPLUUW.cjs} +21 -21
  21. package/dist/{chunk-OHHDX3Z4.cjs → chunk-ODMZSAIY.cjs} +36 -36
  22. package/dist/{chunk-VRWBJL7B.cjs → chunk-OUP7L3U5.cjs} +50 -50
  23. package/dist/{chunk-5CBI2ZYV.cjs → chunk-PJNEBSP5.cjs} +5 -5
  24. package/dist/{chunk-6AJYGXXS.cjs → chunk-PPCRLSVR.cjs} +11 -11
  25. package/dist/{chunk-SA2NNWIJ.cjs → chunk-QCSA7GIX.cjs} +17 -62
  26. package/dist/{chunk-JWIITCVB.cjs → chunk-SPKAXETT.cjs} +42 -42
  27. package/dist/{chunk-CAGNWDVJ.cjs → chunk-U4RTWH5D.cjs} +42 -42
  28. package/dist/{chunk-IHY7E4EX.cjs → chunk-UFGPLXH6.cjs} +4 -4
  29. package/dist/{chunk-7ICHJVAT.cjs → chunk-UQK6J3ZS.cjs} +13 -13
  30. package/dist/{chunk-S3QXLD4X.cjs → chunk-VCFQHPOO.cjs} +37 -3
  31. package/dist/{chunk-IPGGSFR7.cjs → chunk-VU6N3NZS.cjs} +6 -6
  32. package/dist/{chunk-GAYLAA3L.cjs → chunk-VXIZCUNZ.cjs} +61 -61
  33. package/dist/{chunk-3W4ASAXN.cjs → chunk-WYROOMUZ.cjs} +2 -2
  34. package/dist/{chunk-XKOL5CNU.cjs → chunk-ZEPEFKHA.cjs} +811 -932
  35. package/dist/{cloud-tenants-TVB3DT3J.cjs → cloud-tenants-XH6GV4EI.cjs} +12 -13
  36. package/dist/components/case-studies/index.cjs +24 -25
  37. package/dist/components/chat/approval-batch-message.d.ts +5 -0
  38. package/dist/components/chat/approval-batch-message.d.ts.map +1 -1
  39. package/dist/components/chat/approval-batch-message.js +36 -10
  40. package/dist/components/chat/index.cjs +8 -9
  41. package/dist/components/chat/policy-review.d.ts +27 -0
  42. package/dist/components/chat/policy-review.d.ts.map +1 -0
  43. package/dist/components/chat/policy-review.js +67 -0
  44. package/dist/components/chat/stream/message-mutations.d.ts.map +1 -1
  45. package/dist/components/chat/stream/message-mutations.js +4 -1
  46. package/dist/components/chat/tool-execution-display.d.ts.map +1 -1
  47. package/dist/components/chat/tool-execution-display.js +16 -5
  48. package/dist/components/chat/types/message.types.d.ts +40 -2
  49. package/dist/components/chat/types/message.types.d.ts.map +1 -1
  50. package/dist/components/chat/utils/extract-incomplete-message-state.d.ts.map +1 -1
  51. package/dist/components/chat/utils/extract-incomplete-message-state.js +2 -0
  52. package/dist/components/chat/utils/message-segment-accumulator.d.ts.map +1 -1
  53. package/dist/components/chat/utils/message-segment-accumulator.js +3 -0
  54. package/dist/components/chat/utils/process-historical-messages.d.ts +2 -2
  55. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  56. package/dist/components/chat/utils/process-historical-messages.js +7 -1
  57. package/dist/components/contact/index.cjs +13 -14
  58. package/dist/components/docs/index.cjs +16 -17
  59. package/dist/components/embeds/index.cjs +13 -14
  60. package/dist/components/faq/index.cjs +14 -15
  61. package/dist/components/features/approval-level.d.ts +6 -12
  62. package/dist/components/features/approval-level.d.ts.map +1 -1
  63. package/dist/components/features/approval-level.js +45 -55
  64. package/dist/components/features/index.cjs +16 -16
  65. package/dist/components/features/notifications/approval-request-notification-tile.d.ts.map +1 -1
  66. package/dist/components/features/notifications/approval-request-notification-tile.js +71 -48
  67. package/dist/components/features/notifications/types.d.ts +2 -0
  68. package/dist/components/features/notifications/types.d.ts.map +1 -1
  69. package/dist/components/features/notifications/types.js +3 -1
  70. package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
  71. package/dist/components/features/policy-configuration-panel.js +75 -64
  72. package/dist/components/help-center-pages/index.cjs +78 -79
  73. package/dist/components/index.cjs +57 -59
  74. package/dist/components/meeting-scheduler/index.cjs +61 -61
  75. package/dist/components/navigation/index.cjs +15 -16
  76. package/dist/components/onboarding-guides/index.cjs +14 -15
  77. package/dist/components/product-demo/index.cjs +23 -24
  78. package/dist/components/tickets/index.cjs +17 -18
  79. package/dist/components/ui/file-manager/index.cjs +8 -9
  80. package/dist/components/ui/index.cjs +16 -18
  81. package/dist/components/ui/radio-group.d.ts.map +1 -1
  82. package/dist/components/ui/radio-group.js +8 -2
  83. package/dist/components/ui/tab-selector.d.ts +7 -1
  84. package/dist/components/ui/tab-selector.d.ts.map +1 -1
  85. package/dist/components/ui/tab-selector.js +22 -3
  86. package/dist/{devices-NGCTSXIU.cjs → devices-7PT6MPJI.cjs} +13 -14
  87. package/dist/{embeddable-chat-322NDFP5.cjs → embeddable-chat-5NY76K7K.cjs} +84 -85
  88. package/dist/index.cjs +23 -25
  89. package/dist/{knowledge-75PO5DYS.cjs → knowledge-J6N7IEVI.cjs} +13 -14
  90. package/dist/{logs-PZESOAIG.cjs → logs-D6KQP2BX.cjs} +19 -20
  91. package/dist/{policies-6XNMBFWO.cjs → policies-J7MCOL3C.cjs} +16 -17
  92. package/dist/{remote-session-Q2FIBCGT.cjs → remote-session-PXHA5KFK.cjs} +8 -9
  93. package/dist/{scripts-B3JW6TPF.cjs → scripts-VURXIHVS.cjs} +19 -20
  94. package/dist/{software-update-NWP542J7.cjs → software-update-6SHUBDIE.cjs} +16 -17
  95. package/dist/{tickets-board-7FLGQEHF.cjs → tickets-board-NLCN7WNX.cjs} +9 -9
  96. package/package.json +1 -1
  97. package/src/chat-protocol/events.ts +4 -1
  98. package/src/chat-protocol/nats-decoder.ts +4 -0
  99. package/src/chat-protocol/policy-review.ts +71 -0
  100. package/src/components/chat/approval-batch-message.tsx +47 -10
  101. package/src/components/chat/policy-review.tsx +90 -0
  102. package/src/components/chat/stream/message-mutations.ts +4 -0
  103. package/src/components/chat/tool-execution-display.tsx +23 -4
  104. package/src/components/chat/types/message.types.ts +42 -2
  105. package/src/components/chat/utils/extract-incomplete-message-state.ts +2 -0
  106. package/src/components/chat/utils/message-segment-accumulator.ts +3 -0
  107. package/src/components/chat/utils/process-historical-messages.ts +14 -3
  108. package/src/components/features/approval-level.tsx +74 -78
  109. package/src/components/features/notifications/approval-request-notification-tile.tsx +75 -50
  110. package/src/components/features/notifications/types.ts +4 -0
  111. package/src/components/features/policy-configuration-panel.tsx +100 -83
  112. package/src/components/ui/radio-group.tsx +20 -2
  113. package/src/components/ui/tab-selector.tsx +26 -3
  114. package/dist/chunk-N3MBQRCQ.cjs +0 -41
@@ -12,14 +12,14 @@ var _chunkOT6P57ZScjs = require('./chunk-OT6P57ZS.cjs');
12
12
 
13
13
 
14
14
 
15
- var _chunk3W4ASAXNcjs = require('./chunk-3W4ASAXN.cjs');
15
+ var _chunkWYROOMUZcjs = require('./chunk-WYROOMUZ.cjs');
16
16
 
17
17
 
18
18
 
19
19
 
20
20
 
21
21
 
22
- var _chunkYJZ7R3W5cjs = require('./chunk-YJZ7R3W5.cjs');
22
+ var _chunkKXFIYO4Ocjs = require('./chunk-KXFIYO4O.cjs');
23
23
 
24
24
 
25
25
  var _chunk2NETL2MScjs = require('./chunk-2NETL2MS.cjs');
@@ -127,14 +127,14 @@ var _chunkGG466XFQcjs = require('./chunk-GG466XFQ.cjs');
127
127
 
128
128
 
129
129
 
130
- var _chunkZGEWT3SFcjs = require('./chunk-ZGEWT3SF.cjs');
130
+ var _chunkHXURNKXIcjs = require('./chunk-HXURNKXI.cjs');
131
131
 
132
132
 
133
133
 
134
134
 
135
135
 
136
136
 
137
- var _chunkS3QXLD4Xcjs = require('./chunk-S3QXLD4X.cjs');
137
+ var _chunkVCFQHPOOcjs = require('./chunk-VCFQHPOO.cjs');
138
138
 
139
139
 
140
140
  var _chunk2XCORRJVcjs = require('./chunk-2XCORRJV.cjs');
@@ -281,7 +281,7 @@ var AUTOCOMPLETE_OPTION_ROW_CLASS = "flex min-h-11 items-center border-b border-
281
281
  var AUTOCOMPLETE_LOADING_ROWS = 5;
282
282
  var AUTOCOMPLETE_ANCHOR_SHAPE_CLASS = "rounded-[6px]";
283
283
  function AutocompleteSkeleton({ label, labelVariant, className }) {
284
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZGEWT3SFcjs.FieldWrapper, { label, labelVariant, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: _chunk63A4GZMBcjs.cn.call(void 0, "w-full", AUTOCOMPLETE_ANCHOR_SHAPE_CLASS, AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS) }) });
284
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHXURNKXIcjs.FieldWrapper, { label, labelVariant, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: _chunk63A4GZMBcjs.cn.call(void 0, "w-full", AUTOCOMPLETE_ANCHOR_SHAPE_CLASS, AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS) }) });
285
285
  }
286
286
  function AutocompleteInner(props, ref) {
287
287
  const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
@@ -780,7 +780,7 @@ function AutocompleteInner(props, ref) {
780
780
  if (inScope || fieldLoading)
781
781
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AutocompleteSkeleton, { label, labelVariant, className });
782
782
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
783
- _chunkZGEWT3SFcjs.FieldWrapper,
783
+ _chunkHXURNKXIcjs.FieldWrapper,
784
784
  {
785
785
  label,
786
786
  labelVariant,
@@ -790,7 +790,7 @@ function AutocompleteInner(props, ref) {
790
790
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", ref: containerRef, children: [
791
791
  popover,
792
792
  multiple && showHiddenTags && hiddenTagsCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
793
- _chunk3W4ASAXNcjs.HiddenTagsPopup,
793
+ _chunkWYROOMUZcjs.HiddenTagsPopup,
794
794
  {
795
795
  ref: hiddenTagsPopupRef,
796
796
  items: hiddenTags,
@@ -869,7 +869,7 @@ var SelectTrigger = _react.forwardRef.call(void 0, (allProps, ref) => {
869
869
  ),
870
870
  ...props,
871
871
  children: [
872
- inScope ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZGEWT3SFcjs.FieldValueSkeleton, {}) : children,
872
+ inScope ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHXURNKXIcjs.FieldValueSkeleton, {}) : children,
873
873
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
874
874
  _chunkSKI6NKOEcjs.Chevron02DownIcon,
875
875
  {
@@ -883,7 +883,7 @@ var SelectTrigger = _react.forwardRef.call(void 0, (allProps, ref) => {
883
883
  ]
884
884
  }
885
885
  );
886
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZGEWT3SFcjs.FieldWrapper, { label, labelVariant, error, errorSlot, children: trigger });
886
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHXURNKXIcjs.FieldWrapper, { label, labelVariant, error, errorSlot, children: trigger });
887
887
  });
888
888
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
889
889
  var SelectScrollUpButton = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -907,7 +907,7 @@ var SelectScrollDownButton = _react.forwardRef.call(void 0, ({ className, ...pro
907
907
  ));
908
908
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
909
909
  var SelectContent = _react.forwardRef.call(void 0, ({ className, children, position = "popper", ...props }, ref) => {
910
- const container = _chunkS3QXLD4Xcjs.usePortalContainer.call(void 0, );
910
+ const container = _chunkVCFQHPOOcjs.usePortalContainer.call(void 0, );
911
911
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
912
912
  SelectPrimitive.Content,
913
913
  {
@@ -1076,9 +1076,9 @@ function renderActionButton(action, opts = {}) {
1076
1076
  }
1077
1077
  const button = renderRawActionButton(action, opts);
1078
1078
  if (!action.tooltip) return button;
1079
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYJZ7R3W5cjs.Tooltip, { children: [
1080
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.TooltipTrigger, { asChild: true, children: button }),
1081
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.TooltipContent, { children: action.tooltip })
1079
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkKXFIYO4Ocjs.Tooltip, { children: [
1080
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.TooltipTrigger, { asChild: true, children: button }),
1081
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.TooltipContent, { children: action.tooltip })
1082
1082
  ] }) });
1083
1083
  }
1084
1084
  function renderRawActionButton(action, opts = {}) {
@@ -1102,7 +1102,7 @@ function renderRawActionButton(action, opts = {}) {
1102
1102
  }
1103
1103
  if (action.submenu && action.submenu.length > 0) {
1104
1104
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1105
- _chunkYJZ7R3W5cjs.ActionsMenuDropdown,
1105
+ _chunkKXFIYO4Ocjs.ActionsMenuDropdown,
1106
1106
  {
1107
1107
  groups: [{ items: action.submenu }],
1108
1108
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -1221,9 +1221,9 @@ function IconButtonsVariant({
1221
1221
  selector,
1222
1222
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action, { inert: loading }) }, actionKey(action, idx))),
1223
1223
  unknownSet && desktopActions.length === 0 && !hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UnknownActionSkeleton, { shape: "icon" }),
1224
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: menuActions, loading })
1224
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: menuActions, loading })
1225
1225
  ] }),
1226
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex content-md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true, inert: loading }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, loading }) : unknownSet ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UnknownActionSkeleton, { shape: "icon" }) : null })
1226
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex content-md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true, inert: loading }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: mobileMenuGroups, loading }) : unknownSet ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UnknownActionSkeleton, { shape: "icon" }) : null })
1227
1227
  ] });
1228
1228
  }
1229
1229
  function PrimaryButtonsVariant({
@@ -1267,7 +1267,7 @@ function MenuPrimaryVariant({
1267
1267
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1268
1268
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1269
1269
  selector,
1270
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: menuActions, loading }),
1270
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: menuActions, loading }),
1271
1271
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }, { inert: loading }) }, `desktop-${actionKey(action, idx)}`)),
1272
1272
  unknownSet && desktopActions.length === 0 && !hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UnknownActionSkeleton, { shape: "icon" })
1273
1273
  ] }),
@@ -1275,7 +1275,7 @@ function MenuPrimaryVariant({
1275
1275
  // The selector rides into the menu as its header row: on mobile the
1276
1276
  // title row has no room for it, and hiding it entirely (what
1277
1277
  // `icon-buttons` does) would leave no way to switch views at all.
1278
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector, loading })
1278
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector, loading })
1279
1279
  ) : unknownSet ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UnknownActionSkeleton, { shape: "icon" }) : null })
1280
1280
  ] });
1281
1281
  }
@@ -1285,7 +1285,7 @@ function CompactPrimaryActions({ actions, loading: loadingProp }) {
1285
1285
  const fold = foldable.length > 1;
1286
1286
  const inline = fold ? actions.filter((action) => !foldable.includes(action)) : actions;
1287
1287
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1288
- fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }], loading }),
1288
+ fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }], loading }),
1289
1289
  inline.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action, { inert: loading }) }, `compact-${actionKey(action, idx)}`))
1290
1290
  ] });
1291
1291
  }
@@ -1663,9 +1663,9 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1663
1663
  const faces = ordered.slice(0, max);
1664
1664
  const overflow = ordered.length - faces.length;
1665
1665
  const Chevron = open ? _chunk3MRRIHC2cjs.Chevron02UpIcon : _chunkSKI6NKOEcjs.Chevron02DownIcon;
1666
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkS3QXLD4Xcjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1666
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVCFQHPOOcjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1667
1667
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1668
- _chunkS3QXLD4Xcjs.DropdownMenuTrigger,
1668
+ _chunkVCFQHPOOcjs.DropdownMenuTrigger,
1669
1669
  {
1670
1670
  "aria-label": `In this session: ${ordered.map(viewerLabel).join(", ")}`,
1671
1671
  className: _chunk63A4GZMBcjs.cn.call(void 0,
@@ -1701,8 +1701,8 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1701
1701
  ]
1702
1702
  }
1703
1703
  ),
1704
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkS3QXLD4Xcjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1705
- _chunkS3QXLD4Xcjs.DropdownMenuItem,
1704
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1705
+ _chunkVCFQHPOOcjs.DropdownMenuItem,
1706
1706
  {
1707
1707
  className: _chunk63A4GZMBcjs.cn.call(void 0,
1708
1708
  "gap-[var(--spacing-system-xsf)] rounded-none border-b border-ods-border bg-ods-bg last:border-b-0",
@@ -2245,7 +2245,7 @@ function RemoteDesktopChatMessageRow({
2245
2245
  ),
2246
2246
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", as: "span", className: "w-12 shrink-0" }) : (
2247
2247
  // The time is in the viewer's zone, which a server render cannot know.
2248
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunk3W4ASAXNcjs.formatTime.call(void 0, sentAt) })
2248
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkWYROOMUZcjs.formatTime.call(void 0, sentAt) })
2249
2249
  )
2250
2250
  ] }),
2251
2251
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-3/4" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap text-ods-text-primary text-h4", children: body })
@@ -2311,7 +2311,7 @@ function RemoteDesktopChatPanel({
2311
2311
  message.id
2312
2312
  )) }) }),
2313
2313
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2314
- _chunk3W4ASAXNcjs.ChatInput,
2314
+ _chunkWYROOMUZcjs.ChatInput,
2315
2315
  {
2316
2316
  placeholder: "Enter your Message...",
2317
2317
  onSend,
@@ -2355,7 +2355,7 @@ function RemoteDesktopFullscreenToolbar({
2355
2355
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
2356
2356
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h6", children: deviceName }),
2357
2357
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2358
- _chunkYJZ7R3W5cjs.ActionsMenuDropdown,
2358
+ _chunkKXFIYO4Ocjs.ActionsMenuDropdown,
2359
2359
  {
2360
2360
  groups: displayMenuGroups,
2361
2361
  customTrigger: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", size: "small", type: "button", "aria-label": "Switch display", className: "shrink-0", children: [
@@ -2378,7 +2378,7 @@ function RemoteDesktopFullscreenToolbar({
2378
2378
  }
2379
2379
  ),
2380
2380
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2381
- _chunkYJZ7R3W5cjs.ActionsMenuDropdown,
2381
+ _chunkKXFIYO4Ocjs.ActionsMenuDropdown,
2382
2382
  {
2383
2383
  groups: actionsMenuGroups,
2384
2384
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2483,7 +2483,7 @@ function RemoteDesktopView({
2483
2483
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only content-md:not-sr-only", children: chatOpen ? "Close Chat" : "Open Chat" })
2484
2484
  }
2485
2485
  ),
2486
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYJZ7R3W5cjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2486
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKXFIYO4Ocjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2487
2487
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2488
2488
  _chunkFCZAUK4Dcjs.Button,
2489
2489
  {
@@ -2507,7 +2507,7 @@ function RemoteDesktopView({
2507
2507
  ] })
2508
2508
  ] }),
2509
2509
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2510
- _chunkYJZ7R3W5cjs.ActionsMenuDropdown,
2510
+ _chunkKXFIYO4Ocjs.ActionsMenuDropdown,
2511
2511
  {
2512
2512
  groups: displayMenuGroups,
2513
2513
  align: "start",
@@ -2654,9 +2654,9 @@ function KeepRecordingModal({
2654
2654
  if (!canKeep || isPending) return;
2655
2655
  onConfirm({ reason, description: reason === "OTHER" ? trimmed : null });
2656
2656
  };
2657
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose: isPending ? () => {
2657
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.Modal, { isOpen, onClose: isPending ? () => {
2658
2658
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2659
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Keep this recording" }) }),
2659
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalTitle, { children: "Keep this recording" }) }),
2660
2660
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2661
2661
  KeepNotice,
2662
2662
  {
@@ -2683,7 +2683,7 @@ function KeepRecordingModal({
2683
2683
  }
2684
2684
  ),
2685
2685
  reason === "OTHER" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2686
- _chunkZGEWT3SFcjs.Input,
2686
+ _chunkHXURNKXIcjs.Input,
2687
2687
  {
2688
2688
  "aria-label": "Reason description",
2689
2689
  value: description,
@@ -2694,7 +2694,7 @@ function KeepRecordingModal({
2694
2694
  }
2695
2695
  )
2696
2696
  ] }),
2697
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
2697
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.ModalFooter, { children: [
2698
2698
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2699
2699
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2700
2700
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2724,9 +2724,9 @@ function ReleaseKeepingModal({
2724
2724
  isPending = false,
2725
2725
  onConfirm
2726
2726
  }) {
2727
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose: isPending ? () => {
2727
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.Modal, { isOpen, onClose: isPending ? () => {
2728
2728
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2729
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Release Keeping" }) }),
2729
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalTitle, { children: "Release Keeping" }) }),
2730
2730
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] break-words text-ods-text-primary text-h4", children: [
2731
2731
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { children: [
2732
2732
  "Kept by ",
@@ -2743,7 +2743,7 @@ function ReleaseKeepingModal({
2743
2743
  ] })
2744
2744
  ] }),
2745
2745
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, KeepNotice, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkILWSAV64cjs.HourglassIcon, { size: 24, color: "currentColor" }), title: `It will expire on ${expiresOn}`, children: dueOn ? `It was due to expire on ${dueOn}. Releasing gives it 3 days' grace, and it shows amber until then. Whoever placed the Keep is reminded the day before it goes. Nothing is deleted now.` : "Nothing is deleted now." }),
2746
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
2746
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.ModalFooter, { children: [
2747
2747
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2748
2748
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2749
2749
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
@@ -2785,9 +2785,9 @@ function AssignTicketModal({
2785
2785
  if (ticketIds.length === 0 || isPending) return;
2786
2786
  onConfirm(ticketIds);
2787
2787
  };
2788
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose: isPending ? () => {
2788
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.Modal, { isOpen, onClose: isPending ? () => {
2789
2789
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2790
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Assign Ticket" }) }),
2790
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalTitle, { children: "Assign Ticket" }) }),
2791
2791
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2792
2792
  Autocomplete,
2793
2793
  {
@@ -2806,7 +2806,7 @@ function AssignTicketModal({
2806
2806
  disabled: isPending
2807
2807
  }
2808
2808
  ),
2809
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
2809
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.ModalFooter, { children: [
2810
2810
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2811
2811
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2812
2812
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2825,11 +2825,11 @@ function AssignTicketModal({
2825
2825
  ] });
2826
2826
  }
2827
2827
  function UnassignTicketModal({ isOpen, onClose, isPending = false, onConfirm }) {
2828
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose: isPending ? () => {
2828
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.Modal, { isOpen, onClose: isPending ? () => {
2829
2829
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2830
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Unassign Ticket" }) }),
2830
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWYROOMUZcjs.ModalTitle, { children: "Unassign Ticket" }) }),
2831
2831
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This Ticket will no longer be linked to this remote session. The ticket itself stays as it is, and you can assign it again anytime." }),
2832
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
2832
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWYROOMUZcjs.ModalFooter, { children: [
2833
2833
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2834
2834
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2835
2835
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "destructive", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Unassign" })
@@ -4,7 +4,7 @@
4
4
  var _chunk24I6RFVUcjs = require('./chunk-24I6RFVU.cjs');
5
5
 
6
6
 
7
- var _chunkFXLROQUTcjs = require('./chunk-FXLROQUT.cjs');
7
+ var _chunkCDW6JTAQcjs = require('./chunk-CDW6JTAQ.cjs');
8
8
 
9
9
 
10
10
  var _chunkUAI4VMEFcjs = require('./chunk-UAI4VMEF.cjs');
@@ -20,7 +20,7 @@ var _chunkGI3MMBP3cjs = require('./chunk-GI3MMBP3.cjs');
20
20
 
21
21
 
22
22
 
23
- var _chunkS3QXLD4Xcjs = require('./chunk-S3QXLD4X.cjs');
23
+ var _chunkVCFQHPOOcjs = require('./chunk-VCFQHPOO.cjs');
24
24
 
25
25
 
26
26
  var _chunkFCZAUK4Dcjs = require('./chunk-FCZAUK4D.cjs');
@@ -272,7 +272,7 @@ var DrawerContent = _react.forwardRef.call(void 0,
272
272
  ...props,
273
273
  children: [
274
274
  applyInlineSize ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
275
- _chunkFXLROQUTcjs.PanelResizeHandle,
275
+ _chunkCDW6JTAQcjs.PanelResizeHandle,
276
276
  {
277
277
  variant: "overlay",
278
278
  side: resolvedSide,
@@ -291,7 +291,7 @@ var DrawerContent = _react.forwardRef.call(void 0,
291
291
  ref: panelRef,
292
292
  className: _chunk63A4GZMBcjs.cn.call(void 0, drawerPanelVariants({ side, flush, size }), className, panelClassName),
293
293
  style: { ...sizeStyle, ...panelStyle },
294
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkS3QXLD4Xcjs.PortalContainerContext.Provider, { value: portalHost, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkS3QXLD4Xcjs.CollisionBoundaryContext.Provider, { value: null, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUAI4VMEFcjs.ViewportBreakpoints, { children }) }) })
294
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.PortalContainerContext.Provider, { value: portalHost, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.CollisionBoundaryContext.Provider, { value: null, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUAI4VMEFcjs.ViewportBreakpoints, { children }) }) })
295
295
  }
296
296
  ),
297
297
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setPortalHost, className: "contents" })
@@ -4,7 +4,7 @@
4
4
  var _chunk36DUCHI7cjs = require('./chunk-36DUCHI7.cjs');
5
5
 
6
6
 
7
- var _chunkR5JPZ6TYcjs = require('./chunk-R5JPZ6TY.cjs');
7
+ var _chunk5SEJEBABcjs = require('./chunk-5SEJEBAB.cjs');
8
8
 
9
9
 
10
10
 
@@ -13,16 +13,16 @@ var _chunkHEVW75L3cjs = require('./chunk-HEVW75L3.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkXKOL5CNUcjs = require('./chunk-XKOL5CNU.cjs');
16
+ var _chunkZEPEFKHAcjs = require('./chunk-ZEPEFKHA.cjs');
17
17
 
18
18
 
19
- var _chunkCAGNWDVJcjs = require('./chunk-CAGNWDVJ.cjs');
19
+ var _chunkU4RTWH5Dcjs = require('./chunk-U4RTWH5D.cjs');
20
20
 
21
21
 
22
- var _chunkTX4NTH22cjs = require('./chunk-TX4NTH22.cjs');
22
+ var _chunkB6D4WWKDcjs = require('./chunk-B6D4WWKD.cjs');
23
23
 
24
24
 
25
- var _chunkFXLROQUTcjs = require('./chunk-FXLROQUT.cjs');
25
+ var _chunkCDW6JTAQcjs = require('./chunk-CDW6JTAQ.cjs');
26
26
 
27
27
 
28
28
 
@@ -106,7 +106,7 @@ function PageDataSyncProvider({
106
106
  function PageDataSyncRow({ inline = false }) {
107
107
  const context = _react.useContext.call(void 0, PageDataSyncContext);
108
108
  if (!context) return null;
109
- const line = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXKOL5CNUcjs.DataSyncLine, { sync: context.state.sync, loading: context.state.loading, stated: context.stated, inline });
109
+ const line = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZEPEFKHAcjs.DataSyncLine, { sync: context.state.sync, loading: context.state.loading, stated: context.stated, inline });
110
110
  return context.stated ? line : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "contents", "data-loading-optional": "", children: line });
111
111
  }
112
112
  function usePageDataSync(sync, loading) {
@@ -125,7 +125,7 @@ function usePageDataSync(sync, loading) {
125
125
  // src/components/shared/dev-section/dev-section-view.tsx
126
126
 
127
127
  function DevSectionView({ sectionKey, preControls, children, showHeading = true }) {
128
- const section = _chunkTX4NTH22cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
128
+ const section = _chunkB6D4WWKDcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
129
129
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
130
130
  const pathname = _chunk7DNL734Scjs.usePathname.call(void 0, );
131
131
  const searchParams = _chunk7DNL734Scjs.useSearchParams.call(void 0, );
@@ -167,7 +167,7 @@ function DevSectionView({ sectionKey, preControls, children, showHeading = true
167
167
  preControls,
168
168
  (search || filter) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
169
169
  search && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
170
- _chunkFXLROQUTcjs.SearchInput,
170
+ _chunkCDW6JTAQcjs.SearchInput,
171
171
  {
172
172
  showDropdown: false,
173
173
  placeholder: search.placeholder,
@@ -177,7 +177,7 @@ function DevSectionView({ sectionKey, preControls, children, showHeading = true
177
177
  }
178
178
  ),
179
179
  filter && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
180
- _chunkXKOL5CNUcjs.StatusFilterComponent,
180
+ _chunkZEPEFKHAcjs.StatusFilterComponent,
181
181
  {
182
182
  selectedStatus: currentFilterValue,
183
183
  onStatusChange: handleFilterChange,
@@ -201,7 +201,7 @@ function DevSectionPage({
201
201
  shell = true
202
202
  }) {
203
203
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
204
- const section = _chunkTX4NTH22cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
204
+ const section = _chunkB6D4WWKDcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
205
205
  const backCfg = backButton === false ? void 0 : {
206
206
  label: _nullishCoalesce((backButton ? backButton.label : void 0), () => ( "Back to home")),
207
207
  onClick: () => router.push(_nullishCoalesce((backButton ? backButton.href : void 0), () => ( "/")))
@@ -214,7 +214,7 @@ function DevSectionPage({
214
214
  // duplicate title. (The hero icon is intentionally dropped: TitleBlock is
215
215
  // frozen and renders title-only.)
216
216
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
217
- _chunkCAGNWDVJcjs.PageLayout,
217
+ _chunkU4RTWH5Dcjs.PageLayout,
218
218
  {
219
219
  title: _nullishCoalesce(title, () => ( section.hero.title)),
220
220
  subtitle: _nullishCoalesce(subtitle, () => ( section.hero.description)),
@@ -223,12 +223,12 @@ function DevSectionPage({
223
223
  backButton: backCfg,
224
224
  children: [
225
225
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DevSectionView, { sectionKey, showHeading: false, preControls, children }),
226
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR5JPZ6TYcjs.SharedPageFaq, {})
226
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5SEJEBABcjs.SharedPageFaq, {})
227
227
  ]
228
228
  }
229
229
  )
230
230
  );
231
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXKOL5CNUcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
231
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZEPEFKHAcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
232
232
  }
233
233
 
234
234
  // src/components/shared/dev-section/dev-card-row.tsx
@@ -3,8 +3,41 @@
3
3
 
4
4
  var _chunk63A4GZMBcjs = require('./chunk-63A4GZMB.cjs');
5
5
 
6
- // src/components/ui/portal-container.tsx
6
+ // src/components/ui/label.tsx
7
+ var _reactlabel = require('@radix-ui/react-label'); var LabelPrimitive = _interopRequireWildcard(_reactlabel);
8
+ var _classvarianceauthority = require('class-variance-authority');
7
9
  var _react = require('react');
10
+ var _jsxruntime = require('react/jsx-runtime');
11
+ var LABEL_TEXT_CLASS = "block text-ods-text-primary text-h6";
12
+ var labelVariants = _classvarianceauthority.cva.call(void 0, "", {
13
+ variants: {
14
+ variant: {
15
+ default: LABEL_TEXT_CLASS,
16
+ /** @deprecated alias of `default` — the three small scales converged on text-h6. */
17
+ small: LABEL_TEXT_CLASS,
18
+ /** @deprecated alias of `default`. */
19
+ medium: LABEL_TEXT_CLASS,
20
+ large: _chunk63A4GZMBcjs.cn.call(void 0, LABEL_TEXT_CLASS, "text-h4"),
21
+ /** A click surface that labels its control: no typography, the site's `className` is its look. */
22
+ surface: ""
23
+ },
24
+ spacing: {
25
+ none: "",
26
+ tight: "mb-0.5",
27
+ normal: "mb-2",
28
+ loose: "mb-3"
29
+ }
30
+ },
31
+ defaultVariants: {
32
+ variant: "default",
33
+ spacing: "none"
34
+ }
35
+ });
36
+ var Label = _react.forwardRef.call(void 0, ({ className, variant, spacing, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LabelPrimitive.Root, { ref, className: _chunk63A4GZMBcjs.cn.call(void 0, labelVariants({ variant, spacing }), className), ...props }));
37
+ Label.displayName = LabelPrimitive.Root.displayName;
38
+
39
+ // src/components/ui/portal-container.tsx
40
+
8
41
  var PortalContainerContext = _react.createContext.call(void 0, null);
9
42
  function usePortalContainer() {
10
43
  return _react.useContext.call(void 0, PortalContainerContext);
@@ -19,7 +52,7 @@ var COLLISION_PADDING_PX = 8;
19
52
  var _reactdropdownmenu = require('@radix-ui/react-dropdown-menu'); var DropdownMenuPrimitive = _interopRequireWildcard(_reactdropdownmenu);
20
53
  var _lucidereact = require('lucide-react');
21
54
 
22
- var _jsxruntime = require('react/jsx-runtime');
55
+
23
56
  var DropdownMenu = DropdownMenuPrimitive.Root;
24
57
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
25
58
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
@@ -170,4 +203,5 @@ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
170
203
 
171
204
 
172
205
 
173
- exports.PortalContainerContext = PortalContainerContext; exports.usePortalContainer = usePortalContainer; exports.CollisionBoundaryContext = CollisionBoundaryContext; exports.useCollisionBoundary = useCollisionBoundary; exports.COLLISION_PADDING_PX = COLLISION_PADDING_PX; exports.DropdownMenu = DropdownMenu; exports.DropdownMenuTrigger = DropdownMenuTrigger; exports.DropdownMenuGroup = DropdownMenuGroup; exports.DropdownMenuPortal = DropdownMenuPortal; exports.DropdownMenuSub = DropdownMenuSub; exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup; exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger; exports.DropdownMenuSubContent = DropdownMenuSubContent; exports.DropdownMenuContent = DropdownMenuContent; exports.DropdownMenuItem = DropdownMenuItem; exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem; exports.DropdownMenuRadioItem = DropdownMenuRadioItem; exports.DropdownMenuLabel = DropdownMenuLabel; exports.DropdownMenuSeparator = DropdownMenuSeparator; exports.DropdownMenuShortcut = DropdownMenuShortcut;
206
+
207
+ exports.Label = Label; exports.PortalContainerContext = PortalContainerContext; exports.usePortalContainer = usePortalContainer; exports.CollisionBoundaryContext = CollisionBoundaryContext; exports.useCollisionBoundary = useCollisionBoundary; exports.COLLISION_PADDING_PX = COLLISION_PADDING_PX; exports.DropdownMenu = DropdownMenu; exports.DropdownMenuTrigger = DropdownMenuTrigger; exports.DropdownMenuGroup = DropdownMenuGroup; exports.DropdownMenuPortal = DropdownMenuPortal; exports.DropdownMenuSub = DropdownMenuSub; exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup; exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger; exports.DropdownMenuSubContent = DropdownMenuSubContent; exports.DropdownMenuContent = DropdownMenuContent; exports.DropdownMenuItem = DropdownMenuItem; exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem; exports.DropdownMenuRadioItem = DropdownMenuRadioItem; exports.DropdownMenuLabel = DropdownMenuLabel; exports.DropdownMenuSeparator = DropdownMenuSeparator; exports.DropdownMenuShortcut = DropdownMenuShortcut;
@@ -1,13 +1,13 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
2
 
3
3
 
4
- var _chunkR5JPZ6TYcjs = require('./chunk-R5JPZ6TY.cjs');
4
+ var _chunk5SEJEBABcjs = require('./chunk-5SEJEBAB.cjs');
5
5
 
6
6
 
7
- var _chunkXKOL5CNUcjs = require('./chunk-XKOL5CNU.cjs');
7
+ var _chunkZEPEFKHAcjs = require('./chunk-ZEPEFKHA.cjs');
8
8
 
9
9
 
10
- var _chunkCAGNWDVJcjs = require('./chunk-CAGNWDVJ.cjs');
10
+ var _chunkU4RTWH5Dcjs = require('./chunk-U4RTWH5D.cjs');
11
11
 
12
12
 
13
13
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
@@ -35,8 +35,8 @@ function FaqDocumentPage({
35
35
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _ => _.label]), () => ( "Back to home")),
36
36
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _2 => _2.href]), () => ( "/")))
37
37
  };
38
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCAGNWDVJcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39
- _chunkR5JPZ6TYcjs.FaqSection,
38
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4RTWH5Dcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39
+ _chunk5SEJEBABcjs.FaqSection,
40
40
  {
41
41
  initialFaqs,
42
42
  heading: null,
@@ -51,7 +51,7 @@ function FaqDocumentPage({
51
51
  skeletonNav
52
52
  }
53
53
  ) });
54
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXKOL5CNUcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
54
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZEPEFKHAcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
55
55
  }
56
56
 
57
57