@flamingo-stack/openframe-frontend-core 0.0.373 → 0.0.374-snapshot.20260706213442

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 (103) hide show
  1. package/dist/{chunk-DDI7FFA5.js → chunk-3FZIYSPL.js} +643 -597
  2. package/dist/{chunk-DDI7FFA5.js.map → chunk-3FZIYSPL.js.map} +1 -1
  3. package/dist/{chunk-4JIVPFPK.cjs → chunk-3JIT6THI.cjs} +25 -25
  4. package/dist/{chunk-4JIVPFPK.cjs.map → chunk-3JIT6THI.cjs.map} +1 -1
  5. package/dist/{chunk-TH2LDBFE.js → chunk-7QNRRRSM.js} +2 -2
  6. package/dist/{chunk-FCPUM5S2.cjs → chunk-BF3N6M25.cjs} +63 -63
  7. package/dist/chunk-BF3N6M25.cjs.map +1 -0
  8. package/dist/{chunk-4YQY3YBQ.js → chunk-CXIJ5GSA.js} +2 -2
  9. package/dist/{chunk-3QTBIUB7.cjs → chunk-D7COWKNF.cjs} +12 -12
  10. package/dist/{chunk-3QTBIUB7.cjs.map → chunk-D7COWKNF.cjs.map} +1 -1
  11. package/dist/{chunk-3N34BFBP.cjs → chunk-DGODYMGT.cjs} +15 -15
  12. package/dist/{chunk-3N34BFBP.cjs.map → chunk-DGODYMGT.cjs.map} +1 -1
  13. package/dist/{chunk-RHKIYRJJ.js → chunk-ELKKJLHS.js} +2 -2
  14. package/dist/{chunk-OTSWZF3C.js → chunk-FNYXXI7S.js} +4 -4
  15. package/dist/{chunk-X274IBXR.cjs → chunk-HBNDH3PK.cjs} +26 -26
  16. package/dist/{chunk-X274IBXR.cjs.map → chunk-HBNDH3PK.cjs.map} +1 -1
  17. package/dist/{chunk-MTT4SFN6.cjs → chunk-ICDR6TMV.cjs} +5 -5
  18. package/dist/{chunk-MTT4SFN6.cjs.map → chunk-ICDR6TMV.cjs.map} +1 -1
  19. package/dist/{chunk-IH4IPKF2.js → chunk-IPKLA4T7.js} +4 -4
  20. package/dist/{chunk-7YKIXCV3.cjs → chunk-JQ3PU7BN.cjs} +7 -7
  21. package/dist/{chunk-7YKIXCV3.cjs.map → chunk-JQ3PU7BN.cjs.map} +1 -1
  22. package/dist/{chunk-AFF6QBKL.cjs → chunk-KJKZXNJG.cjs} +37 -37
  23. package/dist/{chunk-AFF6QBKL.cjs.map → chunk-KJKZXNJG.cjs.map} +1 -1
  24. package/dist/{chunk-ANKXC5RY.cjs → chunk-QLXG7B35.cjs} +31 -31
  25. package/dist/{chunk-ANKXC5RY.cjs.map → chunk-QLXG7B35.cjs.map} +1 -1
  26. package/dist/{chunk-IDYD2EIV.js → chunk-QUNP6INX.js} +2 -2
  27. package/dist/{chunk-DUFK7RSU.js → chunk-QXCEAKVC.js} +2 -2
  28. package/dist/{chunk-CCBQGC44.js → chunk-SOXWEON4.js} +5 -5
  29. package/dist/chunk-SOXWEON4.js.map +1 -0
  30. package/dist/{chunk-XNP2LIYD.cjs → chunk-TKXTUA7E.cjs} +9 -9
  31. package/dist/{chunk-XNP2LIYD.cjs.map → chunk-TKXTUA7E.cjs.map} +1 -1
  32. package/dist/{chunk-JDYNGJSD.js → chunk-TVE5UZRB.js} +2 -2
  33. package/dist/{chunk-M4O75TCN.js → chunk-UHCRUHRY.js} +4 -4
  34. package/dist/{chunk-LD7WDZQC.js → chunk-XE3LR2T2.js} +2 -2
  35. package/dist/{chunk-4RUTFRJ6.cjs → chunk-YCQ5S353.cjs} +445 -399
  36. package/dist/chunk-YCQ5S353.cjs.map +1 -0
  37. package/dist/{chunk-6OJHTN7B.cjs → chunk-ZWBRUGKU.cjs} +57 -57
  38. package/dist/{chunk-6OJHTN7B.cjs.map → chunk-ZWBRUGKU.cjs.map} +1 -1
  39. package/dist/components/case-studies/index.cjs +8 -8
  40. package/dist/components/case-studies/index.js +2 -2
  41. package/dist/components/chat/chat-container.d.ts.map +1 -1
  42. package/dist/components/chat/index.cjs +2 -2
  43. package/dist/components/chat/index.js +1 -1
  44. package/dist/components/chat/types/component.types.d.ts +14 -0
  45. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  46. package/dist/components/contact/index.cjs +3 -3
  47. package/dist/components/contact/index.js +2 -2
  48. package/dist/components/docs/index.cjs +5 -5
  49. package/dist/components/docs/index.js +4 -4
  50. package/dist/components/embeds/index.cjs +3 -3
  51. package/dist/components/embeds/index.js +2 -2
  52. package/dist/components/faq/index.cjs +3 -3
  53. package/dist/components/faq/index.js +2 -2
  54. package/dist/components/features/index.cjs +2 -2
  55. package/dist/components/features/index.js +1 -1
  56. package/dist/components/help-center-pages/index.cjs +20 -20
  57. package/dist/components/help-center-pages/index.js +11 -11
  58. package/dist/components/index.cjs +120 -120
  59. package/dist/components/index.js +9 -9
  60. package/dist/components/navigation/app-layout-drawer.d.ts.map +1 -1
  61. package/dist/components/navigation/app-layout.d.ts +20 -0
  62. package/dist/components/navigation/app-layout.d.ts.map +1 -1
  63. package/dist/components/navigation/index.cjs +2 -2
  64. package/dist/components/navigation/index.js +1 -1
  65. package/dist/components/onboarding-guides/index.cjs +5 -5
  66. package/dist/components/onboarding-guides/index.js +4 -4
  67. package/dist/components/related-content/index.cjs +3 -3
  68. package/dist/components/related-content/index.js +2 -2
  69. package/dist/components/tickets/index.cjs +5 -5
  70. package/dist/components/tickets/index.js +4 -4
  71. package/dist/components/ui/error-state.d.ts.map +1 -1
  72. package/dist/components/ui/index.cjs +2 -2
  73. package/dist/components/ui/index.js +1 -1
  74. package/dist/index.cjs +2 -2
  75. package/dist/index.js +1 -1
  76. package/dist/tailwind.config.cjs +24 -0
  77. package/dist/tailwind.config.cjs.map +1 -1
  78. package/dist/tailwind.config.js +24 -0
  79. package/dist/tailwind.config.js.map +1 -1
  80. package/package.json +1 -1
  81. package/src/components/chat/chat-container.tsx +20 -1
  82. package/src/components/chat/types/component.types.ts +14 -0
  83. package/src/components/features/array-entry-manager.tsx +1 -1
  84. package/src/components/features/push-button-selector.tsx +3 -3
  85. package/src/components/navigation/app-layout-drawer.tsx +23 -1
  86. package/src/components/navigation/app-layout.tsx +50 -2
  87. package/src/components/tickets/ticket-detail-drawer.tsx +1 -1
  88. package/src/components/ui/error-state.tsx +5 -2
  89. package/src/stories/ChatContainer.stories.tsx +36 -0
  90. package/tailwind.config.ts +25 -0
  91. package/dist/chunk-4RUTFRJ6.cjs.map +0 -1
  92. package/dist/chunk-CCBQGC44.js.map +0 -1
  93. package/dist/chunk-FCPUM5S2.cjs.map +0 -1
  94. /package/dist/{chunk-TH2LDBFE.js.map → chunk-7QNRRRSM.js.map} +0 -0
  95. /package/dist/{chunk-4YQY3YBQ.js.map → chunk-CXIJ5GSA.js.map} +0 -0
  96. /package/dist/{chunk-RHKIYRJJ.js.map → chunk-ELKKJLHS.js.map} +0 -0
  97. /package/dist/{chunk-OTSWZF3C.js.map → chunk-FNYXXI7S.js.map} +0 -0
  98. /package/dist/{chunk-IH4IPKF2.js.map → chunk-IPKLA4T7.js.map} +0 -0
  99. /package/dist/{chunk-IDYD2EIV.js.map → chunk-QUNP6INX.js.map} +0 -0
  100. /package/dist/{chunk-DUFK7RSU.js.map → chunk-QXCEAKVC.js.map} +0 -0
  101. /package/dist/{chunk-JDYNGJSD.js.map → chunk-TVE5UZRB.js.map} +0 -0
  102. /package/dist/{chunk-M4O75TCN.js.map → chunk-UHCRUHRY.js.map} +0 -0
  103. /package/dist/{chunk-LD7WDZQC.js.map → chunk-XE3LR2T2.js.map} +0 -0
@@ -2979,6 +2979,65 @@ function TicketStatusTag({
2979
2979
  );
2980
2980
  }
2981
2981
 
2982
+ // src/components/chat/msp-organization-card.tsx
2983
+ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
2984
+ _chunkQJGRP2YEcjs.init_button2.call(void 0, );
2985
+
2986
+ function MspOrganizationCard({
2987
+ name,
2988
+ website,
2989
+ logoUrl,
2990
+ title,
2991
+ href,
2992
+ onOpenWebsite,
2993
+ className
2994
+ }) {
2995
+ const actionLabel = website ? `Open ${website}` : "Open organization website";
2996
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2997
+ "div",
2998
+ {
2999
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
3000
+ // Inset ring (box-shadow) instead of `border` so the 1px stroke does not
3001
+ // add to the box height — matches Figma's 80px frame (16 + 48 + 16) with
3002
+ // its inside-aligned stroke. A real border would render 82px.
3003
+ "flex items-start gap-[var(--spacing-system-m)] rounded-md bg-ods-bg p-[var(--spacing-system-m)] ring-1 ring-inset ring-ods-border",
3004
+ className
3005
+ ),
3006
+ children: [
3007
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
3008
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
3009
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h3 text-ods-text-primary", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
3010
+ website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h4 text-ods-text-secondary", children: website }) : null
3011
+ ] }),
3012
+ href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Button, { asChild: true, variant: "outline", size: "icon", "aria-label": actionLabel, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noreferrer noopener", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.ExternalLinkIcon, {}) }) }) : onOpenWebsite ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Button, { variant: "outline", size: "icon", "aria-label": actionLabel, onClick: onOpenWebsite, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.ExternalLinkIcon, {}) }) : null
3013
+ ]
3014
+ }
3015
+ );
3016
+ }
3017
+
3018
+ // src/components/chat/msp-organization-card-skeleton.tsx
3019
+ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3020
+
3021
+ function MspOrganizationCardSkeleton({ className }) {
3022
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3023
+ "div",
3024
+ {
3025
+ className: _chunkFIG2RKZFcjs.cn.call(void 0,
3026
+ "flex items-start gap-[var(--spacing-system-m)] rounded-md bg-ods-bg p-[var(--spacing-system-m)] ring-1 ring-inset ring-ods-border",
3027
+ className
3028
+ ),
3029
+ children: [
3030
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" }),
3031
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center gap-2 self-stretch", children: [
3032
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "h-5 w-3/5 rounded-md" }),
3033
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "h-4 w-2/5 rounded-md" })
3034
+ ] }),
3035
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" })
3036
+ ]
3037
+ }
3038
+ );
3039
+ }
3040
+
2982
3041
  // src/components/chat/chat-container.tsx
2983
3042
 
2984
3043
  var ConnectionIndicator = ({ status }) => {
@@ -3028,7 +3087,7 @@ var ChatContainer = React6.forwardRef(
3028
3087
  );
3029
3088
  ChatContainer.displayName = "ChatContainer";
3030
3089
  var ChatHeader = React6.forwardRef(
3031
- ({ className, userName = 'Grace "Fae" Meadows', userTitle = "Your Personal Assistant", userAvatar, userIcon, onSettingsClick, onNewChat, onClose, onBack, showNewChat = false, connectionStatus = "disconnected", serverUrl = null, headerActions, ticketInfo, fullWidth = false, bare = false, isLoading = false, ...props }, ref) => {
3090
+ ({ className, userName = 'Grace "Fae" Meadows', userTitle = "Your Personal Assistant", userAvatar, userIcon, onSettingsClick, onNewChat, onClose, onBack, showNewChat = false, connectionStatus = "disconnected", serverUrl = null, headerActions, ticketInfo, mspOrganization, isMspLoading = false, fullWidth = false, bare = false, isLoading = false, ...props }, ref) => {
3032
3091
  const cardClasses = bare ? "" : "rounded-md bg-ods-card border border-ods-border";
3033
3092
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3034
3093
  "div",
@@ -3111,6 +3170,16 @@ var ChatHeader = React6.forwardRef(
3111
3170
  headerActions
3112
3171
  ] })
3113
3172
  ] }),
3173
+ !ticketInfo && (isMspLoading || mspOrganization) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3174
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px bg-ods-border" }),
3175
+ isMspLoading || !mspOrganization ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MspOrganizationCardSkeleton, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "ring-0 rounded-none", !bare && "rounded-b-md") }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3176
+ MspOrganizationCard,
3177
+ {
3178
+ ...mspOrganization,
3179
+ className: _chunkFIG2RKZFcjs.cn.call(void 0, "ring-0 rounded-none", !bare && "rounded-b-md", mspOrganization.className)
3180
+ }
3181
+ )
3182
+ ] }),
3114
3183
  ticketInfo && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3115
3184
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px bg-ods-border" }),
3116
3185
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 px-4 py-2", children: [
@@ -7221,65 +7290,6 @@ function GuideWelcome({
7221
7290
  );
7222
7291
  }
7223
7292
 
7224
- // src/components/chat/msp-organization-card.tsx
7225
- _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7226
- _chunkQJGRP2YEcjs.init_button2.call(void 0, );
7227
-
7228
- function MspOrganizationCard({
7229
- name,
7230
- website,
7231
- logoUrl,
7232
- title,
7233
- href,
7234
- onOpenWebsite,
7235
- className
7236
- }) {
7237
- const actionLabel = website ? `Open ${website}` : "Open organization website";
7238
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
7239
- "div",
7240
- {
7241
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
7242
- // Inset ring (box-shadow) instead of `border` so the 1px stroke does not
7243
- // add to the box height — matches Figma's 80px frame (16 + 48 + 16) with
7244
- // its inside-aligned stroke. A real border would render 82px.
7245
- "flex items-start gap-[var(--spacing-system-m)] rounded-md bg-ods-bg p-[var(--spacing-system-m)] ring-1 ring-inset ring-ods-border",
7246
- className
7247
- ),
7248
- children: [
7249
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
7250
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
7251
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h3 text-ods-text-primary", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
7252
- website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h4 text-ods-text-secondary", children: website }) : null
7253
- ] }),
7254
- href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Button, { asChild: true, variant: "outline", size: "icon", "aria-label": actionLabel, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noreferrer noopener", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.ExternalLinkIcon, {}) }) }) : onOpenWebsite ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Button, { variant: "outline", size: "icon", "aria-label": actionLabel, onClick: onOpenWebsite, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.ExternalLinkIcon, {}) }) : null
7255
- ]
7256
- }
7257
- );
7258
- }
7259
-
7260
- // src/components/chat/msp-organization-card-skeleton.tsx
7261
- _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7262
-
7263
- function MspOrganizationCardSkeleton({ className }) {
7264
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
7265
- "div",
7266
- {
7267
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
7268
- "flex items-start gap-[var(--spacing-system-m)] rounded-md bg-ods-bg p-[var(--spacing-system-m)] ring-1 ring-inset ring-ods-border",
7269
- className
7270
- ),
7271
- children: [
7272
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" }),
7273
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center gap-2 self-stretch", children: [
7274
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "h-5 w-3/5 rounded-md" }),
7275
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "h-4 w-2/5 rounded-md" })
7276
- ] }),
7277
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.Skeleton, { className: "size-12 shrink-0 rounded-md" })
7278
- ]
7279
- }
7280
- );
7281
- }
7282
-
7283
7293
  // src/components/chat/guide-mode-banner.tsx
7284
7294
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
7285
7295
 
@@ -24320,7 +24330,7 @@ function ArrayEntryManager({
24320
24330
  variant: "transparent",
24321
24331
  size: "icon",
24322
24332
  onClick: () => removeItem(index),
24323
- className: "text-ods-attention-red-error hover:bg-ods-attention-red-error/10",
24333
+ className: "text-ods-attention-red-error hover:bg-ods-attention-red-error-secondary",
24324
24334
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Trash2, { className: "h-4 w-4" })
24325
24335
  }
24326
24336
  )
@@ -26553,7 +26563,7 @@ function PushButtonSelectorSkeleton({ count = 3, hasTitle }) {
26553
26563
  function PushButtonSelectorError({ message: message2, title }) {
26554
26564
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
26555
26565
  title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h5 text-ods-text-primary", children: title }),
26556
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-4 bg-ods-attention-red-error-secondary border border-ods-attention-red-error/30 rounded-lg", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "font-['DM_Sans'] text-[14px] text-ods-attention-red-error", children: [
26566
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-4 bg-ods-attention-red-error-secondary border border-ods-attention-red-error rounded-lg", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "font-['DM_Sans'] text-[14px] text-ods-attention-red-error", children: [
26557
26567
  "\u26A0\uFE0F ",
26558
26568
  message2
26559
26569
  ] }) })
@@ -26667,7 +26677,7 @@ function PushButtonSelector({
26667
26677
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
26668
26678
  title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h5 text-ods-text-primary", children: title }),
26669
26679
  renderOptionsContent(),
26670
- selectionSummary && validSelectedIds.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "p-4 bg-ods-attention-green-success-secondary border border-ods-attention-green-success/30 rounded-lg", children: [
26680
+ selectionSummary && validSelectedIds.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "p-4 bg-ods-attention-green-success-secondary border border-ods-attention-green-success rounded-lg", children: [
26671
26681
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 mb-2", children: [
26672
26682
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-2 h-2 bg-ods-attention-green-success rounded-full" }),
26673
26683
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "font-['DM_Sans'] text-[14px] text-ods-attention-green-success font-medium", children: [
@@ -26687,7 +26697,7 @@ function PushButtonSelector({
26687
26697
  )) })
26688
26698
  ] }),
26689
26699
  helpText && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-[12px] text-ods-text-secondary font-['DM_Sans']", children: helpText }),
26690
- validSelectedIds.length === 0 && title && !optional && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-3 bg-ods-attention-red-error-secondary border border-ods-attention-red-error/30 rounded-lg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "font-['DM_Sans'] text-[12px] text-ods-attention-red-error", children: "\u26A0\uFE0F Please select at least one option" }) })
26700
+ validSelectedIds.length === 0 && title && !optional && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "p-3 bg-ods-attention-red-error-secondary border border-ods-attention-red-error rounded-lg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "font-['DM_Sans'] text-[12px] text-ods-attention-red-error", children: "\u26A0\uFE0F Please select at least one option" }) })
26691
26701
  ] }) });
26692
26702
  }
26693
26703
 
@@ -33829,6 +33839,10 @@ var AppLayoutDrawerContainerContext = _react.createContext.call(void 0, null);
33829
33839
  function useAppLayoutDrawerContainer() {
33830
33840
  return _react.useContext.call(void 0, AppLayoutDrawerContainerContext);
33831
33841
  }
