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

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 (154) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{case-study-card-X2HKPKT7.cjs → case-study-card-WP5Z234Q.cjs} +5 -5
  3. package/dist/chat-protocol/events.d.ts +4 -1
  4. package/dist/chat-protocol/events.d.ts.map +1 -1
  5. package/dist/chat-protocol/index.cjs +90 -40
  6. package/dist/chat-protocol/nats-decoder.d.ts.map +1 -1
  7. package/dist/chat-protocol/nats-decoder.js +5 -1
  8. package/dist/chat-protocol/policy-review.d.ts +18 -0
  9. package/dist/chat-protocol/policy-review.d.ts.map +1 -0
  10. package/dist/chat-protocol/policy-review.js +55 -0
  11. package/dist/{chunk-BU2PSRAS.cjs → chunk-2W22LY3W.cjs} +11 -11
  12. package/dist/{chunk-ZDSC3GFX.cjs → chunk-3SJVF3HW.cjs} +6 -6
  13. package/dist/{chunk-GAYLAA3L.cjs → chunk-3ZQESOPJ.cjs} +79 -79
  14. package/dist/{chunk-IPGGSFR7.cjs → chunk-477P6AQH.cjs} +6 -6
  15. package/dist/{chunk-5CBI2ZYV.cjs → chunk-5RMBLOJ5.cjs} +12 -12
  16. package/dist/{chunk-36DUCHI7.cjs → chunk-6GWRPW6B.cjs} +4 -4
  17. package/dist/{chunk-SOSIXRQ3.cjs → chunk-AZEO7HBB.cjs} +2 -2
  18. package/dist/{chunk-FRG724DU.cjs → chunk-BNHTBLAG.cjs} +17 -17
  19. package/dist/{chunk-VRWBJL7B.cjs → chunk-CHGIACIP.cjs} +91 -91
  20. package/dist/{chunk-CAGNWDVJ.cjs → chunk-COJG2ATY.cjs} +45 -45
  21. package/dist/{chunk-XKOL5CNU.cjs → chunk-D3H6AI7O.cjs} +956 -1077
  22. package/dist/{chunk-ALRYVZ3E.cjs → chunk-DLTPSP5F.cjs} +2 -2
  23. package/dist/{chunk-3W4ASAXN.cjs → chunk-EIACEY2L.cjs} +4 -4
  24. package/dist/{chunk-TIVPOVIM.cjs → chunk-ETZFBB7O.cjs} +2 -2
  25. package/dist/{chunk-GRCOEICK.cjs → chunk-G7GF4PWA.cjs} +6 -6
  26. package/dist/{chunk-7ICHJVAT.cjs → chunk-GEZ3UXCA.cjs} +25 -25
  27. package/dist/chunk-GGUFVIJ6.cjs +28 -0
  28. package/dist/{chunk-ZGEWT3SF.cjs → chunk-HXURNKXI.cjs} +3 -3
  29. package/dist/{chunk-TX4NTH22.cjs → chunk-IC4IJJB2.cjs} +102 -102
  30. package/dist/{chunk-BUEEQD3G.cjs → chunk-IGVAPIEW.cjs} +2 -2
  31. package/dist/{chunk-IG6ROHPS.cjs → chunk-IO6NN3SL.cjs} +54 -54
  32. package/dist/{chunk-5PIR77V5.cjs → chunk-KHOB3TES.cjs} +4 -4
  33. package/dist/{chunk-JQCQCE6U.cjs → chunk-KKFDRCQF.cjs} +2 -2
  34. package/dist/{chunk-6AJYGXXS.cjs → chunk-KNN2GCMW.cjs} +21 -21
  35. package/dist/{chunk-YJZ7R3W5.cjs → chunk-KXFIYO4O.cjs} +8 -8
  36. package/dist/{chunk-FXLROQUT.cjs → chunk-LFEURIZN.cjs} +590 -607
  37. package/dist/{chunk-JWIITCVB.cjs → chunk-MFDRCTM3.cjs} +47 -47
  38. package/dist/{chunk-OHHDX3Z4.cjs → chunk-MXY2OGEV.cjs} +42 -42
  39. package/dist/{chunk-533QK4R6.cjs → chunk-NMWLXHFH.cjs} +130 -130
  40. package/dist/{chunk-MDLT6D46.cjs → chunk-O3EKOXFZ.cjs} +20 -20
  41. package/dist/{chunk-HLJXCOMA.cjs → chunk-OH5TXFRR.cjs} +4 -4
  42. package/dist/{chunk-SA2NNWIJ.cjs → chunk-P63CRPWI.cjs} +19 -64
  43. package/dist/{chunk-R5JPZ6TY.cjs → chunk-QOW2GP3V.cjs} +21 -21
  44. package/dist/{chunk-JBTH3O2C.cjs → chunk-SSKMGH5O.cjs} +4 -4
  45. package/dist/{chunk-4YBS4HIO.cjs → chunk-U767P4JU.cjs} +455 -38
  46. package/dist/{chunk-FNQWL4W4.cjs → chunk-UO2EJGRJ.cjs} +45 -45
  47. package/dist/{chunk-IHY7E4EX.cjs → chunk-USPUZO53.cjs} +4 -4
  48. package/dist/{chunk-IN3LA2FU.cjs → chunk-UV45EPXN.cjs} +2 -2
  49. package/dist/{chunk-S3QXLD4X.cjs → chunk-VCFQHPOO.cjs} +37 -3
  50. package/dist/{chunk-2QZUTNL3.cjs → chunk-VUHHLRAY.cjs} +92 -92
  51. package/dist/{chunk-QJER2ZNA.cjs → chunk-WFAZMASF.cjs} +3 -3
  52. package/dist/{chunk-LGYPCUHO.cjs → chunk-X3WIOMEE.cjs} +36 -36
  53. package/dist/{cloud-tenants-TVB3DT3J.cjs → cloud-tenants-O33HCUYB.cjs} +50 -50
  54. package/dist/components/case-studies/index.cjs +69 -69
  55. package/dist/components/chat/approval-batch-message.d.ts +5 -0
  56. package/dist/components/chat/approval-batch-message.d.ts.map +1 -1
  57. package/dist/components/chat/approval-batch-message.js +36 -10
  58. package/dist/components/chat/index.cjs +45 -45
  59. package/dist/components/chat/policy-review.d.ts +27 -0
  60. package/dist/components/chat/policy-review.d.ts.map +1 -0
  61. package/dist/components/chat/policy-review.js +67 -0
  62. package/dist/components/chat/stream/message-mutations.d.ts.map +1 -1
  63. package/dist/components/chat/stream/message-mutations.js +4 -1
  64. package/dist/components/chat/tool-execution-display.d.ts.map +1 -1
  65. package/dist/components/chat/tool-execution-display.js +16 -5
  66. package/dist/components/chat/types/message.types.d.ts +40 -2
  67. package/dist/components/chat/types/message.types.d.ts.map +1 -1
  68. package/dist/components/chat/utils/extract-incomplete-message-state.d.ts.map +1 -1
  69. package/dist/components/chat/utils/extract-incomplete-message-state.js +2 -0
  70. package/dist/components/chat/utils/message-segment-accumulator.d.ts.map +1 -1
  71. package/dist/components/chat/utils/message-segment-accumulator.js +3 -0
  72. package/dist/components/chat/utils/process-historical-messages.d.ts +2 -2
  73. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  74. package/dist/components/chat/utils/process-historical-messages.js +7 -1
  75. package/dist/components/contact/index.cjs +51 -51
  76. package/dist/components/docs/index.cjs +54 -54
  77. package/dist/components/embeds/index.cjs +51 -51
  78. package/dist/components/faq/index.cjs +52 -52
  79. package/dist/components/features/approval-level.d.ts +6 -12
  80. package/dist/components/features/approval-level.d.ts.map +1 -1
  81. package/dist/components/features/approval-level.js +45 -55
  82. package/dist/components/features/index.cjs +55 -54
  83. package/dist/components/features/notifications/approval-request-notification-tile.d.ts.map +1 -1
  84. package/dist/components/features/notifications/approval-request-notification-tile.js +71 -48
  85. package/dist/components/features/notifications/types.d.ts +2 -0
  86. package/dist/components/features/notifications/types.d.ts.map +1 -1
  87. package/dist/components/features/notifications/types.js +3 -1
  88. package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
  89. package/dist/components/features/policy-configuration-panel.js +75 -64
  90. package/dist/components/help-center-pages/index.cjs +156 -156
  91. package/dist/components/icons-v2-generated/brand-logos/index.d.ts +1 -0
  92. package/dist/components/icons-v2-generated/brand-logos/index.d.ts.map +1 -1
  93. package/dist/components/icons-v2-generated/brand-logos/index.js +2 -0
  94. package/dist/components/icons-v2-generated/brand-logos/stripe-icon.d.ts +8 -0
  95. package/dist/components/icons-v2-generated/brand-logos/stripe-icon.d.ts.map +1 -0
  96. package/dist/components/icons-v2-generated/brand-logos/stripe-icon.js +24 -0
  97. package/dist/components/icons-v2-generated/icon-loaders.d.ts.map +1 -1
  98. package/dist/components/icons-v2-generated/icon-loaders.js +1 -0
  99. package/dist/components/icons-v2-generated/icon-names.js +1 -1
  100. package/dist/components/icons-v2-generated/index.cjs +33 -29
  101. package/dist/components/index.cjs +122 -123
  102. package/dist/components/meeting-scheduler/index.cjs +113 -112
  103. package/dist/components/navigation/index.cjs +54 -54
  104. package/dist/components/onboarding-guides/index.cjs +53 -53
  105. package/dist/components/product-demo/index.cjs +61 -61
  106. package/dist/components/related-content/index.cjs +9 -9
  107. package/dist/components/tickets/index.cjs +57 -57
  108. package/dist/components/ui/file-manager/index.cjs +8 -9
  109. package/dist/components/ui/index.cjs +55 -56
  110. package/dist/components/ui/radio-group.d.ts.map +1 -1
  111. package/dist/components/ui/radio-group.js +8 -2
  112. package/dist/components/ui/tab-selector.d.ts +7 -1
  113. package/dist/components/ui/tab-selector.d.ts.map +1 -1
  114. package/dist/components/ui/tab-selector.js +22 -3
  115. package/dist/{devices-NGCTSXIU.cjs → devices-2RGGMC2B.cjs} +51 -51
  116. package/dist/{embeddable-chat-322NDFP5.cjs → embeddable-chat-SJEEJI4N.cjs} +122 -122
  117. package/dist/hooks/index.cjs +9 -9
  118. package/dist/{icon-loaders-SUPEKMBJ.cjs → icon-loaders-CTH6E7OP.cjs} +1 -0
  119. package/dist/index.cjs +61 -62
  120. package/dist/{knowledge-75PO5DYS.cjs → knowledge-5TJIXVMD.cjs} +52 -52
  121. package/dist/{logs-PZESOAIG.cjs → logs-HGQOTRKZ.cjs} +57 -57
  122. package/dist/{policies-6XNMBFWO.cjs → policies-GWFSLVSM.cjs} +54 -54
  123. package/dist/{remote-session-Q2FIBCGT.cjs → remote-session-SG44CNOK.cjs} +36 -36
  124. package/dist/{scripts-B3JW6TPF.cjs → scripts-PGJNAZF4.cjs} +57 -57
  125. package/dist/{software-update-NWP542J7.cjs → software-update-KKLSYHDI.cjs} +54 -54
  126. package/dist/stripe-icon-YKVABTNI.cjs +7 -0
  127. package/dist/{tickets-board-7FLGQEHF.cjs → tickets-board-SQY2Y6QV.cjs} +39 -38
  128. package/dist/utils/index.cjs +32 -1
  129. package/package.json +1 -1
  130. package/src/chat-protocol/events.ts +4 -1
  131. package/src/chat-protocol/nats-decoder.ts +4 -0
  132. package/src/chat-protocol/policy-review.ts +71 -0
  133. package/src/components/chat/approval-batch-message.tsx +47 -10
  134. package/src/components/chat/policy-review.tsx +90 -0
  135. package/src/components/chat/stream/message-mutations.ts +4 -0
  136. package/src/components/chat/tool-execution-display.tsx +23 -4
  137. package/src/components/chat/types/message.types.ts +42 -2
  138. package/src/components/chat/utils/extract-incomplete-message-state.ts +2 -0
  139. package/src/components/chat/utils/message-segment-accumulator.ts +3 -0
  140. package/src/components/chat/utils/process-historical-messages.ts +14 -3
  141. package/src/components/features/approval-level.tsx +74 -78
  142. package/src/components/features/notifications/approval-request-notification-tile.tsx +75 -50
  143. package/src/components/features/notifications/types.ts +4 -0
  144. package/src/components/features/policy-configuration-panel.tsx +100 -83
  145. package/src/components/icons-v2/icon-colors.json +3 -0
  146. package/src/components/icons-v2-generated/brand-logos/index.ts +1 -0
  147. package/src/components/icons-v2-generated/brand-logos/stripe-icon.tsx +27 -0
  148. package/src/components/icons-v2-generated/icon-loaders.ts +1 -0
  149. package/src/components/icons-v2-generated/icon-names.ts +1 -1
  150. package/src/components/ui/radio-group.tsx +20 -2
  151. package/src/components/ui/tab-selector.tsx +26 -3
  152. package/src/styles/ods-colors.css +1 -0
  153. package/dist/chunk-N3MBQRCQ.cjs +0 -41
  154. /package/dist/{chunk-46547WQW.cjs → chunk-7HH4Y27U.cjs} +0 -0
