@flamingo-stack/openframe-frontend-core 0.0.351 → 0.0.352-snapshot.20260701170615

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 (117) hide show
  1. package/dist/{chunk-HMUIRZ46.cjs → chunk-3B663UT5.cjs} +222 -165
  2. package/dist/chunk-3B663UT5.cjs.map +1 -0
  3. package/dist/{chunk-UQFTSFIF.cjs → chunk-5AR4XSIK.cjs} +29 -29
  4. package/dist/{chunk-UQFTSFIF.cjs.map → chunk-5AR4XSIK.cjs.map} +1 -1
  5. package/dist/{chunk-MLW25MGY.js → chunk-5Y6G2GKO.js} +3 -3
  6. package/dist/{chunk-EKU6D26E.js → chunk-776NIQQ6.js} +6 -6
  7. package/dist/{chunk-YBL3JURC.js → chunk-BAPR6IQV.js} +5 -5
  8. package/dist/{chunk-VY6AAUCK.js → chunk-CDPGUKPU.js} +2 -2
  9. package/dist/{chunk-NEIOYJIE.cjs → chunk-D4TPL6T4.cjs} +15 -15
  10. package/dist/{chunk-NEIOYJIE.cjs.map → chunk-D4TPL6T4.cjs.map} +1 -1
  11. package/dist/{chunk-YIFJJCFB.js → chunk-EQQZLZZH.js} +4 -4
  12. package/dist/{chunk-RD3HIB25.cjs → chunk-GPX5I7FT.cjs} +2 -2
  13. package/dist/{chunk-FPAF4JHM.js.map → chunk-GPX5I7FT.cjs.map} +1 -1
  14. package/dist/{chunk-46Z3O6SN.cjs → chunk-HAFY32LW.cjs} +5 -5
  15. package/dist/{chunk-46Z3O6SN.cjs.map → chunk-HAFY32LW.cjs.map} +1 -1
  16. package/dist/{chunk-VZ7TICMR.cjs → chunk-HWFFUT6G.cjs} +40 -40
  17. package/dist/{chunk-VZ7TICMR.cjs.map → chunk-HWFFUT6G.cjs.map} +1 -1
  18. package/dist/{chunk-NIRMBPFP.cjs → chunk-IVL6FGM6.cjs} +19 -19
  19. package/dist/{chunk-NIRMBPFP.cjs.map → chunk-IVL6FGM6.cjs.map} +1 -1
  20. package/dist/{chunk-FPAF4JHM.js → chunk-JGAAUUD7.js} +2 -2
  21. package/dist/chunk-JGAAUUD7.js.map +1 -0
  22. package/dist/{chunk-A6YFD2SK.js → chunk-OKGXLXDW.js} +174 -117
  23. package/dist/chunk-OKGXLXDW.js.map +1 -0
  24. package/dist/{chunk-63ISTNQW.cjs → chunk-P56AC6I5.cjs} +31 -31
  25. package/dist/{chunk-63ISTNQW.cjs.map → chunk-P56AC6I5.cjs.map} +1 -1
  26. package/dist/{chunk-4WVVMKMC.js → chunk-POLYFLWF.js} +5 -5
  27. package/dist/{chunk-JKJO7HVH.cjs → chunk-RYROZ7HM.cjs} +3 -3
  28. package/dist/{chunk-JKJO7HVH.cjs.map → chunk-RYROZ7HM.cjs.map} +1 -1
  29. package/dist/{chunk-QGBJKB6V.cjs → chunk-TWVF3QU5.cjs} +39 -39
  30. package/dist/{chunk-QGBJKB6V.cjs.map → chunk-TWVF3QU5.cjs.map} +1 -1
  31. package/dist/{chunk-KYCZ4ISB.js → chunk-U5MQW3PH.js} +2 -2
  32. package/dist/{chunk-XZVVLO4V.cjs → chunk-W3CCNLBL.cjs} +12 -12
  33. package/dist/{chunk-XZVVLO4V.cjs.map → chunk-W3CCNLBL.cjs.map} +1 -1
  34. package/dist/{chunk-DJZ64AF6.js → chunk-XJQNOT4Z.js} +2 -2
  35. package/dist/{chunk-TH3HPNMO.cjs → chunk-XKRR5GIV.cjs} +70 -70
  36. package/dist/{chunk-TH3HPNMO.cjs.map → chunk-XKRR5GIV.cjs.map} +1 -1
  37. package/dist/{chunk-JBWB3U3P.js → chunk-YGCWTL7E.js} +2 -2
  38. package/dist/{chunk-5F45BY24.js → chunk-YI5435S6.js} +3 -3
  39. package/dist/{chunk-BMQ5CBFD.cjs → chunk-YL2YXSRI.cjs} +73 -73
  40. package/dist/{chunk-BMQ5CBFD.cjs.map → chunk-YL2YXSRI.cjs.map} +1 -1
  41. package/dist/{chunk-GJZL72ON.cjs → chunk-Z22AMCZL.cjs} +7 -7
  42. package/dist/{chunk-GJZL72ON.cjs.map → chunk-Z22AMCZL.cjs.map} +1 -1
  43. package/dist/{chunk-WB2EWYSF.js → chunk-ZAKU2MOI.js} +3 -3
  44. package/dist/{chunk-Q3VK7WI2.js → chunk-ZYB2QBNU.js} +6 -6
  45. package/dist/components/case-studies/index.cjs +9 -9
  46. package/dist/components/case-studies/index.js +3 -3
  47. package/dist/components/chat/approval-batch-message.d.ts +7 -1
  48. package/dist/components/chat/approval-batch-message.d.ts.map +1 -1
  49. package/dist/components/chat/approval-request-message.d.ts.map +1 -1
  50. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  51. package/dist/components/chat/index.cjs +3 -3
  52. package/dist/components/chat/index.js +2 -2
  53. package/dist/components/chat/tool-call-blocks.d.ts.map +1 -1
  54. package/dist/components/chat/tool-execution-display.d.ts.map +1 -1
  55. package/dist/components/chat/types/component.types.d.ts +6 -0
  56. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  57. package/dist/components/contact/index.cjs +4 -4
  58. package/dist/components/contact/index.js +3 -3
  59. package/dist/components/docs/index.cjs +6 -6
  60. package/dist/components/docs/index.js +5 -5
  61. package/dist/components/embeds/index.cjs +4 -4
  62. package/dist/components/embeds/index.js +3 -3
  63. package/dist/components/faq/index.cjs +5 -5
  64. package/dist/components/faq/index.js +4 -4
  65. package/dist/components/features/index.cjs +3 -3
  66. package/dist/components/features/index.js +2 -2
  67. package/dist/components/help-center-pages/index.cjs +22 -22
  68. package/dist/components/help-center-pages/index.js +13 -13
  69. package/dist/components/index.cjs +124 -124
  70. package/dist/components/index.js +11 -11
  71. package/dist/components/navigation/index.cjs +3 -3
  72. package/dist/components/navigation/index.js +2 -2
  73. package/dist/components/onboarding-guides/index.cjs +7 -7
  74. package/dist/components/onboarding-guides/index.js +6 -6
  75. package/dist/components/related-content/index.cjs +5 -5
  76. package/dist/components/related-content/index.js +4 -4
  77. package/dist/components/tickets/index.cjs +6 -6
  78. package/dist/components/tickets/index.js +5 -5
  79. package/dist/components/ui/index.cjs +3 -3
  80. package/dist/components/ui/index.js +2 -2
  81. package/dist/hooks/index.cjs +2 -2
  82. package/dist/hooks/index.js +1 -1
  83. package/dist/index.cjs +3 -3
  84. package/dist/index.js +2 -2
  85. package/dist/utils/index.cjs +1 -1
  86. package/dist/utils/index.cjs.map +1 -1
  87. package/dist/utils/index.js +1 -1
  88. package/dist/utils/index.js.map +1 -1
  89. package/dist/utils/platform-config.d.ts.map +1 -1
  90. package/package.json +1 -1
  91. package/src/components/chat/approval-batch-message.tsx +82 -27
  92. package/src/components/chat/approval-request-message.tsx +27 -19
  93. package/src/components/chat/chat-message-enhanced.tsx +3 -0
  94. package/src/components/chat/tool-call-blocks.tsx +17 -6
  95. package/src/components/chat/tool-execution-display.tsx +23 -8
  96. package/src/components/chat/types/component.types.ts +6 -0
  97. package/src/stories/ApprovalBatchMessage.stories.tsx +169 -0
  98. package/src/stories/ApprovalBatchMessageClient.stories.tsx +172 -0
  99. package/src/stories/ApprovalRequestMessage.stories.tsx +95 -0
  100. package/src/stories/ToolExecutionDisplay.stories.tsx +1 -1
  101. package/src/stories/ToolExecutionDisplayClient.stories.tsx +64 -0
  102. package/src/utils/platform-config.tsx +4 -1
  103. package/dist/chunk-A6YFD2SK.js.map +0 -1
  104. package/dist/chunk-HMUIRZ46.cjs.map +0 -1
  105. package/dist/chunk-RD3HIB25.cjs.map +0 -1
  106. /package/dist/{chunk-MLW25MGY.js.map → chunk-5Y6G2GKO.js.map} +0 -0
  107. /package/dist/{chunk-EKU6D26E.js.map → chunk-776NIQQ6.js.map} +0 -0
  108. /package/dist/{chunk-YBL3JURC.js.map → chunk-BAPR6IQV.js.map} +0 -0
  109. /package/dist/{chunk-VY6AAUCK.js.map → chunk-CDPGUKPU.js.map} +0 -0
  110. /package/dist/{chunk-YIFJJCFB.js.map → chunk-EQQZLZZH.js.map} +0 -0
  111. /package/dist/{chunk-4WVVMKMC.js.map → chunk-POLYFLWF.js.map} +0 -0
  112. /package/dist/{chunk-KYCZ4ISB.js.map → chunk-U5MQW3PH.js.map} +0 -0
  113. /package/dist/{chunk-DJZ64AF6.js.map → chunk-XJQNOT4Z.js.map} +0 -0
  114. /package/dist/{chunk-JBWB3U3P.js.map → chunk-YGCWTL7E.js.map} +0 -0
  115. /package/dist/{chunk-5F45BY24.js.map → chunk-YI5435S6.js.map} +0 -0
  116. /package/dist/{chunk-WB2EWYSF.js.map → chunk-ZAKU2MOI.js.map} +0 -0
  117. /package/dist/{chunk-Q3VK7WI2.js.map → chunk-ZYB2QBNU.js.map} +0 -0