33842
+ var AppLayoutDrawerCoordinationContext = _react.createContext.call(void 0, null);
33843
+ function useAppLayoutDrawerCoordination() {
33844
+ return _react.useContext.call(void 0, AppLayoutDrawerCoordinationContext);
33845
+ }
33832
33846
  function AppLayout({
33833
33847
  children,
33834
33848
  sidebarConfig,
@@ -33842,13 +33856,27 @@ function AppLayout({
33842
33856
  }) {
33843
33857
  const [mobileMenuOpen, setMobileMenuOpen] = _react.useState.call(void 0, false);
33844
33858
  const [drawerContainer, setDrawerContainer] = _react.useState.call(void 0, null);
33859
+ const mobileMenuOpenRef = _react.useRef.call(void 0, mobileMenuOpen);
33860
+ mobileMenuOpenRef.current = mobileMenuOpen;
33861
+ const drawerHandlesRef = _react.useRef.call(void 0, /* @__PURE__ */ new Set());
33845
33862
  const handleToggleMobileMenu = _react.useCallback.call(void 0, () => {
33846
- setMobileMenuOpen((prev) => !prev);
33863
+ const opening = !mobileMenuOpenRef.current;
33864
+ if (opening) {
33865
+ for (const handle of drawerHandlesRef.current) handle.close();
33866
+ }
33867
+ setMobileMenuOpen(opening);
33847
33868
  }, []);
33848
33869
  const handleCloseMobileMenu = _react.useCallback.call(void 0, () => {
33849
33870
  setMobileMenuOpen(false);
33850
33871
  }, []);
33851
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerContainerContext.Provider, { value: drawerContainer, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex h-screen bg-ods-bg", className), children: [
33872
+ const drawerCoordination = _react.useMemo.call(void 0, () => ({
33873
+ notifyDrawerDidOpen: () => setMobileMenuOpen(false),
33874
+ registerDrawer: (handle) => {
33875
+ drawerHandlesRef.current.add(handle);
33876
+ return () => drawerHandlesRef.current.delete(handle);
33877
+ }
33878
+ }), []);
33879
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerContainerContext.Provider, { value: drawerContainer, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerCoordinationContext.Provider, { value: drawerCoordination, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex h-screen bg-ods-bg", className), children: [
33852
33880
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NavigationSidebar, { config: sidebarConfig, disabled }),
33853
33881
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33854
33882
  MobileBurgerMenu,
@@ -33883,7 +33911,7 @@ function AppLayout({
33883
33911
  }
33884
33912
  )
33885
33913
  ] })
33886
- ] }) });
33914
+ ] }) }) });
33887
33915
  }
33888
33916
 
33889
33917
  // src/components/navigation/app-layout-drawer.tsx
@@ -33911,6 +33939,21 @@ var AppLayoutDrawerRoot = ({
33911
33939
  },
33912
33940
  [isControlled, onOpenChange]
33913
33941
  );
33942
+ const coordination = useAppLayoutDrawerCoordination();
33943
+ const openRef = React110.useRef(open);
33944
+ openRef.current = open;
33945
+ const handleOpenChangeRef = React110.useRef(handleOpenChange);
33946
+ handleOpenChangeRef.current = handleOpenChange;
33947
+ React110.useEffect(() => {
33948
+ if (open) _optionalChain([coordination, 'optionalAccess', _660 => _660.notifyDrawerDidOpen, 'call', _661 => _661()]);
33949
+ }, [open, coordination]);
33950
+ React110.useEffect(() => {
33951
+ return _optionalChain([coordination, 'optionalAccess', _662 => _662.registerDrawer, 'call', _663 => _663({
33952
+ close: () => {
33953
+ if (openRef.current) handleOpenChangeRef.current(false);
33954
+ }
33955
+ })]);
33956
+ }, [coordination]);
33914
33957
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33915
33958
  DialogPrimitive3.Root,
33916
33959
  {
@@ -34289,10 +34332,10 @@ var AppLayoutDrawerContent = React110.forwardRef(
34289
34332
  ),
34290
34333
  style,
34291
34334
  onInteractOutside: (event) => {
34292
- _optionalChain([onInteractOutside, 'optionalCall', _660 => _660(event)]);
34335
+ _optionalChain([onInteractOutside, 'optionalCall', _664 => _664(event)]);
34293
34336
  if (event.defaultPrevented) return;
34294
34337
  const target = event.target;
34295
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _661 => _661.contains, 'call', _662 => _662(target)]);
34338
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _665 => _665.contains, 'call', _666 => _666(target)]);
34296
34339
  if (!isInsideContainer) {
34297
34340
  event.preventDefault();
34298
34341
  return;
@@ -34705,7 +34748,7 @@ var ShellTypeBadge = ({
34705
34748
  className,
34706
34749
  iconClassName
34707
34750
  }) => {
34708
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _663 => _663.toUpperCase, 'call', _664 => _664()]);
34751
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _667 => _667.toUpperCase, 'call', _668 => _668()]);
34709
34752
  const label = getShellLabel(normalizedType);
34710
34753
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
34711
34754
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -35092,12 +35135,12 @@ function OnboardingWalkthrough({
35092
35135
  }
35093
35136
  }, [state.completedSteps, markComplete]);
35094
35137
  const handleStepSkip = (step) => {
35095
- _optionalChain([step, 'access', _665 => _665.onSkip, 'optionalCall', _666 => _666()]);
35138
+ _optionalChain([step, 'access', _669 => _669.onSkip, 'optionalCall', _670 => _670()]);
35096
35139
  markSkipped(step.id);
35097
35140
  };
35098
35141
  const handleDismiss = () => {
35099
35142
  dismissOnboarding();
35100
- _optionalChain([onDismiss, 'optionalCall', _667 => _667()]);
35143
+ _optionalChain([onDismiss, 'optionalCall', _671 => _671()]);
35101
35144
  };
35102
35145
  if (state.dismissed) {
35103
35146
  return null;
@@ -35227,7 +35270,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
35227
35270
  onKeyDown: (e) => {
35228
35271
  if (e.key === "Enter" || e.key === " ") {
35229
35272
  e.preventDefault();
35230
- _optionalChain([onClick, 'optionalCall', _668 => _668()]);
35273
+ _optionalChain([onClick, 'optionalCall', _672 => _672()]);
35231
35274
  }
35232
35275
  },
35233
35276
  children: [
@@ -35328,7 +35371,7 @@ var LogsList = React114.forwardRef(({
35328
35371
  log,
35329
35372
  isLast: index === logs.length - 1,
35330
35373
  showConnector,
35331
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _669 => _669(log)])
35374
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _673 => _673(log)])
35332
35375
  },
35333
35376
  log.id
35334
35377
  ))
@@ -35429,7 +35472,7 @@ var Slider = React116.forwardRef(
35429
35472
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
35430
35473
  const handleChange = (e) => {
35431
35474
  const newValue = [Number(e.target.value)];
35432
- _optionalChain([onValueChange, 'optionalCall', _670 => _670(newValue)]);
35475
+ _optionalChain([onValueChange, 'optionalCall', _674 => _674(newValue)]);
35433
35476
  };
35434
35477
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35435
35478
  "input",
@@ -35547,14 +35590,17 @@ function ErrorState({
35547
35590
  switch (variant) {
35548
35591
  case "error":
35549
35592
  return {
35550
- bg: "bg-ods-attention-red-error/20",
35593
+ // -secondary tokens, NOT `/20` alpha modifiers: the ods colors are
35594
+ // hex CSS vars, and Tailwind 3.x can't inject alpha into those —
35595
+ // the modifier silently produced no background at all.
35596
+ bg: "bg-ods-attention-red-error-secondary",
35551
35597
  border: "border-ods-attention-red-error",
35552
35598
  text: "text-ods-attention-red-error",
35553
35599
  icon: "text-ods-attention-red-error"
35554
35600
  };
35555
35601
  case "warning":
35556
35602
  return {
35557
- bg: "bg-ods-attention-yellow-warning/20",
35603
+ bg: "bg-ods-attention-yellow-warning-secondary",
35558
35604
  border: "border-ods-attention-yellow-warning",
35559
35605
  text: "text-ods-attention-yellow-warning",
35560
35606
  icon: "text-ods-attention-yellow-warning"
@@ -35860,7 +35906,7 @@ function CursorPaginationSimple({
35860
35906
  {
35861
35907
  variant: "transparent",
35862
35908
  size: "icon",
35863
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _671 => _671("")]),
35909
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _675 => _675("")]),
35864
35910
  disabled: !hasPreviousPage || loading,
35865
35911
  className: "h-8 w-8",
35866
35912
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -35872,7 +35918,7 @@ function CursorPaginationSimple({
35872
35918
  {
35873
35919
  variant: "transparent",
35874
35920
  size: "icon",
35875
- onClick: () => _optionalChain([onNext, 'optionalCall', _672 => _672("")]),
35921
+ onClick: () => _optionalChain([onNext, 'optionalCall', _676 => _676("")]),
35876
35922
  disabled: !hasNextPage || loading,
35877
35923
  className: "h-8 w-8",
35878
35924
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -35892,8 +35938,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
35892
35938
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
35893
35939
  title: _nullishCoalesce(message2, () => ( "No results found")),
35894
35940
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
35895
- buttonLabel: _optionalChain([action, 'optionalAccess', _673 => _673.label]),
35896
- onButtonClick: _optionalChain([action, 'optionalAccess', _674 => _674.onClick]),
35941
+ buttonLabel: _optionalChain([action, 'optionalAccess', _677 => _677.label]),
35942
+ onButtonClick: _optionalChain([action, 'optionalAccess', _678 => _678.onClick]),
35897
35943
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
35898
35944
  }
35899
35945
  );
@@ -35914,7 +35960,7 @@ function TableColumnFilterDropdown({
35914
35960
  placement = "bottom-start",
35915
35961
  dropdownClassName = "min-w-[240px]"
35916
35962
  }) {
35917
- const activeCount = _optionalChain([filters, 'optionalAccess', _675 => _675[columnKey], 'optionalAccess', _676 => _676.length]) || 0;
35963
+ const activeCount = _optionalChain([filters, 'optionalAccess', _679 => _679[columnKey], 'optionalAccess', _680 => _680.length]) || 0;
35918
35964
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35919
35965
  FiltersDropdown,
35920
35966
  {
@@ -35957,7 +36003,7 @@ function TableColumnFilterDropdown({
35957
36003
  delete newFilters[columnKey];
35958
36004
  onFilterChange(newFilters);
35959
36005
  },
35960
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _677 => _677[columnKey]]) || [] },
36006
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _681 => _681[columnKey]]) || [] },
35961
36007
  placement,
35962
36008
  dropdownClassName
35963
36009
  }
@@ -36167,7 +36213,7 @@ function TableCardSkeleton({
36167
36213
  className,
36168
36214
  rowClassName
36169
36215
  }) {
36170
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _678 => _678.key]);
36216
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _682 => _682.key]);
36171
36217
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36172
36218
  "div",
36173
36219
  {
@@ -36260,7 +36306,7 @@ function TableRow({
36260
36306
  const keys = column.key.split(".");
36261
36307
  let value = item;
36262
36308
  for (const key of keys) {
36263
- value = _optionalChain([value, 'optionalAccess', _679 => _679[key]]);
36309
+ value = _optionalChain([value, 'optionalAccess', _683 => _683[key]]);
36264
36310
  }
36265
36311
  if (value === null || value === void 0) {
36266
36312
  return "-";
@@ -36349,7 +36395,7 @@ function useTableMotion(enabled) {
36349
36395
  // src/components/ui/table/table.tsx
36350
36396
 
36351
36397
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
36352
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _680 => _680.length])) || Boolean(renderRowActions);
36398
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _684 => _684.length])) || Boolean(renderRowActions);
36353
36399
  const result = [...columns];
36354
36400
  if (hasActions) {
36355
36401
  const actionsColumn = {
@@ -36445,7 +36491,7 @@ function Table({
36445
36491
  return rowKey(item);
36446
36492
  }
36447
36493
  const key = item[rowKey];
36448
- return _optionalChain([key, 'optionalAccess', _681 => _681.toString, 'call', _682 => _682()]) || index.toString();
36494
+ return _optionalChain([key, 'optionalAccess', _685 => _685.toString, 'call', _686 => _686()]) || index.toString();
36449
36495
  };
36450
36496
  const getRowClassName = (item, index) => {
36451
36497
  if (typeof rowClassName === "function") {
@@ -36479,23 +36525,23 @@ function Table({
36479
36525
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
36480
36526
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
36481
36527
  const sentinelRef = _react.useRef.call(void 0, null);
36482
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _683 => _683.onLoadMore]));
36483
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _684 => _684.onLoadMore]);
36528
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _687 => _687.onLoadMore]));
36529
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _688 => _688.onLoadMore]);
36484
36530
  _react.useEffect.call(void 0, () => {
36485
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _685 => _685.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
36531
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _689 => _689.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
36486
36532
  const sentinel = sentinelRef.current;
36487
36533
  if (!sentinel) return;
36488
36534
  const observer = new IntersectionObserver(
36489
36535
  (entries) => {
36490
- if (_optionalChain([entries, 'access', _686 => _686[0], 'optionalAccess', _687 => _687.isIntersecting])) {
36491
- _optionalChain([onLoadMoreRef, 'access', _688 => _688.current, 'optionalCall', _689 => _689()]);
36536
+ if (_optionalChain([entries, 'access', _690 => _690[0], 'optionalAccess', _691 => _691.isIntersecting])) {
36537
+ _optionalChain([onLoadMoreRef, 'access', _692 => _692.current, 'optionalCall', _693 => _693()]);
36492
36538
  }
36493
36539
  },
36494
36540
  { rootMargin: "200px" }
36495
36541
  );
36496
36542
  observer.observe(sentinel);
36497
36543
  return () => observer.disconnect();
36498
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _690 => _690.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _691 => _691.isFetchingNextPage])]);
36544
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _694 => _694.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _695 => _695.isFetchingNextPage])]);
36499
36545
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
36500
36546
  showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
36501
36547
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
@@ -36565,14 +36611,14 @@ function Table({
36565
36611
  selected: isRowSelected(item),
36566
36612
  onSelect: handleSelectRow,
36567
36613
  animateRowReorder,
36568
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _692 => _692.motionDiv])
36614
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _696 => _696.motionDiv])
36569
36615
  },
36570
36616
  getRowKey(item, index)
36571
36617
  ));
36572
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _693 => _693.LayoutGroup]);
36618
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _697 => _697.LayoutGroup]);
36573
36619
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
36574
36620
  })(),
36575
- _optionalChain([infiniteScroll, 'optionalAccess', _694 => _694.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36621
+ _optionalChain([infiniteScroll, 'optionalAccess', _698 => _698.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36576
36622
  TableCardSkeleton,
36577
36623
  {
36578
36624
  columns,
@@ -36581,7 +36627,7 @@ function Table({
36581
36627
  hasChevron: Boolean(rowHref)
36582
36628
  }
36583
36629
  ),
36584
- _optionalChain([infiniteScroll, 'optionalAccess', _695 => _695.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
36630
+ _optionalChain([infiniteScroll, 'optionalAccess', _699 => _699.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
36585
36631
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36586
36632
  "div",
36587
36633
  {
@@ -36939,7 +36985,7 @@ function QueryReportTable({
36939
36985
  );
36940
36986
  const handleExport = () => {
36941
36987
  exportToCSV(data, columns, exportFilename);
36942
- _optionalChain([onExport, 'optionalCall', _696 => _696()]);
36988
+ _optionalChain([onExport, 'optionalCall', _700 => _700()]);
36943
36989
  };
36944
36990
  const tableMinWidth = columns.length * (columnWidth + 16);
36945
36991
  const {
@@ -37112,7 +37158,7 @@ function DataTableColumnFilter({
37112
37158
  align = "left"
37113
37159
  }) {
37114
37160
  const currentValue = column.getFilterValue();
37115
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _697 => _697.length]), () => ( 0));
37161
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _701 => _701.length]), () => ( 0));
37116
37162
  const sections = _react.useMemo.call(void 0,
37117
37163
  () => [
37118
37164
  {
@@ -37192,7 +37238,7 @@ function DataTableHeader({
37192
37238
  const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
37193
37239
  if (header.isPlaceholder) return false;
37194
37240
  if (isLgUp) return true;
37195
- return Boolean(_optionalChain([header, 'access', _698 => _698.column, 'access', _699 => _699.columnDef, 'access', _700 => _700.meta, 'optionalAccess', _701 => _701.filter]));
37241
+ return Boolean(_optionalChain([header, 'access', _702 => _702.column, 'access', _703 => _703.columnDef, 'access', _704 => _704.meta, 'optionalAccess', _705 => _705.filter]));
37196
37242
  });
37197
37243
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37198
37244
  "div",
@@ -37222,20 +37268,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
37222
37268
  if (header.isPlaceholder) return null;
37223
37269
  const column = header.column;
37224
37270
  const meta = column.columnDef.meta;
37225
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _702 => _702.filter]));
37226
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _703 => _703.align]), () => ( "left"));
37227
- const canSort = _optionalChain([meta, 'optionalAccess', _704 => _704.sortable]) === true;
37228
- const sortDir = _optionalChain([sort, 'optionalAccess', _705 => _705.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
37271
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _706 => _706.filter]));
37272
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _707 => _707.align]), () => ( "left"));
37273
+ const canSort = _optionalChain([meta, 'optionalAccess', _708 => _708.sortable]) === true;
37274
+ const sortDir = _optionalChain([sort, 'optionalAccess', _709 => _709.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
37229
37275
  if (!isLgUp && !hasFilter) return null;
37230
37276
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37231
37277
  "div",
37232
37278
  {
37233
37279
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37234
37280
  "flex items-stretch",
37235
- isLgUp && (_optionalChain([meta, 'optionalAccess', _706 => _706.width]) || "flex-1 min-w-0"),
37236
- _optionalChain([meta, 'optionalAccess', _707 => _707.headerClassName]),
37281
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _710 => _710.width]) || "flex-1 min-w-0"),
37282
+ _optionalChain([meta, 'optionalAccess', _711 => _711.headerClassName]),
37237
37283
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
37238
- !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _708 => _708.hideAt]))
37284
+ !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _712 => _712.hideAt]))
37239
37285
  ),
37240
37286
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37241
37287
  DataTableColumnFilter,
@@ -37254,7 +37300,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
37254
37300
  isLgUp && alignJustify(align),
37255
37301
  canSort && "group cursor-pointer"
37256
37302
  ),
