@flamingo-stack/openframe-frontend-core 0.0.421 → 0.0.422-snapshot.20260713170838

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 (113) hide show
  1. package/dist/{chunk-5TL2VVEN.js → chunk-2Q2SKYCZ.js} +5 -5
  2. package/dist/{chunk-HBTKCED7.js → chunk-4ACSUJ7Q.js} +13 -6
  3. package/dist/chunk-4ACSUJ7Q.js.map +1 -0
  4. package/dist/{chunk-FHAG7O27.js → chunk-7W4474XS.js} +2 -2
  5. package/dist/{chunk-5WXUR7LF.js → chunk-B2255TIZ.js} +55 -23
  6. package/dist/chunk-B2255TIZ.js.map +1 -0
  7. package/dist/{chunk-RKNF2DHY.cjs → chunk-CBY3VQKJ.cjs} +59 -59
  8. package/dist/{chunk-RKNF2DHY.cjs.map → chunk-CBY3VQKJ.cjs.map} +1 -1
  9. package/dist/{chunk-WDZATJTF.cjs → chunk-FVI2ESVQ.cjs} +523 -491
  10. package/dist/chunk-FVI2ESVQ.cjs.map +1 -0
  11. package/dist/{chunk-UKIVJU3A.js → chunk-GR2CMONR.js} +4 -4
  12. package/dist/{chunk-PMFK7ZKC.cjs → chunk-HGBEKYXL.cjs} +5 -5
  13. package/dist/{chunk-PMFK7ZKC.cjs.map → chunk-HGBEKYXL.cjs.map} +1 -1
  14. package/dist/{chunk-LHJHMZYU.js → chunk-I4YIWY3O.js} +4 -4
  15. package/dist/{chunk-E6WANQ6K.cjs → chunk-IMK6RUEC.cjs} +13 -6
  16. package/dist/chunk-IMK6RUEC.cjs.map +1 -0
  17. package/dist/{chunk-E5HKIBRS.cjs → chunk-IRIPRXO5.cjs} +9 -9
  18. package/dist/{chunk-E5HKIBRS.cjs.map → chunk-IRIPRXO5.cjs.map} +1 -1
  19. package/dist/{chunk-TJ7HD4KI.js → chunk-JPZE2P4Y.js} +4 -4
  20. package/dist/{chunk-4PS4F4WL.cjs → chunk-KNO5CB3W.cjs} +12 -12
  21. package/dist/{chunk-4PS4F4WL.cjs.map → chunk-KNO5CB3W.cjs.map} +1 -1
  22. package/dist/{chunk-4XTIANMS.js → chunk-LK3KXZIN.js} +3 -3
  23. package/dist/{chunk-XVWDKBBF.js → chunk-MOBZMJAP.js} +2 -2
  24. package/dist/{chunk-5U6C3RXX.cjs → chunk-MSZ4WBCD.cjs} +11 -11
  25. package/dist/{chunk-5U6C3RXX.cjs.map → chunk-MSZ4WBCD.cjs.map} +1 -1
  26. package/dist/{chunk-ISUMLEJ6.js → chunk-NNF5XOMH.js} +3 -3
  27. package/dist/{chunk-YLSDXDD7.cjs → chunk-OTNL36LC.cjs} +37 -37
  28. package/dist/{chunk-YLSDXDD7.cjs.map → chunk-OTNL36LC.cjs.map} +1 -1
  29. package/dist/{chunk-RQXFDMRY.cjs → chunk-SMUKHJJM.cjs} +19 -19
  30. package/dist/{chunk-RQXFDMRY.cjs.map → chunk-SMUKHJJM.cjs.map} +1 -1
  31. package/dist/{chunk-JMHU37Y6.js → chunk-SVUDKNS7.js} +3 -3
  32. package/dist/{chunk-UZOYTAK7.cjs → chunk-TIFJIHV2.cjs} +82 -82
  33. package/dist/{chunk-UZOYTAK7.cjs.map → chunk-TIFJIHV2.cjs.map} +1 -1
  34. package/dist/{chunk-6HCWW4YM.cjs → chunk-TMSP5FYV.cjs} +26 -26
  35. package/dist/{chunk-6HCWW4YM.cjs.map → chunk-TMSP5FYV.cjs.map} +1 -1
  36. package/dist/{chunk-5UZULT35.cjs → chunk-WO2NOBF3.cjs} +31 -31
  37. package/dist/{chunk-5UZULT35.cjs.map → chunk-WO2NOBF3.cjs.map} +1 -1
  38. package/dist/{chunk-PCM4HJO4.cjs → chunk-WOHMJJKD.cjs} +30 -30
  39. package/dist/{chunk-PCM4HJO4.cjs.map → chunk-WOHMJJKD.cjs.map} +1 -1
  40. package/dist/{chunk-UHSVSDF5.js → chunk-WWS3R3UD.js} +2 -2
  41. package/dist/{chunk-ZXWSOOEH.js → chunk-YOEQWHUD.js} +2 -2
  42. package/dist/components/case-studies/index.cjs +9 -9
  43. package/dist/components/case-studies/index.js +3 -3
  44. package/dist/components/chat/chat-input.d.ts.map +1 -1
  45. package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts.map +1 -1
  46. package/dist/components/chat/hooks/use-realtime-chunk-processor.d.ts.map +1 -1
  47. package/dist/components/chat/index.cjs +3 -3
  48. package/dist/components/chat/index.js +2 -2
  49. package/dist/components/chat/types/api.types.d.ts +10 -0
  50. package/dist/components/chat/types/api.types.d.ts.map +1 -1
  51. package/dist/components/contact/index.cjs +4 -4
  52. package/dist/components/contact/index.js +3 -3
  53. package/dist/components/docs/index.cjs +6 -6
  54. package/dist/components/docs/index.js +5 -5
  55. package/dist/components/embeds/index.cjs +4 -4
  56. package/dist/components/embeds/index.js +3 -3
  57. package/dist/components/faq/index.cjs +4 -4
  58. package/dist/components/faq/index.js +3 -3
  59. package/dist/components/features/index.cjs +3 -3
  60. package/dist/components/features/index.js +2 -2
  61. package/dist/components/features/time-tracker/time-tracker-panel.d.ts.map +1 -1
  62. package/dist/components/help-center-pages/index.cjs +21 -21
  63. package/dist/components/help-center-pages/index.js +12 -12
  64. package/dist/components/index.cjs +153 -153
  65. package/dist/components/index.js +10 -10
  66. package/dist/components/navigation/index.cjs +3 -3
  67. package/dist/components/navigation/index.js +2 -2
  68. package/dist/components/onboarding-guides/index.cjs +6 -6
  69. package/dist/components/onboarding-guides/index.js +5 -5
  70. package/dist/components/related-content/index.cjs +4 -4
  71. package/dist/components/related-content/index.js +3 -3
  72. package/dist/components/tickets/index.cjs +6 -6
  73. package/dist/components/tickets/index.js +5 -5
  74. package/dist/components/ui/actions-menu.d.ts.map +1 -1
  75. package/dist/components/ui/button/split-button.d.ts +6 -0
  76. package/dist/components/ui/button/split-button.d.ts.map +1 -1
  77. package/dist/components/ui/file-manager/index.cjs +50 -50
  78. package/dist/components/ui/file-manager/index.js +1 -1
  79. package/dist/components/ui/index.cjs +3 -3
  80. package/dist/components/ui/index.js +2 -2
  81. package/dist/components/ui/page-actions.d.ts.map +1 -1
  82. package/dist/index.cjs +3 -3
  83. package/dist/index.js +2 -2
  84. package/package.json +1 -1
  85. package/src/components/chat/chat-input.tsx +5 -1
  86. package/src/components/chat/hooks/use-nats-chat-adapter.ts +52 -3
  87. package/src/components/chat/hooks/use-realtime-chunk-processor.ts +25 -3
  88. package/src/components/chat/types/api.types.ts +10 -0
  89. package/src/components/features/time-tracker/time-tracker-panel.tsx +1 -0
  90. package/src/components/ui/actions-menu.tsx +1 -0
  91. package/src/components/ui/button/split-button.tsx +18 -3
  92. package/src/components/ui/page-actions.tsx +16 -14
  93. package/src/stories/ApprovalRequestMessageClient.stories.tsx +89 -0
  94. package/src/stories/ChatMessageEnhanced.stories.tsx +219 -0
  95. package/src/stories/ChatTypingIndicator.stories.tsx +51 -0
  96. package/src/stories/ContextCompactionDisplay.stories.tsx +44 -0
  97. package/src/stories/ErrorMessageDisplay.stories.tsx +66 -0
  98. package/src/stories/ThinkingDisplay.stories.tsx +63 -0
  99. package/dist/chunk-5WXUR7LF.js.map +0 -1
  100. package/dist/chunk-E6WANQ6K.cjs.map +0 -1
  101. package/dist/chunk-HBTKCED7.js.map +0 -1
  102. package/dist/chunk-WDZATJTF.cjs.map +0 -1
  103. /package/dist/{chunk-5TL2VVEN.js.map → chunk-2Q2SKYCZ.js.map} +0 -0
  104. /package/dist/{chunk-FHAG7O27.js.map → chunk-7W4474XS.js.map} +0 -0
  105. /package/dist/{chunk-UKIVJU3A.js.map → chunk-GR2CMONR.js.map} +0 -0
  106. /package/dist/{chunk-LHJHMZYU.js.map → chunk-I4YIWY3O.js.map} +0 -0
  107. /package/dist/{chunk-TJ7HD4KI.js.map → chunk-JPZE2P4Y.js.map} +0 -0
  108. /package/dist/{chunk-4XTIANMS.js.map → chunk-LK3KXZIN.js.map} +0 -0
  109. /package/dist/{chunk-XVWDKBBF.js.map → chunk-MOBZMJAP.js.map} +0 -0
  110. /package/dist/{chunk-ISUMLEJ6.js.map → chunk-NNF5XOMH.js.map} +0 -0
  111. /package/dist/{chunk-JMHU37Y6.js.map → chunk-SVUDKNS7.js.map} +0 -0
  112. /package/dist/{chunk-UHSVSDF5.js.map → chunk-WWS3R3UD.js.map} +0 -0
  113. /package/dist/{chunk-ZXWSOOEH.js.map → chunk-YOEQWHUD.js.map} +0 -0
@@ -182,7 +182,7 @@ var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
182
182
 
183
183
 
184
184
 
185
- var _chunkE6WANQ6Kcjs = require('./chunk-E6WANQ6K.cjs');
185
+ var _chunkIMK6RUECcjs = require('./chunk-IMK6RUEC.cjs');
186
186
 
187
187
 
188
188
 
@@ -265,7 +265,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
265
265
  "use strict";
266
266
  "use client";
267
267
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
268
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
268
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
269
269
  Pagination = exports.Pagination = ({ currentPage, totalPages, onPageChange, className }) => {
270
270
  const getPageNumbers = () => {
271
271
  const pages = [];
@@ -301,7 +301,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
301
301
  const pageNumbers = getPageNumbers();
302
302
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { role: "navigation", "aria-label": "pagination", className: _chunkFIG2RKZFcjs.cn.call(void 0, "mx-auto flex w-full justify-center", className), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "ul", { className: "flex flex-row items-center gap-1", children: [
303
303
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
304
- _chunkE6WANQ6Kcjs.Button,
304
+ _chunkIMK6RUECcjs.Button,
305
305
  {
306
306
  variant: "outline",
307
307
  size: "icon",
@@ -320,7 +320,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
320
320
  ] }) }, `ellipsis-${index}`);
321
321
  }
322
322
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
323
- _chunkE6WANQ6Kcjs.Button,
323
+ _chunkIMK6RUECcjs.Button,
324
324
  {
325
325
  variant: currentPage === page ? "accent" : "outline",
326
326
  size: "icon",
@@ -333,7 +333,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
333
333
  ) }, page);
334
334
  }),
335
335
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
336
- _chunkE6WANQ6Kcjs.Button,
336
+ _chunkIMK6RUECcjs.Button,
337
337
  {
338
338
  variant: "outline",
339
339
  size: "icon",
@@ -396,7 +396,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
396
396
  PaginationEllipsis.displayName = "PaginationEllipsis";
397
397
  PaginationPrevious = exports.PaginationPrevious = React121.forwardRef(
398
398
  ({ className, ...props }, ref) => {
399
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
399
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
400
400
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
401
401
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Previous page" })
402
402
  ] });
@@ -405,7 +405,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
405
405
  PaginationPrevious.displayName = "PaginationPrevious";
406
406
  PaginationNext = exports.PaginationNext = React121.forwardRef(
407
407
  ({ className, ...props }, ref) => {
408
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
408
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
409
409
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
410
410
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Next page" })
411
411
  ] });
@@ -417,7 +417,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
417
417
 
418
418
  // src/components/chat/approval-request-message.tsx
419
419
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
420
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
420
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
421
421
 
422
422
 
423
423
  // src/components/ui/tag.tsx
@@ -550,7 +550,7 @@ function Tag({
550
550
 
551
551
  // src/components/chat/approval-batch-message.tsx
552
552
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
553
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
553
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
554
554
 
555
555
 
556
556
  // src/components/chat/expand-chevron.tsx
@@ -845,7 +845,7 @@ var ApprovalBatchMessage = _react.forwardRef.call(void 0,
845
845
  };
846
846
  const actionButtons = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
847
847
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
848
- _chunkE6WANQ6Kcjs.Button,
848
+ _chunkIMK6RUECcjs.Button,
849
849
  {
850
850
  size: "small-legacy",
851
851
  variant: "accent",
@@ -860,7 +860,7 @@ var ApprovalBatchMessage = _react.forwardRef.call(void 0,
860
860
  }
861
861
  ),
862
862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
863
- _chunkE6WANQ6Kcjs.Button,
863
+ _chunkIMK6RUECcjs.Button,
864
864
  {
865
865
  size: "small-legacy",
866
866
  variant: "outline",
@@ -1000,7 +1000,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
1000
1000
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary whitespace-pre-line break-words w-full", children: _optionalChain([data, 'access', _19 => _19.explanation, 'optionalAccess', _20 => _20.trim, 'call', _21 => _21()]) || "Approval required" }),
1001
1001
  status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-mf)] items-center w-full", children: [
1002
1002
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1003
- _chunkE6WANQ6Kcjs.Button,
1003
+ _chunkIMK6RUECcjs.Button,
1004
1004
  {
1005
1005
  size: "small-legacy",
1006
1006
  variant: "accent",
@@ -1015,7 +1015,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
1015
1015
  }
1016
1016
  ),
1017
1017
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1018
- _chunkE6WANQ6Kcjs.Button,
1018
+ _chunkIMK6RUECcjs.Button,
1019
1019
  {
1020
1020
  size: "small-legacy",
1021
1021
  variant: "outline",
@@ -1047,7 +1047,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
1047
1047
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
1048
1048
  status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-mf)] items-center", children: [
1049
1049
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1050
- _chunkE6WANQ6Kcjs.Button,
1050
+ _chunkIMK6RUECcjs.Button,
1051
1051
  {
1052
1052
  size: "small-legacy",
1053
1053
  variant: "accent",
@@ -1062,7 +1062,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
1062
1062
  }
1063
1063
  ),
1064
1064
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1065
- _chunkE6WANQ6Kcjs.Button,
1065
+ _chunkIMK6RUECcjs.Button,
1066
1066
  {
1067
1067
  size: "small-legacy",
1068
1068
  variant: "outline",
@@ -2338,7 +2338,7 @@ var SquareAvatar = React2.memo(React2.forwardRef(
2338
2338
  SquareAvatar.displayName = "SquareAvatar";
2339
2339
 
2340
2340
  // src/components/chat/chat-container.tsx
2341
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
2341
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
2342
2342
 
2343
2343
  // src/components/plus-circle-icon.tsx
2344
2344
 
@@ -2456,7 +2456,7 @@ _chunkWBR7H6E3cjs.init_next_link.call(void 0, );
2456
2456
 
2457
2457
 
2458
2458
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
2459
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
2459
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
2460
2460
 
2461
2461
  var ROW_CLASSES = "flex flex-1 min-w-0 items-center gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-s)] cursor-pointer transition-colors bg-ods-bg outline-none";
2462
2462
  var WRAPPER_CLASSES = "relative flex items-stretch border-b border-ods-border last:border-b-0";
@@ -2475,6 +2475,7 @@ var SecondaryAction = ({ action }) => {
2475
2475
  );
2476
2476
  const classes = _chunkFIG2RKZFcjs.cn.call(void 0,
2477
2477
  SECONDARY_ACTION_CLASSES,
2478
+ action.openInNewTab && "max-md:hidden",
2478
2479
  action.disabled && "cursor-not-allowed opacity-60 pointer-events-none"
2479
2480
  );
2480
2481
  if (action.href) {
@@ -2713,9 +2714,9 @@ var ActionsMenuDropdown = ({
2713
2714
  },
2714
2715
  [onItemClick, setOpen]
2715
2716
  );
2716
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenu, { open, onOpenChange: setOpen, modal: false, children: [
2717
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuTrigger, { asChild: true, children: _nullishCoalesce(customTrigger, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2718
- _chunkE6WANQ6Kcjs.Button,
2717
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenu, { open, onOpenChange: setOpen, modal: false, children: [
2718
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuTrigger, { asChild: true, children: _nullishCoalesce(customTrigger, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2719
+ _chunkIMK6RUECcjs.Button,
2719
2720
  {
2720
2721
  variant: "outline",
2721
2722
  size: "icon",
@@ -2725,7 +2726,7 @@ var ActionsMenuDropdown = ({
2725
2726
  }
2726
2727
  ))) }),
2727
2728
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2728
- _chunkE6WANQ6Kcjs.DropdownMenuContent,
2729
+ _chunkIMK6RUECcjs.DropdownMenuContent,
2729
2730
  {
2730
2731
  align,
2731
2732
  side,
@@ -3200,7 +3201,7 @@ function TicketStatusTag({
3200
3201
 
3201
3202
  // src/components/chat/msp-organization-card.tsx
3202
3203
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3203
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
3204
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
3204
3205
 
3205
3206
  function MspOrganizationCard({
3206
3207
  name,
@@ -3228,7 +3229,7 @@ function MspOrganizationCard({
3228
3229
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h3 text-ods-text-primary", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
3229
3230
  website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h4 text-ods-text-secondary", children: website }) : null
3230
3231
  ] }),
3231
- href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { asChild: true, variant: "outline", size: "icon", "aria-label": actionLabel, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noreferrer noopener", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.ExternalLinkIcon, {}) }) }) : onOpenWebsite ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "outline", size: "icon", "aria-label": actionLabel, onClick: onOpenWebsite, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.ExternalLinkIcon, {}) }) : null
3232
+ href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { asChild: true, variant: "outline", size: "icon", "aria-label": actionLabel, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noreferrer noopener", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.ExternalLinkIcon, {}) }) }) : onOpenWebsite ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "outline", size: "icon", "aria-label": actionLabel, onClick: onOpenWebsite, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.ExternalLinkIcon, {}) }) : null
3232
3233
  ]
3233
3234
  }
3234
3235
  );
@@ -3246,12 +3247,12 @@ function MspOrganizationCardSkeleton({ className }) {
3246
3247
  className
3247
3248
  ),
3248
3249
  children: [
3249
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" }),
3250
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" }),
3250
3251
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center gap-2 self-stretch", children: [
3251
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-5 w-3/5 rounded-md" }),
3252
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-2/5 rounded-md" })
3252
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-5 w-3/5 rounded-md" }),
3253
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-2/5 rounded-md" })
3253
3254
  ] }),
3254
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" })
3255
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" })
3255
3256
  ]
3256
3257
  }
3257
3258
  );
@@ -3322,7 +3323,7 @@ var ChatHeader = React6.forwardRef(
3322
3323
  ...props,
3323
3324
  children: [
3324
3325
  onBack && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3325
- _chunkE6WANQ6Kcjs.Button,
3326
+ _chunkIMK6RUECcjs.Button,
3326
3327
  {
3327
3328
  onClick: onBack,
3328
3329
  variant: "transparent",
@@ -3338,10 +3339,10 @@ var ChatHeader = React6.forwardRef(
3338
3339
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: cardClasses, children: [
3339
3340
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 px-4 py-3", children: [
3340
3341
  isLoading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
3341
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "w-16 h-16 rounded-full shrink-0" }),
3342
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "w-16 h-16 rounded-full shrink-0" }),
3342
3343
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1", children: [
3343
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-6 w-40" }),
3344
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-28" })
3344
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-6 w-40" }),
3345
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-28" })
3345
3346
  ] })
3346
3347
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
3347
3348
  userIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center w-16 h-16 rounded-full bg-ods-accent", children: userIcon }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -3365,7 +3366,7 @@ var ChatHeader = React6.forwardRef(
3365
3366
  ] }),
3366
3367
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
3367
3368
  showNewChat && onNewChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3368
- _chunkE6WANQ6Kcjs.Button,
3369
+ _chunkIMK6RUECcjs.Button,
3369
3370
  {
3370
3371
  onClick: onNewChat,
3371
3372
  variant: "transparent",
@@ -3376,7 +3377,7 @@ var ChatHeader = React6.forwardRef(
3376
3377
  }
3377
3378
  ),
3378
3379
  onClose && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3379
- _chunkE6WANQ6Kcjs.Button,
3380
+ _chunkIMK6RUECcjs.Button,
3380
3381
  {
3381
3382
  onClick: onClose,
3382
3383
  variant: "transparent",
@@ -3576,7 +3577,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3576
3577
 
3577
3578
  // src/components/chat/mingo-onboarding-card.tsx
3578
3579
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3579
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
3580
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
3580
3581
 
3581
3582
  function MingoOnboardingCard({
3582
3583
  icon,
@@ -3603,7 +3604,7 @@ function MingoOnboardingCard({
3603
3604
  ] }),
3604
3605
  description ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary w-full", children: description }) : null,
3605
3606
  hasActions ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-[var(--spacing-system-xxs)] mt-[var(--spacing-system-xs)]", children: actions.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3606
- _chunkE6WANQ6Kcjs.Button,
3607
+ _chunkIMK6RUECcjs.Button,
3607
3608
  {
3608
3609
  type: "button",
3609
3610
  variant: "outline",
@@ -4657,7 +4658,11 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
4657
4658
  disabled: isStopMode ? isStopping : sendDisabled,
4658
4659
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
4659
4660
  "flex h-6 shrink-0 items-center text-ods-text-secondary transition-colors duration-200",
4660
- focused && "text-ods-accent",
4661
+ // Focus accent applies to the SEND icon only. Stop stays neutral
4662
+ // regardless of where focus sits — otherwise it reads yellow after
4663
+ // an Enter-send (editor keeps focus) but gray after an approve
4664
+ // click (focus moved to the card button).
4665
+ focused && !isStopMode && "text-ods-accent",
4661
4666
  "[&_svg]:size-4 md:[&_svg]:size-6",
4662
4667
  "cursor-pointer hover:text-ods-text-primary",
4663
4668
  "focus-visible:outline-none focus-visible:text-ods-accent",
@@ -5053,7 +5058,7 @@ function ContextItemsSkeleton({ count }) {
5053
5058
  "div",
5054
5059
  {
5055
5060
  className: "flex items-center border-b border-ods-border bg-ods-bg py-3 pl-4 pr-2 last:border-b-0",
5056
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-5 w-1/2" })
5061
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-5 w-1/2" })
5057
5062
  },
5058
5063
  `ctx-skeleton-${i}`
5059
5064
  )) });
@@ -6680,7 +6685,7 @@ function ChatQuickActionRow({
6680
6685
  var SKELETON_CHIP_WIDTHS = ["w-28", "w-32", "w-24", "w-36", "w-20"];
6681
6686
  function ChatQuickActionRowSkeleton({ className, count = 3, ...props }) {
6682
6687
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex shrink-0 items-center gap-1", className), ...props, children: Array.from({ length: count }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6683
- _chunkE6WANQ6Kcjs.Skeleton,
6688
+ _chunkIMK6RUECcjs.Skeleton,
6684
6689
  {
6685
6690
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-8 shrink-0 rounded-md", SKELETON_CHIP_WIDTHS[i % SKELETON_CHIP_WIDTHS.length])
6686
6691
  },
@@ -6815,11 +6820,11 @@ var ChatTicketItem = React14.forwardRef(
6815
6820
  ),
6816
6821
  children: [
6817
6822
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col justify-center flex-1 min-w-0 gap-1", children: [
6818
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-5 w-1/2" }),
6819
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-1/3" })
6823
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-5 w-1/2" }),
6824
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-1/3" })
6820
6825
  ] }),
6821
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-8 w-20 rounded-r-md shrink-0" }),
6822
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-12 rounded-md shrink-0" })
6826
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-8 w-20 rounded-r-md shrink-0" }),
6827
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-12 rounded-md shrink-0" })
6823
6828
  ]
6824
6829
  }
6825
6830
  );
@@ -6950,16 +6955,16 @@ function MingoOnboardingCardSkeleton({
6950
6955
  ),
6951
6956
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xxs)] w-full", children: [
6952
6957
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] w-full", children: [
6953
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-4 shrink-0 rounded-sm" }),
6954
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-3.5 rounded-sm", titleWidth) }),
6958
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-4 shrink-0 rounded-sm" }),
6959
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-3.5 rounded-sm", titleWidth) }),
6955
6960
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-1" }),
6956
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-3.5 rounded-sm shrink-0", slashWidth) })
6961
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-3.5 rounded-sm shrink-0", slashWidth) })
6957
6962
  ] }),