@@ -25,7 +25,7 @@
25
25
 
26
26
 
27
27
 
28
- var _chunkRD3HIB25cjs = require('./chunk-RD3HIB25.cjs');
28
+ var _chunkGPX5I7FTcjs = require('./chunk-GPX5I7FT.cjs');
29
29
 
30
30
 
31
31
 
@@ -518,24 +518,27 @@ function Tag({
518
518
 
519
519
 
520
520
  function ApprovalFieldList({ fields }) {
521
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dl", { className: "flex flex-col gap-2.5 mt-1", children: fields.map((f, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0.5", children: [
521
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dl", { className: "flex flex-col gap-2.5 mt-[var(--spacing-system-xxs)]", children: fields.map((f, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0.5", children: [
522
522
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dt", { className: "font-['DM_Sans'] font-semibold text-[11px] uppercase tracking-wide text-ods-text-tertiary leading-4", children: f.label }),
523
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dd", { className: "font-['DM_Sans'] text-sm text-ods-text-primary leading-5 whitespace-pre-wrap break-words", children: f.value })
523
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dd", { className: "text-h6 text-ods-text-primary whitespace-pre-wrap break-words", children: f.value })
524
524
  ] }, i)) });
525
525
  }
526
526
  function ApprovalCardBody({
527
527
  data
528
528
  }) {
529
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1", children: [
530
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-3 flex gap-2 items-start max-h-32 overflow-y-auto", children: [
531
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { className: "font-['DM_Sans'] font-medium text-sm text-ods-text-primary flex-1 leading-5 whitespace-pre-wrap break-words", children: data.command }),
529
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xxs)]", children: [
530
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-[var(--spacing-system-sf)] flex gap-[var(--spacing-system-xsf)] items-start max-h-32 overflow-y-auto", children: [
531
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { className: "text-h6 text-ods-text-primary flex-1 whitespace-pre-wrap break-words", children: data.command }),
532
532
  data.icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-4 h-4 shrink-0 text-ods-text-tertiary", children: data.icon })
533
533
  ] }),
534
- data.fields && data.fields.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalFieldList, { fields: data.fields }) : data.explanation && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-sm text-ods-text-secondary leading-5 whitespace-pre-line break-words", children: data.explanation })
534
+ data.fields && data.fields.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalFieldList, { fields: data.fields }) : data.explanation && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary whitespace-pre-line break-words", children: data.explanation })
535
535
  ] });
536
536
  }
537
537
  var ApprovalRequestMessage = _react.forwardRef.call(void 0,
538
- ({ className, data, onApprove, onReject, status = "pending", ...props }, ref) => {
538
+ // `assistantType` is accepted for prop-parity with the batch card (so hosts
539
+ // can forward it uniformly); the legacy single-command card has no
540
+ // icon/divider to vary, so it renders identically for admin and client today.
541
+ ({ className, data, onApprove, onReject, status = "pending", assistantType: _assistantType, ...props }, ref) => {
539
542
  const [isProcessing, setIsProcessing] = _react.useState.call(void 0, false);
540
543
  const handleApprove = async () => {
541
544
  setIsProcessing(true);
@@ -558,13 +561,13 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
558
561
  {
559
562
  ref,
560
563
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
561
- "bg-ods-card border border-ods-border rounded-md p-4 mb-2 flex flex-col gap-4",
564
+ "bg-ods-card border border-ods-border rounded-md p-[var(--spacing-system-mf)] mb-[var(--spacing-system-xsf)] flex flex-col gap-[var(--spacing-system-mf)]",
562
565
  className
563
566
  ),
564
567
  ...props,
565
568
  children: [
566
569
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
567
- status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4 items-center", children: [
570
+ status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-mf)] items-center", children: [
568
571
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
569
572
  _chunkQJGRP2YEcjs.Button,
570
573
  {
@@ -574,8 +577,8 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
574
577
  disabled: isProcessing,
575
578
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
576
579
  "bg-ods-accent hover:bg-ods-accent/90",
577
- "font-mono font-medium md:!text-sm text-ods-bg uppercase tracking-[-0.28px]",
578
- "px-2 py-1 h-auto"
580
+ "text-h5 text-ods-bg",
581
+ "px-[var(--spacing-system-xsf)] h-8"
579
582
  ),
580
583
  children: "Approve"
581
584
  }
@@ -589,20 +592,13 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
589
592
  disabled: isProcessing,
590
593
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
591
594
  "bg-ods-card border-ods-border",
592
- "font-mono font-medium md:!text-sm text-ods-text-primary uppercase tracking-[-0.28px]",
593
- "hover:bg-ods-bg px-2 py-1 h-auto"
595
+ "text-h5 text-ods-text-primary",
596
+ "hover:bg-ods-bg px-[var(--spacing-system-xsf)] h-8"
594
597
  ),
595
598
  children: "Reject"
596
599
  }
597
600
  )