37257
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _709 => _709(column.id)]) : void 0,
37303
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _713 => _713(column.id)]) : void 0,
37258
37304
  children: [
37259
37305
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
37260
37306
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -37319,7 +37365,7 @@ function DataTableSkeleton({
37319
37365
  }) {
37320
37366
  const table = useDataTableContext();
37321
37367
  const columns = table.getVisibleFlatColumns();
37322
- const firstColumnId = _optionalChain([columns, 'access', _710 => _710[0], 'optionalAccess', _711 => _711.id]);
37368
+ const firstColumnId = _optionalChain([columns, 'access', _714 => _714[0], 'optionalAccess', _715 => _715.id]);
37323
37369
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37324
37370
  "div",
37325
37371
  {
@@ -37343,7 +37389,7 @@ function DataTableSkeleton({
37343
37389
  {
37344
37390
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37345
37391
  "flex flex-col justify-center shrink-0",
37346
- _optionalChain([meta, 'optionalAccess', _712 => _712.width]) || "flex-1"
37392
+ _optionalChain([meta, 'optionalAccess', _716 => _716.width]) || "flex-1"
37347
37393
  ),
37348
37394
  children: [
37349
37395
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -37392,7 +37438,7 @@ function DataTableRowImpl({
37392
37438
  const handleClick = _react.useCallback.call(void 0,
37393
37439
  (e) => {
37394
37440
  const target = e.target;
37395
- if (!_optionalChain([containerRef, 'access', _713 => _713.current, 'optionalAccess', _714 => _714.contains, 'call', _715 => _715(target)])) {
37441
+ if (!_optionalChain([containerRef, 'access', _717 => _717.current, 'optionalAccess', _718 => _718.contains, 'call', _719 => _719(target)])) {
37396
37442
  if (isLinkMode) e.preventDefault();
37397
37443
  return;
37398
37444
  }
@@ -37400,7 +37446,7 @@ function DataTableRowImpl({
37400
37446
  if (isLinkMode) e.preventDefault();
37401
37447
  return;
37402
37448
  }
37403
- _optionalChain([onClick, 'optionalCall', _716 => _716(row.original)]);
37449
+ _optionalChain([onClick, 'optionalCall', _720 => _720(row.original)]);
37404
37450
  },
37405
37451
  [onClick, row.original, isLinkMode]
37406
37452
  );
@@ -37425,10 +37471,10 @@ function DataTableRowImpl({
37425
37471
  {
37426
37472
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37427
37473
  "flex flex-col overflow-hidden",
37428
- alignJustify(_optionalChain([meta, 'optionalAccess', _717 => _717.align])),
37429
- _optionalChain([meta, 'optionalAccess', _718 => _718.width]) || "flex-1 min-w-0",
37430
- _optionalChain([meta, 'optionalAccess', _719 => _719.cellClassName]),
37431
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _720 => _720.hideAt]))
37474
+ alignJustify(_optionalChain([meta, 'optionalAccess', _721 => _721.align])),
37475
+ _optionalChain([meta, 'optionalAccess', _722 => _722.width]) || "flex-1 min-w-0",
37476
+ _optionalChain([meta, 'optionalAccess', _723 => _723.cellClassName]),
37477
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _724 => _724.hideAt]))
37432
37478
  ),
37433
37479
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
37434
37480
  },
@@ -37507,7 +37553,7 @@ function DataTableBody({
37507
37553
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
37508
37554
  rows.map((row, index) => {
37509
37555
  const item = row.original;
37510
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _721 => _721(item)]), () => ( void 0));
37556
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _725 => _725(item)]), () => ( void 0));
37511
37557
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
37512
37558
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37513
37559
  DataTableRow,
@@ -37517,7 +37563,7 @@ function DataTableBody({
37517
37563
  href,
37518
37564
  compact,
37519
37565
  className: cls,
37520
- subRow: _optionalChain([renderSubRow, 'optionalCall', _722 => _722(item)])
37566
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _726 => _726(item)])
37521
37567
  },
37522
37568
  row.id
37523
37569
  );
@@ -37572,7 +37618,7 @@ function DataTableInfiniteFooter({
37572
37618
  if (!sentinel) return;
37573
37619
  const observer = new IntersectionObserver(
37574
37620
  (entries) => {
37575
- if (_optionalChain([entries, 'access', _723 => _723[0], 'optionalAccess', _724 => _724.isIntersecting])) onLoadMoreRef.current();
37621
+ if (_optionalChain([entries, 'access', _727 => _727[0], 'optionalAccess', _728 => _728.isIntersecting])) onLoadMoreRef.current();
37576
37622
  },
37577
37623
  { rootMargin }
37578
37624
  );
@@ -37620,7 +37666,7 @@ function DataTableRowCount({
37620
37666
  const table = useDataTableContext();
37621
37667
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
37622
37668
  if (hideWhenEmpty && count === 0) return null;
37623
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _725 => _725(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
37669
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _729 => _729(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
37624
37670
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37625
37671
  "span",
37626
37672
  {
@@ -37779,7 +37825,7 @@ function SearchInput({
37779
37825
  if (!showHiddenTags) return;
37780
37826
  const handleClick = (e) => {
37781
37827
  const target = e.target;
37782
- if (!_optionalChain([hiddenTagsRef, 'access', _726 => _726.current, 'optionalAccess', _727 => _727.contains, 'call', _728 => _728(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _729 => _729.current, 'optionalAccess', _730 => _730.contains, 'call', _731 => _731(target)])) {
37828
+ if (!_optionalChain([hiddenTagsRef, 'access', _730 => _730.current, 'optionalAccess', _731 => _731.contains, 'call', _732 => _732(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _733 => _733.current, 'optionalAccess', _734 => _734.contains, 'call', _735 => _735(target)])) {
37783
37829
  setShowHiddenTags(false);
37784
37830
  }
37785
37831
  };
@@ -37827,10 +37873,10 @@ function SearchInput({
37827
37873
  } else {
37828
37874
  setInternalValue("");
37829
37875
  }
37830
- _optionalChain([inputRef, 'access', _732 => _732.current, 'optionalAccess', _733 => _733.focus, 'call', _734 => _734()]);
37876
+ _optionalChain([inputRef, 'access', _736 => _736.current, 'optionalAccess', _737 => _737.focus, 'call', _738 => _738()]);
37831
37877
  };
37832
37878
  const handleResultClick = (result, e) => {
37833
- _optionalChain([onResultSelect, 'optionalCall', _735 => _735(
37879
+ _optionalChain([onResultSelect, 'optionalCall', _739 => _739(
37834
37880
  result,
37835
37881
  e ? {
37836
37882
  metaKey: e.metaKey,
@@ -37862,7 +37908,7 @@ function SearchInput({
37862
37908
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
37863
37909
  handleResultClick(flatResults[highlightedIndex]);
37864
37910
  } else {
37865
- _optionalChain([onSubmit, 'optionalCall', _736 => _736(currentValue)]);
37911
+ _optionalChain([onSubmit, 'optionalCall', _740 => _740(currentValue)]);
37866
37912
  }
37867
37913
  break;
37868
37914
  case "Escape":
@@ -37940,7 +37986,7 @@ function SearchInput({
37940
37986
  dropdownVisible && "!border-ods-accent"
37941
37987
  ),
37942
37988
  onClick: () => {
37943
- _optionalChain([inputRef, 'access', _737 => _737.current, 'optionalAccess', _738 => _738.focus, 'call', _739 => _739()]);
37989
+ _optionalChain([inputRef, 'access', _741 => _741.current, 'optionalAccess', _742 => _742.focus, 'call', _743 => _743()]);
37944
37990
  setIsOpen(true);
37945
37991
  },
37946
37992
  children: [
@@ -38024,10 +38070,10 @@ function SearchInput({
38024
38070
  align: "start",
38025
38071
  onOpenAutoFocus: (e) => {
38026
38072
  e.preventDefault();
38027
- _optionalChain([inputRef, 'access', _740 => _740.current, 'optionalAccess', _741 => _741.focus, 'call', _742 => _742()]);
38073
+ _optionalChain([inputRef, 'access', _744 => _744.current, 'optionalAccess', _745 => _745.focus, 'call', _746 => _746()]);
38028
38074
  },
38029
38075
  onInteractOutside: (e) => {
38030
- if (_optionalChain([containerRef, 'access', _743 => _743.current, 'optionalAccess', _744 => _744.contains, 'call', _745 => _745(e.target)])) {
38076
+ if (_optionalChain([containerRef, 'access', _747 => _747.current, 'optionalAccess', _748 => _748.contains, 'call', _749 => _749(e.target)])) {
38031
38077
  e.preventDefault();
38032
38078
  }
38033
38079
  },
@@ -38044,10 +38090,10 @@ function SearchInput({
38044
38090
  ref: hiddenTagsPopupRef,
38045
38091
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
38046
38092
  style: {
38047
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _746 => _746.current, 'optionalAccess', _747 => _747.getBoundingClientRect, 'call', _748 => _748(), 'access', _749 => _749.left]), () => ( 0))) : 0
38093
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _750 => _750.current, 'optionalAccess', _751 => _751.getBoundingClientRect, 'call', _752 => _752(), 'access', _753 => _753.left]), () => ( 0))) : 0
38048
38094
  },
38049
38095
  onRemove: (value2) => {
38050
- _optionalChain([onFilterRemove, 'optionalCall', _750 => _750(value2)]);
38096
+ _optionalChain([onFilterRemove, 'optionalCall', _754 => _754(value2)]);
38051
38097
  if (hiddenCount <= 1) setShowHiddenTags(false);
38052
38098
  }
38053
38099
  }
@@ -38098,7 +38144,7 @@ function FilterListItem({
38098
38144
  }) {
38099
38145
  const handleToggle = () => {
38100
38146
  if (disabled) return;
38101
- _optionalChain([onToggle, 'optionalCall', _751 => _751(!selected)]);
38147
+ _optionalChain([onToggle, 'optionalCall', _755 => _755(!selected)]);
38102
38148
  };
38103
38149
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
38104
38150
  "div",
@@ -38145,7 +38191,7 @@ function FilterListItem({
38145
38191
  CheckboxPrimitive4.Root,
38146
38192
  {
38147
38193
  checked: selected,
38148
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _752 => _752(c === true)]),
38194
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _756 => _756(c === true)]),
38149
38195
  onClick: (e) => e.stopPropagation(),
38150
38196
  disabled,
38151
38197
  "aria-label": title,
@@ -38244,7 +38290,7 @@ function TagSearchInput({
38244
38290
  if (!showHiddenTags) return;
38245
38291
  const handleClick = (e) => {
38246
38292
  const target = e.target;
38247
- if (!_optionalChain([hiddenTagsRef, 'access', _753 => _753.current, 'optionalAccess', _754 => _754.contains, 'call', _755 => _755(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _756 => _756.current, 'optionalAccess', _757 => _757.contains, 'call', _758 => _758(target)])) {
38293
+ if (!_optionalChain([hiddenTagsRef, 'access', _757 => _757.current, 'optionalAccess', _758 => _758.contains, 'call', _759 => _759(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _760 => _760.current, 'optionalAccess', _761 => _761.contains, 'call', _762 => _762(target)])) {
38248
38294
  setShowHiddenTags(false);
38249
38295
  }
38250
38296
  };
@@ -38260,13 +38306,13 @@ function TagSearchInput({
38260
38306
  e.preventDefault();
38261
38307
  onSubmit(searchValue);
38262
38308
  }
38263
- _optionalChain([onKeyDown, 'optionalCall', _759 => _759(e)]);
38309
+ _optionalChain([onKeyDown, 'optionalCall', _763 => _763(e)]);
38264
38310
  };
38265
38311
  const handleClearAll = (e) => {
38266
38312
  e.stopPropagation();
38267
38313
  e.preventDefault();
38268
- _optionalChain([onClearAll, 'optionalCall', _760 => _760()]);
38269
- _optionalChain([inputRef, 'access', _761 => _761.current, 'optionalAccess', _762 => _762.focus, 'call', _763 => _763()]);
38314
+ _optionalChain([onClearAll, 'optionalCall', _764 => _764()]);
38315
+ _optionalChain([inputRef, 'access', _765 => _765.current, 'optionalAccess', _766 => _766.focus, 'call', _767 => _767()]);
38270
38316
  };
38271
38317
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
38272
38318
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -38283,7 +38329,7 @@ function TagSearchInput({
38283
38329
  className
38284
38330
  ),
38285
38331
  onClick: () => {
38286
- if (!disabled) _optionalChain([inputRef, 'access', _764 => _764.current, 'optionalAccess', _765 => _765.focus, 'call', _766 => _766()]);
38332
+ if (!disabled) _optionalChain([inputRef, 'access', _768 => _768.current, 'optionalAccess', _769 => _769.focus, 'call', _770 => _770()]);
38287
38333
  },
38288
38334
  children: [
38289
38335
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
@@ -38355,7 +38401,7 @@ function TagSearchInput({
38355
38401
  items: hiddenTags,
38356
38402
  disabled,
38357
38403
  style: {
38358
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _767 => _767.current, 'optionalAccess', _768 => _768.getBoundingClientRect, 'call', _769 => _769(), 'access', _770 => _770.left]), () => ( 0))) : 0
38404
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _771 => _771.current, 'optionalAccess', _772 => _772.getBoundingClientRect, 'call', _773 => _773(), 'access', _774 => _774.left]), () => ( 0))) : 0
38359
38405
  },
38360
38406
  onRemove: (value) => {
38361
38407
  onTagRemove(value);
@@ -38456,7 +38502,7 @@ function MarkdownEditor({
38456
38502
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
38457
38503
  _react.useEffect.call(void 0, () => {
38458
38504
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
38459
- if (_optionalChain([mod, 'access', _771 => _771.commands, 'optionalAccess', _772 => _772.getExtraCommands])) {
38505
+ if (_optionalChain([mod, 'access', _775 => _775.commands, 'optionalAccess', _776 => _776.getExtraCommands])) {
38460
38506
  setDefaultExtraCommands(mod.commands.getExtraCommands());
38461
38507
  }
38462
38508
  });
@@ -38490,7 +38536,7 @@ function MarkdownEditor({
38490
38536
  const isImage = file.type.startsWith("image/");
38491
38537
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
38492
38538
  insertTextAtCursor(markdown);
38493
- _optionalChain([onFileUploaded, 'optionalCall', _773 => _773(url, file.name)]);
38539
+ _optionalChain([onFileUploaded, 'optionalCall', _777 => _777(url, file.name)]);
38494
38540
  } catch (error) {
38495
38541
  console.error("File upload failed:", error);
38496
38542
  setUploadProgress("Upload failed. Please try again.");
@@ -38503,7 +38549,7 @@ function MarkdownEditor({
38503
38549
  );
38504
38550
  const handleFileInputChange = _react.useCallback.call(void 0,
38505
38551
  (e) => {
38506
- const file = _optionalChain([e, 'access', _774 => _774.target, 'access', _775 => _775.files, 'optionalAccess', _776 => _776[0]]);
38552
+ const file = _optionalChain([e, 'access', _778 => _778.target, 'access', _779 => _779.files, 'optionalAccess', _780 => _780[0]]);
38507
38553
  if (file) {
38508
38554
  handleFileUpload(file);
38509
38555
  e.target.value = "";
@@ -38514,7 +38560,7 @@ function MarkdownEditor({
38514
38560
  const handlePaste = _react.useCallback.call(void 0,
38515
38561
  (e) => {
38516
38562
  if (!onUploadFile) return;
38517
- const items = _optionalChain([e, 'access', _777 => _777.clipboardData, 'optionalAccess', _778 => _778.items]);
38563
+ const items = _optionalChain([e, 'access', _781 => _781.clipboardData, 'optionalAccess', _782 => _782.items]);
38518
38564
  if (!items) return;
38519
38565
  for (const item of items) {
38520
38566
  if (item.type.startsWith("image/")) {
@@ -38539,7 +38585,7 @@ function MarkdownEditor({
38539
38585
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
38540
38586
  icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
38541
38587
  execute: () => {
38542
- _optionalChain([fileInputRef, 'access', _779 => _779.current, 'optionalAccess', _780 => _780.click, 'call', _781 => _781()]);
38588
+ _optionalChain([fileInputRef, 'access', _783 => _783.current, 'optionalAccess', _784 => _784.click, 'call', _785 => _785()]);
38543
38589
  }
38544
38590
  } : null;
38545
38591
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -38551,7 +38597,7 @@ function MarkdownEditor({
38551
38597
  const EDGE_ZONE = 60;
38552
38598
  const MAX_SCROLL_SPEED = 15;
38553
38599
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
38554
- let node = _optionalChain([el, 'optionalAccess', _782 => _782.parentElement]);
38600
+ let node = _optionalChain([el, 'optionalAccess', _786 => _786.parentElement]);
38555
38601
  while (node && node !== document.documentElement) {
38556
38602
  const { overflowY } = window.getComputedStyle(node);
38557
38603
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -38694,7 +38740,7 @@ function matchesAccept(file, accept) {
38694
38740
  });
38695
38741
  }
38696
38742
  function dragHasFiles(e) {
38697
- const types = _optionalChain([e, 'access', _783 => _783.dataTransfer, 'optionalAccess', _784 => _784.types]);
38743
+ const types = _optionalChain([e, 'access', _787 => _787.dataTransfer, 'optionalAccess', _788 => _788.types]);
38698
38744
  if (!types) return false;
38699
38745
  for (let i = 0; i < types.length; i++) {
38700
38746
  if (types[i] === "Files") return true;
@@ -38790,7 +38836,7 @@ function FileUpload({
38790
38836
  e.stopPropagation();
38791
38837
  setDragActive(false);
38792
38838
  if (disabled) return;
38793
- if (_optionalChain([e, 'access', _785 => _785.dataTransfer, 'access', _786 => _786.files, 'optionalAccess', _787 => _787.length])) {
38839
+ if (_optionalChain([e, 'access', _789 => _789.dataTransfer, 'access', _790 => _790.files, 'optionalAccess', _791 => _791.length])) {
38794
38840
  handleFiles(e.dataTransfer.files);
38795
38841
  }
38796
38842
  };
@@ -38818,7 +38864,7 @@ function FileUpload({
38818
38864
  e.preventDefault();
38819
38865
  dragCounter = 0;
38820
38866
  setDragActive(false);
38821
- if (_optionalChain([e, 'access', _788 => _788.dataTransfer, 'optionalAccess', _789 => _789.files, 'optionalAccess', _790 => _790.length])) {
38867
+ if (_optionalChain([e, 'access', _792 => _792.dataTransfer, 'optionalAccess', _793 => _793.files, 'optionalAccess', _794 => _794.length])) {
38822
38868
  handleFilesRef.current(e.dataTransfer.files);
38823
38869
  }
38824
38870
  };
@@ -38840,7 +38886,7 @@ function FileUpload({
38840
38886
  };
38841
38887
  }, [acceptWindowDrops, disabled]);
38842
38888
  const handleFileSelect = (e) => {
38843
- if (_optionalChain([e, 'access', _791 => _791.target, 'access', _792 => _792.files, 'optionalAccess', _793 => _793.length])) {
38889
+ if (_optionalChain([e, 'access', _795 => _795.target, 'access', _796 => _796.files, 'optionalAccess', _797 => _797.length])) {
38844
38890
  handleFiles(e.target.files);
38845
38891
  }
38846
38892
  };
@@ -38857,7 +38903,7 @@ function FileUpload({
38857
38903
  };
38858
38904
  const openDialog = async () => {
38859
38905
  if (disabled) return;
38860
- _optionalChain([fileInputRef, 'access', _794 => _794.current, 'optionalAccess', _795 => _795.click, 'call', _796 => _796()]);
38906
+ _optionalChain([fileInputRef, 'access', _798 => _798.current, 'optionalAccess', _799 => _799.click, 'call', _800 => _800()]);
38861
38907
  };
38862
38908
  const displayError = error || validationError || void 0;
38863
38909
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -38919,7 +38965,7 @@ function FileUpload({
38919
38965
  "button",
38920
38966
  {
38921
38967
  type: "button",
38922
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _797 => _797(entry.id)]),
38968
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _801 => _801(entry.id)]),
38923
38969
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
38924
38970
  "aria-label": `Remove ${entry.fileName}`,
38925
38971
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.TrashIcon, { className: "size-6" })
@@ -39050,7 +39096,7 @@ function ImageUploader({
39050
39096
  onChange(file);
39051
39097
  };
39052
39098
  const handleFileSelect = (e) => {
39053
- validateAndEmit(_optionalChain([e, 'access', _798 => _798.target, 'access', _799 => _799.files, 'optionalAccess', _800 => _800[0]]));
39099
+ validateAndEmit(_optionalChain([e, 'access', _802 => _802.target, 'access', _803 => _803.files, 'optionalAccess', _804 => _804[0]]));
39054
39100
  if (inputRef.current) inputRef.current.value = "";
39055
39101
  };
39056
39102
  const handleDrag = (e) => {
@@ -39065,11 +39111,11 @@ function ImageUploader({
39065
39111
  e.stopPropagation();
39066
39112
  setDragActive(false);
39067
39113
  if (!interactive) return;
39068
- validateAndEmit(_optionalChain([e, 'access', _801 => _801.dataTransfer, 'access', _802 => _802.files, 'optionalAccess', _803 => _803[0]]));
39114
+ validateAndEmit(_optionalChain([e, 'access', _805 => _805.dataTransfer, 'access', _806 => _806.files, 'optionalAccess', _807 => _807[0]]));
39069
39115
  };
39070
39116
  const openDialog = () => {
39071
39117
  if (!interactive) return;
39072
- _optionalChain([inputRef, 'access', _804 => _804.current, 'optionalAccess', _805 => _805.click, 'call', _806 => _806()]);
39118
+ _optionalChain([inputRef, 'access', _808 => _808.current, 'optionalAccess', _809 => _809.click, 'call', _810 => _810()]);
39073
39119
  };
39074
39120
  const handleRootKeyDown = (e) => {
39075
39121
  if (hasImage || !interactive) return;
@@ -39260,8 +39306,8 @@ function ColorPresetSelect({
39260
39306
  }) {
39261
39307
  const selectedPreset = presets.find((p) => p.key === presetKey);
39262
39308
  const isCustom = !selectedPreset;
39263
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _807 => _807.label]), () => ( "Custom"));
39264
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _808 => _808.color]), () => ( value));
39309
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _811 => _811.label]), () => ( "Custom"));
39310
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _812 => _812.color]), () => ( value));
39265
39311
  const groups = [
39266
39312
  {
39267
39313
  items: [
@@ -39551,7 +39597,7 @@ function TicketStatusConfigRow({
39551
39597
  _chunkQJGRP2YEcjs.Input,
39552
39598
  {
39553
39599
  value: name,
39554
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _809 => _809(e.target.value)]),
39600
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _813 => _813(e.target.value)]),
39555
39601
  disabled: isSystem,
39556
39602
  readOnly: isSystem,
39557
39603
  "aria-label": "Status name",
@@ -39924,14 +39970,14 @@ function TicketInfoSection({
39924
39970
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39925
39971
  SquareAvatar,
39926
39972
  {
39927
- src: _optionalChain([organization, 'optionalAccess', _810 => _810.imageSrc]),
39928
- alt: _optionalChain([organization, 'optionalAccess', _811 => _811.name]),
39929
- fallback: _optionalChain([organization, 'optionalAccess', _812 => _812.name]) || "Org",
39973
+ src: _optionalChain([organization, 'optionalAccess', _814 => _814.imageSrc]),
39974
+ alt: _optionalChain([organization, 'optionalAccess', _815 => _815.name]),
39975
+ fallback: _optionalChain([organization, 'optionalAccess', _816 => _816.name]) || "Org",
39930
39976
  size: "md",
39931
39977
  className: "shrink-0"
39932
39978
  }
39933
39979
  ),
39934
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _813 => _813.name]) || "Unassigned", label: "Organization" })
39980
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _817 => _817.name]) || "Unassigned", label: "Organization" })
39935
39981
  ] }),
39936
39982
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39937
39983
  AssigneeDropdown,
@@ -39952,10 +39998,10 @@ function TicketInfoSection({
39952
39998
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39953
39999
  InfoCell2,
39954
40000
  {
39955
- value: _optionalChain([device, 'optionalAccess', _814 => _814.name]) || "Unassigned",
40001
+ value: _optionalChain([device, 'optionalAccess', _818 => _818.name]) || "Unassigned",
39956
40002
  label: "Device",
39957
- icon: _optionalChain([device, 'optionalAccess', _815 => _815.icon]),
39958
- onClick: _optionalChain([device, 'optionalAccess', _816 => _816.onClick])
40003
+ icon: _optionalChain([device, 'optionalAccess', _819 => _819.icon]),
40004
+ onClick: _optionalChain([device, 'optionalAccess', _820 => _820.onClick])
39959
40005
  }
39960
40006
  ),
39961
40007
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -40285,7 +40331,7 @@ function RoadmapCard({
40285
40331
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
40286
40332
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
40287
40333
  const hasFigma = !!item.figmaUrl;
40288
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _817 => _817.screenshots, 'optionalAccess', _818 => _818.length]), () => ( 0))) > 0;
40334
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _821 => _821.screenshots, 'optionalAccess', _822 => _822.length]), () => ( 0))) > 0;
40289
40335
  const typeLabel = getTaskTypeLabel(item.customItemId);
40290
40336
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
40291
40337
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -40304,7 +40350,7 @@ function RoadmapCard({
40304
40350
  unoptimized: true,
40305
40351
  className: "h-8 w-8 object-contain"
40306
40352
  }
40307
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _819 => _819.title, 'optionalAccess', _820 => _820.substring, 'call', _821 => _821(0, 2)]) || "??" })
40353
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _823 => _823.title, 'optionalAccess', _824 => _824.substring, 'call', _825 => _825(0, 2)]) || "??" })
40308
40354
  }
40309
40355
  ),
40310
40356
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -40379,7 +40425,7 @@ function RoadmapCard({
40379
40425
  unoptimized: true,
40380
40426
  className: "object-contain p-1"
40381
40427
  }
40382
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _822 => _822.title, 'optionalAccess', _823 => _823.substring, 'call', _824 => _824(0, 2)]) || "??" }) }),
40428
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _826 => _826.title, 'optionalAccess', _827 => _827.substring, 'call', _828 => _828(0, 2)]) || "??" }) }),
40383
40429
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
40384
40430
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
40385
40431
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
@@ -40889,7 +40935,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
40889
40935
  ] }) : null,
40890
40936
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
40891
40937
  ] }),