6958
6963
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xxs)]", children: [
6959
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-3.5 w-full rounded-sm" }),
6960
- descriptionLines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-3.5 w-[70%] rounded-sm" }) : null
6964
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-3.5 w-full rounded-sm" }),
6965
+ descriptionLines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-3.5 w-[70%] rounded-sm" }) : null
6961
6966
  ] }),
6962
- hasChips ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-[var(--spacing-system-xxs)] mt-[var(--spacing-system-xs)]", children: chipWidths.map((w, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-7 rounded-md", w) }, i)) }) : null
6967
+ hasChips ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-[var(--spacing-system-xxs)] mt-[var(--spacing-system-xs)]", children: chipWidths.map((w, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-7 rounded-md", w) }, i)) }) : null
6963
6968
  ] })
6964
6969
  }
6965
6970
  );
@@ -7009,7 +7014,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7009
7014
  // src/components/chat/mingo-chat-history.tsx
7010
7015
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7011
7016
 
7012
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
7017
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
7013
7018
 
7014
7019
  function dialogTime(d) {
7015
7020
  if (!d.timestamp) return null;
@@ -7123,7 +7128,7 @@ function MingoChatHistoryRow({
7123
7128
  onOpenChange: setMenuOpen,
7124
7129
  onCloseAutoFocus: (e) => e.preventDefault(),
7125
7130
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7126
- _chunkE6WANQ6Kcjs.Button,
7131
+ _chunkIMK6RUECcjs.Button,
7127
7132
  {
7128
7133
  variant: "transparent",
7129
7134
  size: "icon",
@@ -7193,7 +7198,7 @@ function DialogSearchBar({
7193
7198
  onSearchChange(debounced);
7194
7199
  }, [debounced, onSearchChange]);
7195
7200
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7196
- _chunkE6WANQ6Kcjs.Input,
7201
+ _chunkIMK6RUECcjs.Input,
7197
7202
  {
7198
7203
  type: "text",
7199
7204
  value,
@@ -7284,7 +7289,7 @@ function MingoChatHistory({
7284
7289
  }
7285
7290
 
7286
7291
  // src/components/chat/mingo-welcome.tsx
7287
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
7292
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
7288
7293
 
7289
7294
  var DEFAULT_SUBTITLE = "Ready to help with your technical tasks. What can I do for you?";
7290
7295
  var DEFAULT_FEATURE_CARDS = [
@@ -7375,7 +7380,7 @@ function MingoWelcome({
7375
7380
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-body-sm text-ods-text-secondary", children: "Something went wrong reaching the server. Check your connection and try again." })
7376
7381
  ] }),
7377
7382
  onRetry && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7378
- _chunkE6WANQ6Kcjs.Button,
7383
+ _chunkIMK6RUECcjs.Button,
7379
7384
  {
7380
7385
  variant: "outline",
7381
7386
  size: "small",
@@ -7546,7 +7551,7 @@ function GuideWelcome({
7546
7551
  ),
7547
7552
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-1", children: [
7548
7553
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary", children: title }),
7549
- subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary", children: subtitle }) : subtitleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-3/4 max-w-80 rounded-sm" }) }) : null
7554
+ subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary", children: subtitle }) : subtitleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-3/4 max-w-80 rounded-sm" }) }) : null
7550
7555
  ] })
7551
7556
  ] }),
7552
7557
  children
@@ -7581,7 +7586,7 @@ var TooltipProvider = TooltipPrimitive.Provider;
7581
7586
  var Tooltip = TooltipPrimitive.Root;
7582
7587
  var TooltipTrigger = TooltipPrimitive.Trigger;
7583
7588
  var TooltipContent = React19.forwardRef(({ className, sideOffset = 4, ...props }, ref) => {
7584
- const container = _chunkE6WANQ6Kcjs.usePortalContainer.call(void 0, );
7589
+ const container = _chunkIMK6RUECcjs.usePortalContainer.call(void 0, );
7585
7590
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipPrimitive.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7586
7591
  TooltipPrimitive.Content,
7587
7592
  {
@@ -7929,7 +7934,7 @@ var ChatHeaderIconButton = React23.forwardRef(({ className, children, type = "bu
7929
7934
  ChatHeaderIconButton.displayName = "ChatHeaderIconButton";
7930
7935
 
7931
7936
  // src/components/chat/chat-panel-header-mobile.tsx
7932
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
7937
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
7933
7938
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7934
7939
 
7935
7940
  function ChatPanelHeaderMobile({
@@ -7961,7 +7966,7 @@ function ChatPanelHeaderMobile({
7961
7966
  ),
7962
7967
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-end gap-[var(--spacing-system-sf)]", children: [
7963
7968
  showBack && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7964
- _chunkE6WANQ6Kcjs.Button,
7969
+ _chunkIMK6RUECcjs.Button,
7965
7970
  {
7966
7971
  variant: "outline",
7967
7972
  size: "icon",
@@ -7982,7 +7987,7 @@ function ChatPanelHeaderMobile({
7982
7987
  }
7983
7988
  ),
7984
7989
  onClose && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7985
- _chunkE6WANQ6Kcjs.Button,
7990
+ _chunkIMK6RUECcjs.Button,
7986
7991
  {
7987
7992
  variant: "outline",
7988
7993
  size: "icon",
@@ -8069,7 +8074,7 @@ function ChatPanelHeader({
8069
8074
 
8070
8075
  // src/components/chat/chat-attachment-bar.tsx
8071
8076
 
8072
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
8077
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
8073
8078
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
8074
8079
 
8075
8080
  // src/components/chat/utils/chat-attachment-markdown.ts
@@ -8180,7 +8185,7 @@ function ChatAttachmentAddButton({
8180
8185
  }
8181
8186
  ),
8182
8187
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8183
- _chunkE6WANQ6Kcjs.Button,
8188
+ _chunkIMK6RUECcjs.Button,
8184
8189
  {
8185
8190
  type: "button",
8186
8191
  variant: "transparent",
@@ -8263,7 +8268,7 @@ function AttachmentChip({ attachment, onRemove, disabled, size: size2 = "default
8263
8268
  ] })
8264
8269
  ] }),
8265
8270
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8266
- _chunkE6WANQ6Kcjs.Button,
8271
+ _chunkIMK6RUECcjs.Button,
8267
8272
  {
8268
8273
  type: "button",
8269
8274
  variant: "transparent",
@@ -8487,9 +8492,9 @@ var ModelDisplaySkeleton = React121.default.forwardRef(
8487
8492
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-1 text-sm", className),
8488
8493
  ...props,
8489
8494
  children: [
8490
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "w-4 h-5 rounded-sm shrink-0" }),
8491
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-5 w-24" }),
8492
- showTokens && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-3 w-32 ml-auto" })
8495
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "w-4 h-5 rounded-sm shrink-0" }),
8496
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-5 w-24" }),
8497
+ showTokens && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-3 w-32 ml-auto" })
8493
8498
  ]
8494
8499
  }
8495
8500
  )
@@ -8702,12 +8707,12 @@ function ChatArchivePage({
8702
8707
 
8703
8708
  // src/components/chat/chat-sidebar.tsx
8704
8709
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
8705
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
8710
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
8706
8711
 
8707
8712
 
8708
8713
  // src/components/chat/chat-sidebar-skeleton.tsx
8709
8714
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
8710
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
8715
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
8711
8716
 
8712
8717
 
8713
8718
  var DialogListItemSkeleton = React27.forwardRef(
@@ -8751,7 +8756,7 @@ var ChatSidebarSkeleton = React27.forwardRef(
8751
8756
  ...props,
8752
8757
  children: [
8753
8758
  showNewChatButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-card border-b border-ods-border flex items-center justify-center px-4 py-1 shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8754
- _chunkE6WANQ6Kcjs.Button,
8759
+ _chunkIMK6RUECcjs.Button,
8755
8760
  {
8756
8761
  variant: "transparent",
8757
8762
  disabled: true,
@@ -8864,7 +8869,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
8864
8869
  ...props,
8865
8870
  children: [
8866
8871
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-card border-b border-ods-border flex items-center justify-center px-4 py-1 shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8867
- _chunkE6WANQ6Kcjs.Button,
8872
+ _chunkIMK6RUECcjs.Button,
8868
8873
  {
8869
8874
  onClick: onNewChat,
8870
8875
  variant: "transparent",
@@ -9102,7 +9107,7 @@ function NavLinkAnchorViaRuntime({
9102
9107
  }
9103
9108
 
9104
9109
  // src/components/chat/source-action-button.tsx
9105
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
9110
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
9106
9111
 
9107
9112
 
9108
9113
  var DENSITY_STYLES = {
@@ -9144,7 +9149,7 @@ function SourceActionButton({
9144
9149
  const IconComponent = isDisplay ? _lucidereact.FileText : _lucidereact.MessageSquare;
9145
9150
  const icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: styles.iconSize });
9146
9151
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9147
- _chunkE6WANQ6Kcjs.Button,
9152
+ _chunkIMK6RUECcjs.Button,
9148
9153
  {
9149
9154
  variant: "transparent",
9150
9155
  size: styles.size,
@@ -10631,7 +10636,7 @@ function sortBitesByCreatedAtDesc(a, b) {
10631
10636
 
10632
10637
  // src/components/features/cards-strip.tsx
10633
10638
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
10634
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
10639
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
10635
10640
 
10636
10641
 
10637
10642
  // src/components/layout/page-heading.tsx
@@ -11036,7 +11041,7 @@ function CardsStrip(props) {
11036
11041
  ),
11037
11042
  showChevrons && overflows && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
11038
11043
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11039
- _chunkE6WANQ6Kcjs.Button,
11044
+ _chunkIMK6RUECcjs.Button,
11040
11045
  {
11041
11046
  type: "button",
11042
11047
  variant: "outline",
@@ -11048,7 +11053,7 @@ function CardsStrip(props) {
11048
11053
  }
11049
11054
  ),
11050
11055
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11051
- _chunkE6WANQ6Kcjs.Button,
11056
+ _chunkIMK6RUECcjs.Button,
11052
11057
  {
11053
11058
  type: "button",
11054
11059
  variant: "outline",
@@ -13055,7 +13060,7 @@ function OnboardingGuideCard({
13055
13060
 
13056
13061
 
13057
13062
  // src/components/chat/entity-cards/roadmap-vote-button.tsx
13058
- _chunkE6WANQ6Kcjs.init_button.call(void 0, );
13063
+ _chunkIMK6RUECcjs.init_button.call(void 0, );
13059
13064
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
13060
13065
 
13061
13066
  function RoadmapVoteButton({
@@ -13070,7 +13075,7 @@ function RoadmapVoteButton({
13070
13075
  }) {
13071
13076
  const Icon2 = voteType === "up" ? _chunkGHHUCCLXcjs.ThumbsUpIcon : _chunkGHHUCCLXcjs.ThumbsDownIcon;
13072
13077
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13073
- _chunkE6WANQ6Kcjs.Button,
13078
+ _chunkIMK6RUECcjs.Button,
13074
13079
  {
13075
13080
  variant: "outline",
13076
13081
  onClick,
@@ -13089,7 +13094,7 @@ function RoadmapVoteButton({
13089
13094
  }
13090
13095
 
13091
13096
  // src/components/chat/entity-cards/roadmap-card.tsx
13092
- _chunkE6WANQ6Kcjs.init_button.call(void 0, );
13097
+ _chunkIMK6RUECcjs.init_button.call(void 0, );
13093
13098
 
13094
13099
  // src/components/ui/image-gallery-modal.tsx
13095
13100
 
@@ -13098,7 +13103,7 @@ _chunkE6WANQ6Kcjs.init_button.call(void 0, );
13098
13103
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
13099
13104
 
13100
13105
 
13101
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
13106
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
13102
13107
 
13103
13108
  // src/components/ui/label.tsx
13104
13109
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
@@ -13192,7 +13197,7 @@ var AllowedDomainsInput = React39.forwardRef(
13192
13197
  label && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { children: label }),
13193
13198
  value.map((domain, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
13194
13199
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13195
- _chunkE6WANQ6Kcjs.Input,
13200
+ _chunkIMK6RUECcjs.Input,
13196
13201
  {
13197
13202
  value: domain,
13198
13203
  disabled: true,
@@ -13200,7 +13205,7 @@ var AllowedDomainsInput = React39.forwardRef(
13200
13205
  }
13201
13206
  ),
13202
13207
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13203
- _chunkE6WANQ6Kcjs.Button,
13208
+ _chunkIMK6RUECcjs.Button,
13204
13209
  {
13205
13210
  type: "button",
13206
13211
  variant: "transparent",
@@ -13213,7 +13218,7 @@ var AllowedDomainsInput = React39.forwardRef(
13213
13218
  )
13214
13219
  ] }, index)),
13215
13220
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13216
- _chunkE6WANQ6Kcjs.Input,
13221
+ _chunkIMK6RUECcjs.Input,
13217
13222
  {
13218
13223
  ref: inputRef,
13219
13224
  value: inputValue,
@@ -13757,7 +13762,7 @@ function AutocompleteInner(props, ref) {
13757
13762
  }
13758
13763
  )
13759
13764
  ] });
13760
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, className, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", ref: containerRef, children: [
13765
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, className, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", ref: containerRef, children: [
13761
13766
  popover,
13762
13767
  multiple && showHiddenTags && hiddenTagsCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13763
13768
  HiddenTagsPopup,
@@ -13808,7 +13813,7 @@ function AutocompleteInner(props, ref) {
13808
13813
  var Autocomplete = _react.forwardRef.call(void 0, AutocompleteInner);
13809
13814
 
13810
13815
  // src/components/ui/index.ts
13811
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
13816
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
13812
13817
 
13813
13818
  // src/components/ui/checkbox-block.tsx
13814
13819
  var _reactcheckbox = require('@radix-ui/react-checkbox'); var CheckboxPrimitive = _interopRequireWildcard(_reactcheckbox); var CheckboxPrimitive2 = _interopRequireWildcard(_reactcheckbox); var CheckboxPrimitive3 = _interopRequireWildcard(_reactcheckbox); var CheckboxPrimitive4 = _interopRequireWildcard(_reactcheckbox);
@@ -13940,7 +13945,7 @@ CheckboxWithDescription.displayName = "CheckboxWithDescription";
13940
13945
 
13941
13946
  var _reactdaypicker = require('react-day-picker');
13942
13947
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
13943
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
13948
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
13944
13949
 
13945
13950
  // src/components/ui/select.tsx
13946
13951
  var _reactselect = require('@radix-ui/react-select'); var SelectPrimitive = _interopRequireWildcard(_reactselect);
@@ -13984,7 +13989,7 @@ var SelectTrigger = React42.forwardRef(({ className, children, invalid, label, e
13984
13989
  ]
13985
13990
  }
13986
13991
  );
13987
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, children: trigger });
13992
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, children: trigger });
13988
13993
  });
13989
13994
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
13990
13995
  var SelectScrollUpButton = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -14094,7 +14099,7 @@ var formatDateRange2 = (range, formatFn) => {
14094
14099
  };
14095
14100
  function CalendarNavButton({ direction, onClick, "aria-label": ariaLabel }) {
14096
14101
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14097
- _chunkE6WANQ6Kcjs.Button,
14102
+ _chunkIMK6RUECcjs.Button,
14098
14103
  {
14099
14104
  type: "button",
14100
14105
  variant: "outline",
@@ -14497,7 +14502,7 @@ function DatePicker(props) {
14497
14502
  }
14498
14503
  ) })
14499
14504
  ] });
14500
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, children: picker });
14505
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, children: picker });
14501
14506
  }
14502
14507
  var generateHourOptions = (use24Hour) => {
14503
14508
  if (use24Hour) {
@@ -14680,7 +14685,7 @@ function DatePickerInput({
14680
14685
  )
14681
14686
  ] })
14682
14687
  ] });
14683
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, className, children: content });
14688
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, className, children: content });
14684
14689
  }
14685
14690
  var generateTimeOptions = (intervalMinutes, use24Hour) => {
14686
14691
  const options = [];
@@ -14822,7 +14827,7 @@ function DatePickerInputSimple({
14822
14827
  }
14823
14828
  )
14824
14829
  ] });
14825
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, className, children: content });
14830
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, className, children: content });
14826
14831
  }