598
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
599
- Tag,
600
- {
601
- label: status === "approved" ? "Approved" : "Rejected",
602
- variant: status === "approved" ? "success" : "error",
603
- icon: status === "approved" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.CheckCircle, { className: "w-4 h-4" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.XCircle, { className: "w-4 h-4" })
604
- }
605
- ) })
601
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: status === "approved" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Approved", variant: "success", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.CheckCircle, { className: "w-4 h-4" }) }) : status === "cancelled" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Canceled", variant: "grey", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Ban, { className: "w-4 h-4" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Rejected", variant: "error", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.XCircle, { className: "w-4 h-4" }) }) })
606
602
  ]
607
603
  }
608
604
  );
@@ -771,10 +767,11 @@ function formatToolResult(value) {
771
767
 
772
768
  // src/components/chat/tool-call-blocks.tsx
773
769
 
770
+ var CODE_PRE_CLASS = "bg-ods-bg border border-ods-border rounded-md p-[var(--spacing-system-sf)] w-full max-h-64 overflow-auto text-xs leading-5 text-ods-text-primary font-mono whitespace-pre";
774
771
  function ArgRow({ argKey, value }) {
775
772
  const formatted = formatToolArgValue(value);
776
773
  if (formatted.kind === "inline") {
777
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-1 items-start w-full", children: [
774
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-xxs)] items-start w-full", children: [
778
775
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: [
779
776
  argKey,
780
777
  ":"
@@ -782,40 +779,41 @@ function ArgRow({ argKey, value }) {
782
779
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-1 min-w-0 text-ods-text-primary break-all", children: formatted.text })
783
780
  ] });
784
781
  }
785
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1 items-start w-full", children: [
782
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xxs)] items-start w-full", children: [
786
783
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
787
784
  argKey,
788
785
  ":"
789
786
  ] }),
790
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: "bg-ods-bg border border-ods-border rounded-md p-3 w-full max-h-64 overflow-auto text-xs leading-5 text-ods-text-primary font-mono whitespace-pre", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { children: formatted.text }) })
787
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: CODE_PRE_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { children: formatted.text }) })
791
788
  ] });
792
789
  }
793
790
  function ResultBlock({ result, className }) {
794
791
  const formatted = formatToolResult(result);
795
792
  if (!formatted.text) return null;
796
793
  if (formatted.kind === "inline") {
797
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 items-start w-full", className), children: [
794
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xxs)] items-start w-full", className), children: [
798
795
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "Result:" }),
799
796
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary break-all", children: formatted.text })
800
797
  ] });
801
798
  }
802
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 items-start w-full", className), children: [
799
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xxs)] items-start w-full", className), children: [
803
800
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "Result:" }),
804
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: "bg-ods-bg border border-ods-border rounded-md p-3 w-full max-h-64 overflow-auto text-xs leading-5 text-ods-text-primary font-mono whitespace-pre", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { children: formatted.text }) })
801
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: CODE_PRE_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "code", { children: formatted.text }) })
805
802
  ] });
806
803
  }
807
804
 
808
805
  // src/components/chat/approval-batch-message.tsx
809
806
 
810
807
  var COMMAND_BODY_KEYS = new Set(COMMAND_BODY_ARG_KEYS);
811
- function renderStatusTag(status) {
808
+ function renderStatusTag(status, isClient, resolvedByName) {
809
+ const suffix = isClient && resolvedByName ? ` by ${resolvedByName}` : "";
812
810
  if (status === "approved") {
813
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Approved", variant: "success", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CheckCircleIcon, { className: "w-4 h-4" }) });
811
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: `Approved${suffix}`, variant: "success", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CheckCircleIcon, { className: "w-4 h-4" }) });
814
812
  }
815
813
  if (status === "cancelled") {
816
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Cancelled", variant: "grey", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.XmarkIcon, { className: "w-4 h-4" }) });
814
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: `Canceled${suffix}`, variant: "grey", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.XmarkIcon, { className: "w-4 h-4" }) });
817
815
  }
818
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: "Rejected", variant: "error", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.XmarkCircleIcon, { className: "w-4 h-4" }) });
816
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { label: `Rejected${suffix}`, variant: "error", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.XmarkCircleIcon, { className: "w-4 h-4" }) });
819
817
  }
820
818
  function getArgEntries(call) {
821
819
  const args = call.toolCallArguments;
@@ -831,47 +829,66 @@ function ExecutionStatusIcon({
831
829
  if (execution.success === false) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.XmarkCircleIcon, { className: "w-4 h-4 text-ods-error" });
832
830
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CheckCircleIcon, { className: "w-4 h-4 text-ods-success" });
833
831
  }
834
- function ToolCallRow({ call, expanded, onToggle, batchStatus, execution, showExecutionStatus }) {
832
+ function ToolCallRow({ call, expanded, onToggle, batchStatus, execution, showExecutionStatus, isClient }) {
835
833
  const command = getCommandText(call);
836
834
  const args = getArgEntries(call);
837
835
  const toolType = call.toolType || "OPENFRAME";
838
836
  const { innerRef, containerStyle } = useCollapsible({ expanded });
839
837
  const result = _optionalChain([execution, 'optionalAccess', _5 => _5.status]) === "done" ? execution.result : void 0;
840
838
  const hasExpandableBody = args.length > 0 || typeof result === "string" && result.length > 0;
841
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-card border-b border-ods-border last:border-b-0 flex flex-col items-start w-full", children: [
842
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
843
- "button",
844
- {
845
- type: "button",
846
- onClick: onToggle,
847
- className: "flex gap-2 items-start w-full p-3 cursor-pointer text-left",
848
- children: [
849
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD3HIB25cjs.ToolIcon, { toolType, size: 16 }) }),
850
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
851
- "div",
852
- {
853
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
854
- "flex-1 min-w-0 font-medium text-sm leading-5",
855
- expanded ? "text-ods-text-primary whitespace-pre-wrap break-all" : "text-ods-text-secondary line-clamp-2 max-h-10 break-all"
839
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
840
+ "div",
841
+ {
842
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
843
+ "bg-ods-card flex flex-col items-start w-full",
844
+ // ADMIN: rows share one outer card, separated by a bottom border.
845
+ // CLIENT (Fae): each command is its own self-contained bordered box
846
+ // (Figma 1092-2804 / 1972-7925) — the outer component is frameless.
847
+ isClient ? "border border-ods-border rounded-[6px] overflow-hidden" : "border-b border-ods-border last:border-b-0"
848
+ ),
849
+ children: [
850
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
851
+ "button",
852
+ {
853
+ type: "button",
854
+ onClick: onToggle,
855
+ className: "flex gap-[var(--spacing-system-xsf)] items-start w-full p-[var(--spacing-system-sf)] cursor-pointer text-left",
856
+ children: [
857
+ !isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGPX5I7FTcjs.ToolIcon, { toolType, size: 16 }) }),
858
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
859
+ "div",
860
+ {
861
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
862
+ "flex-1 min-w-0 text-h6",
863
+ expanded ? "text-ods-text-primary whitespace-pre-wrap break-all" : "text-ods-text-secondary line-clamp-2 max-h-10 break-all"
864
+ ),
865
+ children: command
866
+ }
856
867
  ),
857
- children: command
868
+ showExecutionStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionStatusIcon, { batchStatus, execution }) }),
869
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExpandChevron, { expanded }) })
870
+ ]
871
+ }
872
+ ),
873
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasExpandableBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0 items-start w-full text-h6 px-[var(--spacing-system-sf)] pb-[var(--spacing-system-sf)] bg-ods-card", children: [
874
+ args.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ArgRow, { argKey: key, value }, key)),
875
+ result && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
876
+ ResultBlock,
877
+ {
878
+ result,
879
+ className: args.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
858
880
  }
859
- ),
860
- showExecutionStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionStatusIcon, { batchStatus, execution }) }),
861
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExpandChevron, { expanded }) })
862
- ]
863
- }
864
- ),
865
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasExpandableBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2 items-start w-full text-sm font-medium leading-5 p-3 bg-ods-card", children: [
866
- args.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ArgRow, { argKey: key, value }, key)),
867
- result && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ResultBlock, { result })
868
- ] }) }) })
869
- ] });
881
+ )
882
+ ] }) }) })
883
+ ]
884
+ }
885
+ );
870
886
  }