40892
- _optionalChain([anchorProps, 'optionalAccess', _825 => _825.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
40938
+ _optionalChain([anchorProps, 'optionalAccess', _829 => _829.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
40893
40939
  ] });
40894
40940
  if (!anchorProps) {
40895
40941
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -40959,7 +41005,7 @@ function getDefaultOptions() {
40959
41005
  // node_modules/date-fns/startOfWeek.mjs
40960
41006
  function startOfWeek(date, options) {
40961
41007
  const defaultOptions2 = getDefaultOptions();
40962
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _826 => _826.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _827 => _827.locale, 'optionalAccess', _828 => _828.options, 'optionalAccess', _829 => _829.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _830 => _830.locale, 'optionalAccess', _831 => _831.options, 'optionalAccess', _832 => _832.weekStartsOn]))), () => ( 0));
41008
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _830 => _830.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _831 => _831.locale, 'optionalAccess', _832 => _832.options, 'optionalAccess', _833 => _833.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _834 => _834.locale, 'optionalAccess', _835 => _835.options, 'optionalAccess', _836 => _836.weekStartsOn]))), () => ( 0));
40963
41009
  const _date = toDate(date);
40964
41010
  const day = _date.getDay();
40965
41011
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -41134,7 +41180,7 @@ var formatDistance = (token, count, options) => {
41134
41180
  } else {
41135
41181
  result = tokenValue.other.replace("{{count}}", count.toString());
41136
41182
  }
41137
- if (_optionalChain([options, 'optionalAccess', _833 => _833.addSuffix])) {
41183
+ if (_optionalChain([options, 'optionalAccess', _837 => _837.addSuffix])) {
41138
41184
  if (options.comparison && options.comparison > 0) {
41139
41185
  return "in " + result;
41140
41186
  } else {
@@ -41201,15 +41247,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
41201
41247
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
41202
41248
  function buildLocalizeFn(args) {
41203
41249
  return (value, options) => {
41204
- const context = _optionalChain([options, 'optionalAccess', _834 => _834.context]) ? String(options.context) : "standalone";
41250
+ const context = _optionalChain([options, 'optionalAccess', _838 => _838.context]) ? String(options.context) : "standalone";
41205
41251
  let valuesArray;
41206
41252
  if (context === "formatting" && args.formattingValues) {
41207
41253
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
41208
- const width = _optionalChain([options, 'optionalAccess', _835 => _835.width]) ? String(options.width) : defaultWidth;
41254
+ const width = _optionalChain([options, 'optionalAccess', _839 => _839.width]) ? String(options.width) : defaultWidth;
41209
41255
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
41210
41256
  } else {
41211
41257
  const defaultWidth = args.defaultWidth;
41212
- const width = _optionalChain([options, 'optionalAccess', _836 => _836.width]) ? String(options.width) : args.defaultWidth;
41258
+ const width = _optionalChain([options, 'optionalAccess', _840 => _840.width]) ? String(options.width) : args.defaultWidth;
41213
41259
  valuesArray = args.values[width] || args.values[defaultWidth];
41214
41260
  }
41215
41261
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -41589,7 +41635,7 @@ function getWeekYear(date, options) {
41589
41635
  const _date = toDate(date);
41590
41636
  const year = _date.getFullYear();
41591
41637
  const defaultOptions2 = getDefaultOptions();
41592
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _837 => _837.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _838 => _838.locale, 'optionalAccess', _839 => _839.options, 'optionalAccess', _840 => _840.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _841 => _841.locale, 'optionalAccess', _842 => _842.options, 'optionalAccess', _843 => _843.firstWeekContainsDate]))), () => ( 1));
41638
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _841 => _841.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _842 => _842.locale, 'optionalAccess', _843 => _843.options, 'optionalAccess', _844 => _844.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _845 => _845.locale, 'optionalAccess', _846 => _846.options, 'optionalAccess', _847 => _847.firstWeekContainsDate]))), () => ( 1));
41593
41639
  const firstWeekOfNextYear = constructFrom(date, 0);
41594
41640
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
41595
41641
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -41610,7 +41656,7 @@ function getWeekYear(date, options) {
41610
41656
  // node_modules/date-fns/startOfWeekYear.mjs
41611
41657
  function startOfWeekYear(date, options) {
41612
41658
  const defaultOptions2 = getDefaultOptions();
41613
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _844 => _844.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _845 => _845.locale, 'optionalAccess', _846 => _846.options, 'optionalAccess', _847 => _847.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _848 => _848.locale, 'optionalAccess', _849 => _849.options, 'optionalAccess', _850 => _850.firstWeekContainsDate]))), () => ( 1));
41659
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _848 => _848.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _849 => _849.locale, 'optionalAccess', _850 => _850.options, 'optionalAccess', _851 => _851.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _852 => _852.locale, 'optionalAccess', _853 => _853.options, 'optionalAccess', _854 => _854.firstWeekContainsDate]))), () => ( 1));
41614
41660
  const year = getWeekYear(date, options);
41615
41661
  const firstWeek = constructFrom(date, 0);
41616
41662
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -42425,9 +42471,9 @@ var doubleQuoteRegExp = /''/g;
42425
42471
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
42426
42472
  function format(date, formatStr, options) {
42427
42473
  const defaultOptions2 = getDefaultOptions();
42428
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _851 => _851.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
42429
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _852 => _852.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _853 => _853.locale, 'optionalAccess', _854 => _854.options, 'optionalAccess', _855 => _855.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _856 => _856.locale, 'optionalAccess', _857 => _857.options, 'optionalAccess', _858 => _858.firstWeekContainsDate]))), () => ( 1));
42430
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _859 => _859.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _860 => _860.locale, 'optionalAccess', _861 => _861.options, 'optionalAccess', _862 => _862.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _863 => _863.locale, 'optionalAccess', _864 => _864.options, 'optionalAccess', _865 => _865.weekStartsOn]))), () => ( 0));
42474
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _855 => _855.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
42475
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _856 => _856.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _857 => _857.locale, 'optionalAccess', _858 => _858.options, 'optionalAccess', _859 => _859.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _860 => _860.locale, 'optionalAccess', _861 => _861.options, 'optionalAccess', _862 => _862.firstWeekContainsDate]))), () => ( 1));
42476
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _863 => _863.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _864 => _864.locale, 'optionalAccess', _865 => _865.options, 'optionalAccess', _866 => _866.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _867 => _867.locale, 'optionalAccess', _868 => _868.options, 'optionalAccess', _869 => _869.weekStartsOn]))), () => ( 0));
42431
42477
  const originalDate = toDate(date);
42432
42478
  if (!isValid(originalDate)) {
42433
42479
  throw new RangeError("Invalid time value");
@@ -42468,7 +42514,7 @@ function format(date, formatStr, options) {
42468
42514
  return parts.map((part) => {
42469
42515
  if (!part.isToken) return part.value;
42470
42516
  const token = part.value;
42471
- if (!_optionalChain([options, 'optionalAccess', _866 => _866.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _867 => _867.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
42517
+ if (!_optionalChain([options, 'optionalAccess', _870 => _870.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _871 => _871.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
42472
42518
  warnOrThrowProtectedError(token, formatStr, String(date));
42473
42519
  }
42474
42520
  const formatter = formatters[token[0]];
@@ -42649,7 +42695,7 @@ function ProgramCard({
42649
42695
  const dur = formatDurationFromRange(w.start_at, w.end_at);
42650
42696
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
42651
42697
  }
42652
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _868 => _868.labels, 'optionalAccess', _869 => _869.singular])].filter(
42698
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _872 => _872.labels, 'optionalAccess', _873 => _873.singular])].filter(
42653
42699
  (s) => typeof s === "string" && s.length > 0
42654
42700
  );
42655
42701
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -42806,7 +42852,7 @@ function ProgramCard({
42806
42852
 
42807
42853
 
42808
42854
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
42809
- const goalsCount = _optionalChain([campaign, 'access', _870 => _870.goals, 'optionalAccess', _871 => _871.length]) || 0;
42855
+ const goalsCount = _optionalChain([campaign, 'access', _874 => _874.goals, 'optionalAccess', _875 => _875.length]) || 0;
42810
42856
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
42811
42857
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
42812
42858
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -42968,7 +43014,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
42968
43014
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
42969
43015
  const safePath = sanitizePath(row.path);
42970
43016
  if (safePath) {
42971
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _872 => _872.docPlatformTargets, 'optionalAccess', _873 => _873[row.documentType]]) : void 0;
43017
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _876 => _876.docPlatformTargets, 'optionalAccess', _877 => _877[row.documentType]]) : void 0;
42972
43018
  if (docTarget) {
42973
43019
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
42974
43020
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -43183,8 +43229,8 @@ function cardMenuGroups(href, discuss, openDetails) {
43183
43229
  if (href) {
43184
43230
  items.push({
43185
43231
  id: "open-details",
43186
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _874 => _874.label]), () => ( "Open Details")),
43187
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _875 => _875.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.EyeIcon, { size: 20 }))),
43232
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _878 => _878.label]), () => ( "Open Details")),
43233
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _879 => _879.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.EyeIcon, { size: 20 }))),
43188
43234
  // Main row → open the entity (same tab, soft Link nav).
43189
43235
  href,
43190
43236
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -43214,8 +43260,8 @@ function HubspotTicketChatCard({
43214
43260
  isNewTab,
43215
43261
  discuss
43216
43262
  }) {
43217
- const status = typeof _optionalChain([chatRef, 'access', _876 => _876.metadata, 'optionalAccess', _877 => _877.status]) === "string" ? chatRef.metadata.status : void 0;
43218
- const statusLabel = typeof _optionalChain([chatRef, 'access', _878 => _878.metadata, 'optionalAccess', _879 => _879.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
43263
+ const status = typeof _optionalChain([chatRef, 'access', _880 => _880.metadata, 'optionalAccess', _881 => _881.status]) === "string" ? chatRef.metadata.status : void 0;
43264
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _882 => _882.metadata, 'optionalAccess', _883 => _883.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
43219
43265
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
43220
43266
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43221
43267
  MingoInfoCard,
@@ -43238,7 +43284,7 @@ function FaqChatCard({
43238
43284
  isNewTab,
43239
43285
  discuss
43240
43286
  }) {
43241
- const section = typeof _optionalChain([chatRef, 'access', _880 => _880.metadata, 'optionalAccess', _881 => _881.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
43287
+ const section = typeof _optionalChain([chatRef, 'access', _884 => _884.metadata, 'optionalAccess', _885 => _885.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
43242
43288
  const statusLabel = section && section.length > 0 ? section : "FAQ";
43243
43289
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43244
43290
  MingoInfoCard,
@@ -43258,7 +43304,7 @@ function SlackChatCard({
43258
43304
  isNewTab,
43259
43305
  discuss
43260
43306
  }) {
43261
- const channelName = typeof _optionalChain([chatRef, 'access', _882 => _882.metadata, 'optionalAccess', _883 => _883.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
43307
+ const channelName = typeof _optionalChain([chatRef, 'access', _886 => _886.metadata, 'optionalAccess', _887 => _887.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
43262
43308
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
43263
43309
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
43264
43310
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -43298,7 +43344,7 @@ function GenericFinancialChatCard({
43298
43344
  isNewTab,
43299
43345
  discuss
43300
43346
  }) {
43301
- const subtitle = typeof _optionalChain([chatRef, 'access', _884 => _884.metadata, 'optionalAccess', _885 => _885.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
43347
+ const subtitle = typeof _optionalChain([chatRef, 'access', _888 => _888.metadata, 'optionalAccess', _889 => _889.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
43302
43348
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43303
43349
  MingoInfoCard,
43304
43350
  {
@@ -43367,12 +43413,12 @@ function ProductReleaseChatCard({
43367
43413
  discuss
43368
43414
  }) {
43369
43415
  const releaseProps = buildProps(item);
43370
- const status = _optionalChain([item, 'optionalAccess', _886 => _886.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
43416
+ const status = _optionalChain([item, 'optionalAccess', _890 => _890.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
43371
43417
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43372
43418
  EntityMingoCard,
43373
43419
  {
43374
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _887 => _887.title]), () => ( "")),
43375
- description: _optionalChain([item, 'optionalAccess', _888 => _888.summary]) || releaseProps.formattedDate || void 0,
43420
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _891 => _891.title]), () => ( "")),
43421
+ description: _optionalChain([item, 'optionalAccess', _892 => _892.summary]) || releaseProps.formattedDate || void 0,
43376
43422
  cover: releaseProps.coverImage || void 0,
43377
43423
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.Rocket02Icon, { size: 24 }),
43378
43424
  status,
@@ -43389,17 +43435,17 @@ function CampaignChatCard({
43389
43435
  isNewTab,
43390
43436
  discuss
43391
43437
  }) {
43392
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _889 => _889.goals])) ? item.goals.length : 0;
43438
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _893 => _893.goals])) ? item.goals.length : 0;
43393
43439
  const meta = [
43394
- _optionalChain([item, 'optionalAccess', _890 => _890.start_date]) ? formatDateShort(item.start_date) : null,
43440
+ _optionalChain([item, 'optionalAccess', _894 => _894.start_date]) ? formatDateShort(item.start_date) : null,
43395
43441
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
43396
43442
  "Marketing campaign"
43397
43443
  ].filter(Boolean).join(" \xB7 ");
43398
43444
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43399
43445
  EntityMingoCard,
43400
43446
  {
43401
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _891 => _891.name]), () => ( "")),
43402
- description: meta || _optionalChain([item, 'optionalAccess', _892 => _892.description]) || void 0,
43447
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _895 => _895.name]), () => ( "")),
43448
+ description: meta || _optionalChain([item, 'optionalAccess', _896 => _896.description]) || void 0,
43403
43449
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.Megaphone01Icon, { size: 24 }),
43404
43450
  chatRef,
43405
43451
  isNewTab,
@@ -43452,14 +43498,14 @@ function BlogChatCard({
43452
43498
  hasEmbeddedVideo,
43453
43499
  discuss
43454
43500
  }) {
43455
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _893 => _893.categories])) ? _optionalChain([item, 'access', _894 => _894.categories, 'access', _895 => _895.find, 'call', _896 => _896((c) => c && c.name), 'optionalAccess', _897 => _897.name]) : void 0;
43501
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _897 => _897.categories])) ? _optionalChain([item, 'access', _898 => _898.categories, 'access', _899 => _899.find, 'call', _900 => _900((c) => c && c.name), 'optionalAccess', _901 => _901.name]) : void 0;
43456
43502
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
43457
43503
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43458
43504
  EntityMingoCard,
43459
43505
  {
43460
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _898 => _898.title]), () => ( "")),
43461
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _899 => _899.summary]), () => ( void 0)),
43462
- cover: entityCover(_optionalChain([item, 'optionalAccess', _900 => _900.featured_image]), ogPlaceholder),
43506
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _902 => _902.title]), () => ( "")),
43507
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _903 => _903.summary]), () => ( void 0)),
43508
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _904 => _904.featured_image]), ogPlaceholder),
43463
43509
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.NewspaperIcon, { size: 24 }),
43464
43510
  status,
43465
43511
  chatRef,
@@ -43476,13 +43522,13 @@ function CaseStudyChatCard({
43476
43522
  ogPlaceholder,
43477
43523
  discuss
43478
43524
  }) {
43479
- const meta = [_optionalChain([item, 'optionalAccess', _901 => _901.msp, 'optionalAccess', _902 => _902.name]), _optionalChain([item, 'optionalAccess', _903 => _903.user, 'optionalAccess', _904 => _904.full_name])].filter(Boolean).join(" \xB7 ");
43525
+ const meta = [_optionalChain([item, 'optionalAccess', _905 => _905.msp, 'optionalAccess', _906 => _906.name]), _optionalChain([item, 'optionalAccess', _907 => _907.user, 'optionalAccess', _908 => _908.full_name])].filter(Boolean).join(" \xB7 ");
43480
43526
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43481
43527
  EntityMingoCard,
43482
43528
  {
43483
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _905 => _905.title]), () => ( "")),
43484
- description: _optionalChain([item, 'optionalAccess', _906 => _906.summary]) || meta || void 0,
43485
- cover: entityCover(_optionalChain([item, 'optionalAccess', _907 => _907.featured_image]), ogPlaceholder),
43529
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _909 => _909.title]), () => ( "")),
43530
+ description: _optionalChain([item, 'optionalAccess', _910 => _910.summary]) || meta || void 0,
43531
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _911 => _911.featured_image]), ogPlaceholder),
43486
43532
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.TrophyIcon, { size: 24 }),
43487
43533
  status: { label: "Case study", variant: "grey" },
43488
43534
  chatRef,
@@ -43499,13 +43545,13 @@ function CustomerInterviewChatCard({
43499
43545
  ogPlaceholder,
43500
43546
  discuss
43501
43547
  }) {
43502
- const meta = [_optionalChain([item, 'optionalAccess', _908 => _908.user, 'optionalAccess', _909 => _909.full_name]), _optionalChain([item, 'optionalAccess', _910 => _910.msp, 'optionalAccess', _911 => _911.name])].filter(Boolean).join(" \xB7 ");
43548
+ const meta = [_optionalChain([item, 'optionalAccess', _912 => _912.user, 'optionalAccess', _913 => _913.full_name]), _optionalChain([item, 'optionalAccess', _914 => _914.msp, 'optionalAccess', _915 => _915.name])].filter(Boolean).join(" \xB7 ");
43503
43549
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43504
43550
  EntityMingoCard,
43505
43551
  {
43506
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _912 => _912.title]), () => ( "")),
43507
- description: _optionalChain([item, 'optionalAccess', _913 => _913.video_summary]) || meta || void 0,
43508
- cover: entityCover(_optionalChain([item, 'optionalAccess', _914 => _914.featured_image]), ogPlaceholder),
43552
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _916 => _916.title]), () => ( "")),
43553
+ description: _optionalChain([item, 'optionalAccess', _917 => _917.video_summary]) || meta || void 0,
43554
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _918 => _918.featured_image]), ogPlaceholder),
43509
43555
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.MicrophoneIcon, { size: 24 }),
43510
43556
  status: { label: "Interview", variant: "grey" },