14827
14832
  function DateFilterPanel({
14828
14833
  mode = "range",
@@ -14924,7 +14929,7 @@ function DateFilterMenu({
14924
14929
  };
14925
14930
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Popover.Root, { open, onOpenChange: handleOpenChange, children: [
14926
14931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Trigger, { asChild: true, children: _nullishCoalesce(trigger, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14927
- _chunkE6WANQ6Kcjs.Button,
14932
+ _chunkIMK6RUECcjs.Button,
14928
14933
  {
14929
14934
  type: "button",
14930
14935
  variant: "outline",
@@ -14966,7 +14971,7 @@ function DateFilterMenu({
14966
14971
  ),
14967
14972
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-stretch gap-4", children: [
14968
14973
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14969
- _chunkE6WANQ6Kcjs.Button,
14974
+ _chunkIMK6RUECcjs.Button,
14970
14975
  {
14971
14976
  type: "button",
14972
14977
  variant: "outline",
@@ -14976,7 +14981,7 @@ function DateFilterMenu({
14976
14981
  }
14977
14982
  ),
14978
14983
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14979
- _chunkE6WANQ6Kcjs.Button,
14984
+ _chunkIMK6RUECcjs.Button,
14980
14985
  {
14981
14986
  type: "button",
14982
14987
  variant: "accent",
@@ -15405,7 +15410,7 @@ function CompactAssigneeDropdown({
15405
15410
  ),
15406
15411
  children: [
15407
15412
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15408
- _chunkE6WANQ6Kcjs.Input,
15413
+ _chunkIMK6RUECcjs.Input,
15409
15414
  {
15410
15415
  autoFocus: true,
15411
15416
  value: search,
@@ -15710,7 +15715,7 @@ function MediaTypeSelector({
15710
15715
 
15711
15716
  // src/components/ui/no-data/no-data.tsx
15712
15717
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
15713
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
15718
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
15714
15719
 
15715
15720
 
15716
15721
  // src/components/ui/no-data/no-data-message.tsx
@@ -15820,7 +15825,7 @@ var NoData = React121.default.forwardRef(function NoData2({
15820
15825
  const hasMessage = !!(icon || title || description);
15821
15826
  const hasActions = !!_optionalChain([actions, 'optionalAccess', _354 => _354.length]);
15822
15827
  const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15823
- _chunkE6WANQ6Kcjs.Button,
15828
+ _chunkIMK6RUECcjs.Button,
15824
15829
  {
15825
15830
  variant: "outline",
15826
15831
  leftIcon: buttonIcon,
@@ -16096,7 +16101,7 @@ Switch.displayName = SwitchPrimitives.Root.displayName;
16096
16101
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
16097
16102
 
16098
16103
 
16099
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
16104
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
16100
16105
 
16101
16106
  function TagSelectDropdown({
16102
16107
  options,
@@ -16142,7 +16147,7 @@ function TagSelectDropdown({
16142
16147
  };
16143
16148
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive3.Root, { open: isOpen, onOpenChange: setIsOpen, modal: false, children: [
16144
16149
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive3.Trigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16145
- _chunkE6WANQ6Kcjs.Button,
16150
+ _chunkIMK6RUECcjs.Button,
16146
16151
  {
16147
16152
  type: "button",
16148
16153
  variant: "outline",
@@ -16167,7 +16172,7 @@ function TagSelectDropdown({
16167
16172
  ),
16168
16173
  children: [
16169
16174
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16170
- _chunkE6WANQ6Kcjs.Input,
16175
+ _chunkIMK6RUECcjs.Input,
16171
16176
  {
16172
16177
  autoFocus: true,
16173
16178
  value: search,
@@ -16272,7 +16277,7 @@ function TagSelectDropdown({
16272
16277
  // src/components/ui/tags-input.tsx
16273
16278
 
16274
16279
 
16275
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
16280
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
16276
16281
 
16277
16282
  // src/components/ui/badge.tsx
16278
16283
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
@@ -16341,7 +16346,7 @@ function TagsInput({
16341
16346
  label && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { className: "font-['DM_Sans'] text-[16px] font-medium text-ods-text-primary", children: label }),
16342
16347
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
16343
16348
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16344
- _chunkE6WANQ6Kcjs.Input,
16349
+ _chunkIMK6RUECcjs.Input,
16345
16350
  {
16346
16351
  value: inputValue,
16347
16352
  onChange: (e) => setInputValue(e.target.value),
@@ -16355,7 +16360,7 @@ function TagsInput({
16355
16360
  }
16356
16361
  ),
16357
16362
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16358
- _chunkE6WANQ6Kcjs.Button,
16363
+ _chunkIMK6RUECcjs.Button,
16359
16364
  {
16360
16365
  type: "button",
16361
16366
  variant: "outline",
@@ -16403,7 +16408,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
16403
16408
 
16404
16409
 
16405
16410
 
16406
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
16411
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
16407
16412
 
16408
16413
  function TagsManager({
16409
16414
  tags,
@@ -16486,7 +16491,7 @@ function TagsManager({
16486
16491
  },
16487
16492
  [onChange]
16488
16493
  );
16489
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative", ref: containerRef, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive4.Root, { open, onOpenChange: setOpen, children: [
16494
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative", ref: containerRef, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive4.Root, { open, onOpenChange: setOpen, children: [
16490
16495
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive4.Anchor, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16491
16496
  "label",
16492
16497
  {
@@ -16600,7 +16605,7 @@ function TagsManager({
16600
16605
  className: "flex items-center gap-1 px-2 py-1 border-b border-ods-border last:border-b-0",
16601
16606
  children: [
16602
16607
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16603
- _chunkE6WANQ6Kcjs.Input,
16608
+ _chunkIMK6RUECcjs.Input,
16604
16609
  {
16605
16610
  ref: editInputRef,
16606
16611
  value: editingName,
@@ -16613,7 +16618,7 @@ function TagsManager({
16613
16618
  }
16614
16619
  ),
16615
16620
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16616
- _chunkE6WANQ6Kcjs.Button,
16621
+ _chunkIMK6RUECcjs.Button,
16617
16622
  {
16618
16623
  type: "button",
16619
16624
  variant: "transparent",
@@ -16624,7 +16629,7 @@ function TagsManager({
16624
16629
  }
16625
16630
  ),
16626
16631
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16627
- _chunkE6WANQ6Kcjs.Button,
16632
+ _chunkIMK6RUECcjs.Button,
16628
16633
  {
16629
16634
  type: "button",
16630
16635
  variant: "transparent",
@@ -16675,7 +16680,7 @@ function TagsManager({
16675
16680
  ),
16676
16681
  (onUpdateTag || onDeleteTag) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-0.5 opacity-0 group-hover/item:opacity-100 transition-opacity", children: [
16677
16682
  onUpdateTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16678
- _chunkE6WANQ6Kcjs.Button,
16683
+ _chunkIMK6RUECcjs.Button,
16679
16684
  {
16680
16685
  type: "button",
16681
16686
  variant: "transparent",
@@ -16694,7 +16699,7 @@ function TagsManager({
16694
16699
  }
16695
16700
  ),
16696
16701
  onDeleteTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16697
- _chunkE6WANQ6Kcjs.Button,
16702
+ _chunkIMK6RUECcjs.Button,
16698
16703
  {
16699
16704
  type: "button",
16700
16705
  variant: "transparent",
@@ -16780,7 +16785,7 @@ var Textarea = React57.forwardRef(
16780
16785
  const reactId = React57.useId();
16781
16786
  const fieldId = _nullishCoalesce(props.id, () => ( reactId));
16782
16787
  if (!hasAdornment) {
16783
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16788
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16784
16789
  "textarea",
16785
16790
  {
16786
16791
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
@@ -16902,14 +16907,14 @@ var Textarea = React57.forwardRef(
16902
16907
  ]
16903
16908
  }
16904
16909
  );
16905
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label, error, children: content });
16910
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label, error, children: content });
16906
16911
  }
16907
16912
  );
16908
16913
  Textarea.displayName = "Textarea";
16909
16914
 
16910
16915
  // src/components/ui/alert-dialog.tsx
16911
16916
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
16912
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
16917
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
16913
16918
 
16914
16919
  var _reactalertdialog = require('@radix-ui/react-alert-dialog'); var AlertDialogPrimitive = _interopRequireWildcard(_reactalertdialog);
16915
16920
 
@@ -16993,7 +16998,7 @@ var AlertDialogAction = React58.forwardRef(({ className, ...props }, ref) => /*
16993
16998
  AlertDialogPrimitive.Action,
16994
16999
  {
16995
17000
  ref,
16996
- className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkE6WANQ6Kcjs.buttonVariants.call(void 0, ), className),
17001
+ className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkIMK6RUECcjs.buttonVariants.call(void 0, ), className),
16997
17002
  ...props
16998
17003
  }
16999
17004
  ));
@@ -17003,7 +17008,7 @@ var AlertDialogCancel = React58.forwardRef(({ className, ...props }, ref) => /*
17003
17008
  {
17004
17009
  ref,
17005
17010
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
17006
- _chunkE6WANQ6Kcjs.buttonVariants.call(void 0, { variant: "outline" }),
17011
+ _chunkIMK6RUECcjs.buttonVariants.call(void 0, { variant: "outline" }),
17007
17012
  "mt-2 md:mt-0",
17008
17013
  className
17009
17014
  ),
@@ -18742,7 +18747,7 @@ var socialCache = SocialEmbedCache.getInstance();
18742
18747
  // src/components/media-carousel.tsx
18743
18748
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
18744
18749
 
18745
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
18750
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
18746
18751
 
18747
18752
  var ChevronLeftIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { width: "24", height: "24", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "polyline", { points: "15,18 9,12 15,6" }) });
18748
18753
  var ChevronRightIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { width: "24", height: "24", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "polyline", { points: "9,18 15,12 9,6" }) });
@@ -18929,7 +18934,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarousel2({
18929
18934
  renderMainMedia(currentItem, currentIndex),
18930
18935
  showArrows && media.length > 1 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
18931
18936
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18932
- _chunkE6WANQ6Kcjs.Button,
18937
+ _chunkIMK6RUECcjs.Button,
18933
18938
  {
18934
18939
  variant: "transparent",
18935
18940
  onClick: prevSlide,
@@ -18939,7 +18944,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarousel2({
18939
18944
  }
18940
18945
  ),
18941
18946
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18942
- _chunkE6WANQ6Kcjs.Button,
18947
+ _chunkIMK6RUECcjs.Button,
18943
18948
  {
18944
18949
  variant: "transparent",
18945
18950
  onClick: nextSlide,
@@ -18955,7 +18960,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarousel2({
18955
18960
  (media.length > 1 || reserveDotRow) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-6 items-center gap-[var(--spacing-system-xs)]", role: "group", "aria-label": "Choose slide", children: media.length > 1 && media.map((item, index) => {
18956
18961
  const isActive = index === currentIndex;
18957
18962
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18958
- _chunkE6WANQ6Kcjs.Button,
18963
+ _chunkIMK6RUECcjs.Button,
18959
18964
  {
18960
18965
  variant: "transparent",
18961
18966
  "aria-current": isActive ? "true" : void 0,
@@ -20179,7 +20184,7 @@ function FigmaEmbed({ url, title, height, loading = "lazy" }) {
20179
20184
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2 sm:flex-row sm:items-center", children: [
20180
20185
  isSlides && embedSrc && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SlidesViewToggle, { view, onChange: setView }),
20181
20186
  originalUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20182
- _chunkE6WANQ6Kcjs.Button,
20187
+ _chunkIMK6RUECcjs.Button,
20183
20188
  {
20184
20189
  variant: "outline",
20185
20190
  size: "small-legacy",
@@ -21416,7 +21421,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
21416
21421
  // src/components/ui/filter-modal.tsx
21417
21422
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
21418
21423
 
21419
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
21424
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
21420
21425
 
21421
21426
  // src/components/ui/filter-checkbox-item.tsx
21422
21427
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
@@ -21682,15 +21687,15 @@ function FilterModal({
21682
21687
  onScroll: updateFade,
21683
21688
  className: "flex-1 min-h-0 overflow-y-auto flex flex-col gap-4 md:py-3",
21684
21689
  children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: [0, 1].map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1", children: [
21685
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-5 w-24" }),
21690
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-5 w-24" }),
21686
21691
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-md border border-ods-border overflow-hidden", children: [0, 1, 2].map((row) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
21687
21692
  "div",
21688
21693
  {
21689
21694
  className: "flex items-center gap-3 px-4 py-3 bg-ods-card border-b border-ods-border last:border-b-0",
21690
21695
  children: [
21691
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-6 w-6 rounded-[6px] shrink-0" }),
21692
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 flex-1 max-w-[60%]" }),
21693
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-10 shrink-0" })
21696
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-6 w-6 rounded-[6px] shrink-0" }),
21697
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 flex-1 max-w-[60%]" }),
21698
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-10 shrink-0" })
21694
21699
  ]
21695
21700
  },
21696
21701
  row
@@ -21765,8 +21770,8 @@ function FilterModal({
21765
21770
  }
21766
21771
  ),
21767
21772
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ModalFooter, { children: [
21768
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "outline", className: "flex-1 h-11", onClick: handleReset, children: resetButtonText }),
21769
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "accent", className: "flex-1 h-11", onClick: handleApply, children: applyButtonText })
21773
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "outline", className: "flex-1 h-11", onClick: handleReset, children: resetButtonText }),
21774
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "accent", className: "flex-1 h-11", onClick: handleApply, children: applyButtonText })
21770
21775
  ] })
21771
21776
  ]
21772
21777
  }
@@ -21779,7 +21784,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
21779
21784
  // src/components/ui/page-actions.tsx
21780
21785
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
21781
21786
 
21782
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
21787
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
21783
21788
 
21784
21789
  function actionKey(action, idx) {
21785
21790
  return `${_nullishCoalesce(_nullishCoalesce(action.label, () => ( action.ariaLabel)), () => ( "action"))}-${idx}`;
@@ -21821,7 +21826,7 @@ function renderActionButton(action, opts = {}) {
21821
21826
  function renderRawActionButton(action, opts = {}) {
21822
21827
  if (action.iconAction) {
21823
21828
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21824
- _chunkE6WANQ6Kcjs.SplitButton,
21829
+ _chunkIMK6RUECcjs.SplitButton,
21825
21830
  {
21826
21831
  variant: _nullishCoalesce(action.variant, () => ( void 0)),
21827
21832
  href: action.href,
@@ -21843,7 +21848,7 @@ function renderRawActionButton(action, opts = {}) {
21843
21848
  {
21844
21849
  groups: [{ items: action.submenu }],
21845
21850
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21846
- _chunkE6WANQ6Kcjs.Button,
21851
+ _chunkIMK6RUECcjs.Button,
21847
21852
  {
21848
21853
  variant: "outline",
21849
21854
  disabled: action.disabled,
@@ -21861,7 +21866,7 @@ function renderRawActionButton(action, opts = {}) {
21861
21866
  if (isIconOnly) {
21862
21867
  const iconNode = action.iconOnlyOnDesktop ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex [&_svg]:!text-ods-text-primary", children: action.icon }) : action.icon;
21863
21868
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21864
- _chunkE6WANQ6Kcjs.Button,
21869
+ _chunkIMK6RUECcjs.Button,
21865
21870
  {
21866
21871
  variant: action.variant,
21867
21872
  size: "icon",
@@ -21877,7 +21882,7 @@ function renderRawActionButton(action, opts = {}) {
21877
21882
  );
21878
21883
  }
21879
21884
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21880
- _chunkE6WANQ6Kcjs.Button,
21885
+ _chunkIMK6RUECcjs.Button,
21881
21886
  {
21882
21887
  variant: action.variant,
21883
21888
  href: action.href,
@@ -21919,21 +21924,18 @@ function IconButtonsVariant({
21919
21924
  const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _459 => _459[0], 'access', _460 => _460.submenu, 'optionalAccess', _461 => _461.length]);
21920
21925
  const singleAction = isSingleAction ? actions[0] : null;
21921
21926
  const useSingleActionMobile = isSingleAction && !hasMenuActions;
21927
+ const mobileMenuGroups = [
21928
+ { items: actions.flatMap(actionToMenuItems) },
21929
+ ..._nullishCoalesce(menuActions, () => ( []))
21930
+ ];
21931
+ const hasMobileMenuItems = mobileMenuGroups.some((g) => g.items.length > 0);
21922
21932
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
21923
21933
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: [
21924
21934
  selector,
21925
21935
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React121.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
21926
21936
  hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: menuActions })
21927
21937
  ] }),
21928
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21929
- ActionsMenuDropdown,
21930
- {
21931
- groups: [
21932
- { items: actions.flatMap(actionToMenuItems) },
21933
- ..._nullishCoalesce(menuActions, () => ( []))
21934
- ]
21935
- }
21936
- ) })
21938
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
21937
21939
  ] });
21938
21940
  }
21939
21941
  function PrimaryButtonsVariant({
@@ -21959,21 +21961,18 @@ function MenuPrimaryVariant({
21959
21961
  }) {
21960
21962
  const desktopActions = actions.filter((a) => !a.showOnlyMobile);
21961
21963
  const hasMenuActions = menuActions.some((g) => g.items.length > 0);
21964
+ const mobileMenuGroups = [
21965
+ { items: actions.flatMap(actionToMenuItems) },
21966
+ ...menuActions
21967
+ ];
21968
+ const hasMobileMenuItems = mobileMenuGroups.some((g) => g.items.length > 0);
21962
21969
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
21963
21970
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: [
21964
21971
  selector,
21965
21972
  hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: menuActions }),
21966
21973
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React121.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
21967
21974
  ] }),
21968
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21969
- ActionsMenuDropdown,
21970
- {
21971
- groups: [
21972
- { items: actions.flatMap(actionToMenuItems) },
21973
- ...menuActions
21974
- ]
21975
- }
21976
- ) })
21975
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
21977
21976
  ] });
21978
21977
  }
21979
21978
  function MobileBottomActions({ actions }) {
@@ -22260,7 +22259,7 @@ function ListPageLayout({
22260
22259
  stickyHeader && "sticky top-0 z-20 flex gap-[var(--spacing-system-m)] items-center bg-ods-bg -mx-[var(--spacing-system-l)] p-[var(--spacing-system-l)] -mt-[var(--spacing-system-l)]"
22261
22260
  ), children: [
22262
22261
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22263
- _chunkE6WANQ6Kcjs.Input,
22262
+ _chunkIMK6RUECcjs.Input,
22264
22263
  {
22265
22264
  placeholder: searchPlaceholder,
22266
22265
  onChange: (e) => setLocalSearchValue(e.target.value),
@@ -22270,7 +22269,7 @@ function ListPageLayout({
22270
22269
  }
22271
22270
  ),
22272
22271
  hasMobileFilter && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22273
- _chunkE6WANQ6Kcjs.Button,
22272
+ _chunkIMK6RUECcjs.Button,
22274
22273
  {
22275
22274
  variant: "outline",
22276
22275
  size: "icon",
@@ -24222,7 +24221,7 @@ var BenefitCardGrid = ({
24222
24221
  };
24223
24222
 
24224
24223
  // src/components/ui/brand-association-card.tsx
24225
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
24224
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
24226
24225
 
24227
24226
 
24228
24227
 
@@ -24242,7 +24241,7 @@ function BrandAssociationCard({
24242
24241
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h2 tracking-[-0.64px] text-ods-text-primary", children: item.title }),
24243
24242
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-normal text-[16px] leading-[1.5] text-ods-text-secondary", children: item.description }),
24244
24243
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
24245
- _chunkE6WANQ6Kcjs.Button,
24244
+ _chunkIMK6RUECcjs.Button,
24246
24245
  {
24247
24246
  variant: "outline",
24248
24247
  href: item.link,
@@ -25335,7 +25334,7 @@ function DropdownButton({
25335
25334
  // src/components/ui/more-actions-menu.tsx
25336
25335
  _chunkWBR7H6E3cjs.init_next_link.call(void 0, );
25337
25336
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
25338
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
25337
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
25339
25338
 
25340
25339
  function MoreActionsMenu({
25341
25340
  items,
@@ -25350,9 +25349,9 @@ function MoreActionsMenu({
25350
25349
  onOpenChange,
25351
25350
  onCloseAutoFocus
25352
25351
  }) {
25353
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenu, { open, onOpenChange, children: [
25354
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuTrigger, { asChild: true, children: trigger || /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25355
- _chunkE6WANQ6Kcjs.Button,
25352
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenu, { open, onOpenChange, children: [
25353
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuTrigger, { asChild: true, children: trigger || /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25354
+ _chunkIMK6RUECcjs.Button,
25356
25355
  {
25357
25356
  variant: "outline",
25358
25357
  size: "icon",
@@ -25362,7 +25361,7 @@ function MoreActionsMenu({
25362
25361
  }
25363
25362
  ) }),
25364
25363
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25365
- _chunkE6WANQ6Kcjs.DropdownMenuContent,
25364
+ _chunkIMK6RUECcjs.DropdownMenuContent,
25366
25365
  {
25367
25366
  align,
25368
25367
  side,
@@ -25384,7 +25383,7 @@ function MoreActionsMenu({
25384
25383
  };
25385
25384
  if (item.href) {
25386
25385
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25387
- _chunkE6WANQ6Kcjs.DropdownMenuItem,
25386
+ _chunkIMK6RUECcjs.DropdownMenuItem,
25388
25387
  {
25389
25388
  asChild: true,
25390
25389
  disabled: item.disabled,
@@ -25413,7 +25412,7 @@ function MoreActionsMenu({
25413
25412
  );
25414
25413
  }
25415
25414
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25416
- _chunkE6WANQ6Kcjs.DropdownMenuItem,
25415
+ _chunkIMK6RUECcjs.DropdownMenuItem,
25417
25416
  {
25418
25417
  onClick: handleActivate,
25419
25418
  disabled: item.disabled,
@@ -25692,7 +25691,7 @@ function ArrayEntryManager({
25692
25691
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-[14px] text-ods-text-primary", children: title }),
25693
25692
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
25694
25693
  requireSave && isDirty && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25695
- _chunkE6WANQ6Kcjs.Button,
25694
+ _chunkIMK6RUECcjs.Button,
25696
25695
  {
25697
25696
  type: "button",
25698
25697
  size: "small-legacy",
@@ -25704,7 +25703,7 @@ function ArrayEntryManager({
25704
25703
  }
25705
25704
  ),
25706
25705
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25707
- _chunkE6WANQ6Kcjs.Button,
25706
+ _chunkIMK6RUECcjs.Button,
25708
25707
  {
25709
25708
  type: "button",
25710
25709
  variant: "outline",
@@ -25722,7 +25721,7 @@ function ArrayEntryManager({
25722
25721
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
25723
25722
  renderLabel && renderLabel(item, index),
25724
25723
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25725
- _chunkE6WANQ6Kcjs.Input,
25724
+ _chunkIMK6RUECcjs.Input,
25726
25725
  {
25727
25726
  placeholder,
25728
25727
  value: item[fieldKey],
@@ -25734,7 +25733,7 @@ function ArrayEntryManager({
25734
25733
  )
25735
25734
  ] }),
25736
25735
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25737
- _chunkE6WANQ6Kcjs.Button,
25736
+ _chunkIMK6RUECcjs.Button,
25738
25737
  {
25739
25738
  type: "button",
25740
25739
  variant: "transparent",
@@ -25751,7 +25750,7 @@ function ArrayEntryManager({
25751
25750
 
25752
25751
  // src/components/features/auth/auth-benefits-panel.tsx
25753
25752
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
25754
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
25753
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
25755
25754
 
25756
25755
  var DEFAULT_TITLE2 = "The All-in-One Open Platform for MSPs";
25757
25756
  var DEFAULT_DESCRIPTION = "All your core ops in one place - built for MSPs who are done duct-taping tools together. Unified stack, AI-ready, no vendor tax. Just solid software that lets you run lean and fast.";
@@ -25784,7 +25783,7 @@ function AuthBenefitsPanel({
25784
25783
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-h4 text-ods-text-primary", children: benefit.label })
25785
25784
  ] }, benefit.label)) }),
25786
25785
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25787
- _chunkE6WANQ6Kcjs.Button,
25786
+ _chunkIMK6RUECcjs.Button,
25788
25787
  {
25789
25788
  variant: "outline",
25790
25789
  href: learnMoreUrl,
@@ -25878,7 +25877,7 @@ function BackToLoginLink({ onClick, label = "Back to Login", className }) {
25878
25877
 
25879
25878
  // src/components/features/auth/complete-account-form.tsx
25880
25879
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
25881
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
25880
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
25882
25881
 
25883
25882
  // src/components/ui/password-input.tsx
25884
25883
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
@@ -25888,7 +25887,7 @@ var PasswordInput = React90.forwardRef(({ disabled, className, ...props }, ref)
25888
25887
  const [visible, setVisible] = React90.useState(false);
25889
25888
  const Icon2 = visible ? _chunkBGD345ZVcjs.EyeOffIcon : _chunkBGD345ZVcjs.EyeIcon;
25890
25889
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25891
- _chunkE6WANQ6Kcjs.Input,
25890
+ _chunkIMK6RUECcjs.Input,
25892
25891
  {
25893
25892
  ref,
25894
25893
  type: visible ? "text" : "password",
@@ -25913,7 +25912,7 @@ var PasswordInput = React90.forwardRef(({ disabled, className, ...props }, ref)
25913
25912
  PasswordInput.displayName = "PasswordInput";
25914
25913
 
25915
25914
  // src/components/features/auth/sso-providers.tsx
25916
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
25915
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
25917
25916
 
25918
25917
  var PROVIDER_META = {
25919
25918
  openframe: {
@@ -25940,7 +25939,7 @@ function SsoProviderButtons({
25940
25939
  const meta = PROVIDER_META[provider];
25941
25940
  const Icon2 = meta.Icon;
25942
25941
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25943
- _chunkE6WANQ6Kcjs.Button,
25942
+ _chunkIMK6RUECcjs.Button,
25944
25943
  {
25945
25944
  type: "button",
25946
25945
  variant: "outline",
@@ -26022,7 +26021,7 @@ function CompleteAccountForm({
26022
26021
  ] })
26023
26022
  ] }),
26024
26023
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26025
- _chunkE6WANQ6Kcjs.Input,
26024
+ _chunkIMK6RUECcjs.Input,
26026
26025
  {
26027
26026
  label: "First Name",
26028
26027
  placeholder: "Enter First Name",
@@ -26035,7 +26034,7 @@ function CompleteAccountForm({
26035
26034
  }
26036
26035
  ),
26037
26036
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26038
- _chunkE6WANQ6Kcjs.Input,
26037
+ _chunkIMK6RUECcjs.Input,
26039
26038
  {
26040
26039
  label: "Last Name",
26041
26040
  placeholder: "Enter Last Name",
@@ -26075,7 +26074,7 @@ function CompleteAccountForm({
26075
26074
  ),
26076
26075
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26077
26076
  onBack ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26078
- _chunkE6WANQ6Kcjs.Button,
26077
+ _chunkIMK6RUECcjs.Button,
26079
26078
  {
26080
26079
  type: "button",
26081
26080
  variant: "transparent",
@@ -26090,7 +26089,7 @@ function CompleteAccountForm({
26090
26089
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" })
26091
26090
  ),
26092
26091
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26093
- _chunkE6WANQ6Kcjs.Button,
26092
+ _chunkIMK6RUECcjs.Button,
26094
26093
  {
26095
26094
  type: "button",
26096
26095
  variant: "accent",
@@ -26110,7 +26109,7 @@ function CompleteAccountForm({
26110
26109
 
26111
26110
  // src/components/features/auth/create-organization-form.tsx
26112
26111
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26113
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26112
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26114
26113
 
26115
26114
  // src/components/features/auth/terms-agreement-label.tsx
26116
26115
 
@@ -26196,7 +26195,7 @@ function CreateOrganizationForm({
26196
26195
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-secondary", children: "Start your journey with OpenFrame." })
26197
26196
  ] }),
26198
26197
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26199
- _chunkE6WANQ6Kcjs.Input,
26198
+ _chunkIMK6RUECcjs.Input,
26200
26199
  {
26201
26200
  type: "email",
26202
26201
  label: "Email",
@@ -26211,7 +26210,7 @@ function CreateOrganizationForm({
26211
26210
  }
26212
26211
  ),
26213
26212
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26214
- _chunkE6WANQ6Kcjs.Input,
26213
+ _chunkIMK6RUECcjs.Input,
26215
26214
  {
26216
26215
  label: "Organization Name",
26217
26216
  placeholder: "Your Company Name",
@@ -26225,7 +26224,7 @@ function CreateOrganizationForm({
26225
26224
  ),
26226
26225
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
26227
26226
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26228
- _chunkE6WANQ6Kcjs.Input,
26227
+ _chunkIMK6RUECcjs.Input,
26229
26228
  {
26230
26229
  label: "Domain",
26231
26230
  placeholder: domainPlaceholder,
@@ -26264,7 +26263,7 @@ function CreateOrganizationForm({
26264
26263
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26265
26264
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
26266
26265
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26267
- _chunkE6WANQ6Kcjs.Button,
26266
+ _chunkIMK6RUECcjs.Button,
26268
26267
  {
26269
26268
  type: "button",
26270
26269
  variant: "accent",
@@ -26284,7 +26283,7 @@ function CreateOrganizationForm({
26284
26283
 
26285
26284
  // src/components/features/auth/invite-link-invalid-modal.tsx
26286
26285
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26287
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26286
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26288
26287
 
26289
26288
  function InviteLinkInvalidModal({
26290
26289
  onBackToLogin,
@@ -26302,14 +26301,14 @@ function InviteLinkInvalidModal({
26302
26301
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary", children: description }),
26303
26302
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26304
26303
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
26305
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { type: "button", variant: "accent", fullWidth: true, className: "md:flex-1", onClick: onBackToLogin, children: backLabel })
26304
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { type: "button", variant: "accent", fullWidth: true, className: "md:flex-1", onClick: onBackToLogin, children: backLabel })
26306
26305
  ] })
26307
26306
  ] }) });
26308
26307
  }
26309
26308
 
26310
26309
  // src/components/features/auth/login-form.tsx
26311
26310
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26312
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26311
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26313
26312
 
26314
26313
  function LoginForm({
26315
26314
  email,
@@ -26349,7 +26348,7 @@ function LoginForm({
26349
26348
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-secondary", children: "Enter your email to access your organization." })
26350
26349
  ] }),
26351
26350
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26352
- _chunkE6WANQ6Kcjs.Input,
26351
+ _chunkIMK6RUECcjs.Input,
26353
26352
  {
26354
26353
  type: "email",
26355
26354
  label: "Email",
@@ -26372,7 +26371,7 @@ function LoginForm({
26372
26371
  }
26373
26372
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26374
26373
  onForgotPassword ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26375
- _chunkE6WANQ6Kcjs.Button,
26374
+ _chunkIMK6RUECcjs.Button,
26376
26375
  {
26377
26376
  type: "button",
26378
26377
  variant: "transparent",
@@ -26387,7 +26386,7 @@ function LoginForm({
26387
26386
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" })
26388
26387
  ),
26389
26388
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26390
- _chunkE6WANQ6Kcjs.Button,
26389
+ _chunkIMK6RUECcjs.Button,
26391
26390
  {
26392
26391
  type: "button",
26393
26392
  variant: "accent",
@@ -26407,7 +26406,7 @@ function LoginForm({
26407
26406
 
26408
26407
  // src/components/features/auth/openframe-sso-login-form.tsx
26409
26408
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26410
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26409
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26411
26410
 
26412
26411
  function OpenFrameSsoLoginForm({
26413
26412
  email,
@@ -26451,7 +26450,7 @@ function OpenFrameSsoLoginForm({
26451
26450
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-secondary", children: subtitle })
26452
26451
  ] }),
26453
26452
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26454
- _chunkE6WANQ6Kcjs.Input,
26453
+ _chunkIMK6RUECcjs.Input,
26455
26454
  {
26456
26455
  type: "email",
26457
26456
  label: emailLabel,
@@ -26479,7 +26478,7 @@ function OpenFrameSsoLoginForm({
26479
26478
  ),
26480
26479
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26481
26480
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26482
- _chunkE6WANQ6Kcjs.Button,
26481
+ _chunkIMK6RUECcjs.Button,
26483
26482
  {
26484
26483
  type: "button",
26485
26484
  variant: "transparent",
@@ -26491,7 +26490,7 @@ function OpenFrameSsoLoginForm({
26491
26490
  }
26492
26491
  ),
26493
26492
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26494
- _chunkE6WANQ6Kcjs.Button,
26493
+ _chunkIMK6RUECcjs.Button,
26495
26494
  {
26496
26495
  type: "button",
26497
26496
  variant: "accent",
@@ -26511,7 +26510,7 @@ function OpenFrameSsoLoginForm({
26511
26510
 
26512
26511
  // src/components/features/auth/openframe-sso-signup-form.tsx
26513
26512
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26514
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26513
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26515
26514
 
26516
26515
  function OpenFrameSsoSignUpForm({
26517
26516
  email,
@@ -26562,7 +26561,7 @@ function OpenFrameSsoSignUpForm({
26562
26561
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-secondary", children: subtitle })
26563
26562
  ] }),
26564
26563
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26565
- _chunkE6WANQ6Kcjs.Input,
26564
+ _chunkIMK6RUECcjs.Input,
26566
26565
  {
26567
26566
  type: "email",
26568
26567
  label: emailLabel,
@@ -26576,7 +26575,7 @@ function OpenFrameSsoSignUpForm({
26576
26575
  }
26577
26576
  ),
26578
26577
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26579
- _chunkE6WANQ6Kcjs.Input,
26578
+ _chunkIMK6RUECcjs.Input,
26580
26579
  {
26581
26580
  label: "First Name",
26582
26581
  placeholder: "Enter First Name",
@@ -26589,7 +26588,7 @@ function OpenFrameSsoSignUpForm({
26589
26588
  }
26590
26589
  ),
26591
26590
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26592
- _chunkE6WANQ6Kcjs.Input,
26591
+ _chunkIMK6RUECcjs.Input,
26593
26592
  {
26594
26593
  label: "Last Name",
26595
26594
  placeholder: "Enter Last Name",
@@ -26629,7 +26628,7 @@ function OpenFrameSsoSignUpForm({
26629
26628
  ),
26630
26629
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26631
26630
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26632
- _chunkE6WANQ6Kcjs.Button,
26631
+ _chunkIMK6RUECcjs.Button,
26633
26632
  {
26634
26633
  type: "button",
26635
26634
  variant: "transparent",
@@ -26641,7 +26640,7 @@ function OpenFrameSsoSignUpForm({
26641
26640
  }
26642
26641
  ),
26643
26642
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26644
- _chunkE6WANQ6Kcjs.Button,
26643
+ _chunkIMK6RUECcjs.Button,
26645
26644
  {
26646
26645
  type: "button",
26647
26646
  variant: "accent",
@@ -26661,7 +26660,7 @@ function OpenFrameSsoSignUpForm({
26661
26660
 
26662
26661
  // src/components/features/auth/password-reset-form.tsx
26663
26662
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26664
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26663
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26665
26664
 
26666
26665
  function PasswordResetForm({
26667
26666
  password,
@@ -26706,7 +26705,7 @@ function PasswordResetForm({
26706
26705
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-secondary", children: subtitle })
26707
26706
  ] }),
26708
26707
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26709
- _chunkE6WANQ6Kcjs.Input,
26708
+ _chunkIMK6RUECcjs.Input,
26710
26709
  {
26711
26710
  type: "password",
26712
26711
  label: newPasswordLabel,
@@ -26720,7 +26719,7 @@ function PasswordResetForm({
26720
26719
  }
26721
26720
  ),
26722
26721
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26723
- _chunkE6WANQ6Kcjs.Input,
26722
+ _chunkIMK6RUECcjs.Input,
26724
26723
  {
26725
26724
  type: "password",
26726
26725
  label: confirmPasswordLabel,
@@ -26735,7 +26734,7 @@ function PasswordResetForm({
26735
26734
  ),
26736
26735
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26737
26736
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26738
- _chunkE6WANQ6Kcjs.Button,
26737
+ _chunkIMK6RUECcjs.Button,
26739
26738
  {
26740
26739
  type: "button",
26741
26740
  variant: "outline",
@@ -26747,7 +26746,7 @@ function PasswordResetForm({
26747
26746
  }
26748
26747
  ),
26749
26748
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26750
- _chunkE6WANQ6Kcjs.Button,
26749
+ _chunkIMK6RUECcjs.Button,
26751
26750
  {
26752
26751
  type: "button",
26753
26752
  variant: "accent",
@@ -26787,7 +26786,7 @@ function SsoAuthShell({ children, className }) {
26787
26786
  }
26788
26787
 
26789
26788
  // src/components/features/provider-button.tsx
26790
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
26789
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
26791
26790
 
26792
26791
 
26793
26792
  var PROVIDER_CONFIG = {
@@ -26833,7 +26832,7 @@ function ProviderButton({ provider, onClick, disabled = false, loading = false }
26833
26832
  }
26834
26833
  };
26835
26834
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26836
- _chunkE6WANQ6Kcjs.Button,
26835
+ _chunkIMK6RUECcjs.Button,
26837
26836
  {
26838
26837
  type: "button",
26839
26838
  onClick: handleClick,
@@ -26955,7 +26954,7 @@ function ChangelogManager({
26955
26954
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
26956
26955
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-[14px] text-ods-text-primary", children: title }),
26957
26956
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26958
- _chunkE6WANQ6Kcjs.Button,
26957
+ _chunkIMK6RUECcjs.Button,
26959
26958
  {
26960
26959
  type: "button",
26961
26960
  variant: "outline",
@@ -26973,7 +26972,7 @@ function ChangelogManager({
26973
26972
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg-secondary rounded-lg border border-ods-border overflow-hidden", children: [
26974
26973
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 p-3", children: [
26975
26974
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26976
- _chunkE6WANQ6Kcjs.Button,
26975
+ _chunkIMK6RUECcjs.Button,
26977
26976
  {
26978
26977
  type: "button",
26979
26978
  variant: "transparent",
@@ -26985,7 +26984,7 @@ function ChangelogManager({
26985
26984
  ),
26986
26985
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0", children: hasContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-[14px] text-ods-text-primary truncate", children: entry.title }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-[14px] text-ods-text-secondary italic", children: "New entry (click to edit)" }) }),
26987
26986
  showVisibilityToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26988
- _chunkE6WANQ6Kcjs.Button,
26987
+ _chunkIMK6RUECcjs.Button,
26989
26988
  {
26990
26989
  type: "button",
26991
26990
  variant: "transparent",
@@ -26997,7 +26996,7 @@ function ChangelogManager({
26997
26996
  }
26998
26997
  ),
26999
26998
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27000
- _chunkE6WANQ6Kcjs.Button,
26999
+ _chunkIMK6RUECcjs.Button,
27001
27000
  {
27002
27001
  type: "button",
27003
27002
  variant: "transparent",
@@ -27012,7 +27011,7 @@ function ChangelogManager({
27012
27011
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
27013
27012
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-[12px] text-ods-text-secondary", children: "Title *" }),
27014
27013
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27015
- _chunkE6WANQ6Kcjs.Input,
27014
+ _chunkIMK6RUECcjs.Input,
27016
27015
  {
27017
27016
  placeholder: "e.g., New dark mode theme support",
27018
27017
  value: entry.title,
@@ -27128,7 +27127,7 @@ function ClickUpTasksManager({
27128
27127
  }
27129
27128
 
27130
27129
  // src/components/features/command-box.tsx
27131
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
27130
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
27132
27131
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
27133
27132
 
27134
27133
  var lineClampClasses = {
@@ -27165,7 +27164,7 @@ function CommandBox({
27165
27164
  ),
27166
27165
  (primaryAction || secondaryAction) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col md:flex-row gap-3 md:justify-end mt-4", children: [
27167
27166
  secondaryAction && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27168
- _chunkE6WANQ6Kcjs.Button,
27167
+ _chunkIMK6RUECcjs.Button,
27169
27168
  {
27170
27169
  variant: secondaryAction.variant || "outline",
27171
27170
  leftIcon: secondaryAction.icon,
@@ -27177,7 +27176,7 @@ function CommandBox({
27177
27176
  }
27178
27177
  ),
27179
27178
  primaryAction && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27180
- _chunkE6WANQ6Kcjs.Button,
27179
+ _chunkIMK6RUECcjs.Button,
27181
27180
  {
27182
27181
  variant: primaryAction.variant || "accent",
27183
27182
  leftIcon: primaryAction.icon,
@@ -27251,7 +27250,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
27251
27250
 
27252
27251
  // src/components/features/section-selector.tsx
27253
27252
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
27254
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
27253
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
27255
27254
 
27256
27255
  var SectionButton = ({
27257
27256
  section,
@@ -27270,7 +27269,7 @@ var SectionButton = ({
27270
27269
  const numberClasses = "font-['DM_Sans'] font-bold text-ods-accent";
27271
27270
  const isDisabled = section.disabled || disabled;
27272
27271
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27273
- _chunkE6WANQ6Kcjs.Button,
27272
+ _chunkIMK6RUECcjs.Button,
27274
27273
  {
27275
27274
  onClick,
27276
27275
  disabled: isDisabled,
@@ -28198,7 +28197,7 @@ var FiltersDropdown = ({
28198
28197
  }) }),
28199
28198
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-3 mt-4 shrink-0", children: [
28200
28199
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28201
- _chunkE6WANQ6Kcjs.Button,
28200
+ _chunkIMK6RUECcjs.Button,
28202
28201
  {
28203
28202
  variant: "outline",
28204
28203
  onClick: handleReset,
@@ -28208,7 +28207,7 @@ var FiltersDropdown = ({
28208
28207
  }
28209
28208
  ),
28210
28209
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28211
- _chunkE6WANQ6Kcjs.Button,
28210
+ _chunkIMK6RUECcjs.Button,
28212
28211
  {
28213
28212
  variant: "accent",
28214
28213
  onClick: handleApply,
@@ -28439,7 +28438,7 @@ function MediaGalleryManager({
28439
28438
  children: [
28440
28439
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute top-2 left-2 opacity-0 group-hover:opacity-100 transition-opacity cursor-move z-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.GripVertical, { className: "h-4 w-4 text-white drop-shadow" }) }),
28441
28440
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity z-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28442
- _chunkE6WANQ6Kcjs.Button,
28441
+ _chunkIMK6RUECcjs.Button,
28443
28442
  {
28444
28443
  type: "button",
28445
28444
  variant: "outline",
@@ -28489,7 +28488,7 @@ function MediaGalleryManager({
28489
28488
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-xs text-ods-text-secondary mt-1", children: "Maximum file size: 50MB" })
28490
28489
  ] }),
28491
28490
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28492
- _chunkE6WANQ6Kcjs.Button,
28491
+ _chunkIMK6RUECcjs.Button,
28493
28492
  {
28494
28493
  type: "button",
28495
28494
  variant: "outline",
@@ -28532,7 +28531,7 @@ function MediaGalleryManager({
28532
28531
  }
28533
28532
 
28534
28533
  // src/components/features/more-about-button.tsx
28535
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
28534
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
28536
28535
 
28537
28536
 
28538
28537
  var MoreAboutButton = ({
@@ -28540,7 +28539,7 @@ var MoreAboutButton = ({
28540
28539
  className = ""
28541
28540
  }) => {
28542
28541
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28543
- _chunkE6WANQ6Kcjs.Button,
28542
+ _chunkIMK6RUECcjs.Button,
28544
28543
  {
28545
28544
  size: "default",
28546
28545
  variant: "transparent",
@@ -28947,7 +28946,7 @@ function getOpenFrameDoctorCommand(platform) {
28947
28946
  }
28948
28947
 
28949
28948
  // src/components/features/platform-filter.tsx
28950
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
28949
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
28951
28950
 
28952
28951
  function PlatformFilterComponent({
28953
28952
  selectedPlatform,
@@ -28959,7 +28958,7 @@ function PlatformFilterComponent({
28959
28958
  }) {
28960
28959
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex items-center gap-2 flex-wrap ${className}`, children: [
28961
28960
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28962
- _chunkE6WANQ6Kcjs.Button,
28961
+ _chunkIMK6RUECcjs.Button,
28963
28962
  {
28964
28963
  type: "button",
28965
28964
  variant: selectedPlatform === "all" ? "accent" : "outline",
@@ -28970,7 +28969,7 @@ function PlatformFilterComponent({
28970
28969
  }
28971
28970
  ),
28972
28971
  platforms.map((platform) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28973
- _chunkE6WANQ6Kcjs.Button,
28972
+ _chunkIMK6RUECcjs.Button,
28974
28973
  {
28975
28974
  type: "button",
28976
28975
  variant: selectedPlatform === platform.value ? "accent" : "outline",
@@ -29233,7 +29232,7 @@ function ReleaseMediaManager({
29233
29232
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-xs text-ods-text-secondary mt-1", children: "Maximum file size: 50MB" })
29234
29233
  ] }),
29235
29234
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29236
- _chunkE6WANQ6Kcjs.Button,
29235
+ _chunkIMK6RUECcjs.Button,
29237
29236
  {
29238
29237
  type: "button",
29239
29238
  variant: "outline",
@@ -29276,7 +29275,7 @@ function ReleaseMediaManager({
29276
29275
  children: [
29277
29276
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute top-2 left-2 opacity-0 group-hover:opacity-100 transition-opacity cursor-move z-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.GripVertical, { className: "h-4 w-4 text-white drop-shadow" }) }),
29278
29277
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity z-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29279
- _chunkE6WANQ6Kcjs.Button,
29278
+ _chunkIMK6RUECcjs.Button,
29280
29279
  {
29281
29280
  type: "button",
29282
29281
  variant: "outline",
@@ -29331,7 +29330,7 @@ function ReleaseMediaManager({
29331
29330
  )
29332
29331
  ] }),
29333
29332
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29334
- _chunkE6WANQ6Kcjs.Input,
29333
+ _chunkIMK6RUECcjs.Input,
29335
29334
  {
29336
29335
  placeholder: "Title (optional)",
29337
29336
  value: item.title,
@@ -29484,7 +29483,7 @@ function SEOEditorPreview({
29484
29483
  ] })
29485
29484
  ] }),
29486
29485
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29487
- _chunkE6WANQ6Kcjs.Input,
29486
+ _chunkIMK6RUECcjs.Input,
29488
29487
  {
29489
29488
  value: seoTitle || "",
29490
29489
  onChange: (e) => onSeoTitleChange(e.target.value),
@@ -29531,7 +29530,7 @@ function SEOEditorPreview({
29531
29530
  ] })
29532
29531
  ] }),
29533
29532
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29534
- _chunkE6WANQ6Kcjs.Input,
29533
+ _chunkIMK6RUECcjs.Input,
29535
29534
  {
29536
29535
  value: seoKeywords || "",
29537
29536
  onChange: (e) => onSeoKeywordsChange(e.target.value),
@@ -29588,7 +29587,7 @@ function SEOEditorPreview({
29588
29587
  ),
29589
29588
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "absolute inset-0 bg-black bg-opacity-0 group-hover:bg-opacity-40 transition-all rounded-lg flex items-center justify-center gap-2", children: [
29590
29589
  onOgImageUpload && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29591
- _chunkE6WANQ6Kcjs.Button,
29590
+ _chunkIMK6RUECcjs.Button,
29592
29591
  {
29593
29592
  type: "button",
29594
29593
  variant: "outline",
@@ -29600,7 +29599,7 @@ function SEOEditorPreview({
29600
29599
  }
29601
29600
  ),
29602
29601
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29603
- _chunkE6WANQ6Kcjs.Button,
29602
+ _chunkIMK6RUECcjs.Button,
29604
29603
  {
29605
29604
  type: "button",
29606
29605
  variant: "outline",
@@ -29738,7 +29737,7 @@ function SocialLinksManager({
29738
29737
  }
29739
29738
  ) }),
29740
29739
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29741
- _chunkE6WANQ6Kcjs.Input,
29740
+ _chunkIMK6RUECcjs.Input,
29742
29741
  {
29743
29742
  placeholder: _optionalChain([platform, 'optionalAccess', _596 => _596.placeholder]) || "Profile URL",
29744
29743
  value: link.url,
@@ -29767,7 +29766,7 @@ function SocialLinksManager({
29767
29766
  }
29768
29767
  ),
29769
29768
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29770
- _chunkE6WANQ6Kcjs.Button,
29769
+ _chunkIMK6RUECcjs.Button,
29771
29770
  {
29772
29771
  type: "button",
29773
29772
  variant: "transparent",
@@ -29781,7 +29780,7 @@ function SocialLinksManager({
29781
29780
  }),
29782
29781
  links.length === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-center py-8 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm", children: "No social links added yet." }) }),
29783
29782
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29784
- _chunkE6WANQ6Kcjs.Button,
29783
+ _chunkIMK6RUECcjs.Button,
29785
29784
  {
29786
29785
  variant: "outline",
29787
29786
  onClick: addLink,
@@ -29795,7 +29794,7 @@ function SocialLinksManager({
29795
29794
  }
29796
29795
 
29797
29796
  // src/components/features/start-with-openframe-button.tsx
29798
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
29797
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
29799
29798
 
29800
29799
 
29801
29800
  var StartWithOpenFrameButton = React95.forwardRef(({ children = "Start Free Trial", mode = "outline", className, buttonSize, loading = false, buttonBackgroundColor, buttonTextColor, ...props }, ref) => {
@@ -29831,7 +29830,7 @@ var StartWithOpenFrameButton = React95.forwardRef(({ children = "Start Free Tria
29831
29830
  iconUpperPath = "#1A1A1A";
29832
29831
  }
29833
29832
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29834
- _chunkE6WANQ6Kcjs.Button,
29833
+ _chunkIMK6RUECcjs.Button,
29835
29834
  {
29836
29835
  ref,
29837
29836
  ...props,
@@ -29866,7 +29865,7 @@ var StartWithOpenFrameButton = React95.forwardRef(({ children = "Start Free Tria
29866
29865
  StartWithOpenFrameButton.displayName = "StartWithOpenFrameButton";
29867
29866
 
29868
29867
  // src/components/features/status-filter-component.tsx
29869
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
29868
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
29870
29869
 
29871
29870
 
29872
29871
  function StatusFilterComponent({
@@ -29885,7 +29884,7 @@ function StatusFilterComponent({
29885
29884
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5 text-ods-text-secondary", children: "Status" })
29886
29885
  ] }),
29887
29886
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29888
- _chunkE6WANQ6Kcjs.Button,
29887
+ _chunkIMK6RUECcjs.Button,
29889
29888
  {
29890
29889
  type: "button",
29891
29890
  variant: selectedStatus === "all" ? "accent" : "outline",
@@ -29897,7 +29896,7 @@ function StatusFilterComponent({
29897
29896
  }
29898
29897
  ),
29899
29898
  filteredOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29900
- _chunkE6WANQ6Kcjs.Button,
29899
+ _chunkIMK6RUECcjs.Button,
29901
29900
  {
29902
29901
  type: "button",
29903
29902
  variant: selectedStatus === option.value ? "accent" : "outline",
@@ -30037,7 +30036,7 @@ function TagsSelector({
30037
30036
  }
30038
30037
  ),
30039
30038
  searchQuery && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30040
- _chunkE6WANQ6Kcjs.Button,
30039
+ _chunkIMK6RUECcjs.Button,
30041
30040
  {
30042
30041
  variant: "transparent",
30043
30042
  type: "button",
@@ -30053,7 +30052,7 @@ function TagsSelector({
30053
30052
  ] }),
30054
30053
  showDropdown && !disabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute z-50 w-full mt-1 bg-ods-card border border-ods-border rounded-lg shadow-lg max-h-60 overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "p-3", children: [
30055
30054
  canCreateNewTag && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30056
- _chunkE6WANQ6Kcjs.Button,
30055
+ _chunkIMK6RUECcjs.Button,
30057
30056
  {
30058
30057
  variant: "outline",
30059
30058
  type: "button",
@@ -30072,7 +30071,7 @@ function TagsSelector({
30072
30071
  }
30073
30072
  ),
30074
30073
  filteredTags.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap gap-1.5", children: filteredTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30075
- _chunkE6WANQ6Kcjs.Button,
30074
+ _chunkIMK6RUECcjs.Button,
30076
30075
  {
30077
30076
  variant: "outline",
30078
30077
  type: "button",
@@ -30149,7 +30148,7 @@ function getCaptionsUrl(entityType, entityId, srtContent) {
30149
30148
  // src/components/features/video-source-selector.tsx
30150
30149
 
30151
30150
 
30152
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
30151
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
30153
30152
 
30154
30153
  function VideoSourceSelector({
30155
30154
  videoSourceType,
@@ -30219,7 +30218,7 @@ function VideoSourceSelector({
30219
30218
  ] }),
30220
30219
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2", children: [
30221
30220
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30222
- _chunkE6WANQ6Kcjs.Button,
30221
+ _chunkIMK6RUECcjs.Button,
30223
30222
  {
30224
30223
  type: "button",
30225
30224
  variant: videoSourceType === "youtube" ? "accent" : "outline",
@@ -30230,7 +30229,7 @@ function VideoSourceSelector({
30230
30229
  }
30231
30230
  ),
30232
30231
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30233
- _chunkE6WANQ6Kcjs.Button,
30232
+ _chunkIMK6RUECcjs.Button,
30234
30233
  {
30235
30234
  type: "button",
30236
30235
  variant: videoSourceType === "uploaded" ? "accent" : "outline",
@@ -30244,7 +30243,7 @@ function VideoSourceSelector({
30244
30243
  videoSourceType === "youtube" && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
30245
30244
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { children: youtubeLabel }),
30246
30245
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30247
- _chunkE6WANQ6Kcjs.Input,
30246
+ _chunkIMK6RUECcjs.Input,
30248
30247
  {
30249
30248
  value: youtubeUrl,
30250
30249
  onChange: (e) => onYoutubeUrlChange(e.target.value),
@@ -30262,7 +30261,7 @@ function VideoSourceSelector({
30262
30261
  showAIBadge && isAIGenerated && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {})
30263
30262
  ] }),
30264
30263
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30265
- _chunkE6WANQ6Kcjs.Button,
30264
+ _chunkIMK6RUECcjs.Button,
30266
30265
  {
30267
30266
  type: "button",
30268
30267
  variant: "outline",
@@ -30549,13 +30548,13 @@ function TranscriptSummaryEditor({
30549
30548
  // src/components/features/highlight-video-section.tsx
30550
30549
 
30551
30550
 
30552
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
30551
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
30553
30552
 
30554
30553
  // src/components/features/ai-enrich/AIEnrichSection.tsx
30555
30554
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
30556
30555
 
30557
30556
  // src/components/features/ai-enrich/AIEnrichButton.tsx
30558
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
30557
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
30559
30558
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
30560
30559
 
30561
30560
  var sizeMap = {
@@ -30579,7 +30578,7 @@ var AIEnrichButton = ({
30579
30578
  className
30580
30579
  }) => {
30581
30580
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30582
- _chunkE6WANQ6Kcjs.Button,
30581
+ _chunkIMK6RUECcjs.Button,
30583
30582
  {
30584
30583
  type: "button",
30585
30584
  onClick,
@@ -30648,7 +30647,7 @@ var AIWarningsSection = ({
30648
30647
  };
30649
30648
 
30650
30649
  // src/components/features/ai-enrich/AIEnrichSection.tsx
30651
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
30650
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
30652
30651
 
30653
30652
 
30654
30653
  var AIEnrichSection = ({
@@ -30754,7 +30753,7 @@ var AIEnrichSection = ({
30754
30753
  }
30755
30754
  ),
30756
30755
  showCancel && onCancel && loading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30757
- _chunkE6WANQ6Kcjs.Button,
30756
+ _chunkIMK6RUECcjs.Button,
30758
30757
  {
30759
30758
  type: "button",
30760
30759
  variant: "outline",
@@ -30803,7 +30802,7 @@ var AIEnrichSection = ({
30803
30802
  warnings && warnings.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIWarningsSection, { warnings }),
30804
30803
  children,
30805
30804
  showClearButton && onClear && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30806
- _chunkE6WANQ6Kcjs.Button,
30805
+ _chunkIMK6RUECcjs.Button,
30807
30806
  {
30808
30807
  variant: "outline",
30809
30808
  size: "small-legacy",
@@ -30935,7 +30934,7 @@ function HighlightVideoSection({
30935
30934
  highlightVideoDurationMs && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "outline", className: "text-xs", children: formatDuration2(highlightVideoDurationMs) })
30936
30935
  ] }),
30937
30936
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30938
- _chunkE6WANQ6Kcjs.Button,
30937
+ _chunkIMK6RUECcjs.Button,
30939
30938
  {
30940
30939
  type: "button",
30941
30940
  variant: "outline",
@@ -31327,7 +31326,7 @@ function HighlightGenerationSection({
31327
31326
 
31328
31327
  // src/components/features/highlight-video-preview.tsx
31329
31328
 
31330
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
31329
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
31331
31330
 
31332
31331
  function HighlightVideoPreview({
31333
31332
  highlightVideoUrl,
@@ -31367,7 +31366,7 @@ function HighlightVideoPreview({
31367
31366
  highlightVideoDurationMs && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "outline", className: "text-xs", children: formatDuration2(highlightVideoDurationMs) })
31368
31367
  ] }),
31369
31368
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31370
- _chunkE6WANQ6Kcjs.Button,
31369
+ _chunkIMK6RUECcjs.Button,
31371
31370
  {
31372
31371
  type: "button",
31373
31372
  variant: "outline",
@@ -31479,7 +31478,7 @@ function TranscribeAndSummarizeCombinedSection({
31479
31478
 
31480
31479
  // src/components/features/highlight-video-combined-section.tsx
31481
31480
 
31482
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
31481
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
31483
31482
 
31484
31483
  function HighlightVideoCombinedSection({
31485
31484
  // Config props
@@ -31577,7 +31576,7 @@ function HighlightVideoCombinedSection({
31577
31576
  highlightVideoDurationMs && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "outline", className: "text-xs", children: formatDuration2(highlightVideoDurationMs) })
31578
31577
  ] }),
31579
31578
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31580
- _chunkE6WANQ6Kcjs.Button,
31579
+ _chunkIMK6RUECcjs.Button,
31581
31580
  {
31582
31581
  type: "button",
31583
31582
  variant: "outline",
@@ -31679,7 +31678,7 @@ function ViewToggle({
31679
31678
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
31680
31679
 
31681
31680
 
31682
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
31681
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
31683
31682
 
31684
31683
  // src/components/dropdown-menu.tsx
31685
31684
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
@@ -31837,7 +31836,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
31837
31836
  ] }),
31838
31837
  editMode ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DropdownMenu2, { children: [
31839
31838
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuTrigger2, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31840
- _chunkE6WANQ6Kcjs.Button,
31839
+ _chunkIMK6RUECcjs.Button,
31841
31840
  {
31842
31841
  variant: "outline",
31843
31842
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDown, { className: "h-6 w-6 text-ods-text-secondary" }),
@@ -31893,7 +31892,7 @@ var CategorySection = ({
31893
31892
  ] }),
31894
31893
  editMode ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DropdownMenu2, { children: [
31895
31894
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuTrigger2, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31896
- _chunkE6WANQ6Kcjs.Button,
31895
+ _chunkIMK6RUECcjs.Button,
31897
31896
  {
31898
31897
  variant: "outline",
31899
31898
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDown, { className: "h-6 w-6 text-ods-text-secondary" }),
@@ -31938,7 +31937,7 @@ var CategorySection = ({
31938
31937
  }
31939
31938
  ),
31940
31939
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31941
- _chunkE6WANQ6Kcjs.Button,
31940
+ _chunkIMK6RUECcjs.Button,
31942
31941
  {
31943
31942
  type: "button",
31944
31943
  variant: "transparent",
@@ -32014,7 +32013,7 @@ var PolicyConfigurationPanel = ({
32014
32013
  PolicyConfigurationPanel.displayName = "PolicyConfigurationPanel";
32015
32014
 
32016
32015
  // src/components/features/waitlist-form.tsx
32017
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
32016
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
32018
32017
 
32019
32018
  // src/components/ui/phone-input.tsx
32020
32019
 
@@ -32082,7 +32081,7 @@ function PhoneInput({
32082
32081
  }
32083
32082
  ),
32084
32083
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32085
- _chunkE6WANQ6Kcjs.Input,
32084
+ _chunkIMK6RUECcjs.Input,
32086
32085
  {
32087
32086
  type: "tel",
32088
32087
  value,
@@ -32220,7 +32219,7 @@ function WaitlistForm({
32220
32219
  children: [
32221
32220
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HoneypotField, { ...honeypotInputProps }),
32222
32221
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32223
- _chunkE6WANQ6Kcjs.Input,
32222
+ _chunkIMK6RUECcjs.Input,
32224
32223
  {
32225
32224
  type: "email",
32226
32225
  value: email,
@@ -32295,7 +32294,7 @@ function WaitlistForm({
32295
32294
  }
32296
32295
  ),
32297
32296
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32298
- _chunkE6WANQ6Kcjs.Button,
32297
+ _chunkIMK6RUECcjs.Button,
32299
32298
  {
32300
32299
  type: "button",
32301
32300
  loading: isSubmitting,
@@ -33032,7 +33031,7 @@ var AppLayoutDrawerBody = DrawerBody;
33032
33031
  var AppLayoutDrawerFooter = DrawerFooter;
33033
33032
 
33034
33033
  // src/components/features/notifications/notification-drawer.tsx
33035
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
33034
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
33036
33035
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
33037
33036
 
33038
33037
  // src/components/features/notifications/notification-tile.tsx
@@ -33423,7 +33422,7 @@ function DesktopNotificationsToggleRow({ checked, onChange }) {
33423
33422
  }
33424
33423
  function NotificationsHistoryButton({ onClick, historyHref }) {
33425
33424
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33426
- _chunkE6WANQ6Kcjs.SplitButton,
33425
+ _chunkIMK6RUECcjs.SplitButton,
33427
33426
  {
33428
33427
  variant: "outline",
33429
33428
  fullWidth: true,
@@ -33532,7 +33531,7 @@ function NotificationPopups({
33532
33531
  }
33533
33532
 
33534
33533
  // src/components/features/notifications/approval-request-notification-tile.tsx
33535
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
33534
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
33536
33535
 
33537
33536
 
33538
33537
  // src/components/chat/types/chat.types.ts
@@ -33789,8 +33788,8 @@ function ApprovalRequestNotificationTile({
33789
33788
  paused: pinned || processing,
33790
33789
  actions: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xs)]", children: [
33791
33790
  status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
33792
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "accent", size: "small", onClick: () => resolve("approved", onApprove), disabled: processing, children: "Approve" }),
33793
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "outline", size: "small", onClick: () => resolve("rejected", onReject), disabled: processing, children: "Reject" })
33791
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "accent", size: "small", onClick: () => resolve("approved", onApprove), disabled: processing, children: "Approve" }),
33792
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "outline", size: "small", onClick: () => resolve("rejected", onReject), disabled: processing, children: "Reject" })
33794
33793
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
33795
33794
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalStatusTag, { status }),
33796
33795
  approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-h6 text-ods-text-secondary", children: [
@@ -33799,7 +33798,7 @@ function ApprovalRequestNotificationTile({
33799
33798
  ] }) : null
33800
33799
  ] }),
33801
33800
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33802
- _chunkE6WANQ6Kcjs.Button,
33801
+ _chunkIMK6RUECcjs.Button,
33803
33802
  {
33804
33803
  variant: "outline",
33805
33804
  size: "small",
@@ -33854,8 +33853,8 @@ function useOptionalTimeTracker() {
33854
33853
  // src/components/features/time-tracker/time-tracker-panel.tsx
33855
33854
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
33856
33855
 
33857
- _chunkE6WANQ6Kcjs.init_button.call(void 0, );
33858
- _chunkE6WANQ6Kcjs.init_split_button.call(void 0, );
33856
+ _chunkIMK6RUECcjs.init_button.call(void 0, );
33857
+ _chunkIMK6RUECcjs.init_split_button.call(void 0, );
33859
33858
 
33860
33859
  // src/components/features/time-tracker/use-tracker-clock.ts
33861
33860
 
@@ -33986,7 +33985,7 @@ function TimeTrackerPanel({
33986
33985
  ),
33987
33986
  children: [
33988
33987
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33989
- _chunkE6WANQ6Kcjs.Button,
33988
+ _chunkIMK6RUECcjs.Button,
33990
33989
  {
33991
33990
  variant: "transparent",
33992
33991
  size: "icon-sm",
@@ -34000,7 +33999,7 @@ function TimeTrackerPanel({
34000
33999
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)]", children: [
34001
34000
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, StatusTag, { status }),
34002
34001
  isActive && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34003
- _chunkE6WANQ6Kcjs.Button,
34002
+ _chunkIMK6RUECcjs.Button,
34004
34003
  {
34005
34004
  variant: "transparent",
34006
34005
  onClick: handleCancel,
@@ -34021,7 +34020,7 @@ function TimeTrackerPanel({
34021
34020
  }
34022
34021
  ) }),
34023
34022
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34024
- _chunkE6WANQ6Kcjs.Button,
34023
+ _chunkIMK6RUECcjs.Button,
34025
34024
  {
34026
34025
  size: "icon",
34027
34026
  variant: isActive ? "transparent" : "accent",
@@ -34033,7 +34032,7 @@ function TimeTrackerPanel({
34033
34032
  }
34034
34033
  ),
34035
34034
  isActive && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34036
- _chunkE6WANQ6Kcjs.Button,
34035
+ _chunkIMK6RUECcjs.Button,
34037
34036
  {
34038
34037
  size: "icon",
34039
34038
  variant: "accent",
@@ -34105,7 +34104,7 @@ function TimeTrackerPanel({
34105
34104
  ] }),
34106
34105
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-2 gap-[var(--spacing-system-m)]", children: [
34107
34106
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34108
- _chunkE6WANQ6Kcjs.Button,
34107
+ _chunkIMK6RUECcjs.Button,
34109
34108
  {
34110
34109
  variant: "outline",
34111
34110
  className: "min-w-0",
@@ -34116,7 +34115,7 @@ function TimeTrackerPanel({
34116
34115
  }
34117
34116
  ),
34118
34117
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34119
- _chunkE6WANQ6Kcjs.SplitButton,
34118
+ _chunkIMK6RUECcjs.SplitButton,
34120
34119
  {
34121
34120
  variant: "outline",
34122
34121
  fullWidth: true,
@@ -34129,14 +34128,15 @@ function TimeTrackerPanel({
34129
34128
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.ArrowRightUpIcon, { size: 24 }),
34130
34129
  "aria-label": "Open my time in a new view",
34131
34130
  onClick: onOpenMyTimeMenu,
34132
- disabled: !onOpenMyTimeMenu
34131
+ disabled: !onOpenMyTimeMenu,
34132
+ openInNewTab: true
34133
34133
  },
34134
34134
  children: "Open My Time"
34135
34135
  }
34136
34136
  )
34137
34137
  ] })
34138
34138
  ] }),
34139
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Button, { variant: "outline", fullWidth: true, onClick: onClose, className: "md:hidden", children: "Close" })
34139
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Button, { variant: "outline", fullWidth: true, onClick: onClose, className: "md:hidden", children: "Close" })
34140
34140
  ]
34141
34141
  }
34142
34142
  );
@@ -34162,7 +34162,7 @@ function LastEntryRow({ entry, onClick }) {
34162
34162
  entry.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h6 text-ods-text-secondary", children: entry.description })
34163
34163
  ] }),
34164
34164
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34165
- _chunkE6WANQ6Kcjs.Button,
34165
+ _chunkIMK6RUECcjs.Button,
34166
34166
  {
34167
34167
  variant: "outline",
34168
34168
  size: "icon",
@@ -34330,7 +34330,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
34330
34330
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
34331
34331
 
34332
34332
  // src/components/features/board/board-column-header.tsx
34333
- _chunkE6WANQ6Kcjs.init_button.call(void 0, );
34333
+ _chunkIMK6RUECcjs.init_button.call(void 0, );
34334
34334
 
34335
34335
  function BoardColumnHeader({
34336
34336
  column,
@@ -34345,7 +34345,7 @@ function BoardColumnHeader({
34345
34345
  if (collapsed) {
34346
34346
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
34347
34347
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34348
- _chunkE6WANQ6Kcjs.Button,
34348
+ _chunkIMK6RUECcjs.Button,
34349
34349
  {
34350
34350
  variant: "transparent",
34351
34351
  size: "icon",
@@ -34388,7 +34388,7 @@ function BoardColumnHeader({
34388
34388
  ] }),
34389
34389
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
34390
34390
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34391
- _chunkE6WANQ6Kcjs.Button,
34391
+ _chunkIMK6RUECcjs.Button,
34392
34392
  {
34393
34393
  variant: "transparent",
34394
34394
  size: "icon",
@@ -34399,7 +34399,7 @@ function BoardColumnHeader({
34399
34399
  }
34400
34400
  ),
34401
34401
  onArchive && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34402
- _chunkE6WANQ6Kcjs.Button,
34402
+ _chunkIMK6RUECcjs.Button,
34403
34403
  {
34404
34404
  variant: "transparent",
34405
34405
  size: "icon",
@@ -34410,7 +34410,7 @@ function BoardColumnHeader({
34410
34410
  }
34411
34411
  ),
34412
34412
  onAddTicket && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34413
- _chunkE6WANQ6Kcjs.Button,
34413
+ _chunkIMK6RUECcjs.Button,
34414
34414
  {
34415
34415
  variant: "transparent",
34416
34416
  size: "icon",
@@ -34674,20 +34674,20 @@ var TicketCardSkeleton = React104.forwardRef(
34674
34674
  children: [
34675
34675
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-sf)]", children: [
34676
34676
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
34677
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-h3 flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-4 w-3/4" }) }),
34677
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-h3 flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-4 w-3/4" }) }),
34678
34678
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-h6 flex items-center gap-[var(--spacing-system-xxs)]", children: [
34679
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-4 shrink-0 rounded-sm" }),
34680
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-3 w-1/2" })
34679
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-4 shrink-0 rounded-sm" }),
34680
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-3 w-1/2" })
34681
34681
  ] })
34682
34682
  ] }),
34683
34683
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
34684
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-4 rounded-sm" }),
34685
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "size-8 rounded-full" })
34684
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-4 rounded-sm" }),
34685
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "size-8 rounded-full" })
34686
34686
  ] })
34687
34687
  ] }),
34688
34688
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-8 items-center gap-[var(--spacing-system-xxs)]", children: [
34689
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-8 w-16 rounded-md" }),
34690
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.Skeleton, { className: "h-8 w-12 rounded-md" })
34689
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-8 w-16 rounded-md" }),
34690
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.Skeleton, { className: "h-8 w-12 rounded-md" })
34691
34691
  ] })
34692
34692
  ]
34693
34693
  }
@@ -35239,12 +35239,12 @@ function SortableRow({
35239
35239
  // src/components/navigation/header.tsx
35240
35240
  _chunkWBR7H6E3cjs.init_next_link.call(void 0, );
35241
35241
 
35242
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
35242
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
35243
35243
 
35244
35244
  // src/components/navigation/mobile-nav-panel.tsx
35245
35245
 
35246
35246
 
35247
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
35247
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
35248
35248
 
35249
35249
 
35250
35250
  var MOBILE_NAV_PANEL_ID = "mobile-nav-panel";
@@ -35266,7 +35266,7 @@ function MobileNavPanel({ isOpen, config }) {
35266
35266
  };
35267
35267
  if (item.href) {
35268
35268
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35269
- _chunkE6WANQ6Kcjs.Button,
35269
+ _chunkIMK6RUECcjs.Button,
35270
35270
  {
35271
35271
  variant: "outline",
35272
35272
  size: "small-legacy",
@@ -35284,7 +35284,7 @@ function MobileNavPanel({ isOpen, config }) {
35284
35284
  );
35285
35285
  }
35286
35286
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35287
- _chunkE6WANQ6Kcjs.Button,
35287
+ _chunkIMK6RUECcjs.Button,
35288
35288
  {
35289
35289
  variant: "outline",
35290
35290
  size: "small-legacy",
@@ -35337,7 +35337,7 @@ function MobileNavPanel({ isOpen, config }) {
35337
35337
  onClick: (e) => e.stopPropagation(),
35338
35338
  children: [
35339
35339
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex justify-end p-2 border-b border-ods-border flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35340
- _chunkE6WANQ6Kcjs.Button,
35340
+ _chunkIMK6RUECcjs.Button,
35341
35341
  {
35342
35342
  "aria-label": "Close menu",
35343
35343
  size: "icon",
@@ -35479,7 +35479,7 @@ function Header2({ config, platform }) {
35479
35479
  const isOpen = openDropdowns[item.id] || false;
35480
35480
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", children: [
35481
35481
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35482
- _chunkE6WANQ6Kcjs.Button,
35482
+ _chunkIMK6RUECcjs.Button,
35483
35483
  {
35484
35484
  ref: (el) => {
35485
35485
  triggerRefs.current[item.id] = el;
@@ -35523,7 +35523,7 @@ function Header2({ config, platform }) {
35523
35523
  ),
35524
35524
  children: [
35525
35525
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-2", children: item.children.map((child, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35526
- _chunkE6WANQ6Kcjs.Button,
35526
+ _chunkIMK6RUECcjs.Button,
35527
35527
  {
35528
35528
  variant: "transparent",
35529
35529
  size: "small-legacy",
@@ -35561,7 +35561,7 @@ function Header2({ config, platform }) {
35561
35561
  }
35562
35562
  if (item.href || item.onClick) {
35563
35563
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35564
- _chunkE6WANQ6Kcjs.Button,
35564
+ _chunkIMK6RUECcjs.Button,
35565
35565
  {
35566
35566
  variant: "transparent",
35567
35567
  href: item.href,
@@ -35586,7 +35586,7 @@ function Header2({ config, platform }) {
35586
35586
  );
35587
35587
  }
35588
35588
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35589
- _chunkE6WANQ6Kcjs.Button,
35589
+ _chunkIMK6RUECcjs.Button,
35590
35590
  {
35591
35591
  variant: "transparent",
35592
35592
  onClick: item.onClick,
@@ -35654,7 +35654,7 @@ function Header2({ config, platform }) {
35654
35654
  _optionalChain([config, 'access', _735 => _735.actions, 'optionalAccess', _736 => _736.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
35655
35655
  _optionalChain([config, 'access', _737 => _737.actions, 'optionalAccess', _738 => _738.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent }),
35656
35656
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35657
- _chunkE6WANQ6Kcjs.Button,
35657
+ _chunkIMK6RUECcjs.Button,
35658
35658
  {
35659
35659
  variant: "outline",
35660
35660
  size: "icon",
@@ -35740,7 +35740,7 @@ function ClientOnlyHeader({ config, skeleton }) {
35740
35740
 
35741
35741
 
35742
35742
 
35743
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
35743
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
35744
35744
 
35745
35745
  function SlidingSidebar({ config }) {
35746
35746
  const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
@@ -35781,7 +35781,7 @@ function SlidingSidebar({ config }) {
35781
35781
  );
35782
35782
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
35783
35783
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35784
- _chunkE6WANQ6Kcjs.Button,
35784
+ _chunkIMK6RUECcjs.Button,
35785
35785
  {
35786
35786
  variant: "transparent",
35787
35787
  size: "default",
@@ -35819,7 +35819,7 @@ function SlidingSidebar({ config }) {
35819
35819
  }
35820
35820
  if (item.href) {
35821
35821
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35822
- _chunkE6WANQ6Kcjs.Button,
35822
+ _chunkIMK6RUECcjs.Button,
35823
35823
  {
35824
35824
  variant: "transparent",
35825
35825
  size: "default",
@@ -35842,7 +35842,7 @@ function SlidingSidebar({ config }) {
35842
35842
  );
35843
35843
  }
35844
35844
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35845
- _chunkE6WANQ6Kcjs.Button,
35845
+ _chunkIMK6RUECcjs.Button,
35846
35846
  {
35847
35847
  variant: "transparent",
35848
35848
  size: "default",
@@ -36437,8 +36437,8 @@ function HeaderOrganizationFilter({
36437
36437
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
36438
36438
  const displayName = _optionalChain([selectedOrg, 'optionalAccess', _783 => _783.name]) || "All Organizations";
36439
36439
  const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _784 => _784.deviceCount]), () => ( totalDeviceCount));
36440
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenu, { children: [
36441
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36440
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenu, { children: [
36441
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36442
36442
  "button",
36443
36443
  {
36444
36444
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
@@ -36460,10 +36460,10 @@ function HeaderOrganizationFilter({
36460
36460
  ]
36461
36461
  }
36462
36462
  ) }),
36463
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
36464
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _785 => _785("")]), children: "All Organizations" }),
36463
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
36464
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _785 => _785("")]), children: "All Organizations" }),
36465
36465
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36466
- _chunkE6WANQ6Kcjs.DropdownMenuItem,
36466
+ _chunkIMK6RUECcjs.DropdownMenuItem,
36467
36467
  {
36468
36468
  onClick: () => _optionalChain([onOrgChange, 'optionalCall', _786 => _786(org.id)]),
36469
36469
  children: org.name
@@ -36565,8 +36565,8 @@ var AppHeader = React121.default.memo(function AppHeader2({
36565
36565
  dimmedClass
36566
36566
  }
36567
36567
  ),
36568
- isMdUp && showUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenu, { children: [
36569
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE6WANQ6Kcjs.DropdownMenuTrigger, { asChild: true, disabled, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36568
+ isMdUp && showUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenu, { children: [
36569
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuTrigger, { asChild: true, disabled, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36570
36570
  HeaderButton,
36571
36571
  {
36572
36572
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -36588,7 +36588,7 @@ var AppHeader = React121.default.memo(function AppHeader2({
36588
36588
  }
36589
36589
  ) }),
36590
36590
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36591
- _chunkE6WANQ6Kcjs.DropdownMenuContent,
36591
+ _chunkIMK6RUECcjs.DropdownMenuContent,
36592
36592
  {
36593
36593
  align: "end",
36594
36594
  className: "w-[280px] p-0 bg-ods-bg border-ods-border rounded-[6px] overflow-hidden z-[104]",
@@ -36610,7 +36610,7 @@ var AppHeader = React121.default.memo(function AppHeader2({
36610
36610
  ] })
36611
36611
  ] }),
36612
36612
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36613
- _chunkE6WANQ6Kcjs.DropdownMenuItem,
36613
+ _chunkIMK6RUECcjs.DropdownMenuItem,
36614
36614
  {
36615
36615
  onClick: onProfile,
36616
36616
  className: "bg-ods-card border-b border-ods-border rounded-none px-3 py-3 hover:bg-ods-bg-card/80 focus:bg-ods-bg-card/80 cursor-pointer",
@@ -36621,7 +36621,7 @@ var AppHeader = React121.default.memo(function AppHeader2({
36621
36621
  }
36622
36622
  ),
36623
36623
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36624
- _chunkE6WANQ6Kcjs.DropdownMenuItem,
36624
+ _chunkIMK6RUECcjs.DropdownMenuItem,
36625
36625
  {
36626
36626
  onClick: onLogout,
36627
36627
  className: "bg-ods-card rounded-none px-3 py-3 hover:bg-ods-bg-card/80 focus:bg-ods-bg-card/80 cursor-pointer",
@@ -36819,7 +36819,7 @@ var MobileBurgerMenu = React121.default.memo(function MobileBurgerMenu2({
36819
36819
  ] }),
36820
36820
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 shrink-0", children: [
36821
36821
  onSearchUser && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36822
- _chunkE6WANQ6Kcjs.Button,
36822
+ _chunkIMK6RUECcjs.Button,
36823
36823
  {
36824
36824
  size: "icon",
36825
36825
  onClick: onSearchUser,
@@ -36829,7 +36829,7 @@ var MobileBurgerMenu = React121.default.memo(function MobileBurgerMenu2({
36829
36829
  }
36830
36830
  ),
36831
36831
  onEditProfile && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36832
- _chunkE6WANQ6Kcjs.Button,
36832
+ _chunkIMK6RUECcjs.Button,
36833
36833
  {
36834
36834
  size: "icon",
36835
36835
  onClick: onEditProfile,
@@ -37402,7 +37402,7 @@ ScriptInfoSection.displayName = "ScriptInfoSection";
37402
37402
 
37403
37403
  // src/components/platform/ScriptArguments.tsx
37404
37404
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
37405
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
37405
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
37406
37406
 
37407
37407
 
37408
37408
  var ScriptArguments = ({
@@ -37453,7 +37453,7 @@ var ScriptArguments = ({
37453
37453
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col gap-1 min-w-0", children: [
37454
37454
  isFirstRow(index) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { spacing: "tight", children: titleLabel }),
37455
37455
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37456
- _chunkE6WANQ6Kcjs.Input,
37456
+ _chunkIMK6RUECcjs.Input,
37457
37457
  {
37458
37458
  value: arg.key,
37459
37459
  onChange: (e) => handleKeyChange(arg.id, e.target.value),
@@ -37464,7 +37464,7 @@ var ScriptArguments = ({
37464
37464
  ] }),
37465
37465
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 gap-2 items-center min-w-0", children: [
37466
37466
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-1 flex-col gap-1 min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37467
- _chunkE6WANQ6Kcjs.Input,
37467
+ _chunkIMK6RUECcjs.Input,
37468
37468
  {
37469
37469
  value: arg.value,
37470
37470
  onChange: (e) => handleValueChange(arg.id, e.target.value),
@@ -37476,7 +37476,7 @@ var ScriptArguments = ({
37476
37476
  }
37477
37477
  ) }),
37478
37478
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37479
- _chunkE6WANQ6Kcjs.Button,
37479
+ _chunkIMK6RUECcjs.Button,
37480
37480
  {
37481
37481
  type: "button",
37482
37482
  variant: "outline",
@@ -37493,7 +37493,7 @@ var ScriptArguments = ({
37493
37493
  arg.id
37494
37494
  )),
37495
37495
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex justify-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37496
- _chunkE6WANQ6Kcjs.Button,
37496
+ _chunkIMK6RUECcjs.Button,
37497
37497
  {
37498
37498
  type: "button",
37499
37499
  variant: "outline",
@@ -37510,12 +37510,12 @@ var ScriptArguments = ({
37510
37510
  ScriptArguments.displayName = "ScriptArguments";
37511
37511
 
37512
37512
  // src/components/shared/onboarding/onboarding-walkthrough.tsx
37513
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
37513
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
37514
37514
 
37515
37515
 
37516
37516
  // src/components/shared/onboarding/onboarding-step-card.tsx
37517
37517
 
37518
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
37518
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
37519
37519
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
37520
37520
 
37521
37521
  function OnboardingStepCard({
@@ -37572,7 +37572,7 @@ function OnboardingStepCard({
37572
37572
  }
37573
37573
  ),
37574
37574
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37575
- _chunkE6WANQ6Kcjs.Button,
37575
+ _chunkIMK6RUECcjs.Button,
37576
37576
  {
37577
37577
  variant: "outline",
37578
37578
  onClick: handleAction,
@@ -37590,7 +37590,7 @@ function OnboardingStepCard({
37590
37590
  }
37591
37591
  ) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
37592
37592
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37593
- _chunkE6WANQ6Kcjs.Button,
37593
+ _chunkIMK6RUECcjs.Button,
37594
37594
  {
37595
37595
  variant: "outline",
37596
37596
  onClick: handleSkip,
@@ -37598,7 +37598,7 @@ function OnboardingStepCard({
37598
37598
  }
37599
37599
  ),
37600
37600
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37601
- _chunkE6WANQ6Kcjs.Button,
37601
+ _chunkIMK6RUECcjs.Button,
37602
37602
  {
37603
37603
  variant: "accent",
37604
37604
  onClick: handleAction,
@@ -37712,7 +37712,7 @@ function OnboardingWalkthrough({
37712
37712
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col md:flex-row items-start md:items-center justify-between gap-3 md:gap-0", children: [
37713
37713
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: SECTION_HEADING_CLASS, children: "Get Started" }),
37714
37714
  isLoadingCompletion ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[48px] w-full md:w-[160px] bg-ods-border rounded-[6px] animate-pulse" }) : isAllComplete ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37715
- _chunkE6WANQ6Kcjs.Button,
37715
+ _chunkIMK6RUECcjs.Button,
37716
37716
  {
37717
37717
  variant: "accent",
37718
37718
  onClick: handleDismiss,
@@ -37720,7 +37720,7 @@ function OnboardingWalkthrough({
37720
37720
  children: "Close Onboarding"
37721
37721
  }
37722
37722
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37723
- _chunkE6WANQ6Kcjs.Button,
37723
+ _chunkIMK6RUECcjs.Button,
37724
37724
  {
37725
37725
  variant: "outline",
37726
37726
  onClick: handleDismiss,
@@ -38132,7 +38132,7 @@ function TitleContentBlock({
38132
38132
  }
38133
38133
 
38134
38134
  // src/components/ui/error-state.tsx
38135
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
38135
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
38136
38136
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
38137
38137
 
38138
38138
 
@@ -38189,7 +38189,7 @@ function ErrorState({
38189
38189
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "text-sm", styles.text), children: message2 }),
38190
38190
  (showRetry || showHome) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 mt-3", children: [
38191
38191
  showRetry && onRetry && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38192
- _chunkE6WANQ6Kcjs.Button,
38192
+ _chunkIMK6RUECcjs.Button,
38193
38193
  {
38194
38194
  onClick: onRetry,
38195
38195
  variant: "outline",
@@ -38200,7 +38200,7 @@ function ErrorState({
38200
38200
  }
38201
38201
  ),
38202
38202
  showHome && onHome && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38203
- _chunkE6WANQ6Kcjs.Button,
38203
+ _chunkIMK6RUECcjs.Button,
38204
38204
  {
38205
38205
  onClick: onHome,
38206
38206
  variant: "outline",
@@ -38328,11 +38328,11 @@ var ListLoader = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Content
38328
38328
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
38329
38329
 
38330
38330
  init_pagination();
38331
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
38331
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
38332
38332
 
38333
38333
  // src/components/ui/cursor-pagination.tsx
38334
38334
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
38335
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
38335
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
38336
38336
 
38337
38337
 
38338
38338
  function CursorPagination({
@@ -38393,7 +38393,7 @@ function CursorPagination({
38393
38393
  showInfo && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-sm text-ods-text-secondary", children: displayText || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "\xA0" }) }),
38394
38394
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
38395
38395
  onReset ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38396
- _chunkE6WANQ6Kcjs.Button,
38396
+ _chunkIMK6RUECcjs.Button,
38397
38397
  {
38398
38398
  variant: "outline",
38399
38399
  size: compact ? "small-legacy" : "default",
@@ -38407,7 +38407,7 @@ function CursorPagination({
38407
38407
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: compact ? "hidden md:inline" : "", children: resetButtonLabel })
38408
38408
  }
38409
38409
  ) : hasPreviousPage !== void 0 && onPrevious && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38410
- _chunkE6WANQ6Kcjs.Button,
38410
+ _chunkIMK6RUECcjs.Button,
38411
38411
  {
38412
38412
  variant: "outline",
38413
38413
  size: compact ? "small-legacy" : "default",
@@ -38422,7 +38422,7 @@ function CursorPagination({
38422
38422
  }
38423
38423
  ),
38424
38424
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38425
- _chunkE6WANQ6Kcjs.Button,
38425
+ _chunkIMK6RUECcjs.Button,
38426
38426
  {
38427
38427
  variant: "outline",
38428
38428
  size: compact ? "small-legacy" : "default",
@@ -38453,7 +38453,7 @@ function CursorPaginationSimple({
38453
38453
  }) {
38454
38454
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-1", className), children: [
38455
38455
  onReset ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38456
- _chunkE6WANQ6Kcjs.Button,
38456
+ _chunkIMK6RUECcjs.Button,
38457
38457
  {
38458
38458
  variant: "transparent",
38459
38459
  size: "icon",
@@ -38464,7 +38464,7 @@ function CursorPaginationSimple({
38464
38464
  "aria-label": "First"
38465
38465
  }
38466
38466
  ) : hasPreviousPage !== void 0 && onPrevious && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38467
- _chunkE6WANQ6Kcjs.Button,
38467
+ _chunkIMK6RUECcjs.Button,
38468
38468
  {
38469
38469
  variant: "transparent",
38470
38470
  size: "icon",
@@ -38476,7 +38476,7 @@ function CursorPaginationSimple({
38476
38476
  }
38477
38477
  ),
38478
38478
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38479
- _chunkE6WANQ6Kcjs.Button,
38479
+ _chunkIMK6RUECcjs.Button,
38480
38480
  {
38481
38481
  variant: "transparent",
38482
38482
  size: "icon",
@@ -38651,7 +38651,7 @@ function TableHeader({
38651
38651
  ),
38652
38652
  children: [
38653
38653
  selectable && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center w-10 shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38654
- _chunkE6WANQ6Kcjs.Checkbox,
38654
+ _chunkIMK6RUECcjs.Checkbox,
38655
38655
  {
38656
38656
  checked: allSelected || someSelected && !allSelected ? true : false,
38657
38657
  onCheckedChange: onSelectAll,
@@ -38911,7 +38911,7 @@ function TableRow({
38911
38911
  ),
38912
38912
  children: [
38913
38913
  selectable && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center w-10 shrink-0 pointer-events-auto", "data-no-row-click": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38914
- _chunkE6WANQ6Kcjs.Checkbox,
38914
+ _chunkIMK6RUECcjs.Checkbox,
38915
38915
  {
38916
38916
  checked: selected,
38917
38917
  onCheckedChange: handleSelect,
@@ -38966,7 +38966,7 @@ function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref)
38966
38966
  width: "min-w-[100px] w-auto shrink-0 flex-none",
38967
38967
  align: "right",
38968
38968
  renderCell: (item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 items-center justify-end pointer-events-auto", "data-no-row-click": true, children: renderRowActions ? renderRowActions(item) : rowActions.map((action, actionIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38969
- _chunkE6WANQ6Kcjs.Button,
38969
+ _chunkIMK6RUECcjs.Button,
38970
38970
  {
38971
38971
  variant: "outline",
38972
38972
  onClick: (e) => {
@@ -38992,7 +38992,7 @@ function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref)
38992
38992
  const href = rowHref(item);
38993
38993
  if (!href) return null;
38994
38994
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-end pointer-events-auto", "data-no-row-click": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38995
- _chunkE6WANQ6Kcjs.Button,
38995
+ _chunkIMK6RUECcjs.Button,
38996
38996
  {
38997
38997
  href,
38998
38998
  prefetch: false,
@@ -39302,7 +39302,7 @@ function TableTimestampCell({
39302
39302
 
39303
39303
  // src/components/ui/query-report-table/query-report-table.tsx
39304
39304
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
39305
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
39305
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
39306
39306
 
39307
39307
 
39308
39308
  // src/components/ui/query-report-table/query-report-table-header.tsx
@@ -39570,7 +39570,7 @@ function QueryReportTable({
39570
39570
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
39571
39571
  headerActions,
39572
39572
  showExport && data.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39573
- _chunkE6WANQ6Kcjs.Button,
39573
+ _chunkIMK6RUECcjs.Button,
39574
39574
  {
39575
39575
  className: "bg-ods-card",
39576
39576
  variant: "outline",
@@ -41475,7 +41475,7 @@ function FileUpload({
41475
41475
  const displayError = error || validationError || void 0;
41476
41476
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
41477
41477
  const showDropzone = multiple || !hasFiles;
41478
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
41478
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
41479
41479
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41480
41480
  "input",
41481
41481
  {
@@ -41692,7 +41692,7 @@ function ImageUploader({
41692
41692
  }
41693
41693
  };
41694
41694
  const isActionState = dragActive || pressed && !hasImage;
41695
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
41695
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
41696
41696
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41697
41697
  "input",
41698
41698
  {
@@ -41807,7 +41807,7 @@ function ActionIconButton({ onClick, disabled, ariaLabel, children }) {
41807
41807
  // src/components/ui/ticket-status-config-row.tsx
41808
41808
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
41809
41809
 
41810
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
41810
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
41811
41811
 
41812
41812
  // src/components/ui/color-preset-select.tsx
41813
41813
 
@@ -41925,7 +41925,7 @@ function HexInputs({ value, onChange }) {
41925
41925
  else setDraft(value);
41926
41926
  };
41927
41927
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41928
- _chunkE6WANQ6Kcjs.Input,
41928
+ _chunkIMK6RUECcjs.Input,
41929
41929
  {
41930
41930
  type: "text",
41931
41931
  value: draft,
@@ -41961,7 +41961,7 @@ function ChannelInput({
41961
41961
  onCommit(Math.max(min, Math.min(max, parsed)));
41962
41962
  };
41963
41963
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41964
- _chunkE6WANQ6Kcjs.Input,
41964
+ _chunkIMK6RUECcjs.Input,
41965
41965
  {
41966
41966
  type: "text",
41967
41967
  inputMode: "numeric",
@@ -42161,7 +42161,7 @@ function TicketStatusConfigRow({
42161
42161
  ) }),
42162
42162
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-wrap items-start gap-x-3 gap-y-4 md:flex-nowrap md:gap-[var(--spacing-system-m)]", children: [
42163
42163
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xxs)]", colClass), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42164
- _chunkE6WANQ6Kcjs.Input,
42164
+ _chunkIMK6RUECcjs.Input,
42165
42165
  {
42166
42166
  value: name,
42167
42167
  onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _937 => _937(e.target.value)]),
@@ -42194,7 +42194,7 @@ function TicketStatusConfigRow({
42194
42194
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.InfoCircleIcon, { size: 24 })
42195
42195
  }
42196
42196
  ) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, WithLeftTooltip, { content: deleteDisabled ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42197
- _chunkE6WANQ6Kcjs.Button,
42197
+ _chunkIMK6RUECcjs.Button,
42198
42198
  {
42199
42199
  type: "button",
42200
42200
  variant: "outline",
@@ -42346,7 +42346,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
42346
42346
  ),
42347
42347
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0 overflow-hidden", children: isEditing ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
42348
42348
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42349
- _chunkE6WANQ6Kcjs.Input,
42349
+ _chunkIMK6RUECcjs.Input,
42350
42350
  {
42351
42351
  value: editText,
42352
42352
  onChange: (e) => setEditText(e.target.value),
@@ -42452,7 +42452,7 @@ function TicketNotesSection({
42452
42452
  )),
42453
42453
  onAddNote && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
42454
42454
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42455
- _chunkE6WANQ6Kcjs.Input,
42455
+ _chunkIMK6RUECcjs.Input,
42456
42456
  {
42457
42457
  value: noteText,
42458
42458
  onChange: (e) => setNoteText(e.target.value),
@@ -42631,7 +42631,7 @@ function TicketInfoSection({
42631
42631
  }
42632
42632
 
42633
42633
  // src/components/ui/filter-pill-row.tsx
42634
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
42634
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
42635
42635
 
42636
42636
 
42637
42637
  function FilterPillRow({
@@ -42648,7 +42648,7 @@ function FilterPillRow({
42648
42648
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5 text-ods-text-secondary", children: label })
42649
42649
  ] }),
42650
42650
  children || options.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42651
- _chunkE6WANQ6Kcjs.Button,
42651
+ _chunkIMK6RUECcjs.Button,
42652
42652
  {
42653
42653
  type: "button",
42654
42654
  variant: selectedValue === opt.value ? "accent" : "outline",
@@ -42723,7 +42723,7 @@ function ImageGalleryModal({
42723
42723
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex items-center justify-center bg-black rounded-lg", children: [
42724
42724
  images.length > 1 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
42725
42725
  selectedImageIndex > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute left-4 top-1/2 -translate-y-1/2 z-[10000]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42726
- _chunkE6WANQ6Kcjs.Button,
42726
+ _chunkIMK6RUECcjs.Button,
42727
42727
  {
42728
42728
  variant: "transparent",
42729
42729
  size: "small-legacy",
@@ -42733,7 +42733,7 @@ function ImageGalleryModal({
42733
42733
  }
42734
42734
  ) }),
42735
42735
  selectedImageIndex < images.length - 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute right-4 top-1/2 -translate-y-1/2 z-[10000]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42736
- _chunkE6WANQ6Kcjs.Button,
42736
+ _chunkIMK6RUECcjs.Button,
42737
42737
  {
42738
42738
  variant: "transparent",
42739
42739
  size: "small-legacy",
@@ -43049,7 +43049,7 @@ function RoadmapCard({
43049
43049
  ] }),
43050
43050
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
43051
43051
  item.screenshots && item.screenshots.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43052
- _chunkE6WANQ6Kcjs.Button,
43052
+ _chunkIMK6RUECcjs.Button,
43053
43053
  {
43054
43054
  variant: "outline",
43055
43055
  size: "small-legacy",
@@ -43060,7 +43060,7 @@ function RoadmapCard({
43060
43060
  (() => {
43061
43061
  const figmaSafe = safeHref(item.figmaUrl);
43062
43062
  return figmaSafe ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43063
- _chunkE6WANQ6Kcjs.Button,
43063
+ _chunkIMK6RUECcjs.Button,
43064
43064
  {
43065
43065
  variant: "outline",
43066
43066
  size: "small-legacy",
@@ -45097,7 +45097,7 @@ function cleanEscapedString(input) {
45097
45097
  }
45098
45098
 
45099
45099
  // src/components/chat/entity-cards/program-card.tsx
45100
- _chunkE6WANQ6Kcjs.init_button.call(void 0, );
45100
+ _chunkIMK6RUECcjs.init_button.call(void 0, );
45101
45101
 
45102
45102
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
45103
45103
 
@@ -45423,7 +45423,7 @@ function ProgramCard({
45423
45423
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target, rel, className: "block", "aria-label": `Open ${item.title}`, children: cardHeader }),
45424
45424
  images.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MediaGallery, { images, title: item.title }),
45425
45425
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-6 pt-0 mt-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-4 border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
45426
- _chunkE6WANQ6Kcjs.Button,
45426
+ _chunkIMK6RUECcjs.Button,
45427
45427
  {
45428
45428
  variant: "outline",
45429
45429
  size: "small-legacy",
@@ -48165,6 +48165,7 @@ function useRealtimeChunkProcessor(options) {
48165
48165
  const hasEverStreamedRef = _react.useRef.call(void 0, false);
48166
48166
  const directModeFlagRef = _react.useRef.call(void 0, isDirectMode);
48167
48167
  const sawDirectMessageRef = _react.useRef.call(void 0, false);
48168
+ const directTeardownFiredRef = _react.useRef.call(void 0, false);
48168
48169
  _react.useEffect.call(void 0, () => {
48169
48170
  directModeFlagRef.current = isDirectMode;
48170
48171
  }, [isDirectMode]);
@@ -48178,8 +48179,9 @@ function useRealtimeChunkProcessor(options) {
48178
48179
  const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1163 => _1163.onSegmentsUpdate, 'optionalCall', _1164 => _1164(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
48179
48180
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
48180
48181
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
48181
- if (isInStreamRef.current) {
48182
+ if (isInStreamRef.current || !directTeardownFiredRef.current) {
48182
48183
  isInStreamRef.current = false;
48184
+ directTeardownFiredRef.current = true;
48183
48185
  _optionalChain([callbacks, 'access', _1165 => _1165.onStreamEnd, 'optionalCall', _1166 => _1166()]);
48184
48186
  accumulator.resetSegments();
48185
48187
  }
@@ -48219,6 +48221,9 @@ function useRealtimeChunkProcessor(options) {
48219
48221
  break;
48220
48222
  }
48221
48223
  case "tool_execution": {
48224
+ if (action.segment.data.type === "EXECUTING_TOOL") {
48225
+ _optionalChain([callbacks, 'access', _1173 => _1173.onAgentBusy, 'optionalCall', _1174 => _1174()]);
48226
+ }
48222
48227
  if (!isInStreamRef.current && callbacks.onToolExecuted) {
48223
48228
  callbacks.onToolExecuted(action.segment);
48224
48229
  break;
@@ -48241,7 +48246,7 @@ function useRealtimeChunkProcessor(options) {
48241
48246
  emitSegments(segments);
48242
48247
  } else {
48243
48248
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
48244
- _optionalChain([callbacks, 'access', _1173 => _1173.onEscalatedApproval, 'optionalCall', _1174 => _1174(requestId, { command, explanation, approvalType })]);
48249
+ _optionalChain([callbacks, 'access', _1175 => _1175.onEscalatedApproval, 'optionalCall', _1176 => _1176(requestId, { command, explanation, approvalType })]);
48245
48250
  }
48246
48251
  break;
48247
48252
  }
@@ -48253,13 +48258,13 @@ function useRealtimeChunkProcessor(options) {
48253
48258
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
48254
48259
  pendingEscalatedRef.current.set(requestId, {
48255
48260
  command: summary,
48256
- explanation: _optionalChain([required, 'optionalAccess', _1175 => _1175.toolExplanation]),
48261
+ explanation: _optionalChain([required, 'optionalAccess', _1177 => _1177.toolExplanation]),
48257
48262
  approvalType,
48258
48263
  toolCalls
48259
48264
  });
48260
- _optionalChain([callbacks, 'access', _1176 => _1176.onEscalatedApproval, 'optionalCall', _1177 => _1177(requestId, {
48265
+ _optionalChain([callbacks, 'access', _1178 => _1178.onEscalatedApproval, 'optionalCall', _1179 => _1179(requestId, {
48261
48266
  command: summary,
48262
- explanation: _optionalChain([required, 'optionalAccess', _1178 => _1178.toolExplanation]),
48267
+ explanation: _optionalChain([required, 'optionalAccess', _1180 => _1180.toolExplanation]),
48263
48268
  approvalType
48264
48269
  })]);
48265
48270
  break;
@@ -48285,11 +48290,12 @@ function useRealtimeChunkProcessor(options) {
48285
48290
  }
48286
48291
  case "approval_result": {
48287
48292
  const { requestId, approved, approvalType, resolvedByName } = action;
48293
+ if (approved) _optionalChain([callbacks, 'access', _1181 => _1181.onAgentBusy, 'optionalCall', _1182 => _1182()]);
48288
48294
  const escalatedData = pendingEscalatedRef.current.get(requestId);
48289
48295
  const status = approved ? "approved" : "rejected";
48290
48296
  if (escalatedData) {
48291
48297
  pendingEscalatedRef.current.delete(requestId);
48292
- _optionalChain([callbacks, 'access', _1179 => _1179.onEscalatedApprovalResult, 'optionalCall', _1180 => _1180(requestId, approved, {
48298
+ _optionalChain([callbacks, 'access', _1183 => _1183.onEscalatedApprovalResult, 'optionalCall', _1184 => _1184(requestId, approved, {
48293
48299
  command: escalatedData.command,
48294
48300
  explanation: escalatedData.explanation,
48295
48301
  approvalType: escalatedData.approvalType
@@ -48335,29 +48341,29 @@ function useRealtimeChunkProcessor(options) {
48335
48341
  emitSegments(accumulator.getSegments());
48336
48342
  }
48337
48343
  }
48338
- _optionalChain([callbacks, 'access', _1181 => _1181.onApprovalResolved, 'optionalCall', _1182 => _1182(requestId, status, approvalType, resolvedByName)]);
48344
+ _optionalChain([callbacks, 'access', _1185 => _1185.onApprovalResolved, 'optionalCall', _1186 => _1186(requestId, status, approvalType, resolvedByName)]);
48339
48345
  break;
48340
48346
  }
48341
48347
  case "error": {
48342
48348
  let message2;
48343
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1183 => _1183.details])) {
48349
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1187 => _1187.details])) {
48344
48350
  try {
48345
- message2 = _optionalChain([JSON, 'access', _1184 => _1184.parse, 'call', _1185 => _1185(action.details), 'optionalAccess', _1186 => _1186.error, 'optionalAccess', _1187 => _1187.message]);
48351
+ message2 = _optionalChain([JSON, 'access', _1188 => _1188.parse, 'call', _1189 => _1189(action.details), 'optionalAccess', _1190 => _1190.error, 'optionalAccess', _1191 => _1191.message]);
48346
48352
  } catch (e60) {
48347
48353
  message2 = action.details;
48348
48354
  }
48349
48355
  }
48350
48356
  const segments = accumulator.addError(action.error, message2);
48351
48357
  emitSegments(segments);
48352
- _optionalChain([callbacks, 'access', _1188 => _1188.onError, 'optionalCall', _1189 => _1189(action.error, message2)]);
48358
+ _optionalChain([callbacks, 'access', _1192 => _1192.onError, 'optionalCall', _1193 => _1193(action.error, message2)]);
48353
48359
  break;
48354
48360
  }
48355
48361
  case "system": {
48356
- _optionalChain([callbacks, 'access', _1190 => _1190.onSystemMessage, 'optionalCall', _1191 => _1191(action.text, { streamSeq })]);
48362
+ _optionalChain([callbacks, 'access', _1194 => _1194.onSystemMessage, 'optionalCall', _1195 => _1195(action.text, { streamSeq })]);
48357
48363
  break;
48358
48364
  }
48359
48365
  case "direct_message": {
48360
- _optionalChain([callbacks, 'access', _1192 => _1192.onDirectMessage, 'optionalCall', _1193 => _1193(action.text, {
48366
+ _optionalChain([callbacks, 'access', _1196 => _1196.onDirectMessage, 'optionalCall', _1197 => _1197(action.text, {
48361
48367
  ownerType: action.ownerType,
48362
48368
  displayName: action.displayName,
48363
48369
  userId: action.userId,
@@ -48366,7 +48372,7 @@ function useRealtimeChunkProcessor(options) {
48366
48372
  break;
48367
48373
  }
48368
48374
  case "message_request":
48369
- _optionalChain([callbacks, 'access', _1194 => _1194.onUserMessage, 'optionalCall', _1195 => _1195(action.text, {
48375
+ _optionalChain([callbacks, 'access', _1198 => _1198.onUserMessage, 'optionalCall', _1199 => _1199(action.text, {
48370
48376
  ownerType: action.ownerType,
48371
48377
  displayName: action.displayName,
48372
48378
  userId: action.userId,
@@ -48375,7 +48381,7 @@ function useRealtimeChunkProcessor(options) {
48375
48381
  })]);
48376
48382
  break;
48377
48383
  case "token_usage":
48378
- _optionalChain([callbacks, 'access', _1196 => _1196.onTokenUsage, 'optionalCall', _1197 => _1197(action.data)]);
48384
+ _optionalChain([callbacks, 'access', _1200 => _1200.onTokenUsage, 'optionalCall', _1201 => _1201(action.data)]);
48379
48385
  break;
48380
48386
  case "context_compaction_start": {
48381
48387
  const standalone = !isInStreamRef.current;
@@ -48390,7 +48396,7 @@ function useRealtimeChunkProcessor(options) {
48390
48396
  break;
48391
48397
  }
48392
48398
  case "dialog_closed":
48393
- _optionalChain([callbacks, 'access', _1198 => _1198.onDialogClosed, 'optionalCall', _1199 => _1199()]);
48399
+ _optionalChain([callbacks, 'access', _1202 => _1202.onDialogClosed, 'optionalCall', _1203 => _1203()]);
48394
48400
  break;
48395
48401
  default:
48396
48402
  break;
@@ -48406,6 +48412,7 @@ function useRealtimeChunkProcessor(options) {
48406
48412
  pendingEscalatedRef.current.clear();
48407
48413
  hasInitializedWithData.current = false;
48408
48414
  sawDirectMessageRef.current = false;
48415
+ directTeardownFiredRef.current = false;
48409
48416
  }, []);
48410
48417
  const updateApprovalStatus = _react.useCallback.call(void 0,
48411
48418
  (requestId, status, resolvedByName) => {
@@ -48437,7 +48444,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
48437
48444
  const data = await res.json();
48438
48445
  return _nullishCoalesce(data.commands, () => ( []));
48439
48446
  } catch (err) {
48440
- if (_optionalChain([err, 'optionalAccess', _1200 => _1200.name]) === "AbortError") throw err;
48447
+ if (_optionalChain([err, 'optionalAccess', _1204 => _1204.name]) === "AbortError") throw err;
48441
48448
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
48442
48449
  return [];
48443
48450
  }
@@ -48458,7 +48465,7 @@ function useSlashCommands(prefix, commandsUrl) {
48458
48465
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
48459
48466
  if (!cancelled) setCommands(next);
48460
48467
  } catch (err) {
48461
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1201 => _1201.name]) !== "AbortError") {
48468
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1205 => _1205.name]) !== "AbortError") {
48462
48469
  console.warn("[use-slash-commands] fetch failed:", err);
48463
48470
  }
48464
48471
  } finally {
@@ -48477,7 +48484,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
48477
48484
  const query = _reactquery.useQuery.call(void 0, {
48478
48485
  queryKey: ["chat-slash-commands", commandsUrl],
48479
48486
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
48480
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1202 => _1202.enabled]), () => ( true)),
48487
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1206 => _1206.enabled]), () => ( true)),
48481
48488
  staleTime: Infinity,
48482
48489
  gcTime: Infinity,
48483
48490
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -48516,21 +48523,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
48516
48523
  }
48517
48524
  const data = await res.json();
48518
48525
  return {
48519
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1203 => _1203.name]), () => ( null)),
48520
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1204 => _1204.icon]), () => ( null)),
48521
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1205 => _1205.greeting]), () => ( null)),
48522
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1206 => _1206.enabledRagTableIds]), () => ( [])),
48523
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1207 => _1207.quickActions]), () => ( [])),
48524
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1208 => _1208.suggestedQueries]), () => ( []))
48526
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1207 => _1207.name]), () => ( null)),
48527
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1208 => _1208.icon]), () => ( null)),
48528
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1209 => _1209.greeting]), () => ( null)),
48529
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1210 => _1210.enabledRagTableIds]), () => ( [])),
48530
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1211 => _1211.quickActions]), () => ( [])),
48531
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1212 => _1212.suggestedQueries]), () => ( []))
48525
48532
  };
48526
48533
  } catch (err) {
48527
- if (_optionalChain([err, 'optionalAccess', _1209 => _1209.name]) === "AbortError") throw err;
48534
+ if (_optionalChain([err, 'optionalAccess', _1213 => _1213.name]) === "AbortError") throw err;
48528
48535
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
48529
48536
  return EMPTY_STATE_FALLBACK;
48530
48537
  }
48531
48538
  }
48532
48539
  function useEmptyStateConfig(emptyStateUrl, options) {
48533
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1210 => _1210.enabled]), () => ( true))) && !!emptyStateUrl;
48540
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1214 => _1214.enabled]), () => ( true))) && !!emptyStateUrl;
48534
48541
  const query = _reactquery.useQuery.call(void 0, {
48535
48542
  queryKey: ["chat-empty-state", emptyStateUrl],
48536
48543
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -48559,7 +48566,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
48559
48566
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
48560
48567
  function uploadWithProgress(url, file, token, onProgress, signal) {
48561
48568
  return new Promise((resolve, reject) => {
48562
- if (_optionalChain([signal, 'optionalAccess', _1211 => _1211.aborted])) {
48569
+ if (_optionalChain([signal, 'optionalAccess', _1215 => _1215.aborted])) {
48563
48570
  reject(new Error("Upload cancelled"));
48564
48571
  return;
48565
48572
  }
@@ -48573,7 +48580,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48573
48580
  xhr.removeEventListener("error", handleError);
48574
48581
  xhr.removeEventListener("abort", handleAbort);
48575
48582
  xhr.removeEventListener("timeout", handleTimeout);
48576
- _optionalChain([signal, 'optionalAccess', _1212 => _1212.removeEventListener, 'call', _1213 => _1213("abort", handleSignalAbort)]);
48583
+ _optionalChain([signal, 'optionalAccess', _1216 => _1216.removeEventListener, 'call', _1217 => _1217("abort", handleSignalAbort)]);
48577
48584
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
48578
48585
  };
48579
48586
  const handleProgress = (event) => {
@@ -48609,7 +48616,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48609
48616
  const handleSignalAbort = () => {
48610
48617
  xhr.abort();
48611
48618
  };
48612
- _optionalChain([signal, 'optionalAccess', _1214 => _1214.addEventListener, 'call', _1215 => _1215("abort", handleSignalAbort, { once: true })]);
48619
+ _optionalChain([signal, 'optionalAccess', _1218 => _1218.addEventListener, 'call', _1219 => _1219("abort", handleSignalAbort, { once: true })]);
48613
48620
  xhr.upload.addEventListener("progress", handleProgress);
48614
48621
  xhr.addEventListener("load", handleLoad);
48615
48622
  xhr.addEventListener("error", handleError);
@@ -48653,12 +48660,12 @@ function useChatAttachments() {
48653
48660
  try {
48654
48661
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
48655
48662
  } catch (err) {
48656
- if (_optionalChain([ctrl, 'optionalAccess', _1216 => _1216.signal, 'access', _1217 => _1217.aborted])) return;
48663
+ if (_optionalChain([ctrl, 'optionalAccess', _1220 => _1220.signal, 'access', _1221 => _1221.aborted])) return;
48657
48664
  throw new Error(
48658
48665
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
48659
48666
  );
48660
48667
  }
48661
- if (_optionalChain([ctrl, 'optionalAccess', _1218 => _1218.signal, 'access', _1219 => _1219.aborted])) return;
48668
+ if (_optionalChain([ctrl, 'optionalAccess', _1222 => _1222.signal, 'access', _1223 => _1223.aborted])) return;
48662
48669
  if (!sniffed) {
48663
48670
  throw new Error("Unrecognized file format");
48664
48671
  }
@@ -48672,7 +48679,7 @@ function useChatAttachments() {
48672
48679
  const urlResp = await _chunkSR6LEWCFcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
48673
48680
  method: "POST",
48674
48681
  headers: { "Content-Type": "application/json" },
48675
- signal: _optionalChain([ctrl, 'optionalAccess', _1220 => _1220.signal]),
48682
+ signal: _optionalChain([ctrl, 'optionalAccess', _1224 => _1224.signal]),
48676
48683
  body: JSON.stringify({
48677
48684
  fileName: att.file.name,
48678
48685
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -48698,9 +48705,9 @@ function useChatAttachments() {
48698
48705
  (pct) => {
48699
48706
  updateOne(att.id, { progress: pct });
48700
48707
  },
48701
- _optionalChain([ctrl, 'optionalAccess', _1221 => _1221.signal])
48708
+ _optionalChain([ctrl, 'optionalAccess', _1225 => _1225.signal])
48702
48709
  );
48703
- if (_optionalChain([ctrl, 'optionalAccess', _1222 => _1222.signal, 'access', _1223 => _1223.aborted])) return;
48710
+ if (_optionalChain([ctrl, 'optionalAccess', _1226 => _1226.signal, 'access', _1227 => _1227.aborted])) return;
48704
48711
  updateOne(att.id, {
48705
48712
  status: "ready",
48706
48713
  progress: 100,
@@ -48708,7 +48715,7 @@ function useChatAttachments() {
48708
48715
  viewToken: mintData.viewToken
48709
48716
  });
48710
48717
  } catch (err) {
48711
- if (_optionalChain([ctrl, 'optionalAccess', _1224 => _1224.signal, 'access', _1225 => _1225.aborted])) return;
48718
+ if (_optionalChain([ctrl, 'optionalAccess', _1228 => _1228.signal, 'access', _1229 => _1229.aborted])) return;
48712
48719
  const message2 = err instanceof Error ? err.message : String(err);
48713
48720
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
48714
48721
  } finally {
@@ -48859,7 +48866,7 @@ var ANON_DEFAULTS = {
48859
48866
  function useResolveChatIdentity(enabled) {
48860
48867
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
48861
48868
  const url = runtime.endpoints.identityUrl;
48862
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkSR6LEWCFcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1226 => _1226.email]), () => ( null));
48869
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkSR6LEWCFcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1230 => _1230.email]), () => ( null));
48863
48870
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
48864
48871
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
48865
48872
  _react.useEffect.call(void 0, () => {
@@ -48950,7 +48957,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
48950
48957
  yield chunk;
48951
48958
  }
48952
48959
  } catch (err) {
48953
- if (_optionalChain([err, 'optionalAccess', _1227 => _1227.name]) === "AbortError" || ctrl.signal.aborted) {
48960
+ if (_optionalChain([err, 'optionalAccess', _1231 => _1231.name]) === "AbortError" || ctrl.signal.aborted) {
48954
48961
  return;
48955
48962
  }
48956
48963
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -49001,7 +49008,7 @@ function useChat({
49001
49008
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
49002
49009
  onMessagesChangeRef.current = onMessagesChange;
49003
49010
  _react.useEffect.call(void 0, () => {
49004
- _optionalChain([onMessagesChangeRef, 'access', _1228 => _1228.current, 'optionalCall', _1229 => _1229(messages)]);
49011
+ _optionalChain([onMessagesChangeRef, 'access', _1232 => _1232.current, 'optionalCall', _1233 => _1233(messages)]);
49005
49012
  }, [messages]);
49006
49013
  const {
49007
49014
  streamMessage,
@@ -49038,7 +49045,7 @@ function useChat({
49038
49045
  name: "You",
49039
49046
  content: text,
49040
49047
  timestamp: /* @__PURE__ */ new Date(),
49041
- ..._optionalChain([options, 'optionalAccess', _1230 => _1230.hidden]) ? { hidden: true } : {}
49048
+ ..._optionalChain([options, 'optionalAccess', _1234 => _1234.hidden]) ? { hidden: true } : {}
49042
49049
  };
49043
49050
  addMessage(userMessage);
49044
49051
  setIsTyping(true);
@@ -49100,7 +49107,7 @@ function useChat({
49100
49107
  currentTextSegment = "";
49101
49108
  }
49102
49109
  const seg = segment;
49103
- const proposalId = _optionalChain([seg, 'access', _1231 => _1231.data, 'optionalAccess', _1232 => _1232.requestId]);
49110
+ const proposalId = _optionalChain([seg, 'access', _1235 => _1235.data, 'optionalAccess', _1236 => _1236.requestId]);
49104
49111
  const updateApprovalMessage = (transform) => {
49105
49112
  setMessages((prev) => {
49106
49113
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -49109,7 +49116,7 @@ function useChat({
49109
49116
  if (!Array.isArray(m.content)) continue;
49110
49117
  const segments = m.content;
49111
49118
  const hasMatch = segments.some(
49112
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1233 => _1233.data, 'optionalAccess', _1234 => _1234.requestId]) === proposalId
49119
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1237 => _1237.data, 'optionalAccess', _1238 => _1238.requestId]) === proposalId
49113
49120
  );
49114
49121
  if (!hasMatch) continue;
49115
49122
  const next = [...prev];
@@ -49151,11 +49158,11 @@ function useChat({
49151
49158
  if (!Array.isArray(m.content)) continue;
49152
49159
  const segments = m.content;
49153
49160
  const hasMatch = segments.some(
49154
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1235 => _1235.data, 'optionalAccess', _1236 => _1236.requestId]) === decision.proposalId
49161
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1239 => _1239.data, 'optionalAccess', _1240 => _1240.requestId]) === decision.proposalId
49155
49162
  );
49156
49163
  if (!hasMatch) continue;
49157
49164
  const flipped = segments.map(
49158
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1237 => _1237.data, 'optionalAccess', _1238 => _1238.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49165
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1241 => _1241.data, 'optionalAccess', _1242 => _1242.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49159
49166
  );
49160
49167
  const next = [...prev];
49161
49168
  next[i] = { ...m, content: flipped };
@@ -49317,8 +49324,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49317
49324
  })),
49318
49325
  { role: "user", content: message2 }
49319
49326
  ];
49320
- const targetPath = _optionalChain([extra, 'optionalAccess', _1239 => _1239.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49321
- const requestBody = _optionalChain([extra, 'optionalAccess', _1240 => _1240.approvalAction]) ? {
49327
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1243 => _1243.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49328
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1244 => _1244.approvalAction]) ? {
49322
49329
  proposal_id: extra.approvalAction.proposalId,
49323
49330
  action: extra.approvalAction.action,
49324
49331
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -49327,8 +49334,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49327
49334
  }))
49328
49335
  } : {
49329
49336
  messages: apiMessages,
49330
- ..._optionalChain([extra, 'optionalAccess', _1241 => _1241.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49331
- ..._optionalChain([extra, 'optionalAccess', _1242 => _1242.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49337
+ ..._optionalChain([extra, 'optionalAccess', _1245 => _1245.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49338
+ ..._optionalChain([extra, 'optionalAccess', _1246 => _1246.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49332
49339
  };
49333
49340
  const response = await _chunkSR6LEWCFcjs.embedAuthedFetch.call(void 0, targetPath, {
49334
49341
  method: "POST",
@@ -49338,7 +49345,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49338
49345
  if (!response.ok) {
49339
49346
  throw new Error(`Chat request failed: ${response.status}`);
49340
49347
  }
49341
- const reader = _optionalChain([response, 'access', _1243 => _1243.body, 'optionalAccess', _1244 => _1244.getReader, 'call', _1245 => _1245()]);
49348
+ const reader = _optionalChain([response, 'access', _1247 => _1247.body, 'optionalAccess', _1248 => _1248.getReader, 'call', _1249 => _1249()]);
49342
49349
  if (!reader) throw new Error("No response body");
49343
49350
  const decoder = new TextDecoder();
49344
49351
  let buffer = "";
@@ -49421,7 +49428,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49421
49428
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
49422
49429
  const result = _nullishCoalesce(meta.result, () => ( null));
49423
49430
  const card = _nullishCoalesce(meta.card, () => ( null));
49424
- if (_optionalChain([card, 'optionalAccess', _1246 => _1246.ref, 'optionalAccess', _1247 => _1247.id]) && _optionalChain([card, 'optionalAccess', _1248 => _1248.type])) {
49431
+ if (_optionalChain([card, 'optionalAccess', _1250 => _1250.ref, 'optionalAccess', _1251 => _1251.id]) && _optionalChain([card, 'optionalAccess', _1252 => _1252.type])) {
49425
49432
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
49426
49433
  const key = buildChatRefKey(card.type, card.ref.id);
49427
49434
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -49434,8 +49441,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49434
49441
  willAutoContinue: meta.willAutoContinue === true,
49435
49442
  ...toolName ? { toolName } : {},
49436
49443
  ...result ? { result } : {},
49437
- ..._optionalChain([card, 'optionalAccess', _1249 => _1249.marker]) ? { marker: card.marker } : {},
49438
- ..._optionalChain([card, 'optionalAccess', _1250 => _1250.ref]) ? { cardRef: card.ref } : {},
49444
+ ..._optionalChain([card, 'optionalAccess', _1253 => _1253.marker]) ? { marker: card.marker } : {},
49445
+ ..._optionalChain([card, 'optionalAccess', _1254 => _1254.ref]) ? { cardRef: card.ref } : {},
49439
49446
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
49440
49447
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
49441
49448
  };
@@ -49554,7 +49561,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
49554
49561
  var chatStorageKey = (source) => {
49555
49562
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
49556
49563
  const auth = _chunkSR6LEWCFcjs.getEmbedProxyAuth.call(void 0, );
49557
- if (_optionalChain([auth, 'optionalAccess', _1251 => _1251.email])) {
49564
+ if (_optionalChain([auth, 'optionalAccess', _1255 => _1255.email])) {
49558
49565
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
49559
49566
  }
49560
49567
  return base;
@@ -49609,7 +49616,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49609
49616
  const { active = true } = runtimeOptions;
49610
49617
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
49611
49618
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
49612
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1252 => _1252.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49619
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1256 => _1256.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49613
49620
  const persistedRef = _react.useRef.call(void 0, null);
49614
49621
  if (persistedRef.current === null) {
49615
49622
  pruneStaleChatStorage(source);
@@ -49714,7 +49721,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49714
49721
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
49715
49722
  sources = sourcesMapRef.current.get(lookupIdx);
49716
49723
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
49717
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1253 => _1253.current, 'access', _1254 => _1254.get, 'call', _1255 => _1255(lookupIdx), 'optionalAccess', _1256 => _1256.scrollAnchor]), () => ( void 0));
49724
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1257 => _1257.current, 'access', _1258 => _1258.get, 'call', _1259 => _1259(lookupIdx), 'optionalAccess', _1260 => _1260.scrollAnchor]), () => ( void 0));
49718
49725
  }
49719
49726
  return {
49720
49727
  id: m.id,
@@ -49762,7 +49769,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49762
49769
  );
49763
49770
  return;
49764
49771
  }
49765
- const refSlug = typeof _optionalChain([reference, 'access', _1257 => _1257.metadata, 'optionalAccess', _1258 => _1258.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
49772
+ const refSlug = typeof _optionalChain([reference, 'access', _1261 => _1261.metadata, 'optionalAccess', _1262 => _1262.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
49766
49773
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
49767
49774
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
49768
49775
  const text = `/${cmdId} display "${escaped}"`;
@@ -49834,18 +49841,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49834
49841
  clearMessages,
49835
49842
  streamingPhase,
49836
49843
  /** Provider key for the lib's `<ModelDisplay>` icon. */
49837
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1259 => _1259.provider]), () => ( null)),
49838
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1260 => _1260.modelLabel]), () => ( null)),
49839
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1261 => _1261.contextWindowMaxTokens]), () => ( null)),
49844
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1263 => _1263.provider]), () => ( null)),
49845
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1264 => _1264.modelLabel]), () => ( null)),
49846
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1265 => _1265.contextWindowMaxTokens]), () => ( null)),
49840
49847
  /** Input tokens (known after server's message_start frame; null until). */
49841
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1262 => _1262.inputTokens]), () => ( null)),
49848
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1266 => _1266.inputTokens]), () => ( null)),
49842
49849
  /** Output tokens (known only after server's trailing usage frame). */
49843
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1263 => _1263.outputTokens]), () => ( null)),
49850
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1267 => _1267.outputTokens]), () => ( null)),
49844
49851
  /** Cache hit % (read / total-input × 100). null during streaming. */
49845
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1264 => _1264.cacheHitRatePct]), () => ( null)),
49852
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1268 => _1268.cacheHitRatePct]), () => ( null)),
49846
49853
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
49847
49854
  * token counts). null until the trailing usage frame lands. */
49848
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1265 => _1265.breakdown]), () => ( null)),
49855
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1269 => _1269.breakdown]), () => ( null)),
49849
49856
  // ─── Dialog management — stubs for v1 ────────────────────────────────
49850
49857
  // Guide mode currently keeps its history in `localStorage` opaquely
49851
49858
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -49903,15 +49910,15 @@ var noopRejectRequest = async (_id, _reason) => {
49903
49910
 
49904
49911
  // src/components/chat/utils/process-historical-messages.ts
49905
49912
  function getOwnerDisplayName(owner) {
49906
- if (_optionalChain([owner, 'optionalAccess', _1266 => _1266.type]) === OWNER_TYPE.ADMIN && owner.user) {
49913
+ if (_optionalChain([owner, 'optionalAccess', _1270 => _1270.type]) === OWNER_TYPE.ADMIN && owner.user) {
49907
49914
  const { firstName, lastName } = owner.user;
49908
49915
  const name = [firstName, lastName].filter(Boolean).join(" ");
49909
49916
  if (name) return name;
49910
49917
  }
49911
- return _optionalChain([owner, 'optionalAccess', _1267 => _1267.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
49918
+ return _optionalChain([owner, 'optionalAccess', _1271 => _1271.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
49912
49919
  }
49913
49920
  function getOwnerAvatar(owner) {
49914
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1268 => _1268.user, 'optionalAccess', _1269 => _1269.image, 'optionalAccess', _1270 => _1270.imageUrl]), () => ( void 0));
49921
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1272 => _1272.user, 'optionalAccess', _1273 => _1273.image, 'optionalAccess', _1274 => _1274.imageUrl]), () => ( void 0));
49915
49922
  }
49916
49923
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
49917
49924
  messageDataArray.forEach((data) => {
@@ -49974,14 +49981,14 @@ function processHistoricalMessages(messages, options = {}) {
49974
49981
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
49975
49982
  return;
49976
49983
  }
49977
- const isUserMessage = _optionalChain([msg, 'access', _1271 => _1271.owner, 'optionalAccess', _1272 => _1272.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1273 => _1273.owner, 'optionalAccess', _1274 => _1274.type]) === OWNER_TYPE.ADMIN;
49984
+ const isUserMessage = _optionalChain([msg, 'access', _1275 => _1275.owner, 'optionalAccess', _1276 => _1276.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1277 => _1277.owner, 'optionalAccess', _1278 => _1278.type]) === OWNER_TYPE.ADMIN;
49978
49985
  if (isUserMessage) {
49979
49986
  flushAssistantMessage();
49980
- const userAuthorType = _optionalChain([msg, 'access', _1275 => _1275.owner, 'optionalAccess', _1276 => _1276.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
49987
+ const userAuthorType = _optionalChain([msg, 'access', _1279 => _1279.owner, 'optionalAccess', _1280 => _1280.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
49981
49988
  messageDataArray.forEach((data) => {
49982
49989
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
49983
49990
  const rawContext = data.contextItems;
49984
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1277 => _1277.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1278 => _1278.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
49991
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1281 => _1281.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1282 => _1282.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
49985
49992
  processedMessages.push({
49986
49993
  id: msg.id,
49987
49994
  role: "user",
@@ -50005,7 +50012,7 @@ function processHistoricalMessages(messages, options = {}) {
50005
50012
  });
50006
50013
  const nextMsg = messages[index + 1];
50007
50014
  const isLastMessage = index === messages.length - 1;
50008
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1279 => _1279.owner, 'optionalAccess', _1280 => _1280.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1281 => _1281.owner, 'optionalAccess', _1282 => _1282.type]) === OWNER_TYPE.ADMIN);
50015
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1283 => _1283.owner, 'optionalAccess', _1284 => _1284.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1285 => _1285.owner, 'optionalAccess', _1286 => _1286.type]) === OWNER_TYPE.ADMIN);
50009
50016
  if (isLastMessage || nextIsFromUser) {
50010
50017
  flushAssistantMessage();
50011
50018
  }
@@ -50115,7 +50122,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50115
50122
  }
50116
50123
  }
50117
50124
  } else {
50118
- _optionalChain([escalatedApprovals, 'optionalAccess', _1283 => _1283.set, 'call', _1284 => _1284(data.approvalRequestId, {
50125
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1287 => _1287.set, 'call', _1288 => _1288(data.approvalRequestId, {
50119
50126
  command: data.command || "",
50120
50127
  explanation: data.explanation,
50121
50128
  approvalType,
@@ -50129,8 +50136,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50129
50136
  const existingStatus = approvalStatuses[data.approvalRequestId];
50130
50137
  const status = existingStatus || (data.approved ? "approved" : "rejected");
50131
50138
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
50132
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1285 => _1285.get, 'call', _1286 => _1286(data.approvalRequestId)]);
50133
- if (_optionalChain([escalatedData, 'optionalAccess', _1287 => _1287.toolCalls]) && escalatedData.toolCalls.length > 0) {
50139
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1289 => _1289.get, 'call', _1290 => _1290(data.approvalRequestId)]);
50140
+ if (_optionalChain([escalatedData, 'optionalAccess', _1291 => _1291.toolCalls]) && escalatedData.toolCalls.length > 0) {
50134
50141
  if (batchApprovalsEnabled) {
50135
50142
  accumulator.addApprovalBatch(
50136
50143
  data.approvalRequestId,
@@ -50152,7 +50159,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50152
50159
  );
50153
50160
  }
50154
50161
  }
50155
- _optionalChain([escalatedApprovals, 'optionalAccess', _1288 => _1288.delete, 'call', _1289 => _1289(data.approvalRequestId)]);
50162
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1292 => _1292.delete, 'call', _1293 => _1293(data.approvalRequestId)]);
50156
50163
  break;
50157
50164
  }
50158
50165
  if (escalatedData) {
@@ -50161,7 +50168,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50161
50168
  explanation: escalatedData.explanation,
50162
50169
  approvalType: escalatedData.approvalType
50163
50170
  });
50164
- _optionalChain([escalatedApprovals, 'optionalAccess', _1290 => _1290.delete, 'call', _1291 => _1291(data.approvalRequestId)]);
50171
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1294 => _1294.delete, 'call', _1295 => _1295(data.approvalRequestId)]);
50165
50172
  }