871
887
  var ApprovalBatchMessage = _react.forwardRef.call(void 0,
872
- ({ className, data, onApprove, onReject, status = "pending", maxBodyHeight, resolvedByName, showExecutionStatus = true, ...props }, ref) => {
888
+ ({ className, data, onApprove, onReject, status = "pending", maxBodyHeight, resolvedByName, showExecutionStatus = true, assistantType, ...props }, ref) => {
873
889
  const [expandedId, setExpandedId] = _react.useState.call(void 0, null);
874
890
  const [isProcessing, setIsProcessing] = _react.useState.call(void 0, false);
891
+ const isClient = assistantType === "fae";
875
892
  const explanations = data.toolCalls.map((c) => _optionalChain([c, 'access', _6 => _6.toolExplanation, 'optionalAccess', _7 => _7.trim, 'call', _8 => _8()])).filter((s) => !!s);
876
893
  const handleApprove = async () => {
877
894
  setIsProcessing(true);
@@ -895,7 +912,10 @@ var ApprovalBatchMessage = _react.forwardRef.call(void 0,
895
912
  {
896
913
  ref,
897
914
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
898
- "bg-ods-card border border-ods-border rounded-md overflow-hidden flex flex-col mb-2",
915
+ "flex flex-col mb-[var(--spacing-system-xsf)]",
916
+ // ADMIN: one framed card. CLIENT (Fae): frameless container — the
917
+ // bordered command box(es) + button/status row stacked 16px apart.
918
+ isClient ? "gap-[var(--spacing-system-mf)]" : "bg-ods-card border border-ods-border rounded-md overflow-hidden",
899
919
  className
900
920
  ),
901
921
  ...props,
@@ -903,7 +923,11 @@ var ApprovalBatchMessage = _react.forwardRef.call(void 0,
903
923
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
904
924
  "div",
905
925
  {
906
- className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col", maxBodyHeight != null && "overflow-y-auto overscroll-contain"),
926
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
927
+ "flex flex-col",
928
+ isClient && "gap-[var(--spacing-system-mf)]",
929
+ maxBodyHeight != null && "overflow-y-auto overscroll-contain"
930
+ ),
907
931
  style: maxBodyHeight != null ? { maxHeight: maxBodyHeight } : void 0,
908
932
  children: data.toolCalls.map((call) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
909
933
  ToolCallRow,
@@ -915,53 +939,65 @@ var ApprovalBatchMessage = _react.forwardRef.call(void 0,
915
939
  ),
916
940
  batchStatus: status,
917
941
  execution: _optionalChain([data, 'access', _11 => _11.executions, 'optionalAccess', _12 => _12[call.toolExecutionRequestId]]),
918
- showExecutionStatus
942
+ showExecutionStatus,
943
+ isClient
919
944
  },
920
945
  call.toolExecutionRequestId
921
946
  ))
922
947
  }
923
948
  ),
924
- showFooterBlock && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-card flex flex-col gap-2 items-start justify-center p-3", children: [
925
- explanations.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "list-disc pl-5 text-sm font-medium text-ods-text-primary leading-5 w-full", children: explanations.map((expl, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: expl }, i)) }),
926
- status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 items-center", children: [
927
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
928
- _chunkQJGRP2YEcjs.Button,
929
- {
930
- size: "small-legacy",
931
- variant: "accent",
932
- onClick: handleApprove,
933
- disabled: isProcessing,
934
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
935
- "bg-ods-accent hover:bg-ods-accent/90",
936
- "font-mono font-medium md:!text-sm text-ods-bg uppercase tracking-[-0.28px]",
937
- "px-2 py-1 h-auto"
938
- ),
939
- children: "Approve"
940
- }
949
+ showFooterBlock && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
950
+ "div",
951
+ {
952
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
953
+ "flex flex-col gap-[var(--spacing-system-xsf)] items-start justify-center",
954
+ // ADMIN: padded footer inside the card, divided from the list.
955
+ // CLIENT (Fae): buttons/status sit flush outside the box.
956
+ !isClient && "bg-ods-card border-t border-ods-border p-[var(--spacing-system-sf)]"
941
957
  ),
942
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
943
- _chunkQJGRP2YEcjs.Button,
944
- {
945
- size: "small-legacy",
946
- variant: "outline",
947
- onClick: handleReject,
948
- disabled: isProcessing,
949
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
950
- "bg-ods-card border-ods-border",
951
- "font-mono font-medium md:!text-sm text-ods-text-primary uppercase tracking-[-0.28px]",
952
- "hover:bg-ods-bg px-2 py-1 h-auto"
958
+ children: [
959
+ explanations.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "list-disc pl-5 text-h6 text-ods-text-primary w-full", children: explanations.map((expl, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: expl }, i)) }),
960
+ status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-xsf)] items-center", children: [
961
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
962
+ _chunkQJGRP2YEcjs.Button,
963
+ {
964
+ size: "small-legacy",
965
+ variant: "accent",
966
+ onClick: handleApprove,
967
+ disabled: isProcessing,
968
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
969
+ "bg-ods-accent hover:bg-ods-accent/90",
970
+ "text-h5 text-ods-bg",
971
+ "px-[var(--spacing-system-xsf)] h-8"
972
+ ),
973
+ children: "Approve"
974
+ }
953
975
  ),
954
- children: "Reject"
955
- }
956
- )
957
- ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
958
- renderStatusTag(status),
959
- resolvedByName && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-h6 text-ods-text-secondary", children: [
960
- "by ",
961
- resolvedByName
962
- ] })
963
- ] })
964
- ] })
976
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
977
+ _chunkQJGRP2YEcjs.Button,
978
+ {
979
+ size: "small-legacy",
980
+ variant: "outline",
981
+ onClick: handleReject,
982
+ disabled: isProcessing,
983
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
984
+ "bg-ods-card border-ods-border",
985
+ "text-h5 text-ods-text-primary",
986
+ "hover:bg-ods-bg px-[var(--spacing-system-xsf)] h-8"
987
+ ),
988
+ children: "Reject"
989
+ }
990
+ )
991
+ ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
992
+ renderStatusTag(status, isClient, resolvedByName),
993
+ !isClient && resolvedByName && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-h6 text-ods-text-secondary", children: [
994
+ "by ",
995
+ resolvedByName
996
+ ] })
997
+ ] })
998
+ ]
999
+ }
1000
+ )
965
1001
  ]
966
1002
  }
967
1003
  );
@@ -4336,9 +4372,10 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
4336
4372
 
4337
4373
  var COMMAND_BODY_KEYS2 = new Set(COMMAND_BODY_ARG_KEYS);
4338
4374
  var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4339