43511
43557
  chatRef,
@@ -43522,13 +43568,13 @@ function InvestorUpdateChatCard({
43522
43568
  ogPlaceholder,
43523
43569
  discuss
43524
43570
  }) {
43525
- const title = _optionalChain([item, 'optionalAccess', _915 => _915.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _916 => _916.update_number]), () => ( "?"))}`;
43571
+ const title = _optionalChain([item, 'optionalAccess', _919 => _919.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _920 => _920.update_number]), () => ( "?"))}`;
43526
43572
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43527
43573
  EntityMingoCard,
43528
43574
  {
43529
43575
  title,
43530
- description: _optionalChain([item, 'optionalAccess', _917 => _917.strategic_update]) || _optionalChain([item, 'optionalAccess', _918 => _918.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _919 => _919.period_start]), _optionalChain([item, 'optionalAccess', _920 => _920.period_end])) || void 0,
43531
- cover: entityCover(_optionalChain([item, 'optionalAccess', _921 => _921.featured_image]), ogPlaceholder),
43576
+ description: _optionalChain([item, 'optionalAccess', _921 => _921.strategic_update]) || _optionalChain([item, 'optionalAccess', _922 => _922.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _923 => _923.period_start]), _optionalChain([item, 'optionalAccess', _924 => _924.period_end])) || void 0,
43577
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _925 => _925.featured_image]), ogPlaceholder),
43532
43578
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.PresentationLineIcon, { size: 24 }),
43533
43579
  status: { label: "Investor update", variant: "grey" },
43534
43580
  chatRef,
@@ -43545,12 +43591,12 @@ function OnboardingGuideChatCard({
43545
43591
  ogPlaceholder,
43546
43592
  discuss
43547
43593
  }) {
43548
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _922 => _922.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _923 => _923.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _924 => _924.og_image_url]), ogPlaceholder)));
43594
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _926 => _926.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _927 => _927.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _928 => _928.og_image_url]), ogPlaceholder)));
43549
43595
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43550
43596
  EntityMingoCard,
43551
43597
  {
43552
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _925 => _925.title]), () => ( "")),
43553
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _926 => _926.summary]), () => ( _optionalChain([item, 'optionalAccess', _927 => _927.description]))), () => ( void 0)),
43598
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _929 => _929.title]), () => ( "")),
43599
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _930 => _930.summary]), () => ( _optionalChain([item, 'optionalAccess', _931 => _931.description]))), () => ( void 0)),
43554
43600
  cover,
43555
43601
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.CompassIcon, { size: 24 }),
43556
43602
  status: { label: "Guide", variant: "grey" },
@@ -43571,25 +43617,25 @@ function ProgramChatCard({
43571
43617
  discuss
43572
43618
  }) {
43573
43619
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.MicrophoneIcon, { size: 24 });
43574
- const isScheduled = _optionalChain([item, 'optionalAccess', _928 => _928.status]) === "scheduled";
43620
+ const isScheduled = _optionalChain([item, 'optionalAccess', _932 => _932.status]) === "scheduled";
43575
43621
  let typeMeta;
43576
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _929 => _929.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
43622
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _933 => _933.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
43577
43623
  typeMeta = formatDurationCompact(item.duration_seconds);
43578
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _930 => _930.location_name]) === "string" && item.location_name.trim().length > 0) {
43624
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _934 => _934.location_name]) === "string" && item.location_name.trim().length > 0) {
43579
43625
  typeMeta = item.location_name;
43580
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _931 => _931.start_at])) {
43626
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _935 => _935.start_at])) {
43581
43627
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
43582
43628
  const dur = formatDurationFromRange(item.start_at, item.end_at);
43583
43629
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
43584
43630
  }
43585
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _932 => _932.date]), () => ( null)), { fallback: "", timezone: "local" });
43631
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _936 => _936.date]), () => ( null)), { fallback: "", timezone: "local" });
43586
43632
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
43587
43633
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43588
43634
  EntityMingoCard,
43589
43635
  {
43590
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _933 => _933.title]), () => ( "")),
43591
- description: meta || _optionalChain([item, 'optionalAccess', _934 => _934.description]) || void 0,
43592
- cover: entityCover(_optionalChain([item, 'optionalAccess', _935 => _935.cover_url]), ogPlaceholder),
43636
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _937 => _937.title]), () => ( "")),
43637
+ description: meta || _optionalChain([item, 'optionalAccess', _938 => _938.description]) || void 0,
43638
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _939 => _939.cover_url]), ogPlaceholder),
43593
43639
  fallbackIcon: icon,
43594
43640
  status: { label, variant: "grey" },
43595
43641
  chatRef,
@@ -43606,10 +43652,10 @@ function RoadmapChatCard({
43606
43652
  cardType,
43607
43653
  discuss
43608
43654
  }) {
43609
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _936 => _936.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
43610
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _937 => _937.customItemId]) != null;
43655
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _940 => _940.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
43656
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _941 => _941.customItemId]) != null;
43611
43657
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQXHTYNAWcjs.MapIcon, { size: 24 });
43612
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _938 => _938.customItemId]), className: "size-6" }) : logoUrl ? (
43658
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _942 => _942.customItemId]), className: "size-6" }) : logoUrl ? (
43613
43659
  // Contained (not full-bleed) so the integration logo keeps its aspect
43614
43660
  // ratio inside the bordered icon box — matches RoadmapCard.
43615
43661
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -43617,10 +43663,10 @@ function RoadmapChatCard({
43617
43663
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43618
43664
  EntityMingoCard,
43619
43665
  {
43620
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _939 => _939.title]), () => ( "")),
43621
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _940 => _940.description]), () => ( void 0)),
43666
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _943 => _943.title]), () => ( "")),
43667
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _944 => _944.description]), () => ( void 0)),
43622
43668
  fallbackIcon: icon,
43623
- status: statusPill(_optionalChain([item, 'optionalAccess', _941 => _941.status])),
43669
+ status: statusPill(_optionalChain([item, 'optionalAccess', _945 => _945.status])),
43624
43670
  chatRef,
43625
43671
  isNewTab,
43626
43672
  discuss,
@@ -43706,7 +43752,7 @@ function programRegistryEntries() {
43706
43752
  discuss: opts.discuss,
43707
43753
  configKey: cfg.configKey,
43708
43754
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
43709
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _942 => _942.extras, 'optionalAccess', _943 => _943.buildOgPlaceholderUrl, 'optionalCall', _944 => _944(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _945 => _945.title]), () => ( "")))]), () => ( null))
43755
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _946 => _946.extras, 'optionalAccess', _947 => _947.buildOgPlaceholderUrl, 'optionalCall', _948 => _948(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _949 => _949.title]), () => ( "")))]), () => ( null))
43710
43756
  }
43711
43757
  )
43712
43758
  };
@@ -43858,8 +43904,8 @@ var CHAT_CARD_REGISTRY = {
43858
43904
  chatRef,
43859
43905
  isNewTab: opts.isNewTab,
43860
43906
  discuss: opts.discuss,
43861
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _946 => _946.extras, 'optionalAccess', _947 => _947.buildOgPlaceholderUrl, 'optionalCall', _948 => _948(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _949 => _949.title]), () => ( "")))]), () => ( null)),
43862
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _950 => _950.metadata, 'optionalAccess', _951 => _951.hasEmbeddedVideo]) === true
43907
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _950 => _950.extras, 'optionalAccess', _951 => _951.buildOgPlaceholderUrl, 'optionalCall', _952 => _952(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _953 => _953.title]), () => ( "")))]), () => ( null)),
43908
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _954 => _954.metadata, 'optionalAccess', _955 => _955.hasEmbeddedVideo]) === true
43863
43909
  }
43864
43910
  )
43865
43911
  },
@@ -43876,7 +43922,7 @@ var CHAT_CARD_REGISTRY = {
43876
43922
  chatRef,
43877
43923
  isNewTab: opts.isNewTab,
43878
43924
  discuss: opts.discuss,
43879
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _952 => _952.extras, 'optionalAccess', _953 => _953.buildOgPlaceholderUrl, 'optionalCall', _954 => _954(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _955 => _955.title]), () => ( "")))]), () => ( null))
43925
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _956 => _956.extras, 'optionalAccess', _957 => _957.buildOgPlaceholderUrl, 'optionalCall', _958 => _958(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _959 => _959.title]), () => ( "")))]), () => ( null))
43880
43926
  }
43881
43927
  )
43882
43928
  },
@@ -43893,7 +43939,7 @@ var CHAT_CARD_REGISTRY = {
43893
43939
  chatRef,
43894
43940
  isNewTab: opts.isNewTab,
43895
43941
  discuss: opts.discuss,
43896
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _956 => _956.extras, 'optionalAccess', _957 => _957.buildOgPlaceholderUrl, 'optionalCall', _958 => _958(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _959 => _959.title]), () => ( "")))]), () => ( null))
43942
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _960 => _960.extras, 'optionalAccess', _961 => _961.buildOgPlaceholderUrl, 'optionalCall', _962 => _962(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _963 => _963.title]), () => ( "")))]), () => ( null))
43897
43943
  }
43898
43944
  )
43899
43945
  },
@@ -43904,7 +43950,7 @@ var CHAT_CARD_REGISTRY = {
43904
43950
  bareInline: true,
43905
43951
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
43906
43952
  render: (item, chatRef, opts) => {
43907
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _960 => _960.extras, 'optionalAccess', _961 => _961.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
43953
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _964 => _964.extras, 'optionalAccess', _965 => _965.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
43908
43954
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43909
43955
  ProductReleaseChatCard,
43910
43956
  {
@@ -43931,7 +43977,7 @@ var CHAT_CARD_REGISTRY = {
43931
43977
  chatRef,
43932
43978
  isNewTab: opts.isNewTab,
43933
43979
  discuss: opts.discuss,
43934
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _962 => _962.extras, 'optionalAccess', _963 => _963.buildOgPlaceholderUrl, 'optionalCall', _964 => _964(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _965 => _965.title]), () => ( "")))]), () => ( null))
43980
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _966 => _966.extras, 'optionalAccess', _967 => _967.buildOgPlaceholderUrl, 'optionalCall', _968 => _968(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _969 => _969.title]), () => ( "")))]), () => ( null))
43935
43981
  }
43936
43982
  )
43937
43983
  },
@@ -43950,7 +43996,7 @@ var CHAT_CARD_REGISTRY = {
43950
43996
  chatRef,
43951
43997
  isNewTab: opts.isNewTab,
43952
43998
  discuss: opts.discuss,
43953
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _966 => _966.extras, 'optionalAccess', _967 => _967.buildOgPlaceholderUrl, 'optionalCall', _968 => _968(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _969 => _969.title]), () => ( "")))]), () => ( null))
43999
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _970 => _970.extras, 'optionalAccess', _971 => _971.buildOgPlaceholderUrl, 'optionalCall', _972 => _972(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _973 => _973.title]), () => ( "")))]), () => ( null))
43954
44000
  }
43955
44001
  )
43956
44002
  },
@@ -43962,7 +44008,7 @@ var CHAT_CARD_REGISTRY = {
43962
44008
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
43963
44009
  // No public viewer — synthesize the hub-internal admin URL post-fetch
43964
44010
  // so the wrapper + isNewTab computation see the actual destination.
43965
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _970 => _970.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
44011
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _974 => _974.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
43966
44012
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43967
44013
  CampaignChatCard,
43968
44014
  {
@@ -43988,12 +44034,12 @@ function ChatCardNavWrap({
43988
44034
  const onClickCapture = (e) => {
43989
44035
  if (!href) return;
43990
44036
  const targetEl = e.target;
43991
- if (_optionalChain([targetEl, 'optionalAccess', _971 => _971.closest, 'optionalCall', _972 => _972("button")])) return;
43992
- if (!_optionalChain([targetEl, 'optionalAccess', _973 => _973.closest, 'optionalCall', _974 => _974("a")])) return;
44037
+ if (_optionalChain([targetEl, 'optionalAccess', _975 => _975.closest, 'optionalCall', _976 => _976("button")])) return;
44038
+ if (!_optionalChain([targetEl, 'optionalAccess', _977 => _977.closest, 'optionalCall', _978 => _978("a")])) return;
43993
44039
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
43994
44040
  if (!handled) return;
43995
44041
  e.stopPropagation();
43996
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _975 => _975.closeChat])) panel.closeChat();
44042
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _979 => _979.closeChat])) panel.closeChat();
43997
44043
  };
43998
44044
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
43999
44045
  }
@@ -44015,7 +44061,7 @@ function ChatCardLoader({
44015
44061
  title: chatRef.title,
44016
44062
  externalUrl: chatRef.url,
44017
44063
  targetPlatform: chatRef.targetPlatform,
44018
- path: typeof _optionalChain([chatRef, 'access', _976 => _976.metadata, 'optionalAccess', _977 => _977.path]) === "string" ? chatRef.metadata.path : null
44064
+ path: typeof _optionalChain([chatRef, 'access', _980 => _980.metadata, 'optionalAccess', _981 => _981.path]) === "string" ? chatRef.metadata.path : null
44019
44065
  },
44020
44066
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
44021
44067
  );
@@ -44029,7 +44075,7 @@ function ChatCardLoader({
44029
44075
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
44030
44076
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
44031
44077
  const { item, isLoading } = useChatCardItem(
44032
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _978 => _978.contentRefType]), () => ( "")),
44078
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _982 => _982.contentRefType]), () => ( "")),
44033
44079
  fetchEntry ? resolvedChatRef.id : ""
44034
44080
  );
44035
44081
  if (!entry) return null;
@@ -44060,7 +44106,7 @@ function ChatCardLoader({
44060
44106
  isNewTab,
44061
44107
  discuss
44062
44108
  };
44063
- const path = typeof _optionalChain([finalChatRef, 'access', _979 => _979.metadata, 'optionalAccess', _980 => _980.path]) === "string" ? finalChatRef.metadata.path : null;
44109
+ const path = typeof _optionalChain([finalChatRef, 'access', _983 => _983.metadata, 'optionalAccess', _984 => _984.path]) === "string" ? finalChatRef.metadata.path : null;
44064
44110
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44065
44111
  ChatCardNavWrap,
44066
44112
  {
@@ -44446,7 +44492,7 @@ function useJetStreamDialogSubscription({
44446
44492
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
44447
44493
  conn: sharedConn,
44448
44494
  wsUrl,
44449
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _981 => _981.current, 'optionalCall', _982 => _982()]),
44495
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _985 => _985.current, 'optionalCall', _986 => _986()]),
44450
44496
  backoff: reconnectionBackoffRef.current,
44451
44497
  getFreshUrl: () => getNatsWsUrlRef.current(),
44452
44498
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -44461,7 +44507,7 @@ function useJetStreamDialogSubscription({
44461
44507
  setReconnectionCount((c) => c + 1);
44462
44508
  }
44463
44509
  hadConnectionBeforeRef.current = true;
44464
- _optionalChain([onConnectRef, 'access', _983 => _983.current, 'optionalCall', _984 => _984()]);
44510
+ _optionalChain([onConnectRef, 'access', _987 => _987.current, 'optionalCall', _988 => _988()]);
44465
44511
  }
44466
44512
  if (status === "error") {
44467
44513
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -44471,7 +44517,7 @@ function useJetStreamDialogSubscription({
44471
44517
  setIsConnected(false);
44472
44518
  setIsSubscribed(false);
44473
44519
  tearDownSubscription();
44474
- _optionalChain([onDisconnectRef, 'access', _985 => _985.current, 'optionalCall', _986 => _986()]);
44520
+ _optionalChain([onDisconnectRef, 'access', _989 => _989.current, 'optionalCall', _990 => _990()]);
44475
44521
  }
44476
44522
  }
44477
44523
  });
@@ -44550,7 +44596,7 @@ function useJetStreamDialogSubscription({
44550
44596
  }
44551
44597
  subscriptionRef.current = handle;
44552
44598
  setIsSubscribed(true);
44553
- _optionalChain([onSubscribedRef, 'access', _987 => _987.current, 'optionalCall', _988 => _988()]);
44599
+ _optionalChain([onSubscribedRef, 'access', _991 => _991.current, 'optionalCall', _992 => _992()]);
44554
44600
  } catch (e44) {
44555
44601
  if (!cancelled) {
44556
44602
  setIsSubscribed(false);
@@ -44663,20 +44709,20 @@ function useNatsDialogSubscription({
44663
44709
  const tearDownSubscriptions = () => {
44664
44710
  subscriptionRefs.current.forEach((sub) => {
44665
44711
  try {
44666
- _optionalChain([sub, 'optionalAccess', _989 => _989.unsubscribe, 'call', _990 => _990()]);
44712
+ _optionalChain([sub, 'optionalAccess', _993 => _993.unsubscribe, 'call', _994 => _994()]);
44667
44713
  } catch (e46) {
44668
44714
  }
44669
44715
  });
44670
44716
  subscriptionRefs.current.clear();
44671
44717
  lastSubscribedDialogIdRef.current = null;
44672
- _optionalChain([abortControllerRef, 'access', _991 => _991.current, 'optionalAccess', _992 => _992.abort, 'call', _993 => _993()]);
44718
+ _optionalChain([abortControllerRef, 'access', _995 => _995.current, 'optionalAccess', _996 => _996.abort, 'call', _997 => _997()]);
44673
44719
  abortControllerRef.current = null;
44674
44720
  };
44675
44721
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
44676
44722
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
44677
44723
  conn: sharedConn,
44678
44724
  wsUrl,
44679
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _994 => _994.current, 'optionalCall', _995 => _995()]),
44725
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _998 => _998.current, 'optionalCall', _999 => _999()]),
44680
44726
  backoff: reconnectionBackoffRef.current,
44681
44727
  getFreshUrl: () => getNatsWsUrlRef.current(),
44682
44728
  shouldRetryOn: isDisconnectStatus,
@@ -44687,7 +44733,7 @@ function useNatsDialogSubscription({
44687
44733
  setReconnectionCount((c) => c + 1);
44688
44734
  }
44689
44735
  hadConnectionBeforeRef.current = true;
44690
- _optionalChain([onConnectRef, 'access', _996 => _996.current, 'optionalCall', _997 => _997()]);
44736
+ _optionalChain([onConnectRef, 'access', _1000 => _1000.current, 'optionalCall', _1001 => _1001()]);
44691
44737
  }
44692
44738
  if (status === "error") {
44693
44739
  console.warn("[NATS] protocol error:", evt.data);
@@ -44697,7 +44743,7 @@ function useNatsDialogSubscription({
44697
44743
  setIsConnected(false);
44698
44744
  setIsSubscribed(false);
44699
44745
  tearDownSubscriptions();
44700
- _optionalChain([onDisconnectRef, 'access', _998 => _998.current, 'optionalCall', _999 => _999()]);
44746
+ _optionalChain([onDisconnectRef, 'access', _1002 => _1002.current, 'optionalCall', _1003 => _1003()]);
44701
44747
  }
44702
44748
  }
44703
44749
  });