50166
50173
  const before = accumulator.getSegments();
50167
50174
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -50177,9 +50184,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50177
50184
  case MESSAGE_TYPE.ERROR:
50178
50185
  if ("error" in data) {
50179
50186
  let message2;
50180
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1292 => _1292.details])) {
50187
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1296 => _1296.details])) {
50181
50188
  try {
50182
- message2 = _optionalChain([JSON, 'access', _1293 => _1293.parse, 'call', _1294 => _1294(data.details), 'optionalAccess', _1295 => _1295.error, 'optionalAccess', _1296 => _1296.message]);
50189
+ message2 = _optionalChain([JSON, 'access', _1297 => _1297.parse, 'call', _1298 => _1298(data.details), 'optionalAccess', _1299 => _1299.error, 'optionalAccess', _1300 => _1300.message]);
50183
50190
  } catch (e67) {
50184
50191
  message2 = data.details;
50185
50192
  }
@@ -50262,14 +50269,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50262
50269
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
50263
50270
  return;
50264
50271
  }
50265
- const isUserMessage = _optionalChain([msg, 'access', _1297 => _1297.owner, 'optionalAccess', _1298 => _1298.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1299 => _1299.owner, 'optionalAccess', _1300 => _1300.type]) === OWNER_TYPE.ADMIN;
50272
+ const isUserMessage = _optionalChain([msg, 'access', _1301 => _1301.owner, 'optionalAccess', _1302 => _1302.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1303 => _1303.owner, 'optionalAccess', _1304 => _1304.type]) === OWNER_TYPE.ADMIN;
50266
50273
  if (isUserMessage) {
50267
50274
  flushAssistantMessage();
50268
- const userAuthorType = _optionalChain([msg, 'access', _1301 => _1301.owner, 'optionalAccess', _1302 => _1302.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50275
+ const userAuthorType = _optionalChain([msg, 'access', _1305 => _1305.owner, 'optionalAccess', _1306 => _1306.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50269
50276
  messageDataArray.forEach((data) => {
50270
50277
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
50271
50278
  const rawContext = data.contextItems;
50272
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1303 => _1303.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1304 => _1304.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50279
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1307 => _1307.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1308 => _1308.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50273
50280
  processedMessages.push({
50274
50281
  id: msg.id,
50275
50282
  role: "user",
@@ -50293,7 +50300,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50293
50300
  });
50294
50301
  const nextMsg = messages[index + 1];
50295
50302
  const isLastMessage = index === messages.length - 1;
50296
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1305 => _1305.owner, 'optionalAccess', _1306 => _1306.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1307 => _1307.owner, 'optionalAccess', _1308 => _1308.type]) === OWNER_TYPE.ADMIN);
50303
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1309 => _1309.owner, 'optionalAccess', _1310 => _1310.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1311 => _1311.owner, 'optionalAccess', _1312 => _1312.type]) === OWNER_TYPE.ADMIN);
50297
50304
  if (isLastMessage || nextIsFromUser) {
50298
50305
  flushAssistantMessage();
50299
50306
  }
@@ -50392,6 +50399,9 @@ function useNatsChatAdapter(config, options = {}) {
50392
50399
  const dialogId = isManagedMode ? internalDialogId : controlledDialogId !== void 0 ? controlledDialogId : null;
50393
50400
  const [messages, setMessages] = _react.useState.call(void 0, []);
50394
50401
  const [streamingPhase, setStreamingPhase] = _react.useState.call(void 0, "idle");
50402
+ const streamingPhaseRef = _react.useRef.call(void 0, streamingPhase);
50403
+ streamingPhaseRef.current = streamingPhase;
50404
+ const suppressAgentBusyRef = _react.useRef.call(void 0, false);
50395
50405
  const [approvalStatuses, setApprovalStatuses] = _react.useState.call(void 0, {});
50396
50406
  const [dialogs, setDialogs] = _react.useState.call(void 0, []);
50397
50407
  const [dialogsNextCursor, setDialogsNextCursor] = _react.useState.call(void 0, null);
@@ -50409,6 +50419,8 @@ function useNatsChatAdapter(config, options = {}) {
50409
50419
  async (requestId) => {
50410
50420
  if (!approveRequestCallback) return;
50411
50421
  setApprovalStatuses((prev) => ({ ...prev, [requestId]: "approved" }));
50422
+ const tookLock = streamingPhaseRef.current === "idle";
50423
+ setStreamingPhase((p) => p === "idle" ? "thinking" : p);
50412
50424
  try {
50413
50425
  await approveRequestCallback(requestId);
50414
50426
  } catch (err) {
@@ -50417,6 +50429,9 @@ function useNatsChatAdapter(config, options = {}) {
50417
50429
  delete next[requestId];
50418
50430
  return next;
50419
50431
  });
50432
+ if (tookLock) {
50433
+ setStreamingPhase((p) => p === "thinking" ? "idle" : p);
50434
+ }
50420
50435
  console.error("[useNatsChatAdapter] approveRequest failed:", err);
50421
50436
  }
50422
50437
  },
@@ -50457,6 +50472,18 @@ function useNatsChatAdapter(config, options = {}) {
50457
50472
  },
50458
50473
  onStreamStart: () => setStreamingPhase("streaming"),
50459
50474
  onStreamEnd: () => setStreamingPhase("idle"),
50475
+ // Agent is executing (approved) commands outside an open stream — keep
50476
+ // the composer locked exactly like the in-stream phases. An open stream
50477
+ // keeps ownership: only 'idle' upgrades to 'thinking'. Suppressed during
50478
+ // initial catchup so a replayed dead tail can't lock a finished dialog.
50479
+ onAgentBusy: () => {
50480
+ if (suppressAgentBusyRef.current) return;
50481
+ setStreamingPhase((p) => p === "idle" ? "thinking" : p);
50482
+ },
50483
+ // Terminal turn failures can arrive without a MESSAGE_END; unlock the
50484
+ // composer unless an open stream still owns the phase (in-stream errors
50485
+ // are followed by the stream's own MESSAGE_END).
50486
+ onError: () => setStreamingPhase((p) => p === "streaming" ? p : "idle"),
50460
50487
  // Live cumulative token counter for the active dialog — drives the
50461
50488
  // composer's "X / Y tokens used" tail as the assistant streams.
50462
50489
  onTokenUsage: (data) => setDialogTokenUsage(data),
@@ -50472,6 +50499,8 @@ function useNatsChatAdapter(config, options = {}) {
50472
50499
  onSegmentsUpdate: (segments) => callbacksRef.current.onSegmentsUpdate(segments),
50473
50500
  onStreamStart: () => callbacksRef.current.onStreamStart(),
50474
50501
  onStreamEnd: () => callbacksRef.current.onStreamEnd(),
50502
+ onAgentBusy: () => callbacksRef.current.onAgentBusy(),
50503
+ onError: () => callbacksRef.current.onError(),
50475
50504
  onTokenUsage: (data) => callbacksRef.current.onTokenUsage(data),
50476
50505
  onMetadata: (meta) => callbacksRef.current.onMetadata(meta),
50477
50506
  onApprove: accumApprove,
@@ -50561,10 +50590,13 @@ function useNatsChatAdapter(config, options = {}) {
50561
50590
  }, [active, dialogId, loadDialogHistory, resetAccumulator]);
50562
50591
  _react.useEffect.call(void 0, () => {
50563
50592
  if (!active || !dialogId) return;
50593
+ suppressAgentBusyRef.current = true;
50564
50594
  resetChunkTracking();
50565
50595
  startInitialBuffering();
50566
50596
  catchUpChunks().catch((err) => {
50567
50597
  console.error("[useNatsChatAdapter] initial catchup failed:", err);
50598
+ }).finally(() => {
50599
+ suppressAgentBusyRef.current = false;
50568
50600
  });
50569
50601
  }, [active, dialogId, resetChunkTracking, startInitialBuffering, catchUpChunks]);
50570
50602
  useNatsDialogSubscription({
@@ -50629,7 +50661,7 @@ function useNatsChatAdapter(config, options = {}) {
50629
50661
  }, [active, fetchDialogs, loadDialogsPage]);
50630
50662
  const sendMessage = _react.useCallback.call(void 0,
50631
50663
  async (text, sendOptions) => {
50632
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1309 => _1309.hidden]), () => ( false));
50664
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1313 => _1313.hidden]), () => ( false));
50633
50665
  setMessages((prev) => [
50634
50666
  ...prev,
50635
50667
  {
@@ -50793,11 +50825,11 @@ function useNatsChatAdapter(config, options = {}) {
50793
50825
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
50794
50826
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
50795
50827
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
50796
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1310 => _1310.provider]), () => ( modelProvider)), () => ( null)),
50797
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1311 => _1311.modelLabel]), () => ( modelLabel)), () => ( null)),
50798
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1312 => _1312.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1313 => _1313.contextWindowMaxTokens]))), () => ( null)),
50799
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1314 => _1314.inputTokensSize]), () => ( null)),
50800
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1315 => _1315.outputTokensSize]), () => ( null)),
50828
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1314 => _1314.provider]), () => ( modelProvider)), () => ( null)),
50829
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1315 => _1315.modelLabel]), () => ( modelLabel)), () => ( null)),
50830
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1316 => _1316.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1317 => _1317.contextWindowMaxTokens]))), () => ( null)),
50831
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1318 => _1318.inputTokensSize]), () => ( null)),
50832
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1319 => _1319.outputTokensSize]), () => ( null)),
50801
50833
  currentCacheHitRatePct: null,