- ({ className, message: message2, ...props }, ref) => {
4375
+ ({ className, message: message2, assistantType, ...props }, ref) => {
4340
4376
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
4341
4377
  const { innerRef, containerStyle } = useCollapsible({ expanded });
4378
+ const isClient = assistantType === "fae";
4342
4379
  const isExecuting = message2.type === "EXECUTING_TOOL";
4343
4380
  const isExecuted = message2.type === "EXECUTED_TOOL";
4344
4381
  const integratedToolType = message2.integratedToolType || "OPENFRAME";
@@ -4369,6 +4406,8 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4369
4406
  {
4370
4407
  ref,
4371
4408
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
4409
+ // The command running block keeps its bordered box in both chats
4410
+ // (Figma 1972-6109). CLIENT (Fae) only drops the tool icon below.
4372
4411
  "bg-ods-card border border-ods-border rounded-[6px] overflow-hidden w-full flex flex-col",
4373
4412
  className
4374
4413
  ),
@@ -4381,12 +4420,12 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4381
4420
  className: "flex gap-[var(--spacing-system-xs)] items-start p-[var(--spacing-system-s)] cursor-pointer text-left w-full",
4382
4421
  onClick: () => setExpanded((prev) => !prev),
4383
4422
  children: [
4384
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD3HIB25cjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
4423
+ !isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGPX5I7FTcjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
4385
4424
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4386
4425
  "div",
4387
4426
  {
4388
4427
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
4389
- "flex-1 min-w-0 text-sm font-medium leading-5",
4428
+ "flex-1 min-w-0 text-h6",
4390
4429
  expanded ? "text-ods-text-primary whitespace-pre-wrap break-all" : "text-ods-text-secondary line-clamp-2 max-h-10 break-all"
4391
4430
  ),
4392
4431
  children: previewText
@@ -4397,13 +4436,28 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4397
4436
  ]
4398
4437
  }
4399
4438
  ),
4400
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2 items-start w-full text-sm font-medium leading-5 p-3 bg-ods-card", children: [
4439
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0 items-start w-full text-h6 p-[var(--spacing-system-sf)] bg-ods-card", children: [
4401
4440
  argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ArgRow, { argKey: key, value }, key)),
4402
- hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ResultBlock, { result: message2.result }),
4403
- isExecuting && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1 items-start w-full", children: [
4404
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "Result:" }),
4405
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
4406
- ] })
4441
+ hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4442
+ ResultBlock,
4443
+ {
4444
+ result: message2.result,
4445
+ className: argEntries.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
4446
+ }
4447
+ ),
4448
+ isExecuting && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4449
+ "div",
4450
+ {
4451
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
4452
+ "flex flex-col gap-[var(--spacing-system-xxs)] items-start w-full",
4453
+ argEntries.length > 0 && "mt-[var(--spacing-system-xsf)]"
4454
+ ),
4455
+ children: [
4456
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "Result:" }),
4457
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
4458
+ ]
4459
+ }
4460
+ )
4407
4461
  ] }) }) })
4408
4462
  ]
4409
4463
  }
@@ -5159,7 +5213,8 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
5159
5213
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5160
5214
  ToolExecutionDisplay,
5161
5215
  {
5162
- message: segment.data
5216
+ message: segment.data,
5217
+ assistantType
5163
5218
  },
5164
5219
  index
5165
5220
  );
@@ -5170,7 +5225,8 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
5170
5225
  data: segment.data,
5171
5226
  status: segment.status,
5172
5227
  onApprove: segment.onApprove,
5173
- onReject: segment.onReject
5228
+ onReject: segment.onReject,
5229
+ assistantType
5174
5230
  },
5175
5231
  index
5176
5232
  );
@@ -5182,7 +5238,8 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
5182
5238
  status: segment.status,
5183
5239
  resolvedByName: segment.resolvedByName,
5184
5240
  onApprove: segment.onApprove,
5185
- onReject: segment.onReject
5241
+ onReject: segment.onReject,
5242
+ assistantType
5186
5243
  },
5187
5244
  index
5188
5245
  );
@@ -5919,7 +5976,7 @@ function ChatQuickActionRow({
5919
5976
  wrap = false,
5920
5977
  className
5921
5978
  }) {
5922
- const auto = _chunkRD3HIB25cjs.useAutoLimitTags.call(void 0, {
5979
+ const auto = _chunkGPX5I7FTcjs.useAutoLimitTags.call(void 0, {
5923
5980
  count: chips.length,
5924
5981
  reserveInputWidth: false
5925
5982
  });
@@ -6434,7 +6491,7 @@ function DialogSearchBar({
6434
6491
  onSearchChange
6435
6492
  }) {
6436
6493
  const [value, setValue] = React13.useState(_nullishCoalesce(initialValue, () => ( "")));
6437
- const debounced = _chunkRD3HIB25cjs.useDebounce.call(void 0, value, 300);
6494
+ const debounced = _chunkGPX5I7FTcjs.useDebounce.call(void 0, value, 300);
6438
6495
  const lastEmitted = React13.useRef(_nullishCoalesce(initialValue, () => ( "")));
6439
6496
  React13.useEffect(() => {
6440
6497
  if (debounced === lastEmitted.current) return;
@@ -8477,7 +8534,7 @@ function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
8477
8534
  return;
8478
8535
  }
8479
8536
  const target = stripSameOriginToPath(href);
8480
- if (target.includes("#") && _chunkRD3HIB25cjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkRD3HIB25cjs.STICKY_HEADER_OFFSET_PX })) {
8537
+ if (target.includes("#") && _chunkGPX5I7FTcjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkGPX5I7FTcjs.STICKY_HEADER_OFFSET_PX })) {
8481
8538
  return;
8482
8539
  }
8483
8540
  const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _128 => _128.navigation, 'access', _129 => _129.navigate, 'optionalCall', _130 => _130({ href, path, targetPlatform })]), () => ( false));