@@ -44728,13 +44774,13 @@ function useNatsDialogSubscription({
44728
44774
  setIsSubscribed(false);
44729
44775
  subscriptionRefs.current.forEach((sub) => {
44730
44776
  try {
44731
- _optionalChain([sub, 'optionalAccess', _1000 => _1000.unsubscribe, 'call', _1001 => _1001()]);
44777
+ _optionalChain([sub, 'optionalAccess', _1004 => _1004.unsubscribe, 'call', _1005 => _1005()]);
44732
44778
  } catch (e47) {
44733
44779
  }
44734
44780
  });
44735
44781
  subscriptionRefs.current.clear();
44736
44782
  lastSubscribedDialogIdRef.current = null;
44737
- _optionalChain([abortControllerRef, 'access', _1002 => _1002.current, 'optionalAccess', _1003 => _1003.abort, 'call', _1004 => _1004()]);
44783
+ _optionalChain([abortControllerRef, 'access', _1006 => _1006.current, 'optionalAccess', _1007 => _1007.abort, 'call', _1008 => _1008()]);
44738
44784
  abortControllerRef.current = null;
44739
44785
  }
44740
44786
  return;
@@ -44746,12 +44792,12 @@ function useNatsDialogSubscription({
44746
44792
  if (subscriptionRefs.current.size > 0) {
44747
44793
  subscriptionRefs.current.forEach((sub) => {
44748
44794
  try {
44749
- _optionalChain([sub, 'optionalAccess', _1005 => _1005.unsubscribe, 'call', _1006 => _1006()]);
44795
+ _optionalChain([sub, 'optionalAccess', _1009 => _1009.unsubscribe, 'call', _1010 => _1010()]);
44750
44796
  } catch (e48) {
44751
44797
  }
44752
44798
  });
44753
44799
  subscriptionRefs.current.clear();
44754
- _optionalChain([abortControllerRef, 'access', _1007 => _1007.current, 'optionalAccess', _1008 => _1008.abort, 'call', _1009 => _1009()]);
44800
+ _optionalChain([abortControllerRef, 'access', _1011 => _1011.current, 'optionalAccess', _1012 => _1012.abort, 'call', _1013 => _1013()]);
44755
44801
  }
44756
44802
  abortControllerRef.current = new AbortController();
44757
44803
  const abort = abortControllerRef.current;
@@ -44783,7 +44829,7 @@ function useNatsDialogSubscription({
44783
44829
  });
44784
44830
  lastSubscribedDialogIdRef.current = dialogId;
44785
44831
  setIsSubscribed(true);
44786
- _optionalChain([onSubscribedRef, 'access', _1010 => _1010.current, 'optionalCall', _1011 => _1011()]);
44832
+ _optionalChain([onSubscribedRef, 'access', _1014 => _1014.current, 'optionalCall', _1015 => _1015()]);
44787
44833
  };
44788
44834
  if (isConnectedRef.current) {
44789
44835
  createSubscriptions();
@@ -44793,7 +44839,7 @@ function useNatsDialogSubscription({
44793
44839
  abort.abort();
44794
44840
  subscriptionRefs.current.forEach((sub) => {
44795
44841
  try {
44796
- _optionalChain([sub, 'optionalAccess', _1012 => _1012.unsubscribe, 'call', _1013 => _1013()]);
44842
+ _optionalChain([sub, 'optionalAccess', _1016 => _1016.unsubscribe, 'call', _1017 => _1017()]);
44797
44843
  } catch (e50) {
44798
44844
  }
44799
44845
  });
@@ -44834,7 +44880,7 @@ function useNatsDialogSubscription({
44834
44880
  });
44835
44881
  lastSubscribedDialogIdRef.current = dialogId2;
44836
44882
  setIsSubscribed(true);
44837
- _optionalChain([onSubscribedRef, 'access', _1014 => _1014.current, 'optionalCall', _1015 => _1015()]);
44883
+ _optionalChain([onSubscribedRef, 'access', _1018 => _1018.current, 'optionalCall', _1019 => _1019()]);
44838
44884
  } else if (subscriptionRefs.current.size > 0) {
44839
44885
  setIsSubscribed(true);
44840
44886
  }
@@ -44842,10 +44888,10 @@ function useNatsDialogSubscription({
44842
44888
  return { isConnected, isSubscribed, reconnectionCount };
44843
44889
  }
44844
44890
  function buildNatsWsUrl(apiBaseUrl, options) {
44845
- const path = _optionalChain([options, 'optionalAccess', _1016 => _1016.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
44891
+ const path = _optionalChain([options, 'optionalAccess', _1020 => _1020.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
44846
44892
  const u = new URL(path, apiBaseUrl);
44847
44893
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
44848
- if (_optionalChain([options, 'optionalAccess', _1017 => _1017.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1018 => _1018.token])) {
44894
+ if (_optionalChain([options, 'optionalAccess', _1021 => _1021.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1022 => _1022.token])) {
44849
44895
  u.searchParams.set("authorization", options.token);
44850
44896
  }
44851
44897
  return u.toString();
@@ -44981,7 +45027,7 @@ function parseChunkToAction(chunk) {
44981
45027
  // is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
44982
45028
  // historical path in `process-historical-messages.ts`) — keeps both
44983
45029
  // message sources producing an identical shape.
44984
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1019 => _1019.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1020 => _1020.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
45030
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1023 => _1023.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1024 => _1024.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
44985
45031
  };
44986
45032
  case MESSAGE_TYPE.TOKEN_USAGE:
44987
45033
  return {
@@ -45173,8 +45219,8 @@ var MessageSegmentAccumulator = class {
45173
45219
  type: "tool_execution",
45174
45220
  data: {
45175
45221
  ...toolData,
45176
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1021 => _1021.data, 'access', _1022 => _1022.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1023 => _1023.toolTitle]))),
45177
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1024 => _1024.parameters])
45222
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1025 => _1025.data, 'access', _1026 => _1026.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1027 => _1027.toolTitle]))),
45223
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1028 => _1028.parameters])
45178
45224
  }
45179
45225
  };
45180
45226
  if (existingIndex !== -1) {
@@ -45198,8 +45244,8 @@ var MessageSegmentAccumulator = class {
45198
45244
  if (seg.type !== "approval_batch") return seg;
45199
45245
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
45200
45246
  if (!hasCall) return seg;
45201
- const prev = _optionalChain([seg, 'access', _1025 => _1025.data, 'access', _1026 => _1026.executions, 'optionalAccess', _1027 => _1027[execId]]);
45202
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1028 => _1028.result]), success: _optionalChain([prev, 'optionalAccess', _1029 => _1029.success]) };
45247
+ const prev = _optionalChain([seg, 'access', _1029 => _1029.data, 'access', _1030 => _1030.executions, 'optionalAccess', _1031 => _1031[execId]]);
45248
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1032 => _1032.result]), success: _optionalChain([prev, 'optionalAccess', _1033 => _1033.success]) };
45203
45249
  matched = true;
45204
45250
  return {
45205
45251
  ...seg,
@@ -45321,10 +45367,10 @@ var MessageSegmentAccumulator = class {
45321
45367
  const segment = {
45322
45368
  type: "approval_request",
45323
45369
  data: {
45324
- command: _optionalChain([pendingApproval, 'optionalAccess', _1030 => _1030.command]) || "",
45325
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _1031 => _1031.explanation]),
45370
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1034 => _1034.command]) || "",
45371
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _1035 => _1035.explanation]),
45326
45372
  requestId,
45327
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1032 => _1032.approvalType]) || approvalType
45373
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1036 => _1036.approvalType]) || approvalType
45328
45374
  },
45329
45375
  status,
45330
45376
  onApprove: this.callbacks.onApprove,
@@ -45516,7 +45562,7 @@ function useRealtimeChunkProcessor(options) {
45516
45562
  if (initialState.escalatedApprovals) {
45517
45563
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
45518
45564
  initialState.escalatedApprovals.forEach((data, requestId) => {
45519
- _optionalChain([callbacks, 'access', _1033 => _1033.onEscalatedApproval, 'optionalCall', _1034 => _1034(requestId, data)]);
45565
+ _optionalChain([callbacks, 'access', _1037 => _1037.onEscalatedApproval, 'optionalCall', _1038 => _1038(requestId, data)]);
45520
45566
  });
45521
45567
  }
45522
45568
  hasEverStreamedRef.current = true;
@@ -45537,12 +45583,12 @@ function useRealtimeChunkProcessor(options) {
45537
45583
  if (!action) return;
45538
45584
  const accumulator = accumulatorRef.current;
45539
45585
  const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
45540
- const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1035 => _1035.onSegmentsUpdate, 'optionalCall', _1036 => _1036(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
45586
+ const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1039 => _1039.onSegmentsUpdate, 'optionalCall', _1040 => _1040(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
45541
45587
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
45542
45588
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
45543
45589
  if (isInStreamRef.current) {
45544
45590
  isInStreamRef.current = false;
45545
- _optionalChain([callbacks, 'access', _1037 => _1037.onStreamEnd, 'optionalCall', _1038 => _1038()]);
45591
+ _optionalChain([callbacks, 'access', _1041 => _1041.onStreamEnd, 'optionalCall', _1042 => _1042()]);
45546
45592
  accumulator.resetSegments();
45547
45593
  }
45548
45594
  return;
@@ -45551,16 +45597,16 @@ function useRealtimeChunkProcessor(options) {
45551
45597
  case "message_start":
45552
45598
  isInStreamRef.current = true;
45553
45599
  hasEverStreamedRef.current = true;
45554
- _optionalChain([callbacks, 'access', _1039 => _1039.onStreamStart, 'optionalCall', _1040 => _1040()]);
45600
+ _optionalChain([callbacks, 'access', _1043 => _1043.onStreamStart, 'optionalCall', _1044 => _1044()]);
45555
45601
  accumulator.resetSegments();
45556
45602
  break;
45557
45603
  case "message_end":
45558
45604
  isInStreamRef.current = false;
45559
- _optionalChain([callbacks, 'access', _1041 => _1041.onStreamEnd, 'optionalCall', _1042 => _1042()]);
45605
+ _optionalChain([callbacks, 'access', _1045 => _1045.onStreamEnd, 'optionalCall', _1046 => _1046()]);
45560
45606
  accumulator.resetSegments();
45561
45607
  break;
45562
45608
  case "metadata":
45563
- _optionalChain([callbacks, 'access', _1043 => _1043.onMetadata, 'optionalCall', _1044 => _1044(action)]);
45609
+ _optionalChain([callbacks, 'access', _1047 => _1047.onMetadata, 'optionalCall', _1048 => _1048(action)]);
45564
45610
  break;
45565
45611
  case "text": {
45566
45612
  const segments = accumulator.appendText(action.text);
@@ -45603,7 +45649,7 @@ function useRealtimeChunkProcessor(options) {
45603
45649
  emitSegments(segments);
45604
45650
  } else {
45605
45651
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
45606
- _optionalChain([callbacks, 'access', _1045 => _1045.onEscalatedApproval, 'optionalCall', _1046 => _1046(requestId, { command, explanation, approvalType })]);
45652
+ _optionalChain([callbacks, 'access', _1049 => _1049.onEscalatedApproval, 'optionalCall', _1050 => _1050(requestId, { command, explanation, approvalType })]);
45607
45653
  }
45608
45654
  break;
45609
45655
  }
@@ -45615,13 +45661,13 @@ function useRealtimeChunkProcessor(options) {
45615
45661
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
45616
45662
  pendingEscalatedRef.current.set(requestId, {
45617
45663
  command: summary,
45618
- explanation: _optionalChain([required, 'optionalAccess', _1047 => _1047.toolExplanation]),
45664
+ explanation: _optionalChain([required, 'optionalAccess', _1051 => _1051.toolExplanation]),
45619
45665
  approvalType,
45620
45666
  toolCalls
45621
45667
  });
45622
- _optionalChain([callbacks, 'access', _1048 => _1048.onEscalatedApproval, 'optionalCall', _1049 => _1049(requestId, {
45668
+ _optionalChain([callbacks, 'access', _1052 => _1052.onEscalatedApproval, 'optionalCall', _1053 => _1053(requestId, {
45623
45669
  command: summary,
45624
- explanation: _optionalChain([required, 'optionalAccess', _1050 => _1050.toolExplanation]),
45670
+ explanation: _optionalChain([required, 'optionalAccess', _1054 => _1054.toolExplanation]),
45625
45671
  approvalType
45626
45672
  })]);
45627
45673
  break;
@@ -45651,7 +45697,7 @@ function useRealtimeChunkProcessor(options) {
45651
45697
  const status = approved ? "approved" : "rejected";
45652
45698
  if (escalatedData) {
45653
45699
  pendingEscalatedRef.current.delete(requestId);
45654
- _optionalChain([callbacks, 'access', _1051 => _1051.onEscalatedApprovalResult, 'optionalCall', _1052 => _1052(requestId, approved, {
45700
+ _optionalChain([callbacks, 'access', _1055 => _1055.onEscalatedApprovalResult, 'optionalCall', _1056 => _1056(requestId, approved, {
45655
45701
  command: escalatedData.command,
45656
45702
  explanation: escalatedData.explanation,
45657
45703
  approvalType: escalatedData.approvalType
@@ -45697,29 +45743,29 @@ function useRealtimeChunkProcessor(options) {
45697
45743
  emitSegments(accumulator.getSegments());
45698
45744
  }
45699
45745
  }
45700
- _optionalChain([callbacks, 'access', _1053 => _1053.onApprovalResolved, 'optionalCall', _1054 => _1054(requestId, status, approvalType, resolvedByName)]);
45746
+ _optionalChain([callbacks, 'access', _1057 => _1057.onApprovalResolved, 'optionalCall', _1058 => _1058(requestId, status, approvalType, resolvedByName)]);
45701
45747
  break;
45702
45748
  }
45703
45749
  case "error": {
45704
45750
  let message2;
45705
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1055 => _1055.details])) {
45751
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1059 => _1059.details])) {
45706
45752
  try {
45707
- message2 = _optionalChain([JSON, 'access', _1056 => _1056.parse, 'call', _1057 => _1057(action.details), 'optionalAccess', _1058 => _1058.error, 'optionalAccess', _1059 => _1059.message]);
45753
+ message2 = _optionalChain([JSON, 'access', _1060 => _1060.parse, 'call', _1061 => _1061(action.details), 'optionalAccess', _1062 => _1062.error, 'optionalAccess', _1063 => _1063.message]);
45708
45754
  } catch (e52) {
45709
45755
  message2 = action.details;
45710
45756
  }
45711
45757
  }
45712
45758
  const segments = accumulator.addError(action.error, message2);
45713
45759
  emitSegments(segments);
45714
- _optionalChain([callbacks, 'access', _1060 => _1060.onError, 'optionalCall', _1061 => _1061(action.error, message2)]);
45760
+ _optionalChain([callbacks, 'access', _1064 => _1064.onError, 'optionalCall', _1065 => _1065(action.error, message2)]);
45715
45761
  break;
45716
45762
  }
45717
45763
  case "system": {
45718
- _optionalChain([callbacks, 'access', _1062 => _1062.onSystemMessage, 'optionalCall', _1063 => _1063(action.text, { streamSeq })]);
45764
+ _optionalChain([callbacks, 'access', _1066 => _1066.onSystemMessage, 'optionalCall', _1067 => _1067(action.text, { streamSeq })]);
45719
45765
  break;
45720
45766
  }
45721
45767
  case "direct_message": {
45722
- _optionalChain([callbacks, 'access', _1064 => _1064.onDirectMessage, 'optionalCall', _1065 => _1065(action.text, {
45768
+ _optionalChain([callbacks, 'access', _1068 => _1068.onDirectMessage, 'optionalCall', _1069 => _1069(action.text, {
45723
45769
  ownerType: action.ownerType,
45724
45770
  displayName: action.displayName,
45725
45771
  userId: action.userId,
@@ -45728,7 +45774,7 @@ function useRealtimeChunkProcessor(options) {
45728
45774
  break;
45729
45775
  }
45730
45776
  case "message_request":
45731
- _optionalChain([callbacks, 'access', _1066 => _1066.onUserMessage, 'optionalCall', _1067 => _1067(action.text, {
45777
+ _optionalChain([callbacks, 'access', _1070 => _1070.onUserMessage, 'optionalCall', _1071 => _1071(action.text, {
45732
45778
  ownerType: action.ownerType,
45733
45779
  displayName: action.displayName,
45734
45780
  userId: action.userId,
@@ -45737,7 +45783,7 @@ function useRealtimeChunkProcessor(options) {
45737
45783
  })]);
45738
45784
  break;
45739
45785
  case "token_usage":
45740
- _optionalChain([callbacks, 'access', _1068 => _1068.onTokenUsage, 'optionalCall', _1069 => _1069(action.data)]);
45786
+ _optionalChain([callbacks, 'access', _1072 => _1072.onTokenUsage, 'optionalCall', _1073 => _1073(action.data)]);
45741
45787
  break;
45742
45788
  case "context_compaction_start": {
45743
45789
  const standalone = !isInStreamRef.current;
@@ -45752,7 +45798,7 @@ function useRealtimeChunkProcessor(options) {
45752
45798
  break;
45753
45799
  }
45754
45800
  case "dialog_closed":
45755
- _optionalChain([callbacks, 'access', _1070 => _1070.onDialogClosed, 'optionalCall', _1071 => _1071()]);
45801
+ _optionalChain([callbacks, 'access', _1074 => _1074.onDialogClosed, 'optionalCall', _1075 => _1075()]);
45756
45802
  break;
45757
45803
  default:
45758
45804
  break;
@@ -45799,7 +45845,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
45799
45845
  const data = await res.json();
45800
45846
  return _nullishCoalesce(data.commands, () => ( []));
45801
45847
  } catch (err) {
45802
- if (_optionalChain([err, 'optionalAccess', _1072 => _1072.name]) === "AbortError") throw err;
45848
+ if (_optionalChain([err, 'optionalAccess', _1076 => _1076.name]) === "AbortError") throw err;
45803
45849
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
45804
45850
  return [];
45805
45851
  }
@@ -45820,7 +45866,7 @@ function useSlashCommands(prefix, commandsUrl) {
45820
45866
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
45821
45867
  if (!cancelled) setCommands(next);
45822
45868
  } catch (err) {
45823
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1073 => _1073.name]) !== "AbortError") {
45869
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1077 => _1077.name]) !== "AbortError") {
45824
45870
  console.warn("[use-slash-commands] fetch failed:", err);
45825
45871
  }
45826
45872
  } finally {
@@ -45839,7 +45885,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
45839
45885
  const query = _reactquery.useQuery.call(void 0, {
45840
45886
  queryKey: ["chat-slash-commands", commandsUrl],
45841
45887
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
45842
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1074 => _1074.enabled]), () => ( true)),
45888
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1078 => _1078.enabled]), () => ( true)),
45843
45889
  staleTime: Infinity,
45844
45890
  gcTime: Infinity,
45845
45891
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -45878,21 +45924,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
45878
45924
  }
45879
45925
  const data = await res.json();
45880
45926
  return {
45881
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1075 => _1075.name]), () => ( null)),
45882
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1076 => _1076.icon]), () => ( null)),
45883
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1077 => _1077.greeting]), () => ( null)),
45884
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1078 => _1078.enabledRagTableIds]), () => ( [])),
45885
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1079 => _1079.quickActions]), () => ( [])),
45886
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1080 => _1080.suggestedQueries]), () => ( []))
45927
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1079 => _1079.name]), () => ( null)),
45928
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1080 => _1080.icon]), () => ( null)),
45929
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1081 => _1081.greeting]), () => ( null)),
45930
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1082 => _1082.enabledRagTableIds]), () => ( [])),
45931
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1083 => _1083.quickActions]), () => ( [])),
45932
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1084 => _1084.suggestedQueries]), () => ( []))
45887
45933
  };
45888
45934
  } catch (err) {
45889
- if (_optionalChain([err, 'optionalAccess', _1081 => _1081.name]) === "AbortError") throw err;
45935
+ if (_optionalChain([err, 'optionalAccess', _1085 => _1085.name]) === "AbortError") throw err;
45890
45936
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
45891
45937
  return EMPTY_STATE_FALLBACK;
45892
45938
  }
45893
45939
  }