50802
50834
  currentUsageBreakdown: null,
50803
50835
  // Dialog management
@@ -51045,7 +51077,7 @@ function extractIncompleteMessageState(lastMessage) {
51045
51077
  break;
51046
51078
  case "approval_batch": {
51047
51079
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
51048
- (c) => _optionalChain([segment, 'access', _1316 => _1316.data, 'access', _1317 => _1317.executions, 'optionalAccess', _1318 => _1318[c.toolExecutionRequestId], 'optionalAccess', _1319 => _1319.status]) === "done"
51080
+ (c) => _optionalChain([segment, 'access', _1320 => _1320.data, 'access', _1321 => _1321.executions, 'optionalAccess', _1322 => _1322[c.toolExecutionRequestId], 'optionalAccess', _1323 => _1323.status]) === "done"
51049
51081
  );
51050
51082
  if (segment.status !== "rejected" && !allDone) {
51051
51083
  hasIncompleteState = true;
@@ -51113,20 +51145,20 @@ function mergeHistoryWithRealtime(input) {
51113
51145
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
51114
51146
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
51115
51147
  const trailing = processedHistory[processedHistory.length - 1];
51116
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1320 => _1320.role]) === "assistant" ? trailing : null;
51117
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1321 => _1321.content, 'access', _1322 => _1322.find, 'call', _1323 => _1323((s) => s.type === "approval_batch"), 'optionalAccess', _1324 => _1324.data, 'optionalAccess', _1325 => _1325.approvalRequestId]), () => ( null)) : null;
51148
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1324 => _1324.role]) === "assistant" ? trailing : null;
51149
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1325 => _1325.content, 'access', _1326 => _1326.find, 'call', _1327 => _1327((s) => s.type === "approval_batch"), 'optionalAccess', _1328 => _1328.data, 'optionalAccess', _1329 => _1329.approvalRequestId]), () => ( null)) : null;
51118
51150
  let processedToUse = processedHistory;