@@ -8961,7 +9018,7 @@ function AdminContentCard({
8961
9018
  const [imageError, setImageError] = _react.useState.call(void 0, false);
8962
9019
  const [imageLoaded, setImageLoaded] = _react.useState.call(void 0, false);
8963
9020
  const displayUrl = imageUrl && !imageError ? imageUrl : placeholderUrl;
8964
- const imageBgColor = _chunkRD3HIB25cjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
9021
+ const imageBgColor = _chunkGPX5I7FTcjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
8965
9022
  _react.useEffect.call(void 0, () => {
8966
9023
  setImageLoaded(false);
8967
9024
  }, [displayUrl]);
@@ -9607,7 +9664,7 @@ var RATIO_TO_CSS_ASPECT = {
9607
9664
  landscape: "16 / 9"
9608
9665
  };
9609
9666
  function LazyBite({ ratio, children }) {
9610
- const { ref, isNear } = _chunkRD3HIB25cjs.useNearViewport.call(void 0, "500px");
9667
+ const { ref, isNear } = _chunkGPX5I7FTcjs.useNearViewport.call(void 0, "500px");
9611
9668
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, style: { aspectRatio: RATIO_TO_CSS_ASPECT[ratio] }, children: isNear ? children : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full h-full bg-ods-card rounded-md" }) });
9612
9669
  }
9613
9670
  function VideoBitesDisplay({
@@ -10440,7 +10497,7 @@ function useEntityCardPlaceholder({
10440
10497
  siteName = "",
10441
10498
  aspect = "wide"
10442
10499
  }) {
10443
- const derived = _chunkRD3HIB25cjs.useOgPlaceholderUrl.call(void 0, { title, siteName, aspect });
10500
+ const derived = _chunkGPX5I7FTcjs.useOgPlaceholderUrl.call(void 0, { title, siteName, aspect });
10444
10501
  return placeholderUrl !== void 0 ? placeholderUrl : derived;
10445
10502
  }
10446
10503
 
@@ -11613,7 +11670,7 @@ function AutocompleteInner(props, ref) {
11613
11670
  }, [valueArray, options]);
11614
11671
  const selectedOption = !multiple && selectedOptions.length > 0 ? selectedOptions[0] : null;
11615
11672
  const inputPlaceholder = multiple ? valueArray.length === 0 ? placeholder : "Add More..." : placeholder;
11616
- const autoLimitTags = _chunkRD3HIB25cjs.useAutoLimitTags.call(void 0, {
11673
+ const autoLimitTags = _chunkGPX5I7FTcjs.useAutoLimitTags.call(void 0, {
11617
11674
  count: multiple ? selectedOptions.length : 0,
11618
11675
  limitTags: multiple ? limitTagsProp : 0,
11619
11676
  placeholder: inputPlaceholder
@@ -12353,7 +12410,7 @@ function DatePickerCalendar({
12353
12410
  fluid = false
12354
12411
  }) {
12355
12412
  const today = /* @__PURE__ */ new Date();
12356
- const isMdUp = _nullishCoalesce(_chunkRD3HIB25cjs.useMdUp.call(void 0, ), () => ( true));
12413
+ const isMdUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useMdUp.call(void 0, ), () => ( true));
12357
12414
  const monthsToShow = isMdUp ? numberOfMonths : 1;
12358
12415
  const [draftRange, setDraftRange] = React38.useState(
12359
12416
  mode === "range" ? selected : void 0
@@ -13328,7 +13385,7 @@ var ProgressBar = ({
13328
13385
  mobileHeight = 8,
13329
13386
  inverted = false
13330
13387
  }) => {
13331
- const isMdUp = _nullishCoalesce(_chunkRD3HIB25cjs.useMdUp.call(void 0, ), () => ( true));
13388
+ const isMdUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useMdUp.call(void 0, ), () => ( true));
13332
13389
  const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
13333
13390
  const effectiveHeight = isMdUp ? height : mobileHeight;
13334
13391
  const containerRef = _react.useRef.call(void 0, null);
@@ -13455,7 +13512,7 @@ function InfoCardFooter({ footer }) {
13455
13512
  ] });
13456
13513
  }
13457
13514
  function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
13458
- const { copy, copied } = _chunkRD3HIB25cjs.useCopyToClipboard.call(void 0, );
13515
+ const { copy, copied } = _chunkGPX5I7FTcjs.useCopyToClipboard.call(void 0, );
13459
13516
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 items-center gap-[var(--spacing-system-xs)] self-stretch w-full", children: [
13460
13517
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary whitespace-nowrap", children: showLabel ? label : "" }),
13461
13518
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 h-px bg-ods-divider" }),
@@ -15746,7 +15803,7 @@ var DrawerContent = React58.forwardRef(
15746
15803
  const resolvedSide = _nullishCoalesce(side, () => ( "right"));
15747
15804
  const isHorizontal = HORIZONTAL_SIDES.has(resolvedSide);
15748
15805
  const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
15749
- const headerHeight = _chunkRD3HIB25cjs.useHeaderHeight.call(void 0, );
15806
+ const headerHeight = _chunkGPX5I7FTcjs.useHeaderHeight.call(void 0, );
15750
15807
  const [isMobile, setIsMobile] = React58.useState(false);
15751
15808
  React58.useEffect(() => {
15752
15809
  if (typeof window === "undefined") return;
@@ -17824,7 +17881,7 @@ var OGLinkPreview = ({
17824
17881
  const hasImage = !!resolvedImageUrl;
17825
17882
  const isFallbackImage = resolvedImageUrl === fallbackImage;
17826
17883
  const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
17827
- const bgColor = _chunkRD3HIB25cjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--ods-bg-secondary)");
17884
+ const bgColor = _chunkGPX5I7FTcjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--ods-bg-secondary)");
17828
17885
  const renderSkeleton = () => isCompact ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "my-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-row border border-ods-border rounded-lg overflow-hidden bg-ods-card h-[120px]", children: [
17829
17886
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[200px] h-full flex-shrink-0 bg-ods-border animate-pulse" }),
17830
17887
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 p-3 flex flex-col justify-center", children: [
@@ -20261,7 +20318,7 @@ function ListPageLayout({
20261
20318
  }) {
20262
20319
  const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
20263
20320
  const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
20264
- const debouncedSearchValue = _chunkRD3HIB25cjs.useDebounce.call(void 0, localSearchValue, 500);
20321
+ const debouncedSearchValue = _chunkGPX5I7FTcjs.useDebounce.call(void 0, localSearchValue, 500);
20265
20322
  _react.useEffect.call(void 0, () => {
20266
20323
  setLocalSearchValue(searchValue);
20267
20324
  }, [searchValue]);
@@ -20921,7 +20978,7 @@ function toToolLabel(input) {
20921
20978
  if (!input) return "";
20922
20979
  const toolType = normalizeToolType(input);
20923
20980
  if (toolType) {
20924
- return _chunkRD3HIB25cjs.toolLabels[toolType];
20981
+ return _chunkGPX5I7FTcjs.toolLabels[toolType];
20925
20982
  }
20926
20983
  return input;
20927
20984
  }
@@ -20932,7 +20989,7 @@ function getToolTypeAliases(toolType) {
20932
20989
  return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
20933
20990
  }
20934
20991
  function getToolLabel(toolType) {
20935
- return _chunkRD3HIB25cjs.toolLabels[toolType] || toolType;
20992
+ return _chunkGPX5I7FTcjs.toolLabels[toolType] || toolType;
20936
20993
  }
20937
20994
 
20938
20995
  // src/types/shell.types.ts
@@ -26199,7 +26256,7 @@ function PlatformFilterComponent({
26199
26256
  variant: selectedPlatform === platform.value ? "accent" : "outline",
26200
26257
  size,
26201
26258
  onClick: () => onPlatformChange(platform.value),
26202
- leftIcon: showIcons ? _chunkRD3HIB25cjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
26259
+ leftIcon: showIcons ? _chunkGPX5I7FTcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
26203
26260
  className: "text-h3",
26204
26261
  children: platform.label
26205
26262
  },
@@ -27377,7 +27434,7 @@ function useVideoWarmup({
27377
27434
  const runtime = _chunk3KEBI6TPcjs.useChatRuntime.call(void 0, );
27378
27435
  const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _481 => _481.endpoints, 'access', _482 => _482.supabaseStorageOrigin])));
27379
27436
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
27380
- const { ref, isNear } = _chunkRD3HIB25cjs.useNearViewport.call(void 0, nearMargin);
27437
+ const { ref, isNear } = _chunkGPX5I7FTcjs.useNearViewport.call(void 0, nearMargin);
27381
27438
  _react.useEffect.call(void 0, () => {
27382
27439
  if (!isNear || !videoUrl || !resolvedOrigin) return;
27383
27440
  const conn = navigator.connection;
@@ -29097,7 +29154,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
29097
29154
  };
29098
29155
  var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
29099
29156
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
29100
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD3HIB25cjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
29157
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGPX5I7FTcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
29101
29158
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 flex flex-col min-w-0", children: [
29102
29159
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[16px] font-medium text-ods-text-primary truncate", title: policy.name, children: policy.name }),
29103
29160
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[12px] text-ods-text-secondary break-all font-mono", children: policy.commandPattern })
@@ -29408,8 +29465,8 @@ function WaitlistForm({
29408
29465
  const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
29409
29466
  const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
29410
29467
  const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
29411
- const { toast } = _chunkRD3HIB25cjs.useToast.call(void 0, );
29412
- const { honeypotInputProps, getSignals, resetSignals } = _chunkRD3HIB25cjs.useHumanitySignals.call(void 0, );
29468
+ const { toast } = _chunkGPX5I7FTcjs.useToast.call(void 0, );
29469
+ const { honeypotInputProps, getSignals, resetSignals } = _chunkGPX5I7FTcjs.useHumanitySignals.call(void 0, );
29413
29470
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
29414
29471
  const [isClient, setIsClient] = _react.useState.call(void 0, false);
29415
29472
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
@@ -29854,7 +29911,7 @@ function NotificationTile({
29854
29911
  children ? "border-b border-ods-border" : null
29855
29912
  ),
29856
29913
  children: [
29857
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-6 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkRD3HIB25cjs.dotColorByVariant[variant]) }) }),
29914
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-6 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkGPX5I7FTcjs.dotColorByVariant[variant]) }) }),
29858
29915
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
29859
29916
  title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-h4 text-ods-text-primary", title: typeof title === "string" ? title : void 0, children: title }) : null,
29860
29917
  description ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 line-clamp-2 text-ods-text-secondary", title: typeof description === "string" ? description : void 0, children: description }) : null
@@ -29880,7 +29937,7 @@ function NotificationTile({
29880
29937
  "aria-hidden": true,
29881
29938
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
29882
29939
  "absolute inset-x-0 -bottom-px h-1 origin-left",
29883
- _chunkRD3HIB25cjs.progressColorByVariant[variant]
29940
+ _chunkGPX5I7FTcjs.progressColorByVariant[variant]
29884
29941
  ),
29885
29942
  style: {
29886
29943
  animation: `toast-progress ${liveDurationMs}ms linear forwards`,
@@ -30104,7 +30161,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
30104
30161
  ] });
30105
30162
  }
30106
30163
  function DesktopNotificationsToggleRow({ checked, onChange }) {
30107
- const { supported, permission, request } = _chunkRD3HIB25cjs.useNotificationPermission.call(void 0, );
30164
+ const { supported, permission, request } = _chunkGPX5I7FTcjs.useNotificationPermission.call(void 0, );
30108
30165
  if (!supported) return null;
30109
30166
  const blocked = permission === "denied";
30110
30167
  const handleChange = async (value) => {
@@ -31450,7 +31507,7 @@ function EmptyState2() {
31450
31507
  // src/components/features/board/use-board-collapse.ts
31451
31508
 
31452
31509
  function useBoardCollapse(storageKey) {
31453
- const [persisted, setPersisted] = _chunkRD3HIB25cjs.useLocalStorage.call(void 0,
31510
+ const [persisted, setPersisted] = _chunkGPX5I7FTcjs.useLocalStorage.call(void 0,
31454
31511
  _nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")),
31455
31512
  {}
31456
31513
  );
@@ -31500,7 +31557,7 @@ function Board({
31500
31557
  onThumbPointerDown,
31501
31558
  onThumbPointerMove,
31502
31559
  onThumbPointerUp
31503
- } = _chunkRD3HIB25cjs.useHorizontalScrollbar.call(void 0, );
31560
+ } = _chunkGPX5I7FTcjs.useHorizontalScrollbar.call(void 0, );
31504
31561
  const [items, setItems] = React98.useState(columns);
31505
31562
  const isDraggingRef = React98.useRef(false);
31506
31563
  React98.useEffect(() => {
@@ -32303,7 +32360,7 @@ _chunkQJGRP2YEcjs.init_button2.call(void 0, );
32303
32360
  function SlidingSidebar({ config }) {
32304
32361
  const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
32305
32362
  const [mounted, setMounted] = _react.useState.call(void 0, false);
32306
- const headerHeight = _chunkRD3HIB25cjs.useHeaderHeight.call(void 0, );
32363
+ const headerHeight = _chunkGPX5I7FTcjs.useHeaderHeight.call(void 0, );
32307
32364
  _react.useEffect.call(void 0, () => {
32308
32365
  setMounted(true);
32309
32366
  }, []);
@@ -32536,7 +32593,7 @@ function useSectionNavigation(sections, options) {
32536
32593
  if (!targetElement) return;
32537
32594
  isScrollingFromClick.current = true;
32538
32595
  setActiveSection(sectionId);
32539
- _chunkRD3HIB25cjs.scrollElementIntoView.call(void 0, targetElement, { headerOffset: offset2 });
32596
+ _chunkGPX5I7FTcjs.scrollElementIntoView.call(void 0, targetElement, { headerOffset: offset2 });
32540
32597
  setTimeout(() => {
32541
32598
  isScrollingFromClick.current = false;
32542
32599
  }, 500);
@@ -32732,10 +32789,10 @@ var MINIMIZED_WIDTH = 56;
32732
32789
  var EXPANDED_WIDTH = 224;
32733
32790
  var STORAGE_KEY = "of.navigationSidebar.minimized";
32734
32791
  function NavigationSidebar({ config, disabled = false }) {
32735
- const isMdUp = _nullishCoalesce(_chunkRD3HIB25cjs.useMdUp.call(void 0, ), () => ( false));
32736
- const isLgUp = _nullishCoalesce(_chunkRD3HIB25cjs.useLgUp.call(void 0, ), () => ( false));
32792
+ const isMdUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useMdUp.call(void 0, ), () => ( false));
32793
+ const isLgUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useLgUp.call(void 0, ), () => ( false));
32737
32794
  const isTablet = isMdUp && !isLgUp;
32738
- const [desktopMinimized, setDesktopMinimized] = _chunkRD3HIB25cjs.useLocalStorage.call(void 0,
32795
+ const [desktopMinimized, setDesktopMinimized] = _chunkGPX5I7FTcjs.useLocalStorage.call(void 0,
32739
32796
  STORAGE_KEY,
32740
32797
  _nullishCoalesce(config.minimized, () => ( false))
32741
32798
  );
@@ -33054,7 +33111,7 @@ var AppHeader = React114.default.memo(function AppHeader2({
33054
33111
  onToggleMobileMenu,
33055
33112
  disabled = false
33056
33113
  }) {
33057
- const isMdUp = _nullishCoalesce(_chunkRD3HIB25cjs.useMdUp.call(void 0, ), () => ( false));
33114
+ const isMdUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useMdUp.call(void 0, ), () => ( false));
33058
33115
  const dimmedClass = disabled ? "pointer-events-none opacity-50" : "";
33059
33116
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33060
33117
  "header",
@@ -34267,7 +34324,7 @@ var ToolBadge = ({
34267
34324
  }) => {
34268
34325
  const label = getToolLabel(toolType);
34269
34326
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-1 text-ods-text-secondary", className), children: [
34270
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD3HIB25cjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
34327
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGPX5I7FTcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
34271
34328
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: label })
34272
34329
  ] });
34273
34330
  };
@@ -34639,7 +34696,7 @@ function OnboardingWalkthrough({
34639
34696
  isStepSkipped,
34640
34697
  allStepsComplete,
34641
34698
  markMultipleComplete
34642
- } = _chunkRD3HIB25cjs.useOnboardingState.call(void 0, storageKey);
34699
+ } = _chunkGPX5I7FTcjs.useOnboardingState.call(void 0, storageKey);
34643
34700
  const hasAutoMarkedRef = _react.useRef.call(void 0, false);
34644
34701
  const autoMarkingInProgressRef = _react.useRef.call(void 0, false);
34645
34702
  const lastCompletionStatusRef = _react.useRef.call(void 0, null);
@@ -34846,7 +34903,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
34846
34903
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-5 text-white", children: log.title }),
34847
34904
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
34848
34905
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['Azeret_Mono'] font-normal text-[13px] leading-4 text-ods-text-secondary uppercase tracking-wider", children: formatTimestamp(log.timestamp) }),
34849
- log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD3HIB25cjs.ToolIcon, { toolType: log.toolType, size: 16 })
34906
+ log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGPX5I7FTcjs.ToolIcon, { toolType: log.toolType, size: 16 })
34850
34907
  ] })
34851
34908
  ] })