45894
45940
  function useEmptyStateConfig(emptyStateUrl, options) {
45895
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1082 => _1082.enabled]), () => ( true))) && !!emptyStateUrl;
45941
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1086 => _1086.enabled]), () => ( true))) && !!emptyStateUrl;
45896
45942
  const query = _reactquery.useQuery.call(void 0, {
45897
45943
  queryKey: ["chat-empty-state", emptyStateUrl],
45898
45944
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -45921,7 +45967,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
45921
45967
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
45922
45968
  function uploadWithProgress(url, file, token, onProgress, signal) {
45923
45969
  return new Promise((resolve, reject) => {
45924
- if (_optionalChain([signal, 'optionalAccess', _1083 => _1083.aborted])) {
45970
+ if (_optionalChain([signal, 'optionalAccess', _1087 => _1087.aborted])) {
45925
45971
  reject(new Error("Upload cancelled"));
45926
45972
  return;
45927
45973
  }
@@ -45935,7 +45981,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
45935
45981
  xhr.removeEventListener("error", handleError);
45936
45982
  xhr.removeEventListener("abort", handleAbort);
45937
45983
  xhr.removeEventListener("timeout", handleTimeout);
45938
- _optionalChain([signal, 'optionalAccess', _1084 => _1084.removeEventListener, 'call', _1085 => _1085("abort", handleSignalAbort)]);
45984
+ _optionalChain([signal, 'optionalAccess', _1088 => _1088.removeEventListener, 'call', _1089 => _1089("abort", handleSignalAbort)]);
45939
45985
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
45940
45986
  };
45941
45987
  const handleProgress = (event) => {
@@ -45971,7 +46017,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
45971
46017
  const handleSignalAbort = () => {
45972
46018
  xhr.abort();
45973
46019
  };
45974
- _optionalChain([signal, 'optionalAccess', _1086 => _1086.addEventListener, 'call', _1087 => _1087("abort", handleSignalAbort, { once: true })]);
46020
+ _optionalChain([signal, 'optionalAccess', _1090 => _1090.addEventListener, 'call', _1091 => _1091("abort", handleSignalAbort, { once: true })]);
45975
46021
  xhr.upload.addEventListener("progress", handleProgress);
45976
46022
  xhr.addEventListener("load", handleLoad);
45977
46023
  xhr.addEventListener("error", handleError);
@@ -46015,12 +46061,12 @@ function useChatAttachments() {
46015
46061
  try {
46016
46062
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
46017
46063
  } catch (err) {
46018
- if (_optionalChain([ctrl, 'optionalAccess', _1088 => _1088.signal, 'access', _1089 => _1089.aborted])) return;
46064
+ if (_optionalChain([ctrl, 'optionalAccess', _1092 => _1092.signal, 'access', _1093 => _1093.aborted])) return;
46019
46065
  throw new Error(
46020
46066
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
46021
46067
  );
46022
46068
  }
46023
- if (_optionalChain([ctrl, 'optionalAccess', _1090 => _1090.signal, 'access', _1091 => _1091.aborted])) return;
46069
+ if (_optionalChain([ctrl, 'optionalAccess', _1094 => _1094.signal, 'access', _1095 => _1095.aborted])) return;
46024
46070
  if (!sniffed) {
46025
46071
  throw new Error("Unrecognized file format");
46026
46072
  }
@@ -46034,7 +46080,7 @@ function useChatAttachments() {
46034
46080
  const urlResp = await _chunk6PHV4NREcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
46035
46081
  method: "POST",
46036
46082
  headers: { "Content-Type": "application/json" },
46037
- signal: _optionalChain([ctrl, 'optionalAccess', _1092 => _1092.signal]),
46083
+ signal: _optionalChain([ctrl, 'optionalAccess', _1096 => _1096.signal]),
46038
46084
  body: JSON.stringify({
46039
46085
  fileName: att.file.name,
46040
46086
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -46060,9 +46106,9 @@ function useChatAttachments() {
46060
46106
  (pct) => {
46061
46107
  updateOne(att.id, { progress: pct });
46062
46108
  },
46063
- _optionalChain([ctrl, 'optionalAccess', _1093 => _1093.signal])
46109
+ _optionalChain([ctrl, 'optionalAccess', _1097 => _1097.signal])
46064
46110
  );
46065
- if (_optionalChain([ctrl, 'optionalAccess', _1094 => _1094.signal, 'access', _1095 => _1095.aborted])) return;
46111
+ if (_optionalChain([ctrl, 'optionalAccess', _1098 => _1098.signal, 'access', _1099 => _1099.aborted])) return;
46066
46112
  updateOne(att.id, {
46067
46113
  status: "ready",
46068
46114
  progress: 100,
@@ -46070,7 +46116,7 @@ function useChatAttachments() {
46070
46116
  viewToken: mintData.viewToken
46071
46117
  });
46072
46118
  } catch (err) {
46073
- if (_optionalChain([ctrl, 'optionalAccess', _1096 => _1096.signal, 'access', _1097 => _1097.aborted])) return;
46119
+ if (_optionalChain([ctrl, 'optionalAccess', _1100 => _1100.signal, 'access', _1101 => _1101.aborted])) return;
46074
46120
  const message2 = err instanceof Error ? err.message : String(err);
46075
46121
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
46076
46122
  } finally {
@@ -46221,7 +46267,7 @@ var ANON_DEFAULTS = {
46221
46267
  function useResolveChatIdentity(enabled) {
46222
46268
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
46223
46269
  const url = runtime.endpoints.identityUrl;
46224
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunk6PHV4NREcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1098 => _1098.email]), () => ( null));
46270
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunk6PHV4NREcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1102 => _1102.email]), () => ( null));
46225
46271
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
46226
46272
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
46227
46273
  _react.useEffect.call(void 0, () => {
@@ -46312,7 +46358,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
46312
46358
  yield chunk;
46313
46359
  }
46314
46360
  } catch (err) {
46315
- if (_optionalChain([err, 'optionalAccess', _1099 => _1099.name]) === "AbortError" || ctrl.signal.aborted) {
46361
+ if (_optionalChain([err, 'optionalAccess', _1103 => _1103.name]) === "AbortError" || ctrl.signal.aborted) {
46316
46362
  return;
46317
46363
  }
46318
46364
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -46363,7 +46409,7 @@ function useChat({
46363
46409
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
46364
46410
  onMessagesChangeRef.current = onMessagesChange;
46365
46411
  _react.useEffect.call(void 0, () => {
46366
- _optionalChain([onMessagesChangeRef, 'access', _1100 => _1100.current, 'optionalCall', _1101 => _1101(messages)]);
46412
+ _optionalChain([onMessagesChangeRef, 'access', _1104 => _1104.current, 'optionalCall', _1105 => _1105(messages)]);
46367
46413
  }, [messages]);
46368
46414
  const {
46369
46415
  streamMessage,
@@ -46400,7 +46446,7 @@ function useChat({
46400
46446
  name: "You",
46401
46447
  content: text,
46402
46448
  timestamp: /* @__PURE__ */ new Date(),
46403
- ..._optionalChain([options, 'optionalAccess', _1102 => _1102.hidden]) ? { hidden: true } : {}
46449
+ ..._optionalChain([options, 'optionalAccess', _1106 => _1106.hidden]) ? { hidden: true } : {}
46404
46450
  };
46405
46451
  addMessage(userMessage);
46406
46452
  setIsTyping(true);
@@ -46462,7 +46508,7 @@ function useChat({
46462
46508
  currentTextSegment = "";
46463
46509
  }
46464
46510
  const seg = segment;
46465
- const proposalId = _optionalChain([seg, 'access', _1103 => _1103.data, 'optionalAccess', _1104 => _1104.requestId]);
46511
+ const proposalId = _optionalChain([seg, 'access', _1107 => _1107.data, 'optionalAccess', _1108 => _1108.requestId]);
46466
46512
  const updateApprovalMessage = (transform) => {
46467
46513
  setMessages((prev) => {
46468
46514
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -46471,7 +46517,7 @@ function useChat({
46471
46517
  if (!Array.isArray(m.content)) continue;
46472
46518
  const segments = m.content;
46473
46519
  const hasMatch = segments.some(
46474
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1105 => _1105.data, 'optionalAccess', _1106 => _1106.requestId]) === proposalId
46520
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1109 => _1109.data, 'optionalAccess', _1110 => _1110.requestId]) === proposalId
46475
46521
  );
46476
46522
  if (!hasMatch) continue;
46477
46523
  const next = [...prev];
@@ -46513,11 +46559,11 @@ function useChat({
46513
46559
  if (!Array.isArray(m.content)) continue;
46514
46560
  const segments = m.content;
46515
46561
  const hasMatch = segments.some(
46516
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1107 => _1107.data, 'optionalAccess', _1108 => _1108.requestId]) === decision.proposalId
46562
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1111 => _1111.data, 'optionalAccess', _1112 => _1112.requestId]) === decision.proposalId
46517
46563
  );
46518
46564
  if (!hasMatch) continue;
46519
46565
  const flipped = segments.map(
46520
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1109 => _1109.data, 'optionalAccess', _1110 => _1110.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
46566
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1113 => _1113.data, 'optionalAccess', _1114 => _1114.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
46521
46567
  );
46522
46568
  const next = [...prev];
46523
46569
  next[i] = { ...m, content: flipped };
@@ -46679,8 +46725,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46679
46725
  })),
46680
46726
  { role: "user", content: message2 }
46681
46727
  ];
46682
- const targetPath = _optionalChain([extra, 'optionalAccess', _1111 => _1111.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
46683
- const requestBody = _optionalChain([extra, 'optionalAccess', _1112 => _1112.approvalAction]) ? {
46728
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1115 => _1115.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
46729
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1116 => _1116.approvalAction]) ? {
46684
46730
  proposal_id: extra.approvalAction.proposalId,
46685
46731
  action: extra.approvalAction.action,
46686
46732
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -46689,8 +46735,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46689
46735
  }))
46690
46736
  } : {
46691
46737
  messages: apiMessages,
46692
- ..._optionalChain([extra, 'optionalAccess', _1113 => _1113.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
46693
- ..._optionalChain([extra, 'optionalAccess', _1114 => _1114.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
46738
+ ..._optionalChain([extra, 'optionalAccess', _1117 => _1117.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
46739
+ ..._optionalChain([extra, 'optionalAccess', _1118 => _1118.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
46694
46740
  };
46695
46741
  const response = await _chunk6PHV4NREcjs.embedAuthedFetch.call(void 0, targetPath, {
46696
46742
  method: "POST",
@@ -46700,7 +46746,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46700
46746
  if (!response.ok) {
46701
46747
  throw new Error(`Chat request failed: ${response.status}`);
46702
46748
  }
46703
- const reader = _optionalChain([response, 'access', _1115 => _1115.body, 'optionalAccess', _1116 => _1116.getReader, 'call', _1117 => _1117()]);
46749
+ const reader = _optionalChain([response, 'access', _1119 => _1119.body, 'optionalAccess', _1120 => _1120.getReader, 'call', _1121 => _1121()]);
46704
46750
  if (!reader) throw new Error("No response body");
46705
46751
  const decoder = new TextDecoder();
46706
46752
  let buffer = "";
@@ -46783,7 +46829,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46783
46829
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
46784
46830
  const result = _nullishCoalesce(meta.result, () => ( null));
46785
46831
  const card = _nullishCoalesce(meta.card, () => ( null));
46786
- if (_optionalChain([card, 'optionalAccess', _1118 => _1118.ref, 'optionalAccess', _1119 => _1119.id]) && _optionalChain([card, 'optionalAccess', _1120 => _1120.type])) {
46832
+ if (_optionalChain([card, 'optionalAccess', _1122 => _1122.ref, 'optionalAccess', _1123 => _1123.id]) && _optionalChain([card, 'optionalAccess', _1124 => _1124.type])) {
46787
46833
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
46788
46834
  const key = buildChatRefKey(card.type, card.ref.id);
46789
46835
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -46796,8 +46842,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46796
46842
  willAutoContinue: meta.willAutoContinue === true,
46797
46843
  ...toolName ? { toolName } : {},
46798
46844
  ...result ? { result } : {},
46799
- ..._optionalChain([card, 'optionalAccess', _1121 => _1121.marker]) ? { marker: card.marker } : {},
46800
- ..._optionalChain([card, 'optionalAccess', _1122 => _1122.ref]) ? { cardRef: card.ref } : {},
46845
+ ..._optionalChain([card, 'optionalAccess', _1125 => _1125.marker]) ? { marker: card.marker } : {},
46846
+ ..._optionalChain([card, 'optionalAccess', _1126 => _1126.ref]) ? { cardRef: card.ref } : {},
46801
46847
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
46802
46848
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
46803
46849
  };
@@ -46916,7 +46962,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
46916
46962
  var chatStorageKey = (source) => {
46917
46963
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
46918
46964
  const auth = _chunk6PHV4NREcjs.getEmbedProxyAuth.call(void 0, );
46919
- if (_optionalChain([auth, 'optionalAccess', _1123 => _1123.email])) {
46965
+ if (_optionalChain([auth, 'optionalAccess', _1127 => _1127.email])) {
46920
46966
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
46921
46967
  }
46922
46968
  return base;
@@ -46971,7 +47017,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
46971
47017
  const { active = true } = runtimeOptions;
46972
47018
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
46973
47019
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
46974
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1124 => _1124.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
47020
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1128 => _1128.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
46975
47021
  const persistedRef = _react.useRef.call(void 0, null);
46976
47022
  if (persistedRef.current === null) {
46977
47023
  pruneStaleChatStorage(source);
@@ -47076,7 +47122,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
47076
47122
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
47077
47123
  sources = sourcesMapRef.current.get(lookupIdx);
47078
47124
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
47079
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1125 => _1125.current, 'access', _1126 => _1126.get, 'call', _1127 => _1127(lookupIdx), 'optionalAccess', _1128 => _1128.scrollAnchor]), () => ( void 0));
47125
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1129 => _1129.current, 'access', _1130 => _1130.get, 'call', _1131 => _1131(lookupIdx), 'optionalAccess', _1132 => _1132.scrollAnchor]), () => ( void 0));
47080
47126
  }
47081
47127
  return {
47082
47128
  id: m.id,
@@ -47124,7 +47170,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
47124
47170
  );
47125
47171
  return;
47126
47172
  }
47127
- const refSlug = typeof _optionalChain([reference, 'access', _1129 => _1129.metadata, 'optionalAccess', _1130 => _1130.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
47173
+ const refSlug = typeof _optionalChain([reference, 'access', _1133 => _1133.metadata, 'optionalAccess', _1134 => _1134.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
47128
47174
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
47129
47175
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
47130
47176
  const text = `/${cmdId} display "${escaped}"`;
@@ -47196,18 +47242,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
47196
47242
  clearMessages,
47197
47243
  streamingPhase,
47198
47244
  /** Provider key for the lib's `<ModelDisplay>` icon. */
47199
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1131 => _1131.provider]), () => ( null)),
47200
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1132 => _1132.modelLabel]), () => ( null)),
47201
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1133 => _1133.contextWindowMaxTokens]), () => ( null)),
47245
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1135 => _1135.provider]), () => ( null)),
47246
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1136 => _1136.modelLabel]), () => ( null)),
47247
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1137 => _1137.contextWindowMaxTokens]), () => ( null)),
47202
47248
  /** Input tokens (known after server's message_start frame; null until). */
47203
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1134 => _1134.inputTokens]), () => ( null)),
47249
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1138 => _1138.inputTokens]), () => ( null)),
47204
47250
  /** Output tokens (known only after server's trailing usage frame). */
47205
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1135 => _1135.outputTokens]), () => ( null)),
47251
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1139 => _1139.outputTokens]), () => ( null)),
47206
47252
  /** Cache hit % (read / total-input × 100). null during streaming. */
47207
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1136 => _1136.cacheHitRatePct]), () => ( null)),
47253
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1140 => _1140.cacheHitRatePct]), () => ( null)),
47208
47254
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
47209
47255
  * token counts). null until the trailing usage frame lands. */
47210
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1137 => _1137.breakdown]), () => ( null)),
47256
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1141 => _1141.breakdown]), () => ( null)),
47211
47257
  // ─── Dialog management — stubs for v1 ────────────────────────────────
47212
47258
  // Guide mode currently keeps its history in `localStorage` opaquely
47213
47259
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -47265,15 +47311,15 @@ var noopRejectRequest = async (_id, _reason) => {
47265
47311
 
47266
47312
  // src/components/chat/utils/process-historical-messages.ts
47267
47313
  function getOwnerDisplayName(owner) {
47268
- if (_optionalChain([owner, 'optionalAccess', _1138 => _1138.type]) === OWNER_TYPE.ADMIN && owner.user) {
47314
+ if (_optionalChain([owner, 'optionalAccess', _1142 => _1142.type]) === OWNER_TYPE.ADMIN && owner.user) {
47269
47315
  const { firstName, lastName } = owner.user;
47270
47316
  const name = [firstName, lastName].filter(Boolean).join(" ");
47271
47317
  if (name) return name;
47272
47318
  }
47273
- return _optionalChain([owner, 'optionalAccess', _1139 => _1139.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
47319
+ return _optionalChain([owner, 'optionalAccess', _1143 => _1143.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
47274
47320
  }
47275
47321
  function getOwnerAvatar(owner) {
47276
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1140 => _1140.user, 'optionalAccess', _1141 => _1141.image, 'optionalAccess', _1142 => _1142.imageUrl]), () => ( void 0));
47322
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1144 => _1144.user, 'optionalAccess', _1145 => _1145.image, 'optionalAccess', _1146 => _1146.imageUrl]), () => ( void 0));
47277
47323
  }
47278
47324
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
47279
47325
  messageDataArray.forEach((data) => {
@@ -47336,14 +47382,14 @@ function processHistoricalMessages(messages, options = {}) {
47336
47382
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
47337
47383
  return;
47338
47384
  }
47339
- const isUserMessage = _optionalChain([msg, 'access', _1143 => _1143.owner, 'optionalAccess', _1144 => _1144.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1145 => _1145.owner, 'optionalAccess', _1146 => _1146.type]) === OWNER_TYPE.ADMIN;
47385
+ const isUserMessage = _optionalChain([msg, 'access', _1147 => _1147.owner, 'optionalAccess', _1148 => _1148.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1149 => _1149.owner, 'optionalAccess', _1150 => _1150.type]) === OWNER_TYPE.ADMIN;
47340
47386
  if (isUserMessage) {
47341
47387
  flushAssistantMessage();
47342
- const userAuthorType = _optionalChain([msg, 'access', _1147 => _1147.owner, 'optionalAccess', _1148 => _1148.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47388
+ const userAuthorType = _optionalChain([msg, 'access', _1151 => _1151.owner, 'optionalAccess', _1152 => _1152.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47343
47389
  messageDataArray.forEach((data) => {
47344
47390
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
47345
47391
  const rawContext = data.contextItems;
47346
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1149 => _1149.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1150 => _1150.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47392
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1153 => _1153.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1154 => _1154.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47347
47393
  processedMessages.push({
47348
47394
  id: msg.id,
47349
47395
  role: "user",
@@ -47367,7 +47413,7 @@ function processHistoricalMessages(messages, options = {}) {
47367
47413
  });
47368
47414
  const nextMsg = messages[index + 1];
47369
47415
  const isLastMessage = index === messages.length - 1;
47370
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1151 => _1151.owner, 'optionalAccess', _1152 => _1152.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1153 => _1153.owner, 'optionalAccess', _1154 => _1154.type]) === OWNER_TYPE.ADMIN);
47416
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1155 => _1155.owner, 'optionalAccess', _1156 => _1156.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1157 => _1157.owner, 'optionalAccess', _1158 => _1158.type]) === OWNER_TYPE.ADMIN);
47371
47417
  if (isLastMessage || nextIsFromUser) {
47372
47418
  flushAssistantMessage();
47373
47419
  }
@@ -47477,7 +47523,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47477
47523
  }
47478
47524
  }
47479
47525
  } else {
47480
- _optionalChain([escalatedApprovals, 'optionalAccess', _1155 => _1155.set, 'call', _1156 => _1156(data.approvalRequestId, {
47526
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1159 => _1159.set, 'call', _1160 => _1160(data.approvalRequestId, {
47481
47527
  command: data.command || "",
47482
47528
  explanation: data.explanation,
47483
47529
  approvalType,
@@ -47491,8 +47537,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47491
47537
  const existingStatus = approvalStatuses[data.approvalRequestId];
47492
47538
  const status = existingStatus || (data.approved ? "approved" : "rejected");
47493
47539
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
47494
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1157 => _1157.get, 'call', _1158 => _1158(data.approvalRequestId)]);
47495
- if (_optionalChain([escalatedData, 'optionalAccess', _1159 => _1159.toolCalls]) && escalatedData.toolCalls.length > 0) {
47540
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1161 => _1161.get, 'call', _1162 => _1162(data.approvalRequestId)]);
47541
+ if (_optionalChain([escalatedData, 'optionalAccess', _1163 => _1163.toolCalls]) && escalatedData.toolCalls.length > 0) {
47496
47542
  if (batchApprovalsEnabled) {
47497
47543
  accumulator.addApprovalBatch(
47498
47544
  data.approvalRequestId,
@@ -47514,7 +47560,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47514
47560
  );
47515
47561
  }
47516
47562
  }
47517
- _optionalChain([escalatedApprovals, 'optionalAccess', _1160 => _1160.delete, 'call', _1161 => _1161(data.approvalRequestId)]);
47563
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1164 => _1164.delete, 'call', _1165 => _1165(data.approvalRequestId)]);
47518
47564
  break;
47519
47565
  }
47520
47566
  if (escalatedData) {
@@ -47523,7 +47569,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47523
47569
  explanation: escalatedData.explanation,
47524
47570
  approvalType: escalatedData.approvalType
47525
47571
  });
47526
- _optionalChain([escalatedApprovals, 'optionalAccess', _1162 => _1162.delete, 'call', _1163 => _1163(data.approvalRequestId)]);
47572
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1166 => _1166.delete, 'call', _1167 => _1167(data.approvalRequestId)]);
47527
47573
  }
47528
47574
  const before = accumulator.getSegments();