51119
51151
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
51120
51152
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
51121
51153
  if (historyBatchId) {
51122
51154
  const batchTwins = existingMessages.filter(
51123
51155
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
51124
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1326 => _1326.data, 'optionalAccess', _1327 => _1327.approvalRequestId]) === historyBatchId
51156
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1330 => _1330.data, 'optionalAccess', _1331 => _1331.approvalRequestId]) === historyBatchId
51125
51157
  )
51126
51158
  );
51127
51159
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
51128
51160
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
51129
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1328 => _1328.content])) ? historyTrailingAssistant.content.length : 0;
51161
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1332 => _1332.content])) ? historyTrailingAssistant.content.length : 0;
51130
51162
  const realtimeSize = existingWithSameBatch.content.length;
51131
51163
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
51132
51164
  processedToUse = processedHistory.slice(0, -1);
@@ -51142,16 +51174,16 @@ function mergeHistoryWithRealtime(input) {
51142
51174
  if (pinnedSyntheticIds.has(m.id)) return true;
51143
51175
  if (droppedSyntheticIds.has(m.id)) return false;
51144
51176
  if (processedIds.has(m.id)) return false;
51145
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1329 => _1329.has, 'call', _1330 => _1330(m.id)])) return false;
51177
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1333 => _1333.has, 'call', _1334 => _1334(m.id)])) return false;
51146
51178
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
51147
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1331 => _1331.timestamp, 'optionalAccess', _1332 => _1332.getTime, 'call', _1333 => _1333()]), () => ( 0))) <= historyFetchedAt;
51179
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1335 => _1335.timestamp, 'optionalAccess', _1336 => _1336.getTime, 'call', _1337 => _1337()]), () => ( 0))) <= historyFetchedAt;
51148
51180
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
51149
51181
  }