@@ -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 _chunkEIACEY2Lcjs = require('./chunk-EIACEY2L.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');
@@ -119,7 +119,7 @@ var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
119
119
  var _chunkCOWMXUHNcjs = require('./chunk-COWMXUHN.cjs');
120
120
 
121
121
 
122
- var _chunkJQCQCE6Ucjs = require('./chunk-JQCQCE6U.cjs');
122
+ var _chunkKKFDRCQFcjs = require('./chunk-KKFDRCQF.cjs');
123
123
 
124
124
 
125
125
  var _chunkGG466XFQcjs = require('./chunk-GG466XFQ.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
+ _chunkEIACEY2Lcjs.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
  }
@@ -1374,8 +1374,8 @@ function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1374
1374
  _nullishCoalesce(sizeClassName, () => ( ENTITY_IMAGE_SIZE)),
1375
1375
  className
1376
1376
  ),
1377
- width: _chunkJQCQCE6Ucjs.IMAGE_FIXED_PX.thumb,
1378
- height: _chunkJQCQCE6Ucjs.IMAGE_FIXED_PX.thumb,
1377
+ width: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.thumb,
1378
+ height: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.thumb,
1379
1379
  unoptimized: true
1380
1380
  }
1381
1381
  );
@@ -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: _chunkEIACEY2Lcjs.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
+ _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.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, _chunkEIACEY2Lcjs.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" })