34852
34909
  ]
@@ -34983,7 +35040,7 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
34983
35040
  }
34984
35041
  function ServiceCardRowItem({ row }) {
34985
35042
  const [revealed, setRevealed] = _react.useState.call(void 0, false);
34986
- const { copy, copied } = _chunkRD3HIB25cjs.useCopyToClipboard.call(void 0, );
35043
+ const { copy, copied } = _chunkGPX5I7FTcjs.useCopyToClipboard.call(void 0, );
34987
35044
  const actions = _react.useMemo.call(void 0, () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }), [row]);
34988
35045
  const displayValue = row.isSecret ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MaskedValue, { value: row.value, isRevealed: revealed }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: row.value });
34989
35046
  const handleCopy = () => copy(_nullishCoalesce(row.copyValue, () => ( row.value)));
@@ -35642,7 +35699,7 @@ function TableHeader({
35642
35699
  }
35643
35700
  return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Arrow01UpIcon, { className: "w-4 h-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Arrow01DownIcon, { className: "w-4 h-4 text-ods-accent" });
35644
35701
  };
35645
- const isLgUp = _nullishCoalesce(_chunkRD3HIB25cjs.useLgUp.call(void 0, ), () => ( false));
35702
+ const isLgUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useLgUp.call(void 0, ), () => ( false));
35646
35703
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35647
35704
  "div",