47529
47575
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -47539,9 +47585,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47539
47585
  case MESSAGE_TYPE.ERROR:
47540
47586
  if ("error" in data) {
47541
47587
  let message2;
47542
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1164 => _1164.details])) {
47588
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1168 => _1168.details])) {
47543
47589
  try {
47544
- message2 = _optionalChain([JSON, 'access', _1165 => _1165.parse, 'call', _1166 => _1166(data.details), 'optionalAccess', _1167 => _1167.error, 'optionalAccess', _1168 => _1168.message]);
47590
+ message2 = _optionalChain([JSON, 'access', _1169 => _1169.parse, 'call', _1170 => _1170(data.details), 'optionalAccess', _1171 => _1171.error, 'optionalAccess', _1172 => _1172.message]);
47545
47591
  } catch (e59) {
47546
47592
  message2 = data.details;
47547
47593
  }
@@ -47624,14 +47670,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
47624
47670
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
47625
47671
  return;
47626
47672
  }
47627
- const isUserMessage = _optionalChain([msg, 'access', _1169 => _1169.owner, 'optionalAccess', _1170 => _1170.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1171 => _1171.owner, 'optionalAccess', _1172 => _1172.type]) === OWNER_TYPE.ADMIN;
47673
+ const isUserMessage = _optionalChain([msg, 'access', _1173 => _1173.owner, 'optionalAccess', _1174 => _1174.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1175 => _1175.owner, 'optionalAccess', _1176 => _1176.type]) === OWNER_TYPE.ADMIN;
47628
47674
  if (isUserMessage) {
47629
47675
  flushAssistantMessage();
47630
- const userAuthorType = _optionalChain([msg, 'access', _1173 => _1173.owner, 'optionalAccess', _1174 => _1174.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47676
+ const userAuthorType = _optionalChain([msg, 'access', _1177 => _1177.owner, 'optionalAccess', _1178 => _1178.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47631
47677
  messageDataArray.forEach((data) => {
47632
47678
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
47633
47679
  const rawContext = data.contextItems;
47634
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1175 => _1175.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1176 => _1176.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47680
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1179 => _1179.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1180 => _1180.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47635
47681
  processedMessages.push({
47636
47682
  id: msg.id,
47637
47683
  role: "user",
@@ -47655,7 +47701,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
47655
47701
  });
47656
47702
  const nextMsg = messages[index + 1];
47657
47703
  const isLastMessage = index === messages.length - 1;
47658
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1177 => _1177.owner, 'optionalAccess', _1178 => _1178.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1179 => _1179.owner, 'optionalAccess', _1180 => _1180.type]) === OWNER_TYPE.ADMIN);
47704
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1181 => _1181.owner, 'optionalAccess', _1182 => _1182.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1183 => _1183.owner, 'optionalAccess', _1184 => _1184.type]) === OWNER_TYPE.ADMIN);
47659
47705
  if (isLastMessage || nextIsFromUser) {
47660
47706
  flushAssistantMessage();
47661
47707
  }
@@ -47991,7 +48037,7 @@ function useNatsChatAdapter(config, options = {}) {
47991
48037
  }, [active, fetchDialogs, loadDialogsPage]);
47992
48038
  const sendMessage = _react.useCallback.call(void 0,
47993
48039
  async (text, sendOptions) => {
47994
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1181 => _1181.hidden]), () => ( false));
48040
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1185 => _1185.hidden]), () => ( false));
47995
48041
  setMessages((prev) => [
47996
48042
  ...prev,
47997
48043
  {
@@ -48155,11 +48201,11 @@ function useNatsChatAdapter(config, options = {}) {
48155
48201
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
48156
48202
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
48157
48203
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
48158
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1182 => _1182.provider]), () => ( modelProvider)), () => ( null)),
48159
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1183 => _1183.modelLabel]), () => ( modelLabel)), () => ( null)),
48160
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1184 => _1184.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1185 => _1185.contextWindowMaxTokens]))), () => ( null)),
48161
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1186 => _1186.inputTokensSize]), () => ( null)),
48162
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1187 => _1187.outputTokensSize]), () => ( null)),
48204
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1186 => _1186.provider]), () => ( modelProvider)), () => ( null)),
48205
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1187 => _1187.modelLabel]), () => ( modelLabel)), () => ( null)),
48206
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1188 => _1188.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1189 => _1189.contextWindowMaxTokens]))), () => ( null)),
48207
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1190 => _1190.inputTokensSize]), () => ( null)),
48208
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1191 => _1191.outputTokensSize]), () => ( null)),
48163
48209
  currentCacheHitRatePct: null,
48164
48210
  currentUsageBreakdown: null,
48165
48211
  // Dialog management
@@ -48407,7 +48453,7 @@ function extractIncompleteMessageState(lastMessage) {
48407
48453
  break;
48408
48454
  case "approval_batch": {
48409
48455
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
48410
- (c) => _optionalChain([segment, 'access', _1188 => _1188.data, 'access', _1189 => _1189.executions, 'optionalAccess', _1190 => _1190[c.toolExecutionRequestId], 'optionalAccess', _1191 => _1191.status]) === "done"
48456
+ (c) => _optionalChain([segment, 'access', _1192 => _1192.data, 'access', _1193 => _1193.executions, 'optionalAccess', _1194 => _1194[c.toolExecutionRequestId], 'optionalAccess', _1195 => _1195.status]) === "done"
48411
48457
  );
48412
48458
  if (segment.status !== "rejected" && !allDone) {
48413
48459
  hasIncompleteState = true;
@@ -48475,20 +48521,20 @@ function mergeHistoryWithRealtime(input) {
48475
48521
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
48476
48522
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
48477
48523
  const trailing = processedHistory[processedHistory.length - 1];
48478
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1192 => _1192.role]) === "assistant" ? trailing : null;
48479
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1193 => _1193.content, 'access', _1194 => _1194.find, 'call', _1195 => _1195((s) => s.type === "approval_batch"), 'optionalAccess', _1196 => _1196.data, 'optionalAccess', _1197 => _1197.approvalRequestId]), () => ( null)) : null;
48524
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1196 => _1196.role]) === "assistant" ? trailing : null;
48525
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1197 => _1197.content, 'access', _1198 => _1198.find, 'call', _1199 => _1199((s) => s.type === "approval_batch"), 'optionalAccess', _1200 => _1200.data, 'optionalAccess', _1201 => _1201.approvalRequestId]), () => ( null)) : null;
48480
48526
  let processedToUse = processedHistory;
48481
48527
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
48482
48528
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
48483
48529
  if (historyBatchId) {
48484
48530
  const batchTwins = existingMessages.filter(
48485
48531
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
48486
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1198 => _1198.data, 'optionalAccess', _1199 => _1199.approvalRequestId]) === historyBatchId
48532
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1202 => _1202.data, 'optionalAccess', _1203 => _1203.approvalRequestId]) === historyBatchId
48487
48533
  )
48488
48534
  );
48489
48535
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
48490
48536
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
48491
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1200 => _1200.content])) ? historyTrailingAssistant.content.length : 0;
48537
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1204 => _1204.content])) ? historyTrailingAssistant.content.length : 0;
48492
48538
  const realtimeSize = existingWithSameBatch.content.length;
48493
48539
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
48494
48540
  processedToUse = processedHistory.slice(0, -1);
@@ -48504,16 +48550,16 @@ function mergeHistoryWithRealtime(input) {
48504
48550
  if (pinnedSyntheticIds.has(m.id)) return true;
48505
48551
  if (droppedSyntheticIds.has(m.id)) return false;
48506
48552
  if (processedIds.has(m.id)) return false;
48507
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1201 => _1201.has, 'call', _1202 => _1202(m.id)])) return false;
48553
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1205 => _1205.has, 'call', _1206 => _1206(m.id)])) return false;
48508
48554
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
48509
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1203 => _1203.timestamp, 'optionalAccess', _1204 => _1204.getTime, 'call', _1205 => _1205()]), () => ( 0))) <= historyFetchedAt;
48555
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1207 => _1207.timestamp, 'optionalAccess', _1208 => _1208.getTime, 'call', _1209 => _1209()]), () => ( 0))) <= historyFetchedAt;
48510
48556
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
48511
48557
  }
48512
48558
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
48513
48559
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
48514
48560
  return false;
48515
48561
  }
48516
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1206 => _1206.timestamp, 'optionalAccess', _1207 => _1207.getTime, 'call', _1208 => _1208()]), () => ( 0))) <= historyFetchedAt;
48562
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1210 => _1210.timestamp, 'optionalAccess', _1211 => _1211.getTime, 'call', _1212 => _1212()]), () => ( 0))) <= historyFetchedAt;
48517
48563
  if (covered) return false;
48518
48564
  }
48519
48565
  return true;
@@ -48733,7 +48779,7 @@ function useChatDialogManager({
48733
48779
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
48734
48780
  if (restoreTarget) {
48735
48781
  try {
48736
- await _optionalChain([unarchiveDialog, 'optionalCall', _1209 => _1209(restoreTarget.id)]);
48782
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1213 => _1213(restoreTarget.id)]);
48737
48783
  } catch (err) {
48738
48784
  console.error("[useChatDialogManager] unarchive failed:", err);
48739
48785
  return;
@@ -49150,7 +49196,7 @@ function EmbeddableChatInner({
49150
49196
  }),
49151
49197
  [commandsUrl]
49152
49198
  );
49153
- const userName = _optionalChain([identityUser, 'optionalAccess', _1210 => _1210.firstName, 'optionalAccess', _1211 => _1211.trim, 'call', _1212 => _1212()]) || _optionalChain([identityUser, 'optionalAccess', _1213 => _1213.name, 'optionalAccess', _1214 => _1214.split, 'call', _1215 => _1215(" "), 'access', _1216 => _1216[0], 'optionalAccess', _1217 => _1217.trim, 'call', _1218 => _1218()]) || void 0;
49199
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1214 => _1214.firstName, 'optionalAccess', _1215 => _1215.trim, 'call', _1216 => _1216()]) || _optionalChain([identityUser, 'optionalAccess', _1217 => _1217.name, 'optionalAccess', _1218 => _1218.split, 'call', _1219 => _1219(" "), 'access', _1220 => _1220[0], 'optionalAccess', _1221 => _1221.trim, 'call', _1222 => _1222()]) || void 0;
49154
49200
  const effectiveModes = _react.useMemo.call(void 0, () => {
49155
49201
  if (modes) return modes;
49156
49202
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -49159,19 +49205,19 @@ function EmbeddableChatInner({
49159
49205
  const mingoCaps = _react.useMemo.call(void 0, () => {
49160
49206
  if (mingoState) {
49161
49207
  return {
49162
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1219 => _1219.canRename]), () => ( false)),
49163
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1220 => _1220.canArchive]), () => ( false)),
49164
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1221 => _1221.fetchArchivedDialogs]),
49165
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1222 => _1222.unarchiveDialog]),
49166
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1223 => _1223.searchQuery]),
49167
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1224 => _1224.onSearchChange])
49208
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1223 => _1223.canRename]), () => ( false)),
49209
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1224 => _1224.canArchive]), () => ( false)),
49210
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1225 => _1225.fetchArchivedDialogs]),
49211
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1226 => _1226.unarchiveDialog]),
49212
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1227 => _1227.searchQuery]),
49213
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1228 => _1228.onSearchChange])
49168
49214
  };
49169
49215
  }
49170
49216
  return {
49171
- canRename: !!_optionalChain([effectiveModes, 'access', _1225 => _1225.mingo, 'optionalAccess', _1226 => _1226.renameDialog]),
49172
- canArchive: !!_optionalChain([effectiveModes, 'access', _1227 => _1227.mingo, 'optionalAccess', _1228 => _1228.archiveDialog]),
49173
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1229 => _1229.mingo, 'optionalAccess', _1230 => _1230.fetchArchivedDialogs]),
49174
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1231 => _1231.mingo, 'optionalAccess', _1232 => _1232.unarchiveDialog]),
49217
+ canRename: !!_optionalChain([effectiveModes, 'access', _1229 => _1229.mingo, 'optionalAccess', _1230 => _1230.renameDialog]),
49218
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1231 => _1231.mingo, 'optionalAccess', _1232 => _1232.archiveDialog]),
49219
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1233 => _1233.mingo, 'optionalAccess', _1234 => _1234.fetchArchivedDialogs]),
49220
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1235 => _1235.mingo, 'optionalAccess', _1236 => _1236.unarchiveDialog]),
49175
49221
  searchQuery: void 0,
49176
49222
  onSearchChange: void 0
49177
49223
  };
@@ -49185,7 +49231,7 @@ function EmbeddableChatInner({
49185
49231
  if (controlledActiveMode === void 0) {
49186
49232
  setUncontrolledActiveMode(next);
49187
49233
  }
49188
- _optionalChain([onActiveModeChange, 'optionalCall', _1233 => _1233(next)]);
49234
+ _optionalChain([onActiveModeChange, 'optionalCall', _1237 => _1237(next)]);
49189
49235
  },
49190
49236
  [controlledActiveMode, onActiveModeChange]
49191
49237
  );
@@ -49207,7 +49253,7 @@ function EmbeddableChatInner({
49207
49253
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
49208
49254
  const effectiveAssistantName = emptyStateConfig.name;
49209
49255
  const effectiveAssistantIcon = emptyStateConfig.icon;
49210
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1234 => _1234.title]) === "string" ? guideWelcome.title : null)));
49256
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1238 => _1238.title]) === "string" ? guideWelcome.title : null)));
49211
49257
  const {
49212
49258
  messages: rawMessages,
49213
49259
  isLoading: chatLoading,
@@ -49247,7 +49293,7 @@ function EmbeddableChatInner({
49247
49293
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
49248
49294
  guidePromptSentRef.current = true;
49249
49295
  void sendMessage(guidePendingPrompt);
49250
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1235 => _1235()]);
49296
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1239 => _1239()]);
49251
49297
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
49252
49298
  const {
49253
49299
  attachments: stagedAttachments,
@@ -49258,7 +49304,7 @@ function EmbeddableChatInner({
49258
49304
  clear: clearAttachments
49259
49305
  } = useChatAttachments();
49260
49306
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
49261
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1236 => _1236.maxItems]), () => ( 10));
49307
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1240 => _1240.maxItems]), () => ( 10));
49262
49308
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
49263
49309
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
49264
49310
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -49275,10 +49321,10 @@ function EmbeddableChatInner({
49275
49321
  }, [activeDialogId, activeMode]);
49276
49322
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
49277
49323
  const m = /* @__PURE__ */ new Map();
49278
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1237 => _1237.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
49324
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1241 => _1241.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
49279
49325
  return m;
49280
- }, [_optionalChain([contextPicker, 'optionalAccess', _1238 => _1238.entityTypes])]);
49281
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1239 => _1239.entityTypes]);
49326
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1242 => _1242.entityTypes])]);
49327
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1243 => _1243.entityTypes]);
49282
49328
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
49283
49329
  const byType = /* @__PURE__ */ new Map();
49284
49330
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -49290,7 +49336,7 @@ function EmbeddableChatInner({
49290
49336
  if (mentionActiveRef.current) {
49291
49337
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
49292
49338
  if (contextItems.length >= contextMaxItems) return;
49293
- _optionalChain([chatInputRef, 'access', _1240 => _1240.current, 'optionalAccess', _1241 => _1241.commitMention, 'call', _1242 => _1242(mentionTokenOf(key, mentionMarkerByType), {
49339
+ _optionalChain([chatInputRef, 'access', _1244 => _1244.current, 'optionalAccess', _1245 => _1245.commitMention, 'call', _1246 => _1246(mentionTokenOf(key, mentionMarkerByType), {
49294
49340
  label: item.label,
49295
49341
  icon: resolveContextIcon(item)
49296
49342
  })]);
@@ -49312,9 +49358,9 @@ function EmbeddableChatInner({
49312
49358
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
49313
49359
  if (mentionKeysRef.current.has(key)) {
49314
49360
  mentionKeysRef.current.delete(key);
49315
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1243 => _1243.current, 'optionalAccess', _1244 => _1244.getValue, 'call', _1245 => _1245()]), () => ( ""));
49361
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1247 => _1247.current, 'optionalAccess', _1248 => _1248.getValue, 'call', _1249 => _1249()]), () => ( ""));
49316
49362
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
49317
- _optionalChain([chatInputRef, 'access', _1246 => _1246.current, 'optionalAccess', _1247 => _1247.setValue, 'call', _1248 => _1248(next)]);
49363
+ _optionalChain([chatInputRef, 'access', _1250 => _1250.current, 'optionalAccess', _1251 => _1251.setValue, 'call', _1252 => _1252(next)]);
49318
49364
  }
49319
49365
  }, [mentionMarkerByType]);
49320
49366
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -49331,7 +49377,7 @@ function EmbeddableChatInner({
49331
49377
  }, []);
49332
49378
  const closeContextPicker = _react.useCallback.call(void 0, () => {
49333
49379
  if (mentionActiveRef.current) {
49334
- _optionalChain([chatInputRef, 'access', _1249 => _1249.current, 'optionalAccess', _1250 => _1250.removeMentionTrigger, 'call', _1251 => _1251()]);
49380
+ _optionalChain([chatInputRef, 'access', _1253 => _1253.current, 'optionalAccess', _1254 => _1254.removeMentionTrigger, 'call', _1255 => _1255()]);
49335
49381
  }
49336
49382
  setContextPickerOpen(false);
49337
49383
  setMentionQuery(null);
@@ -49365,8 +49411,8 @@ function EmbeddableChatInner({
49365
49411
  []
49366
49412
  );
49367
49413
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
49368
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1252 => _1252.firstName]), _optionalChain([identityUser, 'optionalAccess', _1253 => _1253.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1254 => _1254.name, 'optionalAccess', _1255 => _1255.trim, 'call', _1256 => _1256()]) || void 0 : void 0;
49369
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1257 => _1257.avatarUrl, 'optionalAccess', _1258 => _1258.trim, 'call', _1259 => _1259()]) || void 0 : void 0;
49414
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1256 => _1256.firstName]), _optionalChain([identityUser, 'optionalAccess', _1257 => _1257.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1258 => _1258.name, 'optionalAccess', _1259 => _1259.trim, 'call', _1260 => _1260()]) || void 0 : void 0;
49415
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1261 => _1261.avatarUrl, 'optionalAccess', _1262 => _1262.trim, 'call', _1263 => _1263()]) || void 0 : void 0;
49370
49416
  const messages = _react.useMemo.call(void 0, () => {
49371
49417
  const cache = timestampCacheRef.current;
49372
49418
  const seenIds = /* @__PURE__ */ new Set();
@@ -49535,9 +49581,9 @@ function EmbeddableChatInner({
49535
49581
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
49536
49582
  const lastSources = _react.useMemo.call(void 0, () => {
49537
49583
  if (chatLoading) return void 0;
49538
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1260 => _1260.sources]);
49584
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1264 => _1264.sources]);
49539
49585
  if (!sources || sources.length === 0) return void 0;
49540
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1261 => _1261.content]) || "";
49586
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1265 => _1265.content]) || "";
49541
49587
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
49542
49588
  (m) => parseInt(m[1], 10)
49543
49589
  );
@@ -49584,7 +49630,7 @@ function EmbeddableChatInner({
49584
49630
  ChatPanelHeader,
49585
49631
  {
49586
49632
  showBack: hasConversation || guideCanReturnToMingo,
49587
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1262 => _1262.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
49633
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1266 => _1266.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
49588
49634
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
49589
49635
  isArchivedView: isViewingArchived,
49590
49636
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -49705,9 +49751,9 @@ function EmbeddableChatInner({
49705
49751
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
49706
49752
  subtitleLoading: emptyStateLoading,
49707
49753
  ...guideWelcome,
49708
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1263 => _1263.title]))),
49709
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1264 => _1264.icon]))),
49710
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1265 => _1265.quickActions]), () => ( guideSuggestedActions)),
49754
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1267 => _1267.title]))),
49755
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1268 => _1268.icon]))),
49756
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1269 => _1269.quickActions]), () => ( guideSuggestedActions)),
49711
49757
  onQuickAction: (action) => {
49712
49758
  setQuickActionPreview(null);
49713
49759
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -50799,5 +50845,5 @@ function EmbeddableChatInner({
50799
50845
 
50800
50846
 
50801
50847
 
50802
- 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.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.CommandBlock = CommandBlock; 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.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.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;
50803
- //# sourceMappingURL=chunk-4RUTFRJ6.cjs.map
50848
+ 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.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.CommandBlock = CommandBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.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;
50849
+ //# sourceMappingURL=chunk-YCQ5S353.cjs.map