51150
51182
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
51151
51183
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
51152
51184
  return false;
51153
51185
  }
51154
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1334 => _1334.timestamp, 'optionalAccess', _1335 => _1335.getTime, 'call', _1336 => _1336()]), () => ( 0))) <= historyFetchedAt;
51186
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1338 => _1338.timestamp, 'optionalAccess', _1339 => _1339.getTime, 'call', _1340 => _1340()]), () => ( 0))) <= historyFetchedAt;
51155
51187
  if (covered) return false;
51156
51188
  }
51157
51189
  return true;
@@ -51277,7 +51309,7 @@ var VisuallyHidden = React140.forwardRef(
51277
51309
  VisuallyHidden.displayName = NAME;
51278
51310
 
51279
51311
  // src/components/chat/embeddable-chat.tsx
51280
- _chunkE6WANQ6Kcjs.init_button2.call(void 0, );
51312
+ _chunkIMK6RUECcjs.init_button2.call(void 0, );
51281
51313
 
51282
51314
 
51283
51315
  // src/components/chat/hooks/use-chat-dialog-manager.ts
@@ -51371,7 +51403,7 @@ function useChatDialogManager({
51371
51403
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
51372
51404
  if (restoreTarget) {
51373
51405
  try {
51374
- await _optionalChain([unarchiveDialog, 'optionalCall', _1337 => _1337(restoreTarget.id)]);
51406
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1341 => _1341(restoreTarget.id)]);
51375
51407
  } catch (err) {
51376
51408
  console.error("[useChatDialogManager] unarchive failed:", err);
51377
51409
  return;
@@ -51789,7 +51821,7 @@ function EmbeddableChatInner({
51789
51821
  }),
51790
51822
  [commandsUrl]
51791
51823
  );
51792
- const userName = _optionalChain([identityUser, 'optionalAccess', _1338 => _1338.firstName, 'optionalAccess', _1339 => _1339.trim, 'call', _1340 => _1340()]) || _optionalChain([identityUser, 'optionalAccess', _1341 => _1341.name, 'optionalAccess', _1342 => _1342.split, 'call', _1343 => _1343(" "), 'access', _1344 => _1344[0], 'optionalAccess', _1345 => _1345.trim, 'call', _1346 => _1346()]) || void 0;
51824
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1342 => _1342.firstName, 'optionalAccess', _1343 => _1343.trim, 'call', _1344 => _1344()]) || _optionalChain([identityUser, 'optionalAccess', _1345 => _1345.name, 'optionalAccess', _1346 => _1346.split, 'call', _1347 => _1347(" "), 'access', _1348 => _1348[0], 'optionalAccess', _1349 => _1349.trim, 'call', _1350 => _1350()]) || void 0;
51793
51825
  const effectiveModes = _react.useMemo.call(void 0, () => {
51794
51826
  if (modes) return modes;
51795
51827
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -51798,19 +51830,19 @@ function EmbeddableChatInner({
51798
51830
  const mingoCaps = _react.useMemo.call(void 0, () => {
51799
51831
  if (mingoState) {
51800
51832
  return {
51801
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1347 => _1347.canRename]), () => ( false)),
51802
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1348 => _1348.canArchive]), () => ( false)),
51803
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1349 => _1349.fetchArchivedDialogs]),
51804
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1350 => _1350.unarchiveDialog]),
51805
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1351 => _1351.searchQuery]),
51806
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1352 => _1352.onSearchChange])
51833
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1351 => _1351.canRename]), () => ( false)),
51834
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1352 => _1352.canArchive]), () => ( false)),
51835
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1353 => _1353.fetchArchivedDialogs]),
51836
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1354 => _1354.unarchiveDialog]),
51837
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1355 => _1355.searchQuery]),
51838
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1356 => _1356.onSearchChange])
51807
51839
  };