35648
35705
  {
@@ -36565,7 +36622,7 @@ function QueryReportTable({
36565
36622
  onThumbPointerDown,
36566
36623
  onThumbPointerMove,
36567
36624
  onThumbPointerUp
36568
- } = _chunkRD3HIB25cjs.useHorizontalScrollbar.call(void 0, );
36625
+ } = _chunkGPX5I7FTcjs.useHorizontalScrollbar.call(void 0, );
36569
36626
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col w-full", isCompact ? "gap-0" : "gap-6", className), children: [
36570
36627
  !isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-6", children: [
36571
36628
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "font-mono font-semibold text-[32px] leading-[40px] text-ods-text-primary", children: title }),
@@ -36796,7 +36853,7 @@ function DataTableHeader({
36796
36853
  onSortChange
36797
36854
  }) {
36798
36855
  const table = useDataTableContext();
36799
- const isLgUp = _nullishCoalesce(_chunkRD3HIB25cjs.useLgUp.call(void 0, ), () => ( false));
36856
+ const isLgUp = _nullishCoalesce(_chunkGPX5I7FTcjs.useLgUp.call(void 0, ), () => ( false));
36800
36857
  const headerGroup = table.getHeaderGroups()[0];
36801
36858
  if (!headerGroup) return null;
36802
36859
  const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
@@ -37362,7 +37419,7 @@ function SearchInput({
37362
37419
  }) {
37363
37420
  const [internalValue, setInternalValue] = React116.useState(defaultValue);
37364
37421
  const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
37365
- const debouncedValue = _chunkRD3HIB25cjs.useDebounce.call(void 0, currentValue, debounceMs);
37422
+ const debouncedValue = _chunkGPX5I7FTcjs.useDebounce.call(void 0, currentValue, debounceMs);
37366
37423
  const [isOpen, setIsOpen] = React116.useState(false);
37367
37424
  const [highlightedIndex, setHighlightedIndex] = React116.useState(-1);
37368
37425
  const containerRef = React116.useRef(null);
@@ -37374,7 +37431,7 @@ function SearchInput({
37374
37431
  textMeasureRef,
37375
37432
  badgeRef,
37376
37433
  inputRef
37377
- } = _chunkRD3HIB25cjs.useAutoLimitTags.call(void 0, {
37434
+ } = _chunkGPX5I7FTcjs.useAutoLimitTags.call(void 0, {
37378
37435
  count: filterChips.length,
37379
37436
  limitTags,
37380
37437
  // When chips exist, pass empty placeholder so the hook only reserves input minWidth,
@@ -37841,7 +37898,7 @@ function TagSearchInput({
37841
37898
  textMeasureRef,
37842
37899
  badgeRef,
37843
37900
  inputRef
37844
- } = _chunkRD3HIB25cjs.useAutoLimitTags.call(void 0, {
37901
+ } = _chunkGPX5I7FTcjs.useAutoLimitTags.call(void 0, {
37845
37902
  count: tags.length,
37846
37903
  limitTags,
37847
37904
  placeholder: currentPlaceholder
@@ -42514,7 +42571,7 @@ function useChatCardItem(type, id) {
42514
42571
  queryKey: ["chat-card-item", type, id],
42515
42572
  queryFn: async () => {
42516
42573
  if (!url) return null;
42517
- const res = await _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, url);
42574
+ const res = await _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, url);
42518
42575
  if (!res.ok) return null;
42519
42576
  const data = await res.json();
42520
42577
  const items = extractItems(data);
@@ -45404,7 +45461,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
45404
45461
  try {
45405
45462
  const url = new URL(commandsUrl, window.location.origin);
45406
45463
  if (prefix) url.searchParams.set("q", prefix);
45407
- const res = await _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
45464
+ const res = await _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
45408
45465
  if (!res.ok) return [];
45409
45466
  const data = await res.json();
45410
45467
  return _nullishCoalesce(data.commands, () => ( []));
@@ -45479,7 +45536,7 @@ var EMPTY_STATE_FALLBACK = {
45479
45536
  async function fetchEmptyStateConfig(signal, emptyStateUrl) {
45480
45537
  try {
45481
45538
  const url = new URL(emptyStateUrl, window.location.origin);
45482
- const res = await _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
45539
+ const res = await _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
45483
45540
  if (!res.ok) {
45484
45541
  if (res.status >= 500) {
45485
45542
  console.error(`[chat] empty-state config fetch failed (${res.status}): ${url.pathname}`);
@@ -45641,7 +45698,7 @@ function useChatAttachments() {
45641
45698
  );
45642
45699
  }
45643
45700
  updateOne(att.id, { status: "uploading", progress: 5 });
45644
- const urlResp = await _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
45701
+ const urlResp = await _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
45645
45702
  method: "POST",
45646
45703
  headers: { "Content-Type": "application/json" },
45647
45704
  signal: _optionalChain([ctrl, 'optionalAccess', _1084 => _1084.signal]),
@@ -45831,7 +45888,7 @@ var ANON_DEFAULTS = {
45831
45888
  function useResolveChatIdentity(enabled) {
45832
45889
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
45833
45890
  const url = runtime.endpoints.identityUrl;
45834
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkRD3HIB25cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1090 => _1090.email]), () => ( null));
45891
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkGPX5I7FTcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1090 => _1090.email]), () => ( null));
45835
45892
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
45836
45893
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
45837
45894
  _react.useEffect.call(void 0, () => {
@@ -45839,7 +45896,7 @@ function useResolveChatIdentity(enabled) {
45839
45896
  let cancelled = false;
45840
45897
  const ctrl = new AbortController();
45841
45898
  setIsLoading(true);
45842
- _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
45899
+ _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
45843
45900
  if (!resp.ok) return ANON_DEFAULTS;
45844
45901
  return await resp.json();
45845
45902
  }).then((next) => {
@@ -46302,7 +46359,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46302
46359
  ..._optionalChain([extra, 'optionalAccess', _1105 => _1105.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
46303
46360
  ..._optionalChain([extra, 'optionalAccess', _1106 => _1106.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
46304
46361
  };
46305
- const response = await _chunkRD3HIB25cjs.embedAuthedFetch.call(void 0, targetPath, {
46362
+ const response = await _chunkGPX5I7FTcjs.embedAuthedFetch.call(void 0, targetPath, {
46306
46363
  method: "POST",
46307
46364
  body: JSON.stringify(requestBody),
46308
46365
  signal
@@ -46525,7 +46582,7 @@ var CHAT_STORAGE_VERSION = 1;
46525
46582
  var DEFAULT_CHAT_SOURCE = "embed";
46526
46583
  var chatStorageKey = (source) => {
46527
46584
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
46528
- const auth = _chunkRD3HIB25cjs.getEmbedProxyAuth.call(void 0, );
46585
+ const auth = _chunkGPX5I7FTcjs.getEmbedProxyAuth.call(void 0, );
46529
46586
  if (_optionalChain([auth, 'optionalAccess', _1115 => _1115.email])) {
46530
46587
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
46531
46588
  }
@@ -50392,4 +50449,4 @@ function EmbeddableChatInner({
50392
50449
 
50393
50450
 
50394
50451
  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.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.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; 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.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.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.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.Progress = Progress; 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.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; 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.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.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; 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.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; 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.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.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; 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.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; 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.readLeadingDecisionFrame = readLeadingDecisionFrame; 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.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.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; 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.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.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; 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.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;
50395
- //# sourceMappingURL=chunk-HMUIRZ46.cjs.map
50452
+ //# sourceMappingURL=chunk-3B663UT5.cjs.map