51808
51840
  }
51809
51841
  return {
51810
- canRename: !!_optionalChain([effectiveModes, 'access', _1353 => _1353.mingo, 'optionalAccess', _1354 => _1354.renameDialog]),
51811
- canArchive: !!_optionalChain([effectiveModes, 'access', _1355 => _1355.mingo, 'optionalAccess', _1356 => _1356.archiveDialog]),
51812
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1357 => _1357.mingo, 'optionalAccess', _1358 => _1358.fetchArchivedDialogs]),
51813
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1359 => _1359.mingo, 'optionalAccess', _1360 => _1360.unarchiveDialog]),
51842
+ canRename: !!_optionalChain([effectiveModes, 'access', _1357 => _1357.mingo, 'optionalAccess', _1358 => _1358.renameDialog]),
51843
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1359 => _1359.mingo, 'optionalAccess', _1360 => _1360.archiveDialog]),
51844
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1361 => _1361.mingo, 'optionalAccess', _1362 => _1362.fetchArchivedDialogs]),
51845
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1363 => _1363.mingo, 'optionalAccess', _1364 => _1364.unarchiveDialog]),
51814
51846
  searchQuery: void 0,
51815
51847
  onSearchChange: void 0
51816
51848
  };
@@ -51824,7 +51856,7 @@ function EmbeddableChatInner({
51824
51856
  if (controlledActiveMode === void 0) {
51825
51857
  setUncontrolledActiveMode(next);
51826
51858
  }
51827
- _optionalChain([onActiveModeChange, 'optionalCall', _1361 => _1361(next)]);
51859
+ _optionalChain([onActiveModeChange, 'optionalCall', _1365 => _1365(next)]);
51828
51860
  },
51829
51861
  [controlledActiveMode, onActiveModeChange]
51830
51862
  );
@@ -51846,7 +51878,7 @@ function EmbeddableChatInner({
51846
51878
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
51847
51879
  const effectiveAssistantName = emptyStateConfig.name;
51848
51880
  const effectiveAssistantIcon = emptyStateConfig.icon;
51849
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1362 => _1362.title]) === "string" ? guideWelcome.title : null)));
51881
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1366 => _1366.title]) === "string" ? guideWelcome.title : null)));
51850
51882
  const {
51851
51883
  messages: rawMessages,
51852
51884
  isLoading: chatLoading,
@@ -51886,7 +51918,7 @@ function EmbeddableChatInner({
51886
51918
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
51887
51919
  guidePromptSentRef.current = true;
51888
51920
  void sendMessage(guidePendingPrompt);
51889
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1363 => _1363()]);
51921
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1367 => _1367()]);
51890
51922
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
51891
51923
  const {
51892
51924
  attachments: stagedAttachments,
@@ -51897,7 +51929,7 @@ function EmbeddableChatInner({
51897
51929
  clear: clearAttachments
51898
51930
  } = useChatAttachments();
51899
51931
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
51900
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1364 => _1364.maxItems]), () => ( 10));
51932
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1368 => _1368.maxItems]), () => ( 10));
51901
51933
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
51902
51934
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
51903
51935
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -51914,10 +51946,10 @@ function EmbeddableChatInner({
51914
51946
  }, [activeDialogId, activeMode]);
51915
51947
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
51916
51948
  const m = /* @__PURE__ */ new Map();
51917
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1365 => _1365.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
51949
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1369 => _1369.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
51918
51950
  return m;
51919
- }, [_optionalChain([contextPicker, 'optionalAccess', _1366 => _1366.entityTypes])]);
51920
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1367 => _1367.entityTypes]);
51951
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1370 => _1370.entityTypes])]);
51952
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1371 => _1371.entityTypes]);
51921
51953
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
51922
51954
  const byType = /* @__PURE__ */ new Map();
51923
51955
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -51929,7 +51961,7 @@ function EmbeddableChatInner({
51929
51961
  if (mentionActiveRef.current) {
51930
51962
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
51931
51963
  if (contextItems.length >= contextMaxItems) return;
51932
- _optionalChain([chatInputRef, 'access', _1368 => _1368.current, 'optionalAccess', _1369 => _1369.commitMention, 'call', _1370 => _1370(mentionTokenOf(key, mentionMarkerByType), {
51964
+ _optionalChain([chatInputRef, 'access', _1372 => _1372.current, 'optionalAccess', _1373 => _1373.commitMention, 'call', _1374 => _1374(mentionTokenOf(key, mentionMarkerByType), {
51933
51965
  label: item.label,
51934
51966
  icon: resolveContextIcon(item)
51935
51967
  })]);
@@ -51951,9 +51983,9 @@ function EmbeddableChatInner({
51951
51983
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
51952
51984
  if (mentionKeysRef.current.has(key)) {
51953
51985
  mentionKeysRef.current.delete(key);
51954
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1371 => _1371.current, 'optionalAccess', _1372 => _1372.getValue, 'call', _1373 => _1373()]), () => ( ""));
51986
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1375 => _1375.current, 'optionalAccess', _1376 => _1376.getValue, 'call', _1377 => _1377()]), () => ( ""));
51955
51987
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
51956
- _optionalChain([chatInputRef, 'access', _1374 => _1374.current, 'optionalAccess', _1375 => _1375.setValue, 'call', _1376 => _1376(next)]);
51988
+ _optionalChain([chatInputRef, 'access', _1378 => _1378.current, 'optionalAccess', _1379 => _1379.setValue, 'call', _1380 => _1380(next)]);
51957
51989
  }
51958
51990
  }, [mentionMarkerByType]);
51959
51991
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -51970,7 +52002,7 @@ function EmbeddableChatInner({
51970
52002
  }, []);
51971
52003
  const closeContextPicker = _react.useCallback.call(void 0, () => {
51972
52004
  if (mentionActiveRef.current) {
51973
- _optionalChain([chatInputRef, 'access', _1377 => _1377.current, 'optionalAccess', _1378 => _1378.removeMentionTrigger, 'call', _1379 => _1379()]);
52005
+ _optionalChain([chatInputRef, 'access', _1381 => _1381.current, 'optionalAccess', _1382 => _1382.removeMentionTrigger, 'call', _1383 => _1383()]);
51974
52006
  }
51975
52007
  setContextPickerOpen(false);
51976
52008
  setMentionQuery(null);
@@ -52004,8 +52036,8 @@ function EmbeddableChatInner({
52004
52036
  []
52005
52037
  );
52006
52038
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
52007
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1380 => _1380.firstName]), _optionalChain([identityUser, 'optionalAccess', _1381 => _1381.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1382 => _1382.name, 'optionalAccess', _1383 => _1383.trim, 'call', _1384 => _1384()]) || void 0 : void 0;
52008
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1385 => _1385.avatarUrl, 'optionalAccess', _1386 => _1386.trim, 'call', _1387 => _1387()]) || void 0 : void 0;
52039
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1384 => _1384.firstName]), _optionalChain([identityUser, 'optionalAccess', _1385 => _1385.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1386 => _1386.name, 'optionalAccess', _1387 => _1387.trim, 'call', _1388 => _1388()]) || void 0 : void 0;
52040
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1389 => _1389.avatarUrl, 'optionalAccess', _1390 => _1390.trim, 'call', _1391 => _1391()]) || void 0 : void 0;
52009
52041
  const messages = _react.useMemo.call(void 0, () => {
52010
52042
  const cache = timestampCacheRef.current;
52011
52043
  const seenIds = /* @__PURE__ */ new Set();
@@ -52183,9 +52215,9 @@ function EmbeddableChatInner({
52183
52215
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
52184
52216
  const lastSources = _react.useMemo.call(void 0, () => {
52185
52217
  if (chatLoading) return void 0;
52186
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1388 => _1388.sources]);
52218
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1392 => _1392.sources]);
52187
52219
  if (!sources || sources.length === 0) return void 0;
52188
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1389 => _1389.content]) || "";
52220
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1393 => _1393.content]) || "";
52189
52221
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
52190
52222
  (m) => parseInt(m[1], 10)
52191
52223
  );
@@ -52198,7 +52230,7 @@ function EmbeddableChatInner({
52198
52230
  return { cited, uncited };
52199
52231
  }, [lastAssistantMsg, chatLoading]);
52200
52232
  const [portalHost, setPortalHost] = _react.useState.call(void 0, null);
52201
- const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkE6WANQ6Kcjs.PortalContainerContext.Provider, { value: portalHost, children: [
52233
+ const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.PortalContainerContext.Provider, { value: portalHost, children: [
52202
52234
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52203
52235
  "div",
52204
52236
  {
@@ -52232,7 +52264,7 @@ function EmbeddableChatInner({
52232
52264
  ChatPanelHeader,
52233
52265
  {
52234
52266
  showBack: hasConversation || guideCanReturnToMingo,
52235
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1390 => _1390.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
52267
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1394 => _1394.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
52236
52268
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
52237
52269
  isArchivedView: isViewingArchived,
52238
52270
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -52353,9 +52385,9 @@ function EmbeddableChatInner({
52353
52385
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
52354
52386
  subtitleLoading: emptyStateLoading,
52355
52387
  ...guideWelcome,
52356
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1391 => _1391.title]))),
52357
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1392 => _1392.icon]))),
52358
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1393 => _1393.quickActions]), () => ( guideSuggestedActions)),
52388
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1395 => _1395.title]))),
52389
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1396 => _1396.icon]))),
52390
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1397 => _1397.quickActions]), () => ( guideSuggestedActions)),
52359
52391
  onQuickAction: (action) => {
52360
52392
  setQuickActionPreview(null);
52361
52393
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -52512,7 +52544,7 @@ function EmbeddableChatInner({
52512
52544
  "aria-hidden": isOpen,
52513
52545
  className: `sticky bottom-0 h-0 z-[9990] pointer-events-none ${isOpen ? "opacity-0" : "opacity-100"}`,
52514
52546
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-4 md:bottom-6 right-4 md:right-6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52515
- _chunkE6WANQ6Kcjs.Button,
52547
+ _chunkIMK6RUECcjs.Button,
52516
52548
  {
52517
52549
  onClick: handleOpen,
52518
52550
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGHHUCCLXcjs.MingoIcon, { className: "h-5 w-5", color: "currentColor" }),
@@ -53497,4 +53529,4 @@ function EmbeddableChatInner({
53497
53529
 
53498
53530
 
53499
53531
  exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; 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.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; 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.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; 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.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; 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.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.SquareAvatar2 = SquareAvatar2; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; 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.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_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.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.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.announcementDismissCookieName = announcementDismissCookieName; exports.isDismissedCookieValue = isDismissedCookieValue; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; 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.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; 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.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; 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.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; 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.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; 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.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; 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.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.MingoAiButton = MingoAiButton; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
53500
- //# sourceMappingURL=chunk-WDZATJTF.cjs.map
53532
+ //# sourceMappingURL=chunk-FVI2ESVQ.cjs.map