@flamingo-stack/openframe-frontend-core 0.0.593 → 0.0.594-snapshot.20260905135632

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/{chunk-WY2GQ62H.cjs → chunk-23UJ4EBJ.cjs} +10 -10
  2. package/dist/{chunk-WY2GQ62H.cjs.map → chunk-23UJ4EBJ.cjs.map} +1 -1
  3. package/dist/{chunk-KPO6TWEV.js → chunk-2WLW5HDU.js} +7 -7
  4. package/dist/{chunk-GEP3O6NU.js → chunk-3WZLPCJ7.js} +3 -3
  5. package/dist/{chunk-NEFNARFF.cjs → chunk-4R6AZFNU.cjs} +30 -30
  6. package/dist/{chunk-NEFNARFF.cjs.map → chunk-4R6AZFNU.cjs.map} +1 -1
  7. package/dist/{chunk-S6G6KJ57.cjs → chunk-4ZY5MP46.cjs} +15 -15
  8. package/dist/{chunk-S6G6KJ57.cjs.map → chunk-4ZY5MP46.cjs.map} +1 -1
  9. package/dist/{chunk-3ZHDEZQB.js → chunk-63PXZXCT.js} +4 -4
  10. package/dist/{chunk-2KISKWOY.cjs → chunk-6PEFK4UH.cjs} +6 -6
  11. package/dist/{chunk-2KISKWOY.cjs.map → chunk-6PEFK4UH.cjs.map} +1 -1
  12. package/dist/{chunk-MPNCYET3.js → chunk-7N2NJPUK.js} +3 -3
  13. package/dist/{chunk-J3D2WHWC.js → chunk-A57HKYLY.js} +6 -6
  14. package/dist/{chunk-I7JYX5O3.js → chunk-AQ65NLGJ.js} +88 -5
  15. package/dist/{chunk-I7JYX5O3.js.map → chunk-AQ65NLGJ.js.map} +1 -1
  16. package/dist/{chunk-XH5QBMXD.js → chunk-BKMSI2AW.js} +2 -2
  17. package/dist/{chunk-YSJ4TA6V.cjs → chunk-CPWX46TL.cjs} +6 -6
  18. package/dist/{chunk-YSJ4TA6V.cjs.map → chunk-CPWX46TL.cjs.map} +1 -1
  19. package/dist/{chunk-5SGTTSQN.cjs → chunk-CZM2H5F5.cjs} +5 -5
  20. package/dist/{chunk-5SGTTSQN.cjs.map → chunk-CZM2H5F5.cjs.map} +1 -1
  21. package/dist/{chunk-X7XO73M5.js → chunk-DYXVQ24Q.js} +3 -3
  22. package/dist/{chunk-OAAQKMMU.cjs → chunk-EO5GYWIX.cjs} +28 -28
  23. package/dist/{chunk-OAAQKMMU.cjs.map → chunk-EO5GYWIX.cjs.map} +1 -1
  24. package/dist/{chunk-CMAO4PPL.cjs → chunk-FHEN27GM.cjs} +11 -11
  25. package/dist/{chunk-CMAO4PPL.cjs.map → chunk-FHEN27GM.cjs.map} +1 -1
  26. package/dist/{chunk-VDAMJEMR.cjs → chunk-HGWC7ABT.cjs} +57 -57
  27. package/dist/{chunk-VDAMJEMR.cjs.map → chunk-HGWC7ABT.cjs.map} +1 -1
  28. package/dist/{chunk-4DRZZWC7.cjs → chunk-JGDDPNSC.cjs} +192 -192
  29. package/dist/{chunk-4DRZZWC7.cjs.map → chunk-JGDDPNSC.cjs.map} +1 -1
  30. package/dist/{chunk-2VOBGNEY.cjs → chunk-MDUAU74C.cjs} +28 -28
  31. package/dist/{chunk-2VOBGNEY.cjs.map → chunk-MDUAU74C.cjs.map} +1 -1
  32. package/dist/{chunk-QHTDFF52.cjs → chunk-MHORK6KM.cjs} +3 -3
  33. package/dist/{chunk-QHTDFF52.cjs.map → chunk-MHORK6KM.cjs.map} +1 -1
  34. package/dist/{chunk-ZZHHKE2Q.js → chunk-MUNVPRT2.js} +2 -2
  35. package/dist/{chunk-NRHU4V3E.cjs → chunk-MX7DNV7X.cjs} +33 -33
  36. package/dist/{chunk-NRHU4V3E.cjs.map → chunk-MX7DNV7X.cjs.map} +1 -1
  37. package/dist/{chunk-2645GIM2.js → chunk-NNMAMTA5.js} +3 -3
  38. package/dist/{chunk-2PMCHL37.cjs → chunk-OGE4GSLZ.cjs} +80 -80
  39. package/dist/{chunk-2PMCHL37.cjs.map → chunk-OGE4GSLZ.cjs.map} +1 -1
  40. package/dist/{chunk-WZHARPOT.cjs → chunk-OWWICTQR.cjs} +21 -21
  41. package/dist/{chunk-WZHARPOT.cjs.map → chunk-OWWICTQR.cjs.map} +1 -1
  42. package/dist/{chunk-GXPOEAXL.js → chunk-PYEJL2UG.js} +3 -3
  43. package/dist/{chunk-UG27ITVP.js → chunk-QLJMXCB5.js} +5 -5
  44. package/dist/{chunk-YAZY24ZK.js → chunk-SEVD4AST.js} +5 -5
  45. package/dist/{chunk-Y6I2DGKC.cjs → chunk-SK4IVCSI.cjs} +10 -2
  46. package/dist/{chunk-Y6I2DGKC.cjs.map → chunk-SK4IVCSI.cjs.map} +1 -1
  47. package/dist/{chunk-VUGQ3Z6E.js → chunk-T2JAJ7MR.js} +3 -3
  48. package/dist/{chunk-BTF3CNDP.js → chunk-TDEQ26A2.js} +10 -2
  49. package/dist/{chunk-BTF3CNDP.js.map → chunk-TDEQ26A2.js.map} +1 -1
  50. package/dist/{chunk-R2J6XMP6.js → chunk-U4QRK4MX.js} +3 -3
  51. package/dist/{chunk-MV3XJXPG.js → chunk-UPKN5CYH.js} +6 -6
  52. package/dist/{chunk-TVPJ5DIB.cjs → chunk-YYHYCQD6.cjs} +437 -354
  53. package/dist/chunk-YYHYCQD6.cjs.map +1 -0
  54. package/dist/{chunk-ZR72HRUJ.js → chunk-ZRXJX3JK.js} +4 -4
  55. package/dist/{chunk-HMRWH2HC.cjs → chunk-ZY3Z3F4X.cjs} +20 -20
  56. package/dist/{chunk-HMRWH2HC.cjs.map → chunk-ZY3Z3F4X.cjs.map} +1 -1
  57. package/dist/components/case-studies/index.cjs +10 -10
  58. package/dist/components/case-studies/index.js +4 -4
  59. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  60. package/dist/components/chat/index.cjs +3 -3
  61. package/dist/components/chat/index.js +2 -2
  62. package/dist/components/contact/index.cjs +5 -5
  63. package/dist/components/contact/index.js +4 -4
  64. package/dist/components/docs/index.cjs +8 -8
  65. package/dist/components/docs/index.js +7 -7
  66. package/dist/components/embeds/index.cjs +5 -5
  67. package/dist/components/embeds/index.js +4 -4
  68. package/dist/components/faq/index.cjs +5 -5
  69. package/dist/components/faq/index.js +4 -4
  70. package/dist/components/features/index.cjs +4 -4
  71. package/dist/components/features/index.js +3 -3
  72. package/dist/components/help-center-pages/index.cjs +24 -24
  73. package/dist/components/help-center-pages/index.js +15 -15
  74. package/dist/components/index.cjs +53 -53
  75. package/dist/components/index.js +15 -15
  76. package/dist/components/meeting-scheduler/index.cjs +31 -31
  77. package/dist/components/meeting-scheduler/index.js +3 -3
  78. package/dist/components/navigation/index.cjs +7 -7
  79. package/dist/components/navigation/index.js +6 -6
  80. package/dist/components/onboarding-guides/index.cjs +7 -7
  81. package/dist/components/onboarding-guides/index.js +6 -6
  82. package/dist/components/related-content/index.cjs +3 -3
  83. package/dist/components/related-content/index.js +2 -2
  84. package/dist/components/tickets/index.cjs +8 -8
  85. package/dist/components/tickets/index.js +7 -7
  86. package/dist/components/ui/index.cjs +4 -4
  87. package/dist/components/ui/index.js +3 -3
  88. package/dist/index.cjs +8 -8
  89. package/dist/index.js +7 -7
  90. package/dist/utils/index.cjs +25 -3
  91. package/dist/utils/index.cjs.map +1 -1
  92. package/dist/utils/index.js +25 -3
  93. package/dist/utils/index.js.map +1 -1
  94. package/dist/utils/list-url.d.ts.map +1 -1
  95. package/dist/utils/source-icons.d.ts.map +1 -1
  96. package/package.json +1 -1
  97. package/src/components/chat/entity-cards/dispatch.tsx +88 -0
  98. package/src/utils/__tests__/list-url.test.ts +6 -0
  99. package/src/utils/list-url.ts +8 -0
  100. package/src/utils/source-icons.ts +27 -0
  101. package/dist/chunk-TVPJ5DIB.cjs.map +0 -1
  102. /package/dist/{chunk-KPO6TWEV.js.map → chunk-2WLW5HDU.js.map} +0 -0
  103. /package/dist/{chunk-GEP3O6NU.js.map → chunk-3WZLPCJ7.js.map} +0 -0
  104. /package/dist/{chunk-3ZHDEZQB.js.map → chunk-63PXZXCT.js.map} +0 -0
  105. /package/dist/{chunk-MPNCYET3.js.map → chunk-7N2NJPUK.js.map} +0 -0
  106. /package/dist/{chunk-J3D2WHWC.js.map → chunk-A57HKYLY.js.map} +0 -0
  107. /package/dist/{chunk-XH5QBMXD.js.map → chunk-BKMSI2AW.js.map} +0 -0
  108. /package/dist/{chunk-X7XO73M5.js.map → chunk-DYXVQ24Q.js.map} +0 -0
  109. /package/dist/{chunk-ZZHHKE2Q.js.map → chunk-MUNVPRT2.js.map} +0 -0
  110. /package/dist/{chunk-2645GIM2.js.map → chunk-NNMAMTA5.js.map} +0 -0
  111. /package/dist/{chunk-GXPOEAXL.js.map → chunk-PYEJL2UG.js.map} +0 -0
  112. /package/dist/{chunk-UG27ITVP.js.map → chunk-QLJMXCB5.js.map} +0 -0
  113. /package/dist/{chunk-YAZY24ZK.js.map → chunk-SEVD4AST.js.map} +0 -0
  114. /package/dist/{chunk-VUGQ3Z6E.js.map → chunk-T2JAJ7MR.js.map} +0 -0
  115. /package/dist/{chunk-R2J6XMP6.js.map → chunk-U4QRK4MX.js.map} +0 -0
  116. /package/dist/{chunk-MV3XJXPG.js.map → chunk-UPKN5CYH.js.map} +0 -0
  117. /package/dist/{chunk-ZR72HRUJ.js.map → chunk-ZRXJX3JK.js.map} +0 -0
@@ -116,6 +116,8 @@ var _chunk5EM6NGBKcjs = require('./chunk-5EM6NGBK.cjs');
116
116
 
117
117
 
118
118
 
119
+
120
+
119
121
 
120
122
 
121
123
 
@@ -168,7 +170,7 @@ var _chunkGSQM4PDRcjs = require('./chunk-GSQM4PDR.cjs');
168
170
 
169
171
 
170
172
 
171
- var _chunkY6I2DGKCcjs = require('./chunk-Y6I2DGKC.cjs');
173
+ var _chunkSK4IVCSIcjs = require('./chunk-SK4IVCSI.cjs');
172
174
 
173
175
 
174
176
  var _chunkWLSFBRT5cjs = require('./chunk-WLSFBRT5.cjs');
@@ -4756,7 +4758,7 @@ function MspOrganizationCard({
4756
4758
  className
4757
4759
  ),
4758
4760
  children: [
4759
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
4761
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
4760
4762
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
4761
4763
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h3", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
4762
4764
  website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: website }) : null
@@ -4889,7 +4891,7 @@ var ChatHeader = _react.forwardRef.call(void 0,
4889
4891
  ] })
4890
4892
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
4891
4893
  userIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-16 w-16 items-center justify-center rounded-full bg-ods-accent", children: userIcon }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4892
- _chunkY6I2DGKCcjs.SquareAvatar,
4894
+ _chunkSK4IVCSIcjs.SquareAvatar,
4893
4895
  {
4894
4896
  src: userAvatar,
4895
4897
  alt: userName,
@@ -7252,7 +7254,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
7252
7254
  // Host-supplied brand icon (e.g. Mingo): render it directly,
7253
7255
  // no filled pill — the icon carries its own brand accent.
7254
7256
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-shrink-0 items-center justify-center", children: assistantIcon })
7255
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.SquareAvatar, { ...avatarProps })),
7257
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.SquareAvatar, { ...avatarProps })),
7256
7258
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
7257
7259
  "span",
7258
7260
  {
@@ -8038,7 +8040,7 @@ ChatMessageList.displayName = "ChatMessageList";
8038
8040
  // src/components/chat/hooks/use-proxied-image-url.ts
8039
8041
  function useProxiedImageUrl(url) {
8040
8042
  const r = _chunkRDTOMWDNcjs.useRequiredChatRuntime.call(void 0, );
8041
- return _nullishCoalesce(_chunkY6I2DGKCcjs.getProxiedImageUrl.call(void 0, _nullishCoalesce(url, () => ( "")), {
8043
+ return _nullishCoalesce(_chunkSK4IVCSIcjs.getProxiedImageUrl.call(void 0, _nullishCoalesce(url, () => ( "")), {
8042
8044
  proxyPrefix: r.endpoints.imageProxyUrlPrefix,
8043
8045
  skipDomains: r.endpoints.imageProxySkipDomains,
8044
8046
  directHttps: true
@@ -8064,7 +8066,7 @@ function ChatMessageRow({ displayName, avatarUrl, timeLabel, body, footer }) {
8064
8066
  height: 40,
8065
8067
  onError: () => setFailedSrc(_nullishCoalesce(resolvedAvatar, () => ( null)))
8066
8068
  }
8067
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-text-primary text-h6 md:h-10 md:w-10", children: _chunkY6I2DGKCcjs.personInitials.call(void 0, displayName) || "?" }),
8069
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-text-primary text-h6 md:h-10 md:w-10", children: _chunkSK4IVCSIcjs.personInitials.call(void 0, displayName) || "?" }),
8068
8070
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 max-w-full flex-1", children: [
8069
8071
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-1 flex min-w-0 max-w-full items-center gap-2", children: [
8070
8072
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-body text-[14px] font-bold leading-[1.33] tracking-[-0.02em] text-ods-text-primary md:text-[15px]", children: displayName }),
@@ -9344,7 +9346,7 @@ function MingoChatHistoryRow({
9344
9346
  hasMenu && (menuOpen ? "pointer-events-none opacity-0" : "md:group-hover/row:pointer-events-none md:group-hover/row:opacity-0 md:peer-[:focus-within]/menu:pointer-events-none md:peer-[:focus-within]/menu:opacity-0")
9345
9347
  ),
9346
9348
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9347
- _chunkY6I2DGKCcjs.SquareAvatar,
9349
+ _chunkSK4IVCSIcjs.SquareAvatar,
9348
9350
  {
9349
9351
  variant: "round",
9350
9352
  sizePx: 24,
@@ -10485,7 +10487,7 @@ function ChatPanelHeader({
10485
10487
  avatar && (avatar.name || avatar.avatarUrl) ? (
10486
10488
  // Owner avatar at the title cell's right edge (Figma 113:63273).
10487
10489
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10488
- _chunkY6I2DGKCcjs.SquareAvatar,
10490
+ _chunkSK4IVCSIcjs.SquareAvatar,
10489
10491
  {
10490
10492
  variant: "round",
10491
10493
  sizePx: 32,
@@ -10699,8 +10701,8 @@ function AttachmentChip({ attachment, onRemove, disabled, size: size2 = "default
10699
10701
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "truncate text-ods-text-primary text-h6", title: file.name, children: file.name }),
10700
10702
  (!compact || status !== "ready") && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-muted text-h6", children: [
10701
10703
  status === "sniffing" && "Checking\u2026",
10702
- status === "uploading" && `${progress}% \xB7 ${_chunkY6I2DGKCcjs.formatFileSize.call(void 0, file.size)}`,
10703
- status === "ready" && _chunkY6I2DGKCcjs.formatFileSize.call(void 0, file.size),
10704
+ status === "uploading" && `${progress}% \xB7 ${_chunkSK4IVCSIcjs.formatFileSize.call(void 0, file.size)}`,
10705
+ status === "ready" && _chunkSK4IVCSIcjs.formatFileSize.call(void 0, file.size),
10704
10706
  status === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-error", title: errorMessage, children: _nullishCoalesce(errorMessage, () => ( "Upload failed")) })
10705
10707
  ] })
10706
10708
  ] }),
@@ -11497,10 +11499,10 @@ function resolveExternalNavigation(args) {
11497
11499
 
11498
11500
  // src/components/chat/utils/execute-navigation.ts
11499
11501
  function isForeignOriginHref(href) {
11500
- return /^https?:\/\//i.test(href) && !_chunkY6I2DGKCcjs.isSameOriginAbsoluteHref.call(void 0, href);
11502
+ return /^https?:\/\//i.test(href) && !_chunkSK4IVCSIcjs.isSameOriginAbsoluteHref.call(void 0, href);
11501
11503
  }
11502
11504
  function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
11503
- const isNewTab = runtime ? _chunkY6I2DGKCcjs.computeIsNewTab.call(void 0, runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
11505
+ const isNewTab = runtime ? _chunkSK4IVCSIcjs.computeIsNewTab.call(void 0, runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
11504
11506
  if (isNewTab) {
11505
11507
  if (_optionalChain([runtime, 'optionalAccess', _203 => _203.navigation, 'access', _204 => _204.openExternal])) runtime.navigation.openExternal(href);
11506
11508
  else window.open(href, "_blank", NEW_TAB_FEATURES);
@@ -11559,7 +11561,7 @@ function NavLinkAnchorViaRuntime({
11559
11561
  const router = _chunkSADRZ4YIcjs.useRouter.call(void 0, );
11560
11562
  const panel = useChatPanel();
11561
11563
  const resolvedHref = resolveHrefForRuntime(href, runtime);
11562
- const isNewTab = _chunkY6I2DGKCcjs.computeIsNewTab.call(void 0, runtime, resolvedHref, _nullishCoalesce(targetPlatform, () => ( null)));
11564
+ const isNewTab = _chunkSK4IVCSIcjs.computeIsNewTab.call(void 0, runtime, resolvedHref, _nullishCoalesce(targetPlatform, () => ( null)));
11563
11565
  const onClick = (e) => {
11564
11566
  const handled = executeNavigation({
11565
11567
  event: e,
@@ -11571,7 +11573,7 @@ function NavLinkAnchorViaRuntime({
11571
11573
  });
11572
11574
  if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _208 => _208.closeChat])) panel.closeChat();
11573
11575
  };
11574
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href: resolvedHref, ..._chunkY6I2DGKCcjs.newTabAnchorAttrs.call(void 0, isNewTab), onClick, className, children });
11576
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href: resolvedHref, ..._chunkSK4IVCSIcjs.newTabAnchorAttrs.call(void 0, isNewTab), onClick, className, children });
11575
11577
  }
11576
11578
 
11577
11579
  // src/components/chat/source-action-button.tsx
@@ -12813,9 +12815,9 @@ function UserDisplay({
12813
12815
  }) {
12814
12816
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk23V5BSHDcjs.cn.call(void 0, "flex min-w-0 items-center gap-2", className), children: [
12815
12817
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12816
- _chunkY6I2DGKCcjs.SquareAvatar,
12818
+ _chunkSK4IVCSIcjs.SquareAvatar,
12817
12819
  {
12818
- src: avatarUrl ? _chunkY6I2DGKCcjs.getProxiedImageUrl.call(void 0, avatarUrl) || avatarUrl : void 0,
12820
+ src: avatarUrl ? _chunkSK4IVCSIcjs.getProxiedImageUrl.call(void 0, avatarUrl) || avatarUrl : void 0,
12819
12821
  fallback: name,
12820
12822
  alt: name,
12821
12823
  sizePx: size2,
@@ -13315,7 +13317,7 @@ function VideoHoverPreviewSurface({
13315
13317
  return () => io.disconnect();
13316
13318
  }, [gateControlled]);
13317
13319
  const showMedia = continuation || (gateControlled ? playerMounted : isNear);
13318
- const { src: posterSrc, onError: onPosterError } = _chunkY6I2DGKCcjs.useCoverImageFallback.call(void 0, posterUrl);
13320
+ const { src: posterSrc, onError: onPosterError } = _chunkSK4IVCSIcjs.useCoverImageFallback.call(void 0, posterUrl);
13319
13321
  const facadeSkipped = preload === "none" && !posterSrc;
13320
13322
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootElRef, className: _chunk23V5BSHDcjs.cn.call(void 0, "absolute inset-0", className), inert: isClone || void 0, children: showMedia ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
13321
13323
  posterSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -13433,7 +13435,7 @@ function groupByAspectRatio(items, getAspectRatio) {
13433
13435
 
13434
13436
  function VideoBitesStrip({
13435
13437
  bites,
13436
- title = _chunkY6I2DGKCcjs.DEFAULT_VIDEO_BITES_TITLE,
13438
+ title = _chunkSK4IVCSIcjs.DEFAULT_VIDEO_BITES_TITLE,
13437
13439
  showTitle = true,
13438
13440
  filterPublished = true,
13439
13441
  profile = null,
@@ -13446,7 +13448,7 @@ function VideoBitesStrip({
13446
13448
  cardHeightMobile = 300,
13447
13449
  showChevrons = true,
13448
13450
  onBiteNavigate,
13449
- sortComparator = _chunkY6I2DGKCcjs.sortBitesByCreatedAtDesc,
13451
+ sortComparator = _chunkSK4IVCSIcjs.sortBitesByCreatedAtDesc,
13450
13452
  className
13451
13453
  }) {
13452
13454
  const items = _react.useMemo.call(void 0, () => {
@@ -13671,7 +13673,7 @@ function EntityVideoSection({
13671
13673
  title = "Video",
13672
13674
  videoSummary,
13673
13675
  videoBites,
13674
- bitesTitle = _chunkY6I2DGKCcjs.DEFAULT_VIDEO_BITES_TITLE,
13676
+ bitesTitle = _chunkSK4IVCSIcjs.DEFAULT_VIDEO_BITES_TITLE,
13675
13677
  filterPublishedBites = true,
13676
13678
  bitesProfile = null,
13677
13679
  bitesHref,
@@ -13910,7 +13912,7 @@ function ReviewStateBadge({ state, className = "" }) {
13910
13912
  function GitHubActivityCard({ item, variant = "compact", className, anchorProps }) {
13911
13913
  const kind = _nullishCoalesce(item.kind, () => ( "commit"));
13912
13914
  const repo = _nullishCoalesce(_nullishCoalesce(item.repo, () => ( parseRepoFromUrl(item.url))), () => ( ""));
13913
- const dateText = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
13915
+ const dateText = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
13914
13916
  const idLabel = formatActivityId(item.id, kind);
13915
13917
  const { display: title, reviewState } = parseGithubTitle(item.title, kind);
13916
13918
  const primaryText = kind === "pr_review" ? title.replace(/^by\s+/i, "").trim() || "Reviewer" : title;
@@ -13944,26 +13946,26 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
13944
13946
  metaParts.push(
13945
13947
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
13946
13948
  );
13947
- const href = _chunkY6I2DGKCcjs.safeHref.call(void 0, item.url);
13949
+ const href = _chunkSK4IVCSIcjs.safeHref.call(void 0, item.url);
13948
13950
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
13949
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_ICON_SLOT, children: kindIcon(kind, "h-5 w-5") }),
13950
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
13951
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW} flex-nowrap gap-1.5`, children: [
13951
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_ICON_SLOT, children: kindIcon(kind, "h-5 w-5") }),
13952
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
13953
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW} flex-nowrap gap-1.5`, children: [
13952
13954
  reviewState ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReviewStateBadge, { state: reviewState }) : null,
13953
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE, children: primaryText })
13955
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE, children: primaryText })
13954
13956
  ] }),
13955
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
13957
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
13956
13958
  i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
13957
13959
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
13958
13960
  ] }, i)) }) }),
13959
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUMMARY, children: _chunkY6I2DGKCcjs.COMPACT_CARD_ROW_FILLER }) })
13961
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUMMARY, children: _chunkSK4IVCSIcjs.COMPACT_CARD_ROW_FILLER }) })
13960
13962
  ] }),
13961
13963
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
13962
13964
  ] });
13963
13965
  if (anchorProps) {
13964
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
13966
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
13965
13967
  }
13966
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
13968
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
13967
13969
  }
13968
13970
  function GitHubActivityCardSkeleton({
13969
13971
  variant = "compact",
@@ -13980,12 +13982,12 @@ function GitHubActivityCardSkeleton({
13980
13982
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-3 w-20 shrink-0 rounded bg-ods-bg/60" })
13981
13983
  ] });
13982
13984
  }
13983
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
13984
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
13985
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
13986
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }) }),
13987
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/2 rounded bg-ods-bg/70" }) }),
13988
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUMMARY, children: _chunkY6I2DGKCcjs.COMPACT_CARD_ROW_FILLER }) })
13985
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
13986
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
13987
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
13988
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }) }),
13989
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/2 rounded bg-ods-bg/70" }) }),
13990
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUMMARY, children: _chunkSK4IVCSIcjs.COMPACT_CARD_ROW_FILLER }) })
13989
13991
  ] }),
13990
13992
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
13991
13993
  ] });
@@ -14009,7 +14011,7 @@ function parseChannelFromUrl(url) {
14009
14011
  }
14010
14012
  function SlackMessageCard({ item, variant = "compact", className, anchorProps }) {
14011
14013
  const channel = _nullishCoalesce(_nullishCoalesce(item.channel, () => ( parseChannelFromUrl(item.url))), () => ( null));
14012
- const dateText = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14014
+ const dateText = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14013
14015
  if (variant === "row") {
14014
14016
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
14015
14017
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5EM6NGBKcjs.SlackIcon, { className: "h-3.5 w-3.5 shrink-0" }),
@@ -14035,23 +14037,23 @@ function SlackMessageCard({ item, variant = "compact", className, anchorProps })
14035
14037
  metaParts.push(
14036
14038
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
14037
14039
  );
14038
- const href = _chunkY6I2DGKCcjs.safeHref.call(void 0, item.url);
14040
+ const href = _chunkSK4IVCSIcjs.safeHref.call(void 0, item.url);
14039
14041
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
14040
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5EM6NGBKcjs.SlackIcon, { className: "h-5 w-5" }) }),
14041
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14042
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE, children: item.title }) }),
14043
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUMMARY, children: item.preview || _chunkY6I2DGKCcjs.COMPACT_CARD_ROW_FILLER }) }),
14044
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
14042
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5EM6NGBKcjs.SlackIcon, { className: "h-5 w-5" }) }),
14043
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14044
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE, children: item.title }) }),
14045
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUMMARY, children: item.preview || _chunkSK4IVCSIcjs.COMPACT_CARD_ROW_FILLER }) }),
14046
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
14045
14047
  i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
14046
14048
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
14047
- ] }, i)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUMMARY, children: _chunkY6I2DGKCcjs.COMPACT_CARD_ROW_FILLER }) }) })
14049
+ ] }, i)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUMMARY, children: _chunkSK4IVCSIcjs.COMPACT_CARD_ROW_FILLER }) }) })
14048
14050
  ] }),
14049
14051
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
14050
14052
  ] });
14051
14053
  if (anchorProps) {
14052
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14054
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14053
14055
  }
14054
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14056
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14055
14057
  }
14056
14058
  function SlackMessageCardSkeleton({
14057
14059
  variant = "compact",
@@ -14066,12 +14068,12 @@ function SlackMessageCardSkeleton({
14066
14068
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-3 w-20 shrink-0 rounded bg-ods-bg/60" })
14067
14069
  ] });
14068
14070
  }
14069
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14070
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
14071
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14072
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }) }),
14073
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-5/6 rounded bg-ods-bg/60" }) }),
14074
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/3 rounded bg-ods-bg/70" }) })
14071
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14072
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
14073
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14074
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }) }),
14075
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-5/6 rounded bg-ods-bg/60" }) }),
14076
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/3 rounded bg-ods-bg/70" }) })
14075
14077
  ] }),
14076
14078
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
14077
14079
  ] });
@@ -14102,12 +14104,12 @@ function statusScheme(status) {
14102
14104
  function HubspotTicketCard({ item, variant = "compact", className, anchorProps }) {
14103
14105
  const statusText = _nullishCoalesce(item.statusLabel, () => ( formatToken(item.status)));
14104
14106
  const priorityText = formatToken(item.priority);
14105
- const dateText = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14107
+ const dateText = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14106
14108
  if (variant === "row") {
14107
14109
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
14108
14110
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "max-w-[260px] shrink-0 truncate text-ods-text-primary text-h6", children: item.title }),
14109
14111
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1 truncate text-ods-text-secondary text-h6", children: item.preview }) : null,
14110
- statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.StatusBadge, { text: statusText, variant: "button", colorScheme: statusScheme(item.status) }) : null,
14112
+ statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.StatusBadge, { text: statusText, variant: "button", colorScheme: statusScheme(item.status) }) : null,
14111
14113
  dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "w-24 shrink-0 text-right text-ods-text-secondary text-h6", children: dateText }) : null
14112
14114
  ] });
14113
14115
  }
@@ -14121,13 +14123,13 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
14121
14123
  metaParts.push(
14122
14124
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
14123
14125
  );
14124
- const href = _chunkY6I2DGKCcjs.safeHref.call(void 0, item.url);
14126
+ const href = _chunkSK4IVCSIcjs.safeHref.call(void 0, item.url);
14125
14127
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
14126
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14128
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14127
14129
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
14128
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14130
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14129
14131
  priorityText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14130
- _chunkY6I2DGKCcjs.StatusBadge,
14132
+ _chunkSK4IVCSIcjs.StatusBadge,
14131
14133
  {
14132
14134
  text: priorityText,
14133
14135
  variant: "button",
@@ -14136,7 +14138,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
14136
14138
  }
14137
14139
  ) : null,
14138
14140
  statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14139
- _chunkY6I2DGKCcjs.StatusBadge,
14141
+ _chunkSK4IVCSIcjs.StatusBadge,
14140
14142
  {
14141
14143
  text: statusText,
14142
14144
  variant: "button",
@@ -14150,7 +14152,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
14150
14152
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: item.customerEmail })
14151
14153
  ] }) : null,
14152
14154
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-4 whitespace-pre-wrap break-words text-ods-text-secondary text-h6", children: item.preview || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "italic text-ods-text-secondary/60", children: "No description provided." }) }) }),
14153
- metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
14155
+ metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
14154
14156
  i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
14155
14157
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
14156
14158
  ] }, i)) }) }) : null
@@ -14158,9 +14160,9 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
14158
14160
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
14159
14161
  ] });
14160
14162
  if (anchorProps) {
14161
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14163
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14162
14164
  }
14163
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14165
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14164
14166
  }
14165
14167
  function HubspotTicketCardSkeleton({
14166
14168
  variant = "compact",
@@ -14174,8 +14176,8 @@ function HubspotTicketCardSkeleton({
14174
14176
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-3 w-20 shrink-0 rounded bg-ods-bg/60" })
14175
14177
  ] });
14176
14178
  }
14177
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14178
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14179
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14180
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14179
14181
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
14180
14182
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }),
14181
14183
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-4 w-12 rounded-full bg-ods-bg/60" }),
@@ -14188,7 +14190,7 @@ function HubspotTicketCardSkeleton({
14188
14190
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-5 w-3/4 rounded bg-ods-bg/60" }),
14189
14191
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-5 w-2/5 rounded bg-ods-bg/60" })
14190
14192
  ] }),
14191
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/3 rounded bg-ods-bg/70" }) })
14193
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/3 rounded bg-ods-bg/70" }) })
14192
14194
  ] }),
14193
14195
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
14194
14196
  ] });
@@ -14199,10 +14201,10 @@ function HubspotTicketCardSkeleton({
14199
14201
 
14200
14202
  function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
14201
14203
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
14202
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14204
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14203
14205
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
14204
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14205
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.StatusBadge, { text: badgeText, variant: "button", colorScheme: "cyan", className: "shrink-0" })
14206
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14207
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.StatusBadge, { text: badgeText, variant: "button", colorScheme: "cyan", className: "shrink-0" })
14206
14208
  ] }),
14207
14209
  item.path ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1 text-ods-text-secondary text-h6", children: [
14208
14210
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/70", children: "Path:" }),
@@ -14213,13 +14215,13 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
14213
14215
  _optionalChain([anchorProps, 'optionalAccess', _343 => _343.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
14214
14216
  ] });
14215
14217
  if (!anchorProps) {
14216
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14218
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14217
14219
  }
14218
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14220
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14219
14221
  }
14220
14222
  function DataRoomDocCardSkeleton({ className }) {
14221
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14222
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14223
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14224
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14223
14225
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1.5", children: [
14224
14226
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }),
14225
14227
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-4 w-16 rounded-full bg-ods-bg/60" })
@@ -14240,29 +14242,29 @@ function DataRoomDocCardSkeleton({ className }) {
14240
14242
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
14241
14243
  const goalsCount = _optionalChain([campaign, 'access', _344 => _344.goals, 'optionalAccess', _345 => _345.length]) || 0;
14242
14244
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
14243
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
14244
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14245
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE, children: campaign.name }) }),
14246
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUBTITLE, children: [
14247
- campaign.start_date ? _chunkY6I2DGKCcjs.formatDateShort.call(void 0, campaign.start_date) : null,
14245
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
14246
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14247
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE, children: campaign.name }) }),
14248
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUBTITLE, children: [
14249
+ campaign.start_date ? _chunkSK4IVCSIcjs.formatDateShort.call(void 0, campaign.start_date) : null,
14248
14250
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
14249
14251
  "Marketing campaign"
14250
14252
  ].filter(Boolean).join(" \xB7 ") }) }),
14251
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SUMMARY, children: campaign.description || _chunkY6I2DGKCcjs.COMPACT_CARD_ROW_FILLER }) })
14253
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SUMMARY, children: campaign.description || _chunkSK4IVCSIcjs.COMPACT_CARD_ROW_FILLER }) })
14252
14254
  ] })
14253
14255
  ] });
14254
14256
  if (anchorProps) {
14255
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: innerChildren });
14257
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: innerChildren });
14256
14258
  }
14257
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: innerChildren });
14259
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: innerChildren });
14258
14260
  }
14259
14261
  function CampaignCardAdminSkeleton({ className }) {
14260
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14261
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
14262
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14263
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
14264
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/2 rounded bg-ods-bg/70" }) }),
14265
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
14262
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14263
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
14264
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14265
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
14266
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-1/2 rounded bg-ods-bg/70" }) }),
14267
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
14266
14268
  ] })
14267
14269
  ] });
14268
14270
  }
@@ -14271,14 +14273,14 @@ function CampaignCardAdminSkeleton({ className }) {
14271
14273
 
14272
14274
 
14273
14275
  function GenericEntityCard({ item, className, anchorProps }) {
14274
- const href = _chunkY6I2DGKCcjs.safeHref.call(void 0, item.url);
14275
- const dateText = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14276
+ const href = _chunkSK4IVCSIcjs.safeHref.call(void 0, item.url);
14277
+ const dateText = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
14276
14278
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
14277
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14279
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14278
14280
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
14279
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14281
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
14280
14282
  item.badge ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14281
- _chunkY6I2DGKCcjs.StatusBadge,
14283
+ _chunkSK4IVCSIcjs.StatusBadge,
14282
14284
  {
14283
14285
  text: item.badge.text,
14284
14286
  variant: "button",
@@ -14296,18 +14298,18 @@ function GenericEntityCard({ item, className, anchorProps }) {
14296
14298
  ] }),
14297
14299
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-medium text-ods-text-primary", children: f.value })
14298
14300
  ] }, i)) }) : null,
14299
- dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }) }) }) : null
14301
+ dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }) }) }) : null
14300
14302
  ] }),
14301
14303
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
14302
14304
  ] });
14303
14305
  if (anchorProps) {
14304
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14306
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { ...anchorProps, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
14305
14307
  }
14306
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14308
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
14307
14309
  }
14308
14310
  function GenericEntityCardSkeleton({ className }) {
14309
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14310
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14311
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
14312
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14311
14313
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1.5", children: [
14312
14314
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-2/3 rounded bg-ods-bg" }),
14313
14315
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-4 w-16 rounded-full bg-ods-bg/60" })
@@ -14356,8 +14358,8 @@ function useChatCardItem(type, id) {
14356
14358
  const res = await _chunkYH6IQTPIcjs.embedAuthedFetch.call(void 0, url);
14357
14359
  if (!res.ok) throw new Error(`chat card fetch failed: ${res.status}`);
14358
14360
  const data = await res.json();
14359
- const items = _chunkY6I2DGKCcjs.extractItems.call(void 0, data);
14360
- const match = items.find((it) => _chunkY6I2DGKCcjs.extractItemId.call(void 0, type, it) === id);
14361
+ const items = _chunkSK4IVCSIcjs.extractItems.call(void 0, data);
14362
+ const match = items.find((it) => _chunkSK4IVCSIcjs.extractItemId.call(void 0, type, it) === id);
14361
14363
  return _nullishCoalesce(match, () => ( null));
14362
14364
  },
14363
14365
  enabled: !!url && id.length > 0,
@@ -14390,7 +14392,7 @@ function useChatCardItem(type, id) {
14390
14392
  function CardMedia({ imageSrc, imageAlt, icon }) {
14391
14393
  if (imageSrc) {
14392
14394
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "relative block size-10 shrink-0", children: [
14393
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "absolute inset-0 flex items-center justify-center rounded-sm border border-ods-border bg-ods-bg text-ods-text-primary text-h6", children: _chunkY6I2DGKCcjs.personInitials.call(void 0, imageAlt) || "?" }),
14395
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "absolute inset-0 flex items-center justify-center rounded-sm border border-ods-border bg-ods-bg text-ods-text-primary text-h6", children: _chunkSK4IVCSIcjs.personInitials.call(void 0, imageAlt) || "?" }),
14394
14396
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14395
14397
  _chunkWLSFBRT5cjs.next_image_default,
14396
14398
  {
@@ -14548,7 +14550,7 @@ function resolveFetchedCardHref({
14548
14550
  composeContentUrl
14549
14551
  }) {
14550
14552
  if (!composeContentUrl || !contentRefType || !id) return null;
14551
- const canonicalType = _chunkY6I2DGKCcjs.canonicalContentRefType.call(void 0, contentRefType);
14553
+ const canonicalType = _chunkSK4IVCSIcjs.canonicalContentRefType.call(void 0, contentRefType);
14552
14554
  return composeContentUrl({
14553
14555
  // The card registry keys some entries by the legacy rail vocabulary
14554
14556
  // (`blog_post_existing`) because that is what `buildListUrl` expects.
@@ -14576,6 +14578,7 @@ var SOURCE_ICON_NAMES = {
14576
14578
  events: "calendar",
14577
14579
  podcasts: "headphones",
14578
14580
  "customer-interviews": "users",
14581
+ faqs: "info",
14579
14582
  // Financials
14580
14583
  "investor-updates": "mail",
14581
14584
  "financial-kpis": "activity",
@@ -14599,7 +14602,13 @@ var SOURCE_ICON_NAMES = {
14599
14602
  "hubspot-tickets-anon": "hubspot",
14600
14603
  "hubspot-tickets-self": "hubspot",
14601
14604
  // Communications
14602
- "slack-messages": "slack"
14605
+ "slack-messages": "slack",
14606
+ // People-hub employee content
14607
+ "what-i-shipped": "package",
14608
+ "how-i-work": "book-open",
14609
+ // Product-hub internal
14610
+ "design-docs": "file-text",
14611
+ "openframe-tenants": "globe"
14603
14612
  };
14604
14613
  function getSourceIconName(tableId) {
14605
14614
  if (!tableId) return void 0;
@@ -14618,6 +14627,7 @@ var SOURCE_LABELS_BY_TABLE = {
14618
14627
  events: "Events",
14619
14628
  podcasts: "Podcasts",
14620
14629
  "customer-interviews": "Customer Interviews",
14630
+ faqs: "FAQs",
14621
14631
  // Financials
14622
14632
  "investor-updates": "Investor Updates",
14623
14633
  "financial-kpis": "Financial KPIs",
@@ -14647,7 +14657,13 @@ var SOURCE_LABELS_BY_TABLE = {
14647
14657
  "hubspot-tickets-anon": "Tickets",
14648
14658
  "hubspot-tickets-self": "My Tickets",
14649
14659
  // Communications
14650
- "slack-messages": "OpenMSP Community"
14660
+ "slack-messages": "OpenMSP Community",
14661
+ // People-hub employee content
14662
+ "what-i-shipped": "What I Shipped",
14663
+ "how-i-work": "How I Work",
14664
+ // Product-hub internal
14665
+ "design-docs": "Design Docs",
14666
+ "openframe-tenants": "OpenFrame Tenants"
14651
14667
  };
14652
14668
  function getSourceLabel(tableId) {
14653
14669
  return _nullishCoalesce(SOURCE_LABELS_BY_TABLE[tableId], () => ( tableId));
@@ -14665,6 +14681,7 @@ var DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = {
14665
14681
  event: "events",
14666
14682
  podcast: "podcasts",
14667
14683
  customer_interview: "customer-interviews",
14684
+ faq: "faqs",
14668
14685
  // Financials
14669
14686
  investor_update: "investor-updates",
14670
14687
  financial_kpi: "financial-kpis",
@@ -14688,7 +14705,13 @@ var DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = {
14688
14705
  hubspot_ticket_anon: "hubspot-tickets-anon",
14689
14706
  hubspot_ticket_self: "hubspot-tickets-self",
14690
14707
  // Communications
14691
- slack_message: "slack-messages"
14708
+ slack_message: "slack-messages",
14709
+ // People-hub employee content
14710
+ what_i_shipped: "what-i-shipped",
14711
+ how_i_work: "how-i-work",
14712
+ // Product-hub internal
14713
+ design_doc: "design-docs",
14714
+ openframe_tenant: "openframe-tenants"
14692
14715
  };
14693
14716
  function defaultTableIdForDocumentType(documentType) {
14694
14717
  return _nullishCoalesce(DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID[documentType], () => ( null));
@@ -14731,16 +14754,16 @@ function resolveSourceRowCTA(row, ctx = {}) {
14731
14754
  if (docTarget) {
14732
14755
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
14733
14756
  const base = `${_chunk23V5BSHDcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
14734
- href = _nullishCoalesce(_chunkY6I2DGKCcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
14757
+ href = _nullishCoalesce(_chunkSK4IVCSIcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
14735
14758
  targetPlatform = docTarget.platform;
14736
14759
  } else if (ctx.chipBasePlatform) {
14737
14760
  const base = `${_chunk23V5BSHDcjs.getBaseUrl.call(void 0, ctx.chipBasePlatform)}/knowledge-base/`;
14738
- href = _nullishCoalesce(_chunkY6I2DGKCcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
14761
+ href = _nullishCoalesce(_chunkSK4IVCSIcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
14739
14762
  targetPlatform = ctx.chipBasePlatform;
14740
14763
  } else if (ctx.baseRoute) {
14741
14764
  const synthetic = `https://_internal_.local${ctx.baseRoute.startsWith("/") ? ctx.baseRoute : "/" + ctx.baseRoute}/`;
14742
14765
  const absolute = new URL(safePath, synthetic).toString();
14743
- href = _nullishCoalesce(_chunkY6I2DGKCcjs.safeHref.call(void 0, absolute.replace("https://_internal_.local", "")), () => ( null));
14766
+ href = _nullishCoalesce(_chunkSK4IVCSIcjs.safeHref.call(void 0, absolute.replace("https://_internal_.local", "")), () => ( null));
14744
14767
  targetPlatform = _nullishCoalesce(ctx.currentPlatform, () => ( null));
14745
14768
  }
14746
14769
  }
@@ -14749,15 +14772,15 @@ function resolveSourceRowCTA(row, ctx = {}) {
14749
14772
  // Canonical vocabulary only — a rail-vocab alias would miss the host's
14750
14773
  // `hostedTypes` / `overrides` and fall through to the seam's default
14751
14774
  // `<origin>/<type>/<id>` branch. Same canonicalizer `buildListUrl` uses.
14752
- type: _chunkY6I2DGKCcjs.canonicalContentRefType.call(void 0, row.documentType),
14775
+ type: _chunkSK4IVCSIcjs.canonicalContentRefType.call(void 0, row.documentType),
14753
14776
  identifier: idValue,
14754
14777
  externalUrl: row.externalUrl,
14755
14778
  targetPlatform: _nullishCoalesce(row.targetPlatform, () => ( null))
14756
14779
  });
14757
- href = composed.href ? _nullishCoalesce(_chunkY6I2DGKCcjs.safeHref.call(void 0, composed.href), () => ( null)) : null;
14780
+ href = composed.href ? _nullishCoalesce(_chunkSK4IVCSIcjs.safeHref.call(void 0, composed.href), () => ( null)) : null;
14758
14781
  targetPlatform = composed.targetPlatform;
14759
14782
  } else if (row.externalUrl) {
14760
- href = _nullishCoalesce(_chunkY6I2DGKCcjs.safeHref.call(void 0, row.externalUrl), () => ( null));
14783
+ href = _nullishCoalesce(_chunkSK4IVCSIcjs.safeHref.call(void 0, row.externalUrl), () => ( null));
14761
14784
  targetPlatform = _nullishCoalesce(row.targetPlatform, () => ( null));
14762
14785
  }
14763
14786
  const documentType = row.documentType;
@@ -14792,11 +14815,11 @@ function resolveSourceIcon(input, ctx = {}) {
14792
14815
 
14793
14816
  function DeletedDataCard({ title, entityLabel, recoveryNote, className }) {
14794
14817
  const label = entityLabel || "Item";
14795
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_OUTER_STATIC} opacity-70 ${_nullishCoalesce(className, () => ( ""))}`, children: [
14796
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Trash2, { className: "h-4 w-4 text-ods-text-secondary" }) }),
14797
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TEXT_COL, children: [
14798
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkY6I2DGKCcjs.COMPACT_CARD_TITLE} text-ods-text-secondary line-through`, children: title || `Deleted ${label.toLowerCase()}` }) }),
14799
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkY6I2DGKCcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
14818
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_OUTER_STATIC} opacity-70 ${_nullishCoalesce(className, () => ( ""))}`, children: [
14819
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Trash2, { className: "h-4 w-4 text-ods-text-secondary" }) }),
14820
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TEXT_COL, children: [
14821
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkSK4IVCSIcjs.COMPACT_CARD_TITLE} text-ods-text-secondary line-through`, children: title || `Deleted ${label.toLowerCase()}` }) }),
14822
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkSK4IVCSIcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
14800
14823
  label,
14801
14824
  " deleted",
14802
14825
  recoveryNote ? ` \xB7 ${recoveryNote}` : ""
@@ -14842,7 +14865,7 @@ function GitHubChatCard({
14842
14865
  const title = kind === "pr_review" ? display.replace(/^by\s+/i, "").trim() || "Reviewer" : display;
14843
14866
  const status = kind === "pr_review" && reviewState ? { label: reviewStateLabel(reviewState), variant: reviewStateToVariant(reviewState) } : { label: kindLabel(kind), variant: "grey" };
14844
14867
  const idLabel = formatActivityId(chatRef.id, kind);
14845
- const dateText = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
14868
+ const dateText = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
14846
14869
  const description = [idLabel, dateText].filter(Boolean).join(" \xB7 ") || void 0;
14847
14870
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14848
14871
  MingoInfoCard,
@@ -14851,7 +14874,7 @@ function GitHubChatCard({
14851
14874
  description,
14852
14875
  icon: githubKindIcon(kind),
14853
14876
  status,
14854
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
14877
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
14855
14878
  menuGroups: cardMenuGroups(chatRef.url, discuss),
14856
14879
  menuAriaLabel: "Activity actions"
14857
14880
  }
@@ -14998,7 +15021,7 @@ function HubspotTicketChatCard({
14998
15021
  description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
14999
15022
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.TagIcon, { size: 24 }),
15000
15023
  status: statusText ? { label: statusText, variant: hubspotStatusToVariant(status) } : void 0,
15001
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15024
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15002
15025
  menuGroups: cardMenuGroups(chatRef.url, discuss, {
15003
15026
  label: "Open Ticket Details",
15004
15027
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.TagIcon, { size: 20 })
@@ -15021,7 +15044,7 @@ function FaqChatCard({
15021
15044
  description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
15022
15045
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.QuestionCircleIcon, { size: 24 }),
15023
15046
  status: { label: statusLabel, variant: "grey" },
15024
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15047
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15025
15048
  menuGroups: cardMenuGroups(chatRef.url, discuss),
15026
15049
  menuAriaLabel: "FAQ actions"
15027
15050
  }
@@ -15041,12 +15064,30 @@ function SlackChatCard({
15041
15064
  title,
15042
15065
  description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
15043
15066
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.SlackLogoGreyIcon, { size: 24 }),
15044
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15067
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15045
15068
  menuGroups: cardMenuGroups(chatRef.url, discuss),
15046
15069
  menuAriaLabel: "Message actions"
15047
15070
  }
15048
15071
  );
15049
15072
  }
15073
+ function GlyphChatCard({
15074
+ chatRef,
15075
+ icon,
15076
+ isNewTab,
15077
+ discuss
15078
+ }) {
15079
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15080
+ MingoInfoCard,
15081
+ {
15082
+ title: chatRef.title,
15083
+ description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
15084
+ icon,
15085
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15086
+ menuGroups: cardMenuGroups(chatRef.url, discuss),
15087
+ menuAriaLabel: "Card actions"
15088
+ }
15089
+ );
15090
+ }
15050
15091
  function DataRoomDocChatCard({
15051
15092
  chatRef,
15052
15093
  isNewTab,
@@ -15060,7 +15101,7 @@ function DataRoomDocChatCard({
15060
15101
  description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
15061
15102
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.FileContentIcon, { size: 24 }),
15062
15103
  status: { label: badgeText, variant: "grey" },
15063
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15104
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15064
15105
  menuGroups: cardMenuGroups(chatRef.url, discuss),
15065
15106
  menuAriaLabel: "Document actions"
15066
15107
  }
@@ -15079,7 +15120,7 @@ function GenericFinancialChatCard({
15079
15120
  title: chatRef.title,
15080
15121
  description: subtitle,
15081
15122
  icon,
15082
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15123
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15083
15124
  menuGroups: cardMenuGroups(chatRef.url, discuss),
15084
15125
  menuAriaLabel: "Document actions"
15085
15126
  }
@@ -15165,7 +15206,7 @@ function CampaignChatCard({
15165
15206
  }) {
15166
15207
  const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _377 => _377.goals])) ? item.goals.length : 0;
15167
15208
  const meta = [
15168
- _optionalChain([item, 'optionalAccess', _378 => _378.start_date]) ? _chunkY6I2DGKCcjs.formatDateShort.call(void 0, item.start_date) : null,
15209
+ _optionalChain([item, 'optionalAccess', _378 => _378.start_date]) ? _chunkSK4IVCSIcjs.formatDateShort.call(void 0, item.start_date) : null,
15169
15210
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
15170
15211
  "Marketing campaign"
15171
15212
  ].filter(Boolean).join(" \xB7 ");
@@ -15204,7 +15245,7 @@ function EntityMingoCard({
15204
15245
  imageAlt: typeof title === "string" ? title : void 0,
15205
15246
  icon: fallbackIcon,
15206
15247
  status,
15207
- anchorProps: _chunkY6I2DGKCcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15248
+ anchorProps: _chunkSK4IVCSIcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
15208
15249
  menuGroups: cardMenuGroups(chatRef.url, discuss, openDetails, externalLink),
15209
15250
  menuAriaLabel
15210
15251
  }
@@ -15216,7 +15257,7 @@ function entityCover(image, ogPlaceholder) {
15216
15257
  function statusPill(status) {
15217
15258
  const s = typeof status === "string" ? status.trim() : "";
15218
15259
  if (!s) return void 0;
15219
- const scheme = _chunkY6I2DGKCcjs.getStatusColorScheme.call(void 0, s);
15260
+ const scheme = _chunkSK4IVCSIcjs.getStatusColorScheme.call(void 0, s);
15220
15261
  const variant = scheme === "success" || scheme === "error" || scheme === "warning" ? scheme : "grey";
15221
15262
  return { label: s, variant };
15222
15263
  }
@@ -15303,7 +15344,7 @@ function InvestorUpdateChatCard({
15303
15344
  EntityMingoCard,
15304
15345
  {
15305
15346
  title,
15306
- description: _optionalChain([item, 'optionalAccess', _406 => _406.strategic_update]) || _optionalChain([item, 'optionalAccess', _407 => _407.content]) || _chunkY6I2DGKCcjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _408 => _408.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _409 => _409.period_end]), () => ( null))) || void 0,
15347
+ description: _optionalChain([item, 'optionalAccess', _406 => _406.strategic_update]) || _optionalChain([item, 'optionalAccess', _407 => _407.content]) || _chunkSK4IVCSIcjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _408 => _408.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _409 => _409.period_end]), () => ( null))) || void 0,
15307
15348
  cover: entityCover(_optionalChain([item, 'optionalAccess', _410 => _410.featured_image]), ogPlaceholder),
15308
15349
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.PresentationLineIcon, { size: 24 }),
15309
15350
  status: { label: "Investor update", variant: "grey" },
@@ -15350,15 +15391,15 @@ function ProgramChatCard({
15350
15391
  const isScheduled = _optionalChain([item, 'optionalAccess', _417 => _417.status]) === "scheduled";
15351
15392
  let typeMeta;
15352
15393
  if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _418 => _418.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
15353
- typeMeta = _chunkY6I2DGKCcjs.formatDurationCompact.call(void 0, item.duration_seconds);
15394
+ typeMeta = _chunkSK4IVCSIcjs.formatDurationCompact.call(void 0, item.duration_seconds);
15354
15395
  } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _419 => _419.location_name]) === "string" && item.location_name.trim().length > 0) {
15355
15396
  typeMeta = item.location_name;
15356
15397
  } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _420 => _420.start_at])) {
15357
- const time = _chunkY6I2DGKCcjs.formatTimeWithTimezone.call(void 0, item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
15358
- const dur = _chunkY6I2DGKCcjs.formatDurationFromRange.call(void 0, item.start_at, item.end_at);
15398
+ const time = _chunkSK4IVCSIcjs.formatTimeWithTimezone.call(void 0, item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
15399
+ const dur = _chunkSK4IVCSIcjs.formatDurationFromRange.call(void 0, item.start_at, item.end_at);
15359
15400
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
15360
15401
  }
15361
- const itemDate = _chunkY6I2DGKCcjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _421 => _421.date]), () => ( null)), { fallback: "", timezone: "local" });
15402
+ const itemDate = _chunkSK4IVCSIcjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _421 => _421.date]), () => ( null)), { fallback: "", timezone: "local" });
15362
15403
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
15363
15404
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15364
15405
  EntityMingoCard,
@@ -15385,7 +15426,7 @@ function RoadmapChatCard({
15385
15426
  const logoUrl = typeof _optionalChain([item, 'optionalAccess', _425 => _425.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
15386
15427
  const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _426 => _426.customItemId]) != null;
15387
15428
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.MapIcon, { size: 24 });
15388
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _427 => _427.customItemId]), className: "size-6" }) : logoUrl ? (
15429
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _427 => _427.customItemId]), className: "size-6" }) : logoUrl ? (
15389
15430
  // Contained (not full-bleed) so the integration logo keeps its aspect
15390
15431
  // ratio inside the bordered icon box — matches RoadmapCard.
15391
15432
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWLSFBRT5cjs.next_image_default, { src: logoUrl, alt: "", className: "size-6 object-contain", width: 24, height: 24, unoptimized: true })
@@ -15454,6 +15495,45 @@ var GITHUB_CARD_CONFIGS = {
15454
15495
  github_pr_review: { label: "GitHub review", kind: "pr_review" },
15455
15496
  github_pr_review_public: { label: "GitHub review (public)", kind: "pr_review" }
15456
15497
  };
15498
+ var REF_GLYPH_CARD_CONFIGS = {
15499
+ design_doc: { label: "Design doc", icon: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.FileContentIcon, { size: 24 }) },
15500
+ openframe_tenant: { label: "OpenFrame tenant", icon: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.BuildingsIcon, { size: 24 }) }
15501
+ };
15502
+ function refGlyphRegistryEntries() {
15503
+ return registryEntries(
15504
+ REF_GLYPH_CARD_CONFIGS,
15505
+ (cfg, docType) => refHydratedEntry(docType, cfg.label, (displayRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GlyphChatCard, { chatRef: displayRef, icon: cfg.icon(), isNewTab: opts.isNewTab, discuss: opts.discuss }))
15506
+ );
15507
+ }
15508
+ function fetchedEmployeeEntryDisplayRef(item, chatRef) {
15509
+ const it = item;
15510
+ const title = typeof _optionalChain([it, 'optionalAccess', _432 => _432.title]) === "string" && it.title.trim().length > 0 ? it.title.trim() : chatRef.title;
15511
+ const author = typeof _optionalChain([it, 'optionalAccess', _433 => _433.author, 'optionalAccess', _434 => _434.full_name]) === "string" ? it.author.full_name.trim() : "";
15512
+ const summary = typeof _optionalChain([it, 'optionalAccess', _435 => _435.summary]) === "string" ? it.summary.trim() : "";
15513
+ const preview = [author, summary].filter((x) => x.length > 0).join(" \xB7 ");
15514
+ return { ...chatRef, title, preview: preview.length > 0 ? preview : chatRef.preview };
15515
+ }
15516
+ var EMPLOYEE_ENTRY_CARD_CONFIGS = {
15517
+ what_i_shipped: { label: "What I Shipped", icon: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.Rocket02Icon, { size: 24 }) },
15518
+ how_i_work: { label: "How I Work", icon: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.ClipboardListIcon, { size: 24 }) }
15519
+ };
15520
+ function employeeEntryRegistryEntries() {
15521
+ return registryEntries(EMPLOYEE_ENTRY_CARD_CONFIGS, (cfg, docType) => ({
15522
+ label: cfg.label,
15523
+ bareInline: true,
15524
+ contentRefType: docType,
15525
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
15526
+ render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15527
+ GlyphChatCard,
15528
+ {
15529
+ chatRef: fetchedEmployeeEntryDisplayRef(item, chatRef),
15530
+ icon: cfg.icon(),
15531
+ isNewTab: opts.isNewTab,
15532
+ discuss: opts.discuss
15533
+ }
15534
+ )
15535
+ }));
15536
+ }
15457
15537
  function githubRegistryEntries() {
15458
15538
  return registryEntries(
15459
15539
  GITHUB_CARD_CONFIGS,
@@ -15470,7 +15550,7 @@ function programRegistryEntries() {
15470
15550
  label: cfg.label,
15471
15551
  contentRefType: cfg.contentRefType,
15472
15552
  bareInline: true,
15473
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.ProgramCardSkeleton, { size: "sm" }),
15553
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.ProgramCardSkeleton, { size: "sm" }),
15474
15554
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15475
15555
  ProgramChatCard,
15476
15556
  {
@@ -15480,7 +15560,7 @@ function programRegistryEntries() {
15480
15560
  discuss: opts.discuss,
15481
15561
  configKey: cfg.configKey,
15482
15562
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
15483
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _432 => _432.extras, 'optionalAccess', _433 => _433.buildOgPlaceholderUrl, 'optionalCall', _434 => _434(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _435 => _435.title]), () => ( "")))]), () => ( null))
15563
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _436 => _436.extras, 'optionalAccess', _437 => _437.buildOgPlaceholderUrl, 'optionalCall', _438 => _438(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _439 => _439.title]), () => ( "")))]), () => ( null))
15484
15564
  }
15485
15565
  )
15486
15566
  }));
@@ -15501,7 +15581,7 @@ var ROADMAP_CARD_CONFIGS = {
15501
15581
  // The card's destination IS the ClickUp deep link, derived from the
15502
15582
  // task id post-fetch (the refs frame used to carry it).
15503
15583
  noComposedHref: true,
15504
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _436 => _436.id]) != null ? clickupTaskUrl(String(item.id)) : null
15584
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _440 => _440.id]) != null ? clickupTaskUrl(String(item.id)) : null
15505
15585
  }
15506
15586
  };
15507
15587
  function roadmapRegistryEntries() {
@@ -15511,7 +15591,7 @@ function roadmapRegistryEntries() {
15511
15591
  bareInline: true,
15512
15592
  ...cfg.noComposedHref ? { noComposedHref: true } : {},
15513
15593
  ...cfg.fallbackHref ? { fallbackHref: cfg.fallbackHref } : {},
15514
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.RoadmapCardSkeleton, { size: "sm" }),
15594
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.RoadmapCardSkeleton, { size: "sm" }),
15515
15595
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15516
15596
  RoadmapChatCard,
15517
15597
  {
@@ -15543,11 +15623,14 @@ var CHAT_CARD_REGISTRY = {
15543
15623
  DeletedDataCard,
15544
15624
  {
15545
15625
  title: chatRef.title && chatRef.title !== chatRef.id ? chatRef.title : null,
15546
- entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _437 => _437.metadata, 'optionalAccess', _438 => _438.entity_label]), () => ( null)),
15547
- recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _439 => _439.metadata, 'optionalAccess', _440 => _440.recovery_note]), () => ( null))
15626
+ entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _441 => _441.metadata, 'optionalAccess', _442 => _442.entity_label]), () => ( null)),
15627
+ recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _443 => _443.metadata, 'optionalAccess', _444 => _444.recovery_note]), () => ( null))
15548
15628
  }
15549
15629
  )
15550
15630
  },
15631
+ // ───────── ref-only types (no list endpoint; the ChatRef IS the card) ─────────
15632
+ ...refGlyphRegistryEntries(),
15633
+ ...employeeEntryRegistryEntries(),
15551
15634
  slack_message: refHydratedEntry("slack_message", "Slack message", (displayRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SlackChatCard, { chatRef: displayRef, isNewTab: opts.isNewTab, discuss: opts.discuss })),
15552
15635
  // FAQ hydrates from its EXISTING public list API (`/api/faqs?ids=` —
15553
15636
  // also feeding related-content rails, so its base path must not move).
@@ -15558,7 +15641,7 @@ var CHAT_CARD_REGISTRY = {
15558
15641
  bareInline: true,
15559
15642
  contentRefType: "faq",
15560
15643
  noComposedHref: true,
15561
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _441 => _441.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
15644
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _445 => _445.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
15562
15645
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
15563
15646
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FaqChatCard, { chatRef: fetchedFaqDisplayRef(item, chatRef), isNewTab: opts.isNewTab, discuss: opts.discuss })
15564
15647
  },
@@ -15584,7 +15667,7 @@ var CHAT_CARD_REGISTRY = {
15584
15667
  label: "Blog post",
15585
15668
  contentRefType: "blog_post_existing",
15586
15669
  bareInline: true,
15587
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.BlogCardSkeleton, { size: "sm" }),
15670
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.BlogCardSkeleton, { size: "sm" }),
15588
15671
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15589
15672
  BlogChatCard,
15590
15673
  {
@@ -15592,8 +15675,8 @@ var CHAT_CARD_REGISTRY = {
15592
15675
  chatRef,
15593
15676
  isNewTab: opts.isNewTab,
15594
15677
  discuss: opts.discuss,
15595
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _442 => _442.extras, 'optionalAccess', _443 => _443.buildOgPlaceholderUrl, 'optionalCall', _444 => _444(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _445 => _445.title]), () => ( "")))]), () => ( null)),
15596
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _446 => _446.metadata, 'optionalAccess', _447 => _447.hasEmbeddedVideo]) === true
15678
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _446 => _446.extras, 'optionalAccess', _447 => _447.buildOgPlaceholderUrl, 'optionalCall', _448 => _448(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _449 => _449.title]), () => ( "")))]), () => ( null)),
15679
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _450 => _450.metadata, 'optionalAccess', _451 => _451.hasEmbeddedVideo]) === true
15597
15680
  }
15598
15681
  )
15599
15682
  },
@@ -15601,7 +15684,7 @@ var CHAT_CARD_REGISTRY = {
15601
15684
  label: "Case study",
15602
15685
  contentRefType: "case_study",
15603
15686
  bareInline: true,
15604
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.CaseStudyCardSkeleton, { size: "sm" }),
15687
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.CaseStudyCardSkeleton, { size: "sm" }),
15605
15688
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15606
15689
  CaseStudyChatCard,
15607
15690
  {
@@ -15609,7 +15692,7 @@ var CHAT_CARD_REGISTRY = {
15609
15692
  chatRef,
15610
15693
  isNewTab: opts.isNewTab,
15611
15694
  discuss: opts.discuss,
15612
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _448 => _448.extras, 'optionalAccess', _449 => _449.buildOgPlaceholderUrl, 'optionalCall', _450 => _450(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _451 => _451.title]), () => ( "")))]), () => ( null))
15695
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _452 => _452.extras, 'optionalAccess', _453 => _453.buildOgPlaceholderUrl, 'optionalCall', _454 => _454(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _455 => _455.title]), () => ( "")))]), () => ( null))
15613
15696
  }
15614
15697
  )
15615
15698
  },
@@ -15617,7 +15700,7 @@ var CHAT_CARD_REGISTRY = {
15617
15700
  label: "Customer interview",
15618
15701
  contentRefType: "customer_interview",
15619
15702
  bareInline: true,
15620
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.CustomerInterviewCardSkeleton, { size: "sm" }),
15703
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.CustomerInterviewCardSkeleton, { size: "sm" }),
15621
15704
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15622
15705
  CustomerInterviewChatCard,
15623
15706
  {
@@ -15625,7 +15708,7 @@ var CHAT_CARD_REGISTRY = {
15625
15708
  chatRef,
15626
15709
  isNewTab: opts.isNewTab,
15627
15710
  discuss: opts.discuss,
15628
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _452 => _452.extras, 'optionalAccess', _453 => _453.buildOgPlaceholderUrl, 'optionalCall', _454 => _454(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _455 => _455.title]), () => ( "")))]), () => ( null))
15711
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _456 => _456.extras, 'optionalAccess', _457 => _457.buildOgPlaceholderUrl, 'optionalCall', _458 => _458(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _459 => _459.title]), () => ( "")))]), () => ( null))
15629
15712
  }
15630
15713
  )
15631
15714
  },
@@ -15633,9 +15716,9 @@ var CHAT_CARD_REGISTRY = {
15633
15716
  label: "Product release",
15634
15717
  contentRefType: "product_release",
15635
15718
  bareInline: true,
15636
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.ProductReleaseCardSkeleton, { size: "sm" }),
15719
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.ProductReleaseCardSkeleton, { size: "sm" }),
15637
15720
  render: (item, chatRef, opts) => {
15638
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _456 => _456.extras, 'optionalAccess', _457 => _457.buildProductReleaseCardProps]), () => ( _chunkY6I2DGKCcjs.defaultBuildProductReleaseCardProps));
15721
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _460 => _460.extras, 'optionalAccess', _461 => _461.buildProductReleaseCardProps]), () => ( _chunkSK4IVCSIcjs.defaultBuildProductReleaseCardProps));
15639
15722
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15640
15723
  ProductReleaseChatCard,
15641
15724
  {
@@ -15653,7 +15736,7 @@ var CHAT_CARD_REGISTRY = {
15653
15736
  label: "Investor update",
15654
15737
  contentRefType: "investor_update",
15655
15738
  bareInline: true,
15656
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.InvestorUpdateCardSkeleton, { size: "sm" }),
15739
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.InvestorUpdateCardSkeleton, { size: "sm" }),
15657
15740
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15658
15741
  InvestorUpdateChatCard,
15659
15742
  {
@@ -15661,7 +15744,7 @@ var CHAT_CARD_REGISTRY = {
15661
15744
  chatRef,
15662
15745
  isNewTab: opts.isNewTab,
15663
15746
  discuss: opts.discuss,
15664
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _458 => _458.extras, 'optionalAccess', _459 => _459.buildOgPlaceholderUrl, 'optionalCall', _460 => _460(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _461 => _461.title]), () => ( "")))]), () => ( null))
15747
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _462 => _462.extras, 'optionalAccess', _463 => _463.buildOgPlaceholderUrl, 'optionalCall', _464 => _464(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _465 => _465.title]), () => ( "")))]), () => ( null))
15665
15748
  }
15666
15749
  )
15667
15750
  },
@@ -15671,7 +15754,7 @@ var CHAT_CARD_REGISTRY = {
15671
15754
  bareInline: true,
15672
15755
  // "Display" affordance (verbatim guide body) instead of "Ask".
15673
15756
  displayAction: true,
15674
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkY6I2DGKCcjs.OnboardingGuideCardSkeleton, { size: "sm" }),
15757
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSK4IVCSIcjs.OnboardingGuideCardSkeleton, { size: "sm" }),
15675
15758
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15676
15759
  OnboardingGuideChatCard,
15677
15760
  {
@@ -15679,7 +15762,7 @@ var CHAT_CARD_REGISTRY = {
15679
15762
  chatRef,
15680
15763
  isNewTab: opts.isNewTab,
15681
15764
  discuss: opts.discuss,
15682
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _462 => _462.extras, 'optionalAccess', _463 => _463.buildOgPlaceholderUrl, 'optionalCall', _464 => _464(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _465 => _465.title]), () => ( "")))]), () => ( null))
15765
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _466 => _466.extras, 'optionalAccess', _467 => _467.buildOgPlaceholderUrl, 'optionalCall', _468 => _468(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _469 => _469.title]), () => ( "")))]), () => ( null))
15683
15766
  }
15684
15767
  )
15685
15768
  },
@@ -15690,7 +15773,7 @@ var CHAT_CARD_REGISTRY = {
15690
15773
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
15691
15774
  // No public viewer — synthesize the hub-internal admin URL post-fetch
15692
15775
  // so the wrapper + isNewTab computation see the actual destination.
15693
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _466 => _466.id]) ? `/admin/campaigns/${encodeURIComponent(String(item.id))}` : null,
15776
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _470 => _470.id]) ? `/admin/campaigns/${encodeURIComponent(String(item.id))}` : null,
15694
15777
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignChatCard, { item, chatRef, isNewTab: opts.isNewTab, discuss: opts.discuss })
15695
15778
  },
15696
15779
  ...roadmapRegistryEntries()
@@ -15709,13 +15792,13 @@ function ChatCardNavWrap({
15709
15792
  if (!href) return;
15710
15793
  const targetEl = e.target;
15711
15794
  const host = e.currentTarget;
15712
- if (!_optionalChain([host, 'optionalAccess', _467 => _467.contains, 'call', _468 => _468(targetEl)])) return;
15713
- if (_optionalChain([targetEl, 'optionalAccess', _469 => _469.closest, 'optionalCall', _470 => _470("button")])) return;
15714
- if (!_optionalChain([targetEl, 'optionalAccess', _471 => _471.closest, 'optionalCall', _472 => _472("a")])) return;
15795
+ if (!_optionalChain([host, 'optionalAccess', _471 => _471.contains, 'call', _472 => _472(targetEl)])) return;
15796
+ if (_optionalChain([targetEl, 'optionalAccess', _473 => _473.closest, 'optionalCall', _474 => _474("button")])) return;
15797
+ if (!_optionalChain([targetEl, 'optionalAccess', _475 => _475.closest, 'optionalCall', _476 => _476("a")])) return;
15715
15798
  const handled = executeNavigation({ event: e, runtime, href, path, targetPlatform, fallbackNavigate: router.push });
15716
15799
  if (!handled) return;
15717
15800
  e.stopPropagation();
15718
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _473 => _473.closeChat])) panel.closeChat();
15801
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _477 => _477.closeChat])) panel.closeChat();
15719
15802
  };
15720
15803
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
15721
15804
  }
@@ -15737,7 +15820,7 @@ function ChatCardLoader({
15737
15820
  title: chatRef.title,
15738
15821
  externalUrl: chatRef.url,
15739
15822
  targetPlatform: chatRef.targetPlatform,
15740
- path: typeof _optionalChain([chatRef, 'access', _474 => _474.metadata, 'optionalAccess', _475 => _475.path]) === "string" ? chatRef.metadata.path : null
15823
+ path: typeof _optionalChain([chatRef, 'access', _478 => _478.metadata, 'optionalAccess', _479 => _479.path]) === "string" ? chatRef.metadata.path : null
15741
15824
  },
15742
15825
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
15743
15826
  );
@@ -15751,11 +15834,11 @@ function ChatCardLoader({
15751
15834
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
15752
15835
  const fetchEntry = entry && entry.contentRefType ? entry : null;
15753
15836
  const { item, isLoading, isError, isFetched } = useChatCardItem(
15754
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _476 => _476.contentRefType]), () => ( "")),
15837
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _480 => _480.contentRefType]), () => ( "")),
15755
15838
  fetchEntry ? resolvedChatRef.id : ""
15756
15839
  );
15757
15840
  if (!entry) return null;
15758
- const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _477 => _477.contentRefType]) && !resolvedChatRef.url && item ? resolveFetchedCardHref({
15841
+ const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _481 => _481.contentRefType]) && !resolvedChatRef.url && item ? resolveFetchedCardHref({
15759
15842
  contentRefType: fetchEntry.contentRefType,
15760
15843
  id: resolvedChatRef.id,
15761
15844
  item,
@@ -15763,18 +15846,18 @@ function ChatCardLoader({
15763
15846
  }) : null;
15764
15847
  const hrefChoice = fetchEntry && !resolvedChatRef.url && item ? pickFetchedCardHref({
15765
15848
  composed: composedHref,
15766
- itemHref: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _478 => _478.fallbackHref, 'optionalCall', _479 => _479(item)]), () => ( null)),
15849
+ itemHref: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _482 => _482.fallbackHref, 'optionalCall', _483 => _483(item)]), () => ( null)),
15767
15850
  allowComposed: !fetchEntry.noComposedHref
15768
15851
  }) : null;
15769
15852
  const hrefResolvedChatRef = hrefChoice ? {
15770
15853
  ...resolvedChatRef,
15771
- url: _chunkY6I2DGKCcjs.safeHref.call(void 0, hrefChoice.href),
15854
+ url: _chunkSK4IVCSIcjs.safeHref.call(void 0, hrefChoice.href),
15772
15855
  // The `item` branch carries no platform of its own — keep the ref's.
15773
15856
  targetPlatform: _nullishCoalesce(_nullishCoalesce(hrefChoice.targetPlatform, () => ( resolvedChatRef.targetPlatform)), () => ( null))
15774
15857
  } : resolvedChatRef;
15775
15858
  const fetchedTitle = fetchEntry && item ? readFetchedCardTitle(item) : null;
15776
15859
  const finalChatRef = fetchedTitle && (!hrefResolvedChatRef.title || hrefResolvedChatRef.title === hrefResolvedChatRef.id) ? { ...hrefResolvedChatRef, title: fetchedTitle } : hrefResolvedChatRef;
15777
- const isNewTab = _chunkY6I2DGKCcjs.computeIsNewTab.call(void 0, runtime, finalChatRef.url, _nullishCoalesce(finalChatRef.targetPlatform, () => ( null)));
15860
+ const isNewTab = _chunkSK4IVCSIcjs.computeIsNewTab.call(void 0, runtime, finalChatRef.url, _nullishCoalesce(finalChatRef.targetPlatform, () => ( null)));
15778
15861
  const useDisplay = !!entry.displayAction && !!onDisplay;
15779
15862
  const discussFn = useDisplay ? onDisplay : onDiscuss;
15780
15863
  const discuss = discussFn ? {
@@ -15797,7 +15880,7 @@ function ChatCardLoader({
15797
15880
  isNewTab,
15798
15881
  discuss
15799
15882
  };
15800
- const path = typeof _optionalChain([finalChatRef, 'access', _480 => _480.metadata, 'optionalAccess', _481 => _481.path]) === "string" ? finalChatRef.metadata.path : null;
15883
+ const path = typeof _optionalChain([finalChatRef, 'access', _484 => _484.metadata, 'optionalAccess', _485 => _485.path]) === "string" ? finalChatRef.metadata.path : null;
15801
15884
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
15802
15885
  ChatCardNavWrap,
15803
15886
  {
@@ -15821,7 +15904,7 @@ function ChatCardLoader({
15821
15904
  if (!fetchEntry) {
15822
15905
  return finish(entry.render(void 0, finalChatRef, renderOpts));
15823
15906
  }
15824
- if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _482 => _482.skeleton, 'optionalCall', _483 => _483()]), () => ( null)) });
15907
+ if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _486 => _486.skeleton, 'optionalCall', _487 => _487()]), () => ( null)) });
15825
15908
  if (!item) {
15826
15909
  if (isError) {
15827
15910
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardLoadFailure, { label: entry.label, id: finalChatRef.id, detail: "Failed to load" });
@@ -16181,7 +16264,7 @@ function useChunkCatchup({
16181
16264
  if (catchupRun.current === run) {
16182
16265
  if (currentDialogId !== dialogIdRef.current) {
16183
16266
  catchupRun.current = null;
16184
- if (_optionalChain([pendingCatchupRef, 'access', _484 => _484.current, 'optionalAccess', _485 => _485.dialogId]) === currentDialogId) {
16267
+ if (_optionalChain([pendingCatchupRef, 'access', _488 => _488.current, 'optionalAccess', _489 => _489.dialogId]) === currentDialogId) {
16185
16268
  pendingCatchupRef.current = null;
16186
16269
  }
16187
16270
  } else {
@@ -16192,7 +16275,7 @@ function useChunkCatchup({
16192
16275
  if (pending.dialogId === currentDialogId) {
16193
16276
  rearmForQueuedCatchup();
16194
16277
  try {
16195
- await _optionalChain([catchUpChunksRef, 'access', _486 => _486.current, 'optionalCall', _487 => _487(pending.fromSequenceId)]);
16278
+ await _optionalChain([catchUpChunksRef, 'access', _490 => _490.current, 'optionalCall', _491 => _491(pending.fromSequenceId)]);
16196
16279
  } catch (rerunError) {
16197
16280
  console.error("Queued catch-up re-run failed:", rerunError);
16198
16281
  }
@@ -16259,7 +16342,7 @@ function useChunkCatchup({
16259
16342
 
16260
16343
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
16261
16344
  function prefersReducedMotion() {
16262
- return typeof window !== "undefined" && _optionalChain([window, 'access', _488 => _488.matchMedia, 'optionalCall', _489 => _489("(prefers-reduced-motion: reduce)"), 'access', _490 => _490.matches]) === true;
16345
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _492 => _492.matchMedia, 'optionalCall', _493 => _493("(prefers-reduced-motion: reduce)"), 'access', _494 => _494.matches]) === true;
16263
16346
  }
16264
16347
  function useScriptedStream(frames, resetKey, enabled = true) {
16265
16348
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -16270,7 +16353,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
16270
16353
  setIndex(0);
16271
16354
  }
16272
16355
  _react.useEffect.call(void 0, () => {
16273
- const mq = _optionalChain([window, 'access', _491 => _491.matchMedia, 'optionalCall', _492 => _492("(prefers-reduced-motion: reduce)")]);
16356
+ const mq = _optionalChain([window, 'access', _495 => _495.matchMedia, 'optionalCall', _496 => _496("(prefers-reduced-motion: reduce)")]);
16274
16357
  const sync = () => setReducedMotion(mq ? mq.matches : prefersReducedMotion());
16275
16358
  sync();
16276
16359
  if (!mq) return void 0;
@@ -16413,7 +16496,7 @@ function useJetStreamDialogSubscription({
16413
16496
  const lifecycle = _chunkI5JVSFNVcjs.startConnectionLifecycle.call(void 0, {
16414
16497
  conn: sharedConn,
16415
16498
  wsUrl,
16416
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _493 => _493.current, 'optionalCall', _494 => _494()]),
16499
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _497 => _497.current, 'optionalCall', _498 => _498()]),
16417
16500
  backoff: reconnectionBackoffRef.current,
16418
16501
  getFreshUrl: () => getNatsWsUrlRef.current(),
16419
16502
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -16428,7 +16511,7 @@ function useJetStreamDialogSubscription({
16428
16511
  setReconnectionCount((c) => c + 1);
16429
16512
  }
16430
16513
  hadConnectionBeforeRef.current = true;
16431
- _optionalChain([onConnectRef, 'access', _495 => _495.current, 'optionalCall', _496 => _496()]);
16514
+ _optionalChain([onConnectRef, 'access', _499 => _499.current, 'optionalCall', _500 => _500()]);
16432
16515
  }
16433
16516
  if (status === "error") {
16434
16517
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -16438,7 +16521,7 @@ function useJetStreamDialogSubscription({
16438
16521
  setIsConnected(false);
16439
16522
  setIsSubscribed(false);
16440
16523
  tearDownSubscription();
16441
- _optionalChain([onDisconnectRef, 'access', _497 => _497.current, 'optionalCall', _498 => _498()]);
16524
+ _optionalChain([onDisconnectRef, 'access', _501 => _501.current, 'optionalCall', _502 => _502()]);
16442
16525
  }
16443
16526
  }
16444
16527
  });
@@ -16564,7 +16647,7 @@ function useJetStreamDialogSubscription({
16564
16647
  }
16565
16648
  subscriptionRef.current = handle;
16566
16649
  setIsSubscribed(true);
16567
- _optionalChain([onSubscribedRef, 'access', _499 => _499.current, 'optionalCall', _500 => _500()]);
16650
+ _optionalChain([onSubscribedRef, 'access', _503 => _503.current, 'optionalCall', _504 => _504()]);
16568
16651
  } catch (e50) {
16569
16652
  if (!cancelled) {
16570
16653
  setIsSubscribed(false);
@@ -16680,20 +16763,20 @@ function useNatsDialogSubscription({
16680
16763
  const tearDownSubscriptions = () => {
16681
16764
  subscriptionRefs.current.forEach((sub) => {
16682
16765
  try {
16683
- _optionalChain([sub, 'optionalAccess', _501 => _501.unsubscribe, 'call', _502 => _502()]);
16766
+ _optionalChain([sub, 'optionalAccess', _505 => _505.unsubscribe, 'call', _506 => _506()]);
16684
16767
  } catch (e52) {
16685
16768
  }
16686
16769
  });
16687
16770
  subscriptionRefs.current.clear();
16688
16771
  lastSubscribedDialogIdRef.current = null;
16689
- _optionalChain([abortControllerRef, 'access', _503 => _503.current, 'optionalAccess', _504 => _504.abort, 'call', _505 => _505()]);
16772
+ _optionalChain([abortControllerRef, 'access', _507 => _507.current, 'optionalAccess', _508 => _508.abort, 'call', _509 => _509()]);
16690
16773
  abortControllerRef.current = null;
16691
16774
  };
16692
16775
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
16693
16776
  const lifecycle = _chunkI5JVSFNVcjs.startConnectionLifecycle.call(void 0, {
16694
16777
  conn: sharedConn,
16695
16778
  wsUrl,
16696
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _506 => _506.current, 'optionalCall', _507 => _507()]),
16779
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _510 => _510.current, 'optionalCall', _511 => _511()]),
16697
16780
  backoff: reconnectionBackoffRef.current,
16698
16781
  getFreshUrl: () => getNatsWsUrlRef.current(),
16699
16782
  shouldRetryOn: isDisconnectStatus,
@@ -16704,7 +16787,7 @@ function useNatsDialogSubscription({
16704
16787
  setReconnectionCount((c) => c + 1);
16705
16788
  }
16706
16789
  hadConnectionBeforeRef.current = true;
16707
- _optionalChain([onConnectRef, 'access', _508 => _508.current, 'optionalCall', _509 => _509()]);
16790
+ _optionalChain([onConnectRef, 'access', _512 => _512.current, 'optionalCall', _513 => _513()]);
16708
16791
  }
16709
16792
  if (status === "error") {
16710
16793
  console.warn("[NATS] protocol error:", evt.data);
@@ -16714,7 +16797,7 @@ function useNatsDialogSubscription({
16714
16797
  setIsConnected(false);
16715
16798
  setIsSubscribed(false);
16716
16799
  tearDownSubscriptions();
16717
- _optionalChain([onDisconnectRef, 'access', _510 => _510.current, 'optionalCall', _511 => _511()]);
16800
+ _optionalChain([onDisconnectRef, 'access', _514 => _514.current, 'optionalCall', _515 => _515()]);
16718
16801
  }
16719
16802
  }
16720
16803
  });
@@ -16745,13 +16828,13 @@ function useNatsDialogSubscription({
16745
16828
  setIsSubscribed(false);
16746
16829
  subscriptionRefs.current.forEach((sub) => {
16747
16830
  try {
16748
- _optionalChain([sub, 'optionalAccess', _512 => _512.unsubscribe, 'call', _513 => _513()]);
16831
+ _optionalChain([sub, 'optionalAccess', _516 => _516.unsubscribe, 'call', _517 => _517()]);
16749
16832
  } catch (e53) {
16750
16833
  }
16751
16834
  });
16752
16835
  subscriptionRefs.current.clear();
16753
16836
  lastSubscribedDialogIdRef.current = null;
16754
- _optionalChain([abortControllerRef, 'access', _514 => _514.current, 'optionalAccess', _515 => _515.abort, 'call', _516 => _516()]);
16837
+ _optionalChain([abortControllerRef, 'access', _518 => _518.current, 'optionalAccess', _519 => _519.abort, 'call', _520 => _520()]);
16755
16838
  abortControllerRef.current = null;
16756
16839
  }
16757
16840
  return void 0;
@@ -16763,12 +16846,12 @@ function useNatsDialogSubscription({
16763
16846
  if (subscriptionRefs.current.size > 0) {
16764
16847
  subscriptionRefs.current.forEach((sub) => {
16765
16848
  try {
16766
- _optionalChain([sub, 'optionalAccess', _517 => _517.unsubscribe, 'call', _518 => _518()]);
16849
+ _optionalChain([sub, 'optionalAccess', _521 => _521.unsubscribe, 'call', _522 => _522()]);
16767
16850
  } catch (e54) {
16768
16851
  }
16769
16852
  });
16770
16853
  subscriptionRefs.current.clear();
16771
- _optionalChain([abortControllerRef, 'access', _519 => _519.current, 'optionalAccess', _520 => _520.abort, 'call', _521 => _521()]);
16854
+ _optionalChain([abortControllerRef, 'access', _523 => _523.current, 'optionalAccess', _524 => _524.abort, 'call', _525 => _525()]);
16772
16855
  }
16773
16856
  abortControllerRef.current = new AbortController();
16774
16857
  const abort = abortControllerRef.current;
@@ -16798,7 +16881,7 @@ function useNatsDialogSubscription({
16798
16881
  });
16799
16882
  lastSubscribedDialogIdRef.current = dialogId;
16800
16883
  setIsSubscribed(true);
16801
- _optionalChain([onSubscribedRef, 'access', _522 => _522.current, 'optionalCall', _523 => _523()]);
16884
+ _optionalChain([onSubscribedRef, 'access', _526 => _526.current, 'optionalCall', _527 => _527()]);
16802
16885
  };
16803
16886
  if (isConnectedRef.current) {
16804
16887
  createSubscriptions();
@@ -16809,7 +16892,7 @@ function useNatsDialogSubscription({
16809
16892
  abort.abort();
16810
16893
  subscriptions.forEach((sub) => {
16811
16894
  try {
16812
- _optionalChain([sub, 'optionalAccess', _524 => _524.unsubscribe, 'call', _525 => _525()]);
16895
+ _optionalChain([sub, 'optionalAccess', _528 => _528.unsubscribe, 'call', _529 => _529()]);
16813
16896
  } catch (e56) {
16814
16897
  }
16815
16898
  });
@@ -16848,7 +16931,7 @@ function useNatsDialogSubscription({
16848
16931
  });
16849
16932
  lastSubscribedDialogIdRef.current = currentDialogId;
16850
16933
  setIsSubscribed(true);
16851
- _optionalChain([onSubscribedRef, 'access', _526 => _526.current, 'optionalCall', _527 => _527()]);
16934
+ _optionalChain([onSubscribedRef, 'access', _530 => _530.current, 'optionalCall', _531 => _531()]);
16852
16935
  } else if (subscriptionRefs.current.size > 0) {
16853
16936
  setIsSubscribed(true);
16854
16937
  }
@@ -16856,10 +16939,10 @@ function useNatsDialogSubscription({
16856
16939
  return { isConnected, isSubscribed, reconnectionCount };
16857
16940
  }
16858
16941
  function buildNatsWsUrl(apiBaseUrl, options) {
16859
- const path = _optionalChain([options, 'optionalAccess', _528 => _528.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
16942
+ const path = _optionalChain([options, 'optionalAccess', _532 => _532.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
16860
16943
  const u = new URL(path, apiBaseUrl);
16861
16944
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
16862
- if (_optionalChain([options, 'optionalAccess', _529 => _529.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _530 => _530.token])) {
16945
+ if (_optionalChain([options, 'optionalAccess', _533 => _533.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _534 => _534.token])) {
16863
16946
  u.searchParams.set("authorization", options.token);
16864
16947
  }
16865
16948
  return u.toString();
@@ -16877,7 +16960,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
16877
16960
  const data = await res.json();
16878
16961
  return _nullishCoalesce(data.commands, () => ( []));
16879
16962
  } catch (err) {
16880
- if (_optionalChain([err, 'optionalAccess', _531 => _531.name]) === "AbortError") throw err;
16963
+ if (_optionalChain([err, 'optionalAccess', _535 => _535.name]) === "AbortError") throw err;
16881
16964
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
16882
16965
  return [];
16883
16966
  }
@@ -16885,8 +16968,8 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
16885
16968
  var NO_COMMANDS = [];
16886
16969
  function useSlashCommands(prefix, commandsUrl) {
16887
16970
  const [answered, setAnswered] = _react.useState.call(void 0, null);
16888
- const commands = prefix != null && _optionalChain([answered, 'optionalAccess', _532 => _532.prefix]) === prefix ? answered.commands : NO_COMMANDS;
16889
- const loading = prefix != null && _optionalChain([answered, 'optionalAccess', _533 => _533.prefix]) !== prefix;
16971
+ const commands = prefix != null && _optionalChain([answered, 'optionalAccess', _536 => _536.prefix]) === prefix ? answered.commands : NO_COMMANDS;
16972
+ const loading = prefix != null && _optionalChain([answered, 'optionalAccess', _537 => _537.prefix]) !== prefix;
16890
16973
  _react.useEffect.call(void 0, () => {
16891
16974
  if (prefix == null) return void 0;
16892
16975
  let cancelled = false;
@@ -16896,7 +16979,7 @@ function useSlashCommands(prefix, commandsUrl) {
16896
16979
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
16897
16980
  if (!cancelled) setAnswered({ prefix, commands: next });
16898
16981
  } catch (err) {
16899
- if (!cancelled && _optionalChain([err, 'optionalAccess', _534 => _534.name]) !== "AbortError") {
16982
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _538 => _538.name]) !== "AbortError") {
16900
16983
  console.warn("[use-slash-commands] fetch failed:", err);
16901
16984
  setAnswered({ prefix, commands: NO_COMMANDS });
16902
16985
  }
@@ -16919,7 +17002,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
16919
17002
  const query = _reactquery.useQuery.call(void 0, {
16920
17003
  queryKey: ["chat-slash-commands", commandsUrl],
16921
17004
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
16922
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _535 => _535.enabled]), () => ( true)),
17005
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _539 => _539.enabled]), () => ( true)),
16923
17006
  staleTime: Infinity,
16924
17007
  gcTime: Infinity,
16925
17008
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -16958,21 +17041,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
16958
17041
  }
16959
17042
  const data = await res.json();
16960
17043
  return {
16961
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _536 => _536.name]), () => ( null)),
16962
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _537 => _537.icon]), () => ( null)),
16963
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _538 => _538.greeting]), () => ( null)),
16964
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _539 => _539.enabledRagTableIds]), () => ( [])),
16965
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _540 => _540.quickActions]), () => ( [])),
16966
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _541 => _541.suggestedQueries]), () => ( []))
17044
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _540 => _540.name]), () => ( null)),
17045
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _541 => _541.icon]), () => ( null)),
17046
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _542 => _542.greeting]), () => ( null)),
17047
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _543 => _543.enabledRagTableIds]), () => ( [])),
17048
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _544 => _544.quickActions]), () => ( [])),
17049
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _545 => _545.suggestedQueries]), () => ( []))
16967
17050
  };
16968
17051
  } catch (err) {
16969
- if (_optionalChain([err, 'optionalAccess', _542 => _542.name]) === "AbortError") throw err;
17052
+ if (_optionalChain([err, 'optionalAccess', _546 => _546.name]) === "AbortError") throw err;
16970
17053
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
16971
17054
  return EMPTY_STATE_FALLBACK;
16972
17055
  }
16973
17056
  }
16974
17057
  function useEmptyStateConfig(emptyStateUrl, options) {
16975
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _543 => _543.enabled]), () => ( true))) && !!emptyStateUrl;
17058
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _547 => _547.enabled]), () => ( true))) && !!emptyStateUrl;
16976
17059
  const query = _reactquery.useQuery.call(void 0, {
16977
17060
  queryKey: ["chat-empty-state", emptyStateUrl],
16978
17061
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -17001,7 +17084,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
17001
17084
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
17002
17085
  function uploadWithProgress(url, file, token, onProgress, signal) {
17003
17086
  return new Promise((resolve, reject) => {
17004
- if (_optionalChain([signal, 'optionalAccess', _544 => _544.aborted])) {
17087
+ if (_optionalChain([signal, 'optionalAccess', _548 => _548.aborted])) {
17005
17088
  reject(new Error("Upload cancelled"));
17006
17089
  return;
17007
17090
  }
@@ -17043,7 +17126,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
17043
17126
  const handleSignalAbort = () => {
17044
17127
  xhr.abort();
17045
17128
  };
17046
- _optionalChain([signal, 'optionalAccess', _545 => _545.addEventListener, 'call', _546 => _546("abort", handleSignalAbort, { once: true, signal: listeners.signal })]);
17129
+ _optionalChain([signal, 'optionalAccess', _549 => _549.addEventListener, 'call', _550 => _550("abort", handleSignalAbort, { once: true, signal: listeners.signal })]);
17047
17130
  xhr.upload.addEventListener("progress", handleProgress, { signal: listeners.signal });
17048
17131
  xhr.addEventListener("load", handleLoad, { signal: listeners.signal });
17049
17132
  xhr.addEventListener("error", handleError, { signal: listeners.signal });
@@ -17087,10 +17170,10 @@ function useChatAttachments() {
17087
17170
  try {
17088
17171
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
17089
17172
  } catch (err) {
17090
- if (_optionalChain([ctrl, 'optionalAccess', _547 => _547.signal, 'access', _548 => _548.aborted])) return;
17173
+ if (_optionalChain([ctrl, 'optionalAccess', _551 => _551.signal, 'access', _552 => _552.aborted])) return;
17091
17174
  throw new Error(`Could not read file content: ${err instanceof Error ? err.message : String(err)}`);
17092
17175
  }
17093
- if (_optionalChain([ctrl, 'optionalAccess', _549 => _549.signal, 'access', _550 => _550.aborted])) return;
17176
+ if (_optionalChain([ctrl, 'optionalAccess', _553 => _553.signal, 'access', _554 => _554.aborted])) return;
17094
17177
  if (!sniffed) {
17095
17178
  throw new Error("Unrecognized file format");
17096
17179
  }
@@ -17104,7 +17187,7 @@ function useChatAttachments() {
17104
17187
  const urlResp = await _chunkYH6IQTPIcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
17105
17188
  method: "POST",
17106
17189
  headers: { "Content-Type": "application/json" },
17107
- signal: _optionalChain([ctrl, 'optionalAccess', _551 => _551.signal]),
17190
+ signal: _optionalChain([ctrl, 'optionalAccess', _555 => _555.signal]),
17108
17191
  body: JSON.stringify({
17109
17192
  fileName: att.file.name,
17110
17193
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -17133,9 +17216,9 @@ function useChatAttachments() {
17133
17216
  (pct) => {
17134
17217
  updateOne(att.id, { progress: pct });
17135
17218
  },
17136
- _optionalChain([ctrl, 'optionalAccess', _552 => _552.signal])
17219
+ _optionalChain([ctrl, 'optionalAccess', _556 => _556.signal])
17137
17220
  );
17138
- if (_optionalChain([ctrl, 'optionalAccess', _553 => _553.signal, 'access', _554 => _554.aborted])) return;
17221
+ if (_optionalChain([ctrl, 'optionalAccess', _557 => _557.signal, 'access', _558 => _558.aborted])) return;
17139
17222
  updateOne(att.id, {
17140
17223
  status: "ready",
17141
17224
  progress: 100,
@@ -17143,7 +17226,7 @@ function useChatAttachments() {
17143
17226
  viewToken: mintData.viewToken
17144
17227
  });
17145
17228
  } catch (err) {
17146
- if (_optionalChain([ctrl, 'optionalAccess', _555 => _555.signal, 'access', _556 => _556.aborted])) return;
17229
+ if (_optionalChain([ctrl, 'optionalAccess', _559 => _559.signal, 'access', _560 => _560.aborted])) return;
17147
17230
  const message = err instanceof Error ? err.message : String(err);
17148
17231
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message });
17149
17232
  } finally {
@@ -17265,7 +17348,7 @@ function useChatAttachmentImageGallery() {
17265
17348
  return () => root.removeEventListener("click", onClick);
17266
17349
  }, [viewUrlPrefix]);
17267
17350
  const modal = state.isOpen ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17268
- _chunkY6I2DGKCcjs.ImageGalleryModal,
17351
+ _chunkSK4IVCSIcjs.ImageGalleryModal,
17269
17352
  {
17270
17353
  images: state.images,
17271
17354
  isOpen: state.isOpen,
@@ -17292,11 +17375,11 @@ var ANON_DEFAULTS = {
17292
17375
  function useResolveChatIdentity(enabled) {
17293
17376
  const runtime = _chunkRDTOMWDNcjs.useRequiredChatRuntime.call(void 0, );
17294
17377
  const url = runtime.endpoints.identityUrl;
17295
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkYH6IQTPIcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _557 => _557.email]), () => ( null));
17378
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkYH6IQTPIcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _561 => _561.email]), () => ( null));
17296
17379
  const requestKey = enabled ? `${url}\0${_nullishCoalesce(proxyEmail, () => ( ""))}` : null;
17297
17380
  const [resolved, setResolved] = _react.useState.call(void 0, null);
17298
- const data = _optionalChain([resolved, 'optionalAccess', _558 => _558.key]) === requestKey ? resolved.data : ANON_DEFAULTS;
17299
- const isLoading = requestKey !== null && _optionalChain([resolved, 'optionalAccess', _559 => _559.key]) !== requestKey;
17381
+ const data = _optionalChain([resolved, 'optionalAccess', _562 => _562.key]) === requestKey ? resolved.data : ANON_DEFAULTS;
17382
+ const isLoading = requestKey !== null && _optionalChain([resolved, 'optionalAccess', _563 => _563.key]) !== requestKey;
17300
17383
  _react.useEffect.call(void 0, () => {
17301
17384
  if (requestKey === null) return void 0;
17302
17385
  let cancelled = false;
@@ -17443,7 +17526,7 @@ function useChat({
17443
17526
  onMessagesChangeRef.current = onMessagesChange;
17444
17527
  });
17445
17528
  _react.useEffect.call(void 0, () => {
17446
- _optionalChain([onMessagesChangeRef, 'access', _560 => _560.current, 'optionalCall', _561 => _561(messages)]);
17529
+ _optionalChain([onMessagesChangeRef, 'access', _564 => _564.current, 'optionalCall', _565 => _565(messages)]);
17447
17530
  }, [messages]);
17448
17531
  const {
17449
17532
  streamMessage,
@@ -17480,7 +17563,7 @@ function useChat({
17480
17563
  name: "You",
17481
17564
  content: text,
17482
17565
  timestamp: /* @__PURE__ */ new Date(),
17483
- ..._optionalChain([options, 'optionalAccess', _562 => _562.hidden]) ? { hidden: true } : {}
17566
+ ..._optionalChain([options, 'optionalAccess', _566 => _566.hidden]) ? { hidden: true } : {}
17484
17567
  };
17485
17568
  addMessage(userMessage);
17486
17569
  setIsTyping(true);
@@ -17694,7 +17777,7 @@ function buildConfirmToolBody(request) {
17694
17777
  async function readServerErrorMessage(response) {
17695
17778
  try {
17696
17779
  const body = await response.json();
17697
- if (typeof _optionalChain([body, 'optionalAccess', _563 => _563.error]) === "string" && body.error.length > 0) return body.error;
17780
+ if (typeof _optionalChain([body, 'optionalAccess', _567 => _567.error]) === "string" && body.error.length > 0) return body.error;
17698
17781
  } catch (e58) {
17699
17782
  }
17700
17783
  return null;
@@ -18039,9 +18122,9 @@ function appendToTrailingAssistant(prev, segments) {
18039
18122
  for (const seg of segments) {
18040
18123
  const tail = merged[merged.length - 1];
18041
18124
  const key = upsertKey(seg);
18042
- if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _564 => _564.type]) === "text") {
18125
+ if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _568 => _568.type]) === "text") {
18043
18126
  merged[merged.length - 1] = { type: "text", text: tail.text + seg.text };
18044
- } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _565 => _565.type]) === "thinking") {
18127
+ } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _569 => _569.type]) === "thinking") {
18045
18128
  merged[merged.length - 1] = { type: "thinking", text: tail.text + seg.text };
18046
18129
  } else if (key) {
18047
18130
  let idx = merged.findIndex((m) => upsertKey(m) === key);
@@ -18082,7 +18165,7 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
18082
18165
  }
18083
18166
  if (s.type !== "approval_batch") return s;
18084
18167
  const isAnchor = s.data.approvalRequestId === requestId;
18085
- const hasRow = _optionalChain([s, 'access', _566 => _566.data, 'access', _567 => _567.toolCalls, 'optionalAccess', _568 => _568.some, 'call', _569 => _569((c) => c.toolExecutionRequestId === requestId)]);
18168
+ const hasRow = _optionalChain([s, 'access', _570 => _570.data, 'access', _571 => _571.toolCalls, 'optionalAccess', _572 => _572.some, 'call', _573 => _573((c) => c.toolExecutionRequestId === requestId)]);
18086
18169
  if (!isAnchor && !hasRow) return s;
18087
18170
  const nextResolvedBy = _nullishCoalesce(resolvedByName, () => ( s.resolvedByName));
18088
18171
  const nextExecutions = hasRow ? {
@@ -18104,8 +18187,8 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
18104
18187
  };
18105
18188
  }
18106
18189
  function nextBatchExecution(prevExec, toolData) {
18107
- if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _570 => _570.status]) === "done") return null;
18108
- return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _571 => _571.result]), success: _optionalChain([prevExec, 'optionalAccess', _572 => _572.success]) };
18190
+ if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _574 => _574.status]) === "done") return null;
18191
+ return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _575 => _575.result]), success: _optionalChain([prevExec, 'optionalAccess', _576 => _576.success]) };
18109
18192
  }
18110
18193
  function withBatchExecution(seg, execId, state) {
18111
18194
  return {
@@ -18122,11 +18205,11 @@ function projectBatchStatusToMessages(prev, anchorId, status) {
18122
18205
  }
18123
18206
  function projectBatchRowFailureToMessages(prev, rowRequestId) {
18124
18207
  return mapSegments(prev, (s) => {
18125
- if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _573 => _573.data, 'access', _574 => _574.toolCalls, 'optionalAccess', _575 => _575.some, 'call', _576 => _576((c) => c.toolExecutionRequestId === rowRequestId)])) {
18208
+ if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _577 => _577.data, 'access', _578 => _578.toolCalls, 'optionalAccess', _579 => _579.some, 'call', _580 => _580((c) => c.toolExecutionRequestId === rowRequestId)])) {
18126
18209
  return s;
18127
18210
  }
18128
- const existing = _optionalChain([s, 'access', _577 => _577.data, 'access', _578 => _578.executions, 'optionalAccess', _579 => _579[rowRequestId]]);
18129
- if (_optionalChain([existing, 'optionalAccess', _580 => _580.status]) === "done") return s;
18211
+ const existing = _optionalChain([s, 'access', _581 => _581.data, 'access', _582 => _582.executions, 'optionalAccess', _583 => _583[rowRequestId]]);
18212
+ if (_optionalChain([existing, 'optionalAccess', _584 => _584.status]) === "done") return s;
18130
18213
  return withBatchExecution(s, rowRequestId, { status: "done", success: false });
18131
18214
  });
18132
18215
  }
@@ -18162,7 +18245,7 @@ function mergeToolExecutionIfPresent(prev, segment) {
18162
18245
  for (let j = message.segments.length - 1; j >= 0; j--) {
18163
18246
  const seg = message.segments[j];
18164
18247
  if (execId && seg.type === "approval_batch" && seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId)) {
18165
- const prevExec = _optionalChain([seg, 'access', _581 => _581.data, 'access', _582 => _582.executions, 'optionalAccess', _583 => _583[execId]]);
18248
+ const prevExec = _optionalChain([seg, 'access', _585 => _585.data, 'access', _586 => _586.executions, 'optionalAccess', _587 => _587[execId]]);
18166
18249
  const nextExec = nextBatchExecution(prevExec, toolData);
18167
18250
  if (nextExec === null) return prev;
18168
18251
  if (sameExecutionState(prevExec, nextExec)) return prev;
@@ -18335,9 +18418,9 @@ var MessageSegmentAccumulator = class {
18335
18418
  type: "tool_execution",
18336
18419
  data: {
18337
18420
  ...toolData,
18338
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _584 => _584.data, 'access', _585 => _585.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _586 => _586.toolTitle]))),
18339
- toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _587 => _587.data, 'access', _588 => _588.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _589 => _589.toolExplanation]))),
18340
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _590 => _590.parameters])
18421
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _588 => _588.data, 'access', _589 => _589.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _590 => _590.toolTitle]))),
18422
+ toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _591 => _591.data, 'access', _592 => _592.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _593 => _593.toolExplanation]))),
18423
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _594 => _594.parameters])
18341
18424
  }
18342
18425
  };
18343
18426
  if (existingIndex !== -1) {
@@ -18361,7 +18444,7 @@ var MessageSegmentAccumulator = class {
18361
18444
  if (seg.type !== "approval_batch") return seg;
18362
18445
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
18363
18446
  if (!hasCall) return seg;
18364
- const prev = _optionalChain([seg, 'access', _591 => _591.data, 'access', _592 => _592.executions, 'optionalAccess', _593 => _593[execId]]);
18447
+ const prev = _optionalChain([seg, 'access', _595 => _595.data, 'access', _596 => _596.executions, 'optionalAccess', _597 => _597[execId]]);
18365
18448
  const next = nextBatchExecution(prev, toolData);
18366
18449
  matched = true;
18367
18450
  if (next === null) return seg;
@@ -18495,8 +18578,8 @@ var MessageSegmentAccumulator = class {
18495
18578
  requestId,
18496
18579
  {
18497
18580
  ...pendingApproval,
18498
- command: _optionalChain([pendingApproval, 'optionalAccess', _594 => _594.command]) || "",
18499
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _595 => _595.approvalType]) || approvalType
18581
+ command: _optionalChain([pendingApproval, 'optionalAccess', _598 => _598.command]) || "",
18582
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _599 => _599.approvalType]) || approvalType
18500
18583
  },
18501
18584
  status
18502
18585
  );
@@ -18521,9 +18604,9 @@ var MessageSegmentAccumulator = class {
18521
18604
  type: "escalation_offer",
18522
18605
  // The resolved chunk carries no text/origin — a redelivered offer must
18523
18606
  // not blank the card the PENDING chunk already painted.
18524
- data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _596 => _596.data, 'access', _597 => _597.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _598 => _598.data, 'access', _599 => _599.origin]))) },
18607
+ data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _600 => _600.data, 'access', _601 => _601.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _602 => _602.data, 'access', _603 => _603.origin]))) },
18525
18608
  status,
18526
- resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _600 => _600.resolvedByName]))),
18609
+ resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _604 => _604.resolvedByName]))),
18527
18610
  onApprove: this.callbacks.onEscalationApprove,
18528
18611
  onReject: this.callbacks.onEscalationReject
18529
18612
  };
@@ -18848,7 +18931,7 @@ function createChatStreamReducer(options = {}) {
18848
18931
  let stateCache = null;
18849
18932
  function invalidate() {
18850
18933
  stateCache = null;
18851
- _optionalChain([onChange, 'optionalCall', _601 => _601()]);
18934
+ _optionalChain([onChange, 'optionalCall', _605 => _605()]);
18852
18935
  }
18853
18936
  function getState() {
18854
18937
  if (!stateCache) {
@@ -18864,7 +18947,7 @@ function createChatStreamReducer(options = {}) {
18864
18947
  return stateCache;
18865
18948
  }
18866
18949
  function emit(name, ...args) {
18867
- _optionalChain([onEffect, 'optionalCall', _602 => _602({ name, args })]);
18950
+ _optionalChain([onEffect, 'optionalCall', _606 => _606({ name, args })]);
18868
18951
  }
18869
18952
  function setMessagesInternal(next) {
18870
18953
  if (next !== messages) {
@@ -18895,12 +18978,12 @@ function createChatStreamReducer(options = {}) {
18895
18978
  return [...next.slice(0, -1), { ...last, streamSeq: seq }];
18896
18979
  }
18897
18980
  function applySegmentsToState(segments, meta) {
18898
- const seq = _optionalChain([meta, 'optionalAccess', _603 => _603.streamSeq]);
18899
- if (_optionalChain([meta, 'optionalAccess', _604 => _604.append]) && meta.isCompacting) {
18981
+ const seq = _optionalChain([meta, 'optionalAccess', _607 => _607.streamSeq]);
18982
+ if (_optionalChain([meta, 'optionalAccess', _608 => _608.append]) && meta.isCompacting) {
18900
18983
  setMessagesInternal(stampTrailingAssistantSeq(upsertTrailingCompaction(messages, segments), seq));
18901
18984
  return;
18902
18985
  }
18903
- if (_optionalChain([meta, 'optionalAccess', _605 => _605.append])) {
18986
+ if (_optionalChain([meta, 'optionalAccess', _609 => _609.append])) {
18904
18987
  setMessagesInternal(stampTrailingAssistantSeq(appendToTrailingAssistant(messages, segments), seq));
18905
18988
  return;
18906
18989
  }
@@ -18912,7 +18995,7 @@ function createChatStreamReducer(options = {}) {
18912
18995
  adoptTrailingAssistant = false;
18913
18996
  const last = messages[messages.length - 1];
18914
18997
  if (!last || last.role !== "assistant" || adoptTail) return;
18915
- const hasContent = (_nullishCoalesce(_optionalChain([last, 'access', _606 => _606.segments, 'optionalAccess', _607 => _607.length]), () => ( 0))) > 0 || last.content !== "";
18998
+ const hasContent = (_nullishCoalesce(_optionalChain([last, 'access', _610 => _610.segments, 'optionalAccess', _611 => _611.length]), () => ( 0))) > 0 || last.content !== "";
18916
18999
  if (!hasContent) return;
18917
19000
  setMessagesInternal([...messages, { id: nextId("assistant"), role: "assistant", content: "", segments: [] }]);
18918
19001
  }
@@ -19122,13 +19205,13 @@ function createChatStreamReducer(options = {}) {
19122
19205
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
19123
19206
  pendingEscalated.set(requestId, {
19124
19207
  command: summary,
19125
- explanation: _optionalChain([required, 'optionalAccess', _608 => _608.toolExplanation]),
19208
+ explanation: _optionalChain([required, 'optionalAccess', _612 => _612.toolExplanation]),
19126
19209
  approvalType,
19127
19210
  toolCalls
19128
19211
  });
19129
19212
  emit("onEscalatedApproval", requestId, {
19130
19213
  command: summary,
19131
- explanation: _optionalChain([required, 'optionalAccess', _609 => _609.toolExplanation]),
19214
+ explanation: _optionalChain([required, 'optionalAccess', _613 => _613.toolExplanation]),
19132
19215
  approvalType
19133
19216
  });
19134
19217
  break;
@@ -19512,7 +19595,7 @@ function createChatStreamReducer(options = {}) {
19512
19595
  const resolveBatch = (status, confirm) => async () => {
19513
19596
  setMessagesInternal(projectBatchStatusToMessages(messages, anchorId, status));
19514
19597
  for (const id of ids) {
19515
- const ok = await _optionalChain([confirm, 'optionalCall', _610 => _610(id)]);
19598
+ const ok = await _optionalChain([confirm, 'optionalCall', _614 => _614(id)]);
19516
19599
  if (ok === false) {
19517
19600
  setMessagesInternal(projectBatchRowFailureToMessages(messages, id));
19518
19601
  }
@@ -19648,8 +19731,8 @@ function createChatStreamReducer(options = {}) {
19648
19731
  }
19649
19732
  }
19650
19733
  }
19651
- hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _611 => _611.resumed]), () => ( messages.length > 0)));
19652
- if (_optionalChain([extras, 'optionalAccess', _612 => _612.agentBusy])) agentBusyState();
19734
+ hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _615 => _615.resumed]), () => ( messages.length > 0)));
19735
+ if (_optionalChain([extras, 'optionalAccess', _616 => _616.agentBusy])) agentBusyState();
19653
19736
  invalidate();
19654
19737
  }
19655
19738
  return {
@@ -19734,7 +19817,7 @@ function createChatStreamReducer(options = {}) {
19734
19817
  },
19735
19818
  endSseTurn() {
19736
19819
  const last = messages[messages.length - 1];
19737
- if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _613 => _613.segments, 'optionalAccess', _614 => _614.length]), () => ( 0))) === 0 && last.content === "") {
19820
+ if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _617 => _617.segments, 'optionalAccess', _618 => _618.length]), () => ( 0))) === 0 && last.content === "") {
19738
19821
  messages = messages.slice(0, -1);
19739
19822
  }
19740
19823
  sseCurrentText = "";
@@ -19887,10 +19970,10 @@ function createChatDialogStore(options = {}) {
19887
19970
  if (onEvict) {
19888
19971
  const sep = key.indexOf(KEY_SEP);
19889
19972
  onEvict(key.slice(0, sep), key.slice(sep + 1), {
19890
- messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _615 => _615.state, 'access', _616 => _616.messages]), () => ( EMPTY_STATE.messages)),
19891
- approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _617 => _617.state, 'access', _618 => _618.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
19892
- lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _619 => _619.getLastAppliedSeq, 'call', _620 => _620()]), () => ( Number.NEGATIVE_INFINITY)),
19893
- pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _621 => _621.getPendingEchoes, 'call', _622 => _622()]), () => ( EMPTY_PENDING_ECHOES))
19973
+ messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _619 => _619.state, 'access', _620 => _620.messages]), () => ( EMPTY_STATE.messages)),
19974
+ approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _621 => _621.state, 'access', _622 => _622.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
19975
+ lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _623 => _623.getLastAppliedSeq, 'call', _624 => _624()]), () => ( Number.NEGATIVE_INFINITY)),
19976
+ pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _625 => _625.getPendingEchoes, 'call', _626 => _626()]), () => ( EMPTY_PENDING_ECHOES))
19894
19977
  });
19895
19978
  }
19896
19979
  }
@@ -19900,12 +19983,12 @@ function createChatDialogStore(options = {}) {
19900
19983
  const key = keyOf(dialogId, side);
19901
19984
  let reducer = reducers.get(key);
19902
19985
  if (!reducer) {
19903
- const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _623 => _623(dialogId, side)]), () => ( {}));
19986
+ const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _627 => _627(dialogId, side)]), () => ( {}));
19904
19987
  const userOnChange = base.onChange;
19905
19988
  reducer = createChatStreamReducer({
19906
19989
  ...base,
19907
19990
  onChange: () => {
19908
- _optionalChain([userOnChange, 'optionalCall', _624 => _624()]);
19991
+ _optionalChain([userOnChange, 'optionalCall', _628 => _628()]);
19909
19992
  notify();
19910
19993
  }
19911
19994
  });
@@ -19950,7 +20033,7 @@ function createChatDialogStore(options = {}) {
19950
20033
  };
19951
20034
  }
19952
20035
  function getSnapshot2(dialogId, side = DEFAULT_DIALOG_SIDE) {
19953
- return _nullishCoalesce(_optionalChain([reducers, 'access', _625 => _625.get, 'call', _626 => _626(keyOf(dialogId, side)), 'optionalAccess', _627 => _627.state]), () => ( EMPTY_STATE));
20036
+ return _nullishCoalesce(_optionalChain([reducers, 'access', _629 => _629.get, 'call', _630 => _630(keyOf(dialogId, side)), 'optionalAccess', _631 => _631.state]), () => ( EMPTY_STATE));
19954
20037
  }
19955
20038
  function getServerSnapshot2() {
19956
20039
  return EMPTY_STATE;
@@ -20042,7 +20125,7 @@ function createDeltaBatcher({
20042
20125
  pending = [];
20043
20126
  const key = pendingKey;
20044
20127
  for (const delta of batch) applyOne(delta, key);
20045
- _optionalChain([onFlushed, 'optionalCall', _628 => _628(batch.length)]);
20128
+ _optionalChain([onFlushed, 'optionalCall', _632 => _632(batch.length)]);
20046
20129
  }
20047
20130
  function schedule() {
20048
20131
  if (raf !== null || timer !== null) return;
@@ -20066,7 +20149,7 @@ function createDeltaBatcher({
20066
20149
  }
20067
20150
  if (!isDeltaEvent(event)) return false;
20068
20151
  const tail = pending[pending.length - 1];
20069
- const seqAdvances = _optionalChain([tail, 'optionalAccess', _629 => _629.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
20152
+ const seqAdvances = _optionalChain([tail, 'optionalAccess', _633 => _633.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
20070
20153
  if (tail && seqAdvances && tail.type === event.type && (tail.type !== "text-delta" || tail.leading === event.leading)) {
20071
20154
  pending[pending.length - 1] = {
20072
20155
  ...tail,
@@ -20097,7 +20180,7 @@ function useChatStreamReducer({
20097
20180
  side = DEFAULT_DIALOG_SIDE,
20098
20181
  createReducerOptions
20099
20182
  }) {
20100
- const reducer = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([createReducerOptions, 'optionalCall', _630 => _630()]), () => ( {})));
20183
+ const reducer = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([createReducerOptions, 'optionalCall', _634 => _634()]), () => ( {})));
20101
20184
  const getSnapshot2 = _react.useCallback.call(void 0, () => store.getSnapshot(dialogId, side), [store, dialogId, side]);
20102
20185
  const getServerSnapshot2 = _react.useCallback.call(void 0, () => store.getServerSnapshot(), [store]);
20103
20186
  const subscribe2 = _react.useCallback.call(void 0, (listener) => store.subscribe(listener), [store]);
@@ -20136,7 +20219,7 @@ var STORAGE_KEY = "conversation";
20136
20219
  var namespaceFor = (source) => {
20137
20220
  const base = `mingo-chat-${source}`;
20138
20221
  const auth = _chunkYH6IQTPIcjs.getEmbedProxyAuth.call(void 0, );
20139
- return _optionalChain([auth, 'optionalAccess', _631 => _631.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
20222
+ return _optionalChain([auth, 'optionalAccess', _635 => _635.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
20140
20223
  };
20141
20224
  function createChatConversationStorage(source) {
20142
20225
  return _chunkYH6IQTPIcjs.createLocalStorageAdapter.call(void 0, {
@@ -20200,7 +20283,7 @@ function formatSingularLookupInvocation(cmdId, value) {
20200
20283
  return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
20201
20284
  }
20202
20285
  function extractEntityIdFilter(override, expectedTableId) {
20203
- const f = _optionalChain([override, 'optionalAccess', _632 => _632.entityIdFilter]);
20286
+ const f = _optionalChain([override, 'optionalAccess', _636 => _636.entityIdFilter]);
20204
20287
  if (!f) return null;
20205
20288
  const tableId = typeof f.tableId === "string" ? f.tableId : "";
20206
20289
  const id = typeof f.id === "string" ? f.id : "";
@@ -20239,7 +20322,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
20239
20322
  function buildAutoContinuationDirective(toolName, opts = {}) {
20240
20323
  const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
20241
20324
  const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
20242
- const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _633 => _633.status, 'optionalAccess', _634 => _634.toUpperCase, 'call', _635 => _635()]) === "CLOSED";
20325
+ const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _637 => _637.status, 'optionalAccess', _638 => _638.toUpperCase, 'call', _639 => _639()]) === "CLOSED";
20243
20326
  if (toolName === "create_ticket") {
20244
20327
  return `${AUTO_CONTINUATION_DIRECTIVE_PREFIX} The user just approved create_ticket${ticketRef}. Per ticket-protocol \xA71a, ask 2-4 SHORT, issue-specific diagnostic follow-up questions tailored to the symptom they reported in their original message. When they answer, propose an update_ticket with content_addendum carrying a clean Q&A digest. Do NOT call any tool in this turn \u2014 just write the questions as prose.`;
20245
20328
  }
@@ -20362,7 +20445,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20362
20445
  const { active = true } = runtimeOptions;
20363
20446
  const runtime = _chunkRDTOMWDNcjs.useRequiredChatRuntime.call(void 0, );
20364
20447
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
20365
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _636 => _636.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
20448
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _640 => _640.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
20366
20449
  const sendMessageRef = _react.useRef.call(void 0,
20367
20450
  () => Promise.resolve(true)
20368
20451
  );
@@ -20399,7 +20482,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20399
20482
  if (!restoredConversationRef.current) {
20400
20483
  restoredConversationRef.current = true;
20401
20484
  pruneStaleChatConversationStorage(source);
20402
- conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _637 => _637.load, 'call', _638 => _638(), 'optionalAccess', _639 => _639.conversationId]), () => ( null));
20485
+ conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _641 => _641.load, 'call', _642 => _642(), 'optionalAccess', _643 => _643.conversationId]), () => ( null));
20403
20486
  }
20404
20487
  const commandsUrl = runtime.endpoints.commandsUrl;
20405
20488
  const { commands: slashCommands } = useSlashCommandRegistry(commandsUrl, {
@@ -20504,7 +20587,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20504
20587
  const serverMessage = await readServerErrorMessage(response);
20505
20588
  throw new Error(_nullishCoalesce(serverMessage, () => ( `Chat request failed: ${response.status}`)));
20506
20589
  }
20507
- const reader = _optionalChain([response, 'access', _640 => _640.body, 'optionalAccess', _641 => _641.getReader, 'call', _642 => _642()]);
20590
+ const reader = _optionalChain([response, 'access', _644 => _644.body, 'optionalAccess', _645 => _645.getReader, 'call', _646 => _646()]);
20508
20591
  if (!reader) throw new Error("No response body");
20509
20592
  const frameDecoder = createSseFrameDecoder();
20510
20593
  let finished = false;
@@ -20527,7 +20610,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20527
20610
  }
20528
20611
  return true;
20529
20612
  } catch (err) {
20530
- if (_optionalChain([err, 'optionalAccess', _643 => _643.name]) === "AbortError" || ctrl.signal.aborted) {
20613
+ if (_optionalChain([err, 'optionalAccess', _647 => _647.name]) === "AbortError" || ctrl.signal.aborted) {
20531
20614
  return true;
20532
20615
  }
20533
20616
  flushDeltas();
@@ -20547,7 +20630,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20547
20630
  );
20548
20631
  sendMessageRef.current = sendMessage;
20549
20632
  const stopMessage = _react.useCallback.call(void 0, () => {
20550
- _optionalChain([abortControllerRef, 'access', _644 => _644.current, 'optionalAccess', _645 => _645.abort, 'call', _646 => _646()]);
20633
+ _optionalChain([abortControllerRef, 'access', _648 => _648.current, 'optionalAccess', _649 => _649.abort, 'call', _650 => _650()]);
20551
20634
  flushDeltas();
20552
20635
  mutate((r) => r.setPhase("idle"));
20553
20636
  }, [mutate, flushDeltas]);
@@ -20563,7 +20646,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20563
20646
  let sendIdx = -1;
20564
20647
  return state.messages.map((m) => {
20565
20648
  const segments = m.segments;
20566
- const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _647 => _647.filter, 'call', _648 => _648((s) => s.type === "text"), 'access', _649 => _649.map, 'call', _650 => _650((s) => s.text), 'access', _651 => _651.join, 'call', _652 => _652("")]), () => ( ""));
20649
+ const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _651 => _651.filter, 'call', _652 => _652((s) => s.type === "text"), 'access', _653 => _653.map, 'call', _654 => _654((s) => s.text), 'access', _655 => _655.join, 'call', _656 => _656("")]), () => ( ""));
20567
20650
  let sources;
20568
20651
  let scrollAnchor;
20569
20652
  if (m.role === "user" && !m.hidden) {
@@ -20572,7 +20655,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20572
20655
  if (m.role === "assistant") {
20573
20656
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
20574
20657
  sources = sourcesMap.get(lookupIdx);
20575
- scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _653 => _653.get, 'call', _654 => _654(lookupIdx), 'optionalAccess', _655 => _655.scrollAnchor]), () => ( void 0));
20658
+ scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _657 => _657.get, 'call', _658 => _658(lookupIdx), 'optionalAccess', _659 => _659.scrollAnchor]), () => ( void 0));
20576
20659
  }
20577
20660
  return {
20578
20661
  id: m.id,
@@ -20599,7 +20682,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20599
20682
  );
20600
20683
  return;
20601
20684
  }
20602
- const refSlug = typeof _optionalChain([reference, 'access', _656 => _656.metadata, 'optionalAccess', _657 => _657.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
20685
+ const refSlug = typeof _optionalChain([reference, 'access', _660 => _660.metadata, 'optionalAccess', _661 => _661.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
20603
20686
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
20604
20687
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
20605
20688
  const text = `/${cmdId} display "${escaped}"`;
@@ -20645,18 +20728,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
20645
20728
  /** True while the mount-time rebuild from the server transcript runs. */
20646
20729
  isHydratingHistory,
20647
20730
  /** Provider key for the lib's `<ModelDisplay>` icon. */
20648
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _658 => _658.provider]), () => ( null)),
20649
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _659 => _659.modelLabel]), () => ( null)),
20650
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _660 => _660.contextWindowMaxTokens]), () => ( null)),
20731
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _662 => _662.provider]), () => ( null)),
20732
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _663 => _663.modelLabel]), () => ( null)),
20733
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _664 => _664.contextWindowMaxTokens]), () => ( null)),
20651
20734
  /** Input tokens (known after server's message_start frame; null until). */
20652
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _661 => _661.inputTokens]), () => ( null)),
20735
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _665 => _665.inputTokens]), () => ( null)),
20653
20736
  /** Output tokens (known only after server's trailing usage frame). */
20654
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _662 => _662.outputTokens]), () => ( null)),
20737
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _666 => _666.outputTokens]), () => ( null)),
20655
20738
  /** Cache hit % (read / total-input × 100). null during streaming. */
20656
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _663 => _663.cacheHitRatePct]), () => ( null)),
20739
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _667 => _667.cacheHitRatePct]), () => ( null)),
20657
20740
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
20658
20741
  * token counts). null until the trailing usage frame lands. */
20659
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _664 => _664.breakdown]), () => ( null)),
20742
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _668 => _668.breakdown]), () => ( null)),
20660
20743
  // ─── Dialog management — stubs for v1 ────────────────────────────────
20661
20744
  // Guide mode keeps ONE server-side conversation per stored id
20662
20745
  // (`chat_conversations`, hydrated on mount). Surfacing multiple threads
@@ -20901,7 +20984,7 @@ function decodeNatsChunk(chunk) {
20901
20984
  userId: typeof data.userId === "string" ? data.userId : void 0,
20902
20985
  // Wire shape carries no label; fall back to the id (parity with
20903
20986
  // the history path in `process-historical-messages.ts`).
20904
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _665 => _665.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _666 => _666.id]) === "string").map((it) => ({
20987
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _669 => _669.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _670 => _670.id]) === "string").map((it) => ({
20905
20988
  type: it.type,
20906
20989
  id: it.id,
20907
20990
  label: it.id
@@ -20992,7 +21075,7 @@ function extractIncompleteMessageState(lastMessage) {
20992
21075
  }
20993
21076
  break;
20994
21077
  case "approval_batch": {
20995
- const allDone = !!segment.data.executions && segment.data.toolCalls.every((c) => _optionalChain([segment, 'access', _667 => _667.data, 'access', _668 => _668.executions, 'optionalAccess', _669 => _669[c.toolExecutionRequestId], 'optionalAccess', _670 => _670.status]) === "done");
21078
+ const allDone = !!segment.data.executions && segment.data.toolCalls.every((c) => _optionalChain([segment, 'access', _671 => _671.data, 'access', _672 => _672.executions, 'optionalAccess', _673 => _673[c.toolExecutionRequestId], 'optionalAccess', _674 => _674.status]) === "done");
20996
21079
  if (segment.status !== "rejected" && !allDone) {
20997
21080
  hasIncompleteState = true;
20998
21081
  }
@@ -21054,11 +21137,11 @@ function extractIncompleteMessageState(lastMessage) {
21054
21137
  function extractIncompleteTailState(messages) {
21055
21138
  if (!messages || messages.length === 0) return void 0;
21056
21139
  let start = messages.length;
21057
- while (start > 0 && _optionalChain([messages, 'access', _671 => _671[start - 1], 'optionalAccess', _672 => _672.role]) === "assistant") start -= 1;
21140
+ while (start > 0 && _optionalChain([messages, 'access', _675 => _675[start - 1], 'optionalAccess', _676 => _676.role]) === "assistant") start -= 1;
21058
21141
  if (start === messages.length) return void 0;
21059
21142
  const segments = [];
21060
21143
  for (let i = start; i < messages.length; i += 1) {
21061
- const content = _optionalChain([messages, 'access', _673 => _673[i], 'optionalAccess', _674 => _674.content]);
21144
+ const content = _optionalChain([messages, 'access', _677 => _677[i], 'optionalAccess', _678 => _678.content]);
21062
21145
  if (Array.isArray(content)) segments.push(...content);
21063
21146
  }
21064
21147
  if (segments.length === 0) return void 0;
@@ -21071,15 +21154,15 @@ function extractIncompleteTailState(messages) {
21071
21154
 
21072
21155
  // src/components/chat/utils/process-historical-messages.ts
21073
21156
  function getOwnerDisplayName(owner) {
21074
- if (_optionalChain([owner, 'optionalAccess', _675 => _675.type]) === OWNER_TYPE.ADMIN && owner.user) {
21157
+ if (_optionalChain([owner, 'optionalAccess', _679 => _679.type]) === OWNER_TYPE.ADMIN && owner.user) {
21075
21158
  const { firstName, lastName } = owner.user;
21076
21159
  const name = [firstName, lastName].filter(Boolean).join(" ");
21077
21160
  if (name) return name;
21078
21161
  }
21079
- return _optionalChain([owner, 'optionalAccess', _676 => _676.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
21162
+ return _optionalChain([owner, 'optionalAccess', _680 => _680.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
21080
21163
  }
21081
21164
  function getOwnerAvatar(owner) {
21082
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _677 => _677.user, 'optionalAccess', _678 => _678.image, 'optionalAccess', _679 => _679.imageUrl]), () => ( void 0));
21165
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _681 => _681.user, 'optionalAccess', _682 => _682.image, 'optionalAccess', _683 => _683.imageUrl]), () => ( void 0));
21083
21166
  }
21084
21167
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
21085
21168
  messageDataArray.forEach((data) => {
@@ -21263,7 +21346,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21263
21346
  event.offerId,
21264
21347
  event.text,
21265
21348
  event.origin,
21266
- _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _680 => _680[event.offerId]]), () => ( "pending"))
21349
+ _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _684 => _684[event.offerId]]), () => ( "pending"))
21267
21350
  );
21268
21351
  break;
21269
21352
  case "ticket-escalated":
@@ -21297,7 +21380,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21297
21380
  );
21298
21381
  break;
21299
21382
  case "escalation-offer-resolved":
21300
- _optionalChain([offerResolutions, 'optionalAccess', _681 => _681.set, 'call', _682 => _682(event.offerId, {
21383
+ _optionalChain([offerResolutions, 'optionalAccess', _685 => _685.set, 'call', _686 => _686(event.offerId, {
21301
21384
  status: event.status,
21302
21385
  resolvedByName: event.resolvedByName
21303
21386
  })]);
@@ -21361,7 +21444,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21361
21444
  }
21362
21445
  }
21363
21446
  } else {
21364
- _optionalChain([escalatedApprovals, 'optionalAccess', _683 => _683.set, 'call', _684 => _684(event.requestId, {
21447
+ _optionalChain([escalatedApprovals, 'optionalAccess', _687 => _687.set, 'call', _688 => _688(event.requestId, {
21365
21448
  command: event.command || "",
21366
21449
  explanation: event.explanation,
21367
21450
  approvalType,
@@ -21376,8 +21459,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21376
21459
  const existingStatus = approvalStatuses[requestId];
21377
21460
  const status = existingStatus || event.status;
21378
21461
  const resolvedByName = event.resolvedByName;
21379
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _685 => _685.get, 'call', _686 => _686(requestId)]);
21380
- if (_optionalChain([escalatedData, 'optionalAccess', _687 => _687.toolCalls]) && escalatedData.toolCalls.length > 0) {
21462
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _689 => _689.get, 'call', _690 => _690(requestId)]);
21463
+ if (_optionalChain([escalatedData, 'optionalAccess', _691 => _691.toolCalls]) && escalatedData.toolCalls.length > 0) {
21381
21464
  if (batchApprovalsEnabled) {
21382
21465
  accumulator.addApprovalBatch(
21383
21466
  requestId,
@@ -21399,7 +21482,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21399
21482
  );
21400
21483
  }
21401
21484
  }
21402
- _optionalChain([escalatedApprovals, 'optionalAccess', _688 => _688.delete, 'call', _689 => _689(requestId)]);
21485
+ _optionalChain([escalatedApprovals, 'optionalAccess', _692 => _692.delete, 'call', _693 => _693(requestId)]);
21403
21486
  break;
21404
21487
  }
21405
21488
  if (escalatedData) {
@@ -21408,7 +21491,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
21408
21491
  explanation: escalatedData.explanation,
21409
21492
  approvalType: escalatedData.approvalType
21410
21493
  });
21411
- _optionalChain([escalatedApprovals, 'optionalAccess', _690 => _690.delete, 'call', _691 => _691(requestId)]);
21494
+ _optionalChain([escalatedApprovals, 'optionalAccess', _694 => _694.delete, 'call', _695 => _695(requestId)]);
21412
21495
  }
21413
21496
  const before = accumulator.getSegments();
21414
21497
  const after = accumulator.updateApprovalStatus(requestId, status, resolvedByName);
@@ -21497,14 +21580,14 @@ function processHistoricalMessages(messages, options = {}) {
21497
21580
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
21498
21581
  return;
21499
21582
  }
21500
- const isUserMessage = _optionalChain([msg, 'access', _692 => _692.owner, 'optionalAccess', _693 => _693.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _694 => _694.owner, 'optionalAccess', _695 => _695.type]) === OWNER_TYPE.ADMIN;
21583
+ const isUserMessage = _optionalChain([msg, 'access', _696 => _696.owner, 'optionalAccess', _697 => _697.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _698 => _698.owner, 'optionalAccess', _699 => _699.type]) === OWNER_TYPE.ADMIN;
21501
21584
  if (isUserMessage) {
21502
21585
  flushAssistantMessage();
21503
- const userAuthorType = _optionalChain([msg, 'access', _696 => _696.owner, 'optionalAccess', _697 => _697.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
21586
+ const userAuthorType = _optionalChain([msg, 'access', _700 => _700.owner, 'optionalAccess', _701 => _701.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
21504
21587
  messageDataArray.forEach((data) => {
21505
21588
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
21506
21589
  const rawContext = data.contextItems;
21507
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _698 => _698.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _699 => _699.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
21590
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _702 => _702.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _703 => _703.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
21508
21591
  processedMessages.push({
21509
21592
  id: msg.id,
21510
21593
  role: "user",
@@ -21547,7 +21630,7 @@ function processHistoricalMessages(messages, options = {}) {
21547
21630
  });
21548
21631
  const nextMsg = messages[index + 1];
21549
21632
  const isLastMessage = index === messages.length - 1;
21550
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _700 => _700.owner, 'optionalAccess', _701 => _701.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _702 => _702.owner, 'optionalAccess', _703 => _703.type]) === OWNER_TYPE.ADMIN);
21633
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _704 => _704.owner, 'optionalAccess', _705 => _705.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _706 => _706.owner, 'optionalAccess', _707 => _707.type]) === OWNER_TYPE.ADMIN);
21551
21634
  if (isLastMessage || nextIsFromUser) {
21552
21635
  flushAssistantMessage();
21553
21636
  }
@@ -21945,7 +22028,7 @@ function useNatsChatAdapter(config, options = {}) {
21945
22028
  }, [active, fetchDialogs, loadDialogsPage]);
21946
22029
  const sendMessage = _react.useCallback.call(void 0,
21947
22030
  async (text, sendOptions) => {
21948
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _704 => _704.hidden]), () => ( false));
22031
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _708 => _708.hidden]), () => ( false));
21949
22032
  mutate((r) => r.pushOptimisticSend(text, hidden));
21950
22033
  await publishUserMessage(text, { hidden, dialogId });
21951
22034
  },
@@ -22091,11 +22174,11 @@ function useNatsChatAdapter(config, options = {}) {
22091
22174
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
22092
22175
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
22093
22176
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
22094
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _705 => _705.provider]), () => ( modelProvider)), () => ( null)),
22095
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _706 => _706.modelLabel]), () => ( modelLabel)), () => ( null)),
22096
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _707 => _707.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _708 => _708.contextWindowMaxTokens]))), () => ( null)),
22097
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _709 => _709.inputTokensSize]), () => ( null)),
22098
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _710 => _710.outputTokensSize]), () => ( null)),
22177
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _709 => _709.provider]), () => ( modelProvider)), () => ( null)),
22178
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _710 => _710.modelLabel]), () => ( modelLabel)), () => ( null)),
22179
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _711 => _711.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _712 => _712.contextWindowMaxTokens]))), () => ( null)),
22180
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _713 => _713.inputTokensSize]), () => ( null)),
22181
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _714 => _714.outputTokensSize]), () => ( null)),
22099
22182
  currentCacheHitRatePct: null,
22100
22183
  currentUsageBreakdown: null,
22101
22184
  // Dialog management
@@ -22196,7 +22279,7 @@ function useUnifiedChat(options) {
22196
22279
  []
22197
22280
  );
22198
22281
  const displayRefForward = _react.useCallback.call(void 0,
22199
- (ref) => _optionalChain([activeStateRef, 'access', _711 => _711.current, 'access', _712 => _712.displayRef, 'optionalCall', _713 => _713(ref)]),
22282
+ (ref) => _optionalChain([activeStateRef, 'access', _715 => _715.current, 'access', _716 => _716.displayRef, 'optionalCall', _717 => _717(ref)]),
22200
22283
  []
22201
22284
  );
22202
22285
  const displayRef = activeState.displayRef ? displayRefForward : void 0;
@@ -22206,7 +22289,7 @@ function useUnifiedChat(options) {
22206
22289
  const renameDialog = _react.useCallback.call(void 0, (id, title) => activeStateRef.current.renameDialog(id, title), []);
22207
22290
  const archiveDialog = _react.useCallback.call(void 0, (id) => activeStateRef.current.archiveDialog(id), []);
22208
22291
  const loadMoreDialogs = _react.useCallback.call(void 0, () => activeStateRef.current.loadMoreDialogs(), []);
22209
- const setDialogScope = _react.useCallback.call(void 0, (scope) => _optionalChain([activeStateRef, 'access', _714 => _714.current, 'access', _715 => _715.setDialogScope, 'optionalCall', _716 => _716(scope)]), []);
22292
+ const setDialogScope = _react.useCallback.call(void 0, (scope) => _optionalChain([activeStateRef, 'access', _718 => _718.current, 'access', _719 => _719.setDialogScope, 'optionalCall', _720 => _720(scope)]), []);
22210
22293
  const reloadDialogs = _react.useCallback.call(void 0, () => activeStateRef.current.reloadDialogs(), []);
22211
22294
  const loadMoreMessages = _react.useCallback.call(void 0, () => activeStateRef.current.loadMoreMessages(), []);
22212
22295
  const approveRequest = _react.useCallback.call(void 0, (requestId) => activeStateRef.current.approveRequest(requestId), []);
@@ -22299,19 +22382,19 @@ function turnRequestKeys(content) {
22299
22382
  if (!Array.isArray(content)) return keys;
22300
22383
  for (const seg of content) {
22301
22384
  if (seg.type === "tool_execution") {
22302
- const id = _optionalChain([seg, 'access', _717 => _717.data, 'optionalAccess', _718 => _718.toolExecutionRequestId]);
22385
+ const id = _optionalChain([seg, 'access', _721 => _721.data, 'optionalAccess', _722 => _722.toolExecutionRequestId]);
22303
22386
  if (id) keys.add(id);
22304
22387
  } else if (seg.type === "approval_request") {
22305
- const id = _optionalChain([seg, 'access', _719 => _719.data, 'optionalAccess', _720 => _720.requestId]);
22388
+ const id = _optionalChain([seg, 'access', _723 => _723.data, 'optionalAccess', _724 => _724.requestId]);
22306
22389
  if (id) keys.add(id);
22307
22390
  } else if (seg.type === "escalation_offer") {
22308
- const id = _optionalChain([seg, 'access', _721 => _721.data, 'optionalAccess', _722 => _722.offerId]);
22391
+ const id = _optionalChain([seg, 'access', _725 => _725.data, 'optionalAccess', _726 => _726.offerId]);
22309
22392
  if (id) keys.add(id);
22310
22393
  } else if (seg.type === "approval_batch") {
22311
22394
  const data = seg.data;
22312
- if (_optionalChain([data, 'optionalAccess', _723 => _723.approvalRequestId])) keys.add(data.approvalRequestId);
22313
- for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _724 => _724.toolCalls]), () => ( []))) {
22314
- if (_optionalChain([call, 'optionalAccess', _725 => _725.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
22395
+ if (_optionalChain([data, 'optionalAccess', _727 => _727.approvalRequestId])) keys.add(data.approvalRequestId);
22396
+ for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _728 => _728.toolCalls]), () => ( []))) {
22397
+ if (_optionalChain([call, 'optionalAccess', _729 => _729.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
22315
22398
  }
22316
22399
  }
22317
22400
  }
@@ -22363,18 +22446,18 @@ function mergeHistoryWithRealtime(input) {
22363
22446
  }
22364
22447
  }
22365
22448
  const trailing = processedHistory[processedHistory.length - 1];
22366
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _726 => _726.role]) === "assistant" ? trailing : null;
22367
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _727 => _727.content, 'access', _728 => _728.find, 'call', _729 => _729((s) => s.type === "approval_batch"), 'optionalAccess', _730 => _730.data, 'optionalAccess', _731 => _731.approvalRequestId]), () => ( null)) : null;
22449
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _730 => _730.role]) === "assistant" ? trailing : null;
22450
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _731 => _731.content, 'access', _732 => _732.find, 'call', _733 => _733((s) => s.type === "approval_batch"), 'optionalAccess', _734 => _734.data, 'optionalAccess', _735 => _735.approvalRequestId]), () => ( null)) : null;
22368
22451
  let processedToUse = processedHistory;
22369
22452
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
22370
22453
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
22371
22454
  if (historyBatchId) {
22372
22455
  const batchTwins = existingMessages.filter(
22373
- (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some((s) => s.type === "approval_batch" && _optionalChain([s, 'access', _732 => _732.data, 'optionalAccess', _733 => _733.approvalRequestId]) === historyBatchId)
22456
+ (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some((s) => s.type === "approval_batch" && _optionalChain([s, 'access', _736 => _736.data, 'optionalAccess', _737 => _737.approvalRequestId]) === historyBatchId)
22374
22457
  );
22375
22458
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
22376
22459
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
22377
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _734 => _734.content])) ? historyTrailingAssistant.content.length : 0;
22460
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _738 => _738.content])) ? historyTrailingAssistant.content.length : 0;
22378
22461
  const realtimeSize = existingWithSameBatch.content.length;
22379
22462
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
22380
22463
  processedToUse = processedHistory.slice(0, -1);
@@ -22416,9 +22499,9 @@ function mergeHistoryWithRealtime(input) {
22416
22499
  if (pinnedSyntheticIds.has(m.id)) return true;
22417
22500
  if (droppedSyntheticIds.has(m.id)) return false;
22418
22501
  if (processedIds.has(m.id)) return false;
22419
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _735 => _735.has, 'call', _736 => _736(m.id)])) return false;
22502
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _739 => _739.has, 'call', _740 => _740(m.id)])) return false;
22420
22503
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
22421
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _737 => _737.timestamp, 'optionalAccess', _738 => _738.getTime, 'call', _739 => _739()]), () => ( 0))) <= historyFetchedAt;
22504
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _741 => _741.timestamp, 'optionalAccess', _742 => _742.getTime, 'call', _743 => _743()]), () => ( 0))) <= historyFetchedAt;
22422
22505
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
22423
22506
  }
22424
22507
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
@@ -22442,7 +22525,7 @@ function mergeHistoryWithRealtime(input) {
22442
22525
  } else if (typeof m.streamSeq === "number") {
22443
22526
  covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
22444
22527
  } else {
22445
- covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _740 => _740.timestamp, 'optionalAccess', _741 => _741.getTime, 'call', _742 => _742()]), () => ( 0))) <= historyFetchedAt;
22528
+ covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _744 => _744.timestamp, 'optionalAccess', _745 => _745.getTime, 'call', _746 => _746()]), () => ( 0))) <= historyFetchedAt;
22446
22529
  }
22447
22530
  if (covered) return false;
22448
22531
  }
@@ -22512,7 +22595,7 @@ function normalizeHistoricalMessageData(md) {
22512
22595
  function isHistoricalUserTurn(m) {
22513
22596
  return !!m.owner;
22514
22597
  }
22515
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _743 => _743.type]) === "TEXT" && typeof d.text === "string";
22598
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _747 => _747.type]) === "TEXT" && typeof d.text === "string";
22516
22599
  var THINK_MS = 550;
22517
22600
  var TOKEN_MS = 55;
22518
22601
  var USER_MS = 480;
@@ -23132,7 +23215,7 @@ function useChatDialogManager({
23132
23215
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
23133
23216
  if (restoreTarget) {
23134
23217
  try {
23135
- await _optionalChain([unarchiveDialog, 'optionalCall', _744 => _744(restoreTarget.id)]);
23218
+ await _optionalChain([unarchiveDialog, 'optionalCall', _748 => _748(restoreTarget.id)]);
23136
23219
  } catch (err) {
23137
23220
  console.error("[useChatDialogManager] unarchive failed:", err);
23138
23221
  return;
@@ -23315,7 +23398,7 @@ function SourceChip({
23315
23398
  const Icon = cta.icon;
23316
23399
  const icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: "h-3.5 w-3.5" });
23317
23400
  const chipClass = chatChipClass({ tone: "secondary" });
23318
- const decideTab = (href, targetPlatform) => _chunkY6I2DGKCcjs.computeIsNewTab.call(void 0, runtime, href, targetPlatform);
23401
+ const decideTab = (href, targetPlatform) => _chunkSK4IVCSIcjs.computeIsNewTab.call(void 0, runtime, href, targetPlatform);
23319
23402
  if (src.items && src.items.length > 0) {
23320
23403
  const dropdownItems = src.items.map((item) => {
23321
23404
  const itemCta = resolveSourceRowCTA(
@@ -23404,7 +23487,7 @@ function SourceChip({
23404
23487
  "a",
23405
23488
  {
23406
23489
  href: resolvedHref,
23407
- ..._chunkY6I2DGKCcjs.newTabAnchorAttrs.call(void 0, isNewTab),
23490
+ ..._chunkSK4IVCSIcjs.newTabAnchorAttrs.call(void 0, isNewTab),
23408
23491
  onClick: buildClickHandler(resolvedHref, null, _nullishCoalesce(cta.targetPlatform, () => ( null)), isNewTab),
23409
23492
  className: chipClass,
23410
23493
  children: chipBody(src.name)
@@ -23420,7 +23503,7 @@ function SourceChip({
23420
23503
  "a",
23421
23504
  {
23422
23505
  href: resolvedHref,
23423
- ..._chunkY6I2DGKCcjs.newTabAnchorAttrs.call(void 0, isNewTab),
23506
+ ..._chunkSK4IVCSIcjs.newTabAnchorAttrs.call(void 0, isNewTab),
23424
23507
  onClick: buildClickHandler(resolvedHref, src.path, _nullishCoalesce(cta.targetPlatform, () => ( null)), isNewTab),
23425
23508
  className: chipClass,
23426
23509
  title: displayName,
@@ -23612,7 +23695,7 @@ function EmbeddableChatInner({
23612
23695
  }),
23613
23696
  [commandsUrl]
23614
23697
  );
23615
- const headerUserName = _optionalChain([identityUser, 'optionalAccess', _745 => _745.name, 'optionalAccess', _746 => _746.trim, 'call', _747 => _747()]) || [_optionalChain([identityUser, 'optionalAccess', _748 => _748.firstName]), _optionalChain([identityUser, 'optionalAccess', _749 => _749.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _750 => _750.trim, 'call', _751 => _751()]) || void 0;
23698
+ const headerUserName = _optionalChain([identityUser, 'optionalAccess', _749 => _749.name, 'optionalAccess', _750 => _750.trim, 'call', _751 => _751()]) || [_optionalChain([identityUser, 'optionalAccess', _752 => _752.firstName]), _optionalChain([identityUser, 'optionalAccess', _753 => _753.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _754 => _754.trim, 'call', _755 => _755()]) || void 0;
23616
23699
  const effectiveModes = _react.useMemo.call(void 0, () => {
23617
23700
  if (modes) return modes;
23618
23701
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -23621,20 +23704,20 @@ function EmbeddableChatInner({
23621
23704
  const mingoCaps = _react.useMemo.call(void 0, () => {
23622
23705
  if (mingoState) {
23623
23706
  return {
23624
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _752 => _752.canRename]), () => ( false)),
23625
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _753 => _753.canArchive]), () => ( false)),
23626
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _754 => _754.fetchArchivedDialogs]),
23627
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _755 => _755.unarchiveDialog]),
23628
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _756 => _756.searchQuery]),
23629
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _757 => _757.onSearchChange]),
23630
- onCopyLink: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _758 => _758.onCopyLink])
23707
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _756 => _756.canRename]), () => ( false)),
23708
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _757 => _757.canArchive]), () => ( false)),
23709
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _758 => _758.fetchArchivedDialogs]),
23710
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _759 => _759.unarchiveDialog]),
23711
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _760 => _760.searchQuery]),
23712
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _761 => _761.onSearchChange]),
23713
+ onCopyLink: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _762 => _762.onCopyLink])
23631
23714
  };
23632
23715
  }
23633
23716
  return {
23634
- canRename: !!_optionalChain([effectiveModes, 'access', _759 => _759.mingo, 'optionalAccess', _760 => _760.renameDialog]),
23635
- canArchive: !!_optionalChain([effectiveModes, 'access', _761 => _761.mingo, 'optionalAccess', _762 => _762.archiveDialog]),
23636
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _763 => _763.mingo, 'optionalAccess', _764 => _764.fetchArchivedDialogs]),
23637
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _765 => _765.mingo, 'optionalAccess', _766 => _766.unarchiveDialog]),
23717
+ canRename: !!_optionalChain([effectiveModes, 'access', _763 => _763.mingo, 'optionalAccess', _764 => _764.renameDialog]),
23718
+ canArchive: !!_optionalChain([effectiveModes, 'access', _765 => _765.mingo, 'optionalAccess', _766 => _766.archiveDialog]),
23719
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _767 => _767.mingo, 'optionalAccess', _768 => _768.fetchArchivedDialogs]),
23720
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _769 => _769.mingo, 'optionalAccess', _770 => _770.unarchiveDialog]),
23638
23721
  searchQuery: void 0,
23639
23722
  onSearchChange: void 0,
23640
23723
  onCopyLink: void 0
@@ -23649,7 +23732,7 @@ function EmbeddableChatInner({
23649
23732
  if (controlledActiveMode === void 0) {
23650
23733
  setUncontrolledActiveMode(next);
23651
23734
  }
23652
- _optionalChain([onActiveModeChange, 'optionalCall', _767 => _767(next)]);
23735
+ _optionalChain([onActiveModeChange, 'optionalCall', _771 => _771(next)]);
23653
23736
  },
23654
23737
  [controlledActiveMode, onActiveModeChange]
23655
23738
  );
@@ -23676,7 +23759,7 @@ function EmbeddableChatInner({
23676
23759
  );
23677
23760
  const effectiveAssistantName = emptyStateConfig.name;
23678
23761
  const effectiveAssistantIcon = emptyStateConfig.icon;
23679
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _768 => _768.title]) === "string" ? guideWelcome.title : null)));
23762
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _772 => _772.title]) === "string" ? guideWelcome.title : null)));
23680
23763
  const {
23681
23764
  messages: rawMessages,
23682
23765
  isLoading: chatLoading,
@@ -23720,7 +23803,7 @@ function EmbeddableChatInner({
23720
23803
  void sendMessage(guidePendingPrompt).catch((err) => {
23721
23804
  console.error("[EmbeddableChat] guide launcher prompt failed:", err);
23722
23805
  });
23723
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _769 => _769()]);
23806
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _773 => _773()]);
23724
23807
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
23725
23808
  const {
23726
23809
  attachments: stagedAttachments,
@@ -23731,7 +23814,7 @@ function EmbeddableChatInner({
23731
23814
  clear: clearAttachments
23732
23815
  } = useChatAttachments();
23733
23816
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
23734
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _770 => _770.maxItems]), () => ( 10));
23817
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _774 => _774.maxItems]), () => ( 10));
23735
23818
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
23736
23819
  const [contextItems, setContextItems] = _react.useState.call(void 0, NO_CONTEXT_ITEMS);
23737
23820
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -23752,10 +23835,10 @@ function EmbeddableChatInner({
23752
23835
  }, [activeDialogId, activeMode]);
23753
23836
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
23754
23837
  const m = /* @__PURE__ */ new Map();
23755
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _771 => _771.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
23838
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _775 => _775.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
23756
23839
  return m;
23757
- }, [_optionalChain([contextPicker, 'optionalAccess', _772 => _772.entityTypes])]);
23758
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _773 => _773.entityTypes]);
23840
+ }, [_optionalChain([contextPicker, 'optionalAccess', _776 => _776.entityTypes])]);
23841
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _777 => _777.entityTypes]);
23759
23842
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
23760
23843
  const byType = /* @__PURE__ */ new Map();
23761
23844
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -23767,7 +23850,7 @@ function EmbeddableChatInner({
23767
23850
  if (mentionActiveRef.current) {
23768
23851
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
23769
23852
  if (contextItems.length >= contextMaxItems) return;
23770
- _optionalChain([chatInputRef, 'access', _774 => _774.current, 'optionalAccess', _775 => _775.commitMention, 'call', _776 => _776(mentionTokenOf(key, mentionMarkerByType), {
23853
+ _optionalChain([chatInputRef, 'access', _778 => _778.current, 'optionalAccess', _779 => _779.commitMention, 'call', _780 => _780(mentionTokenOf(key, mentionMarkerByType), {
23771
23854
  label: item.label,
23772
23855
  icon: resolveContextIcon(item)
23773
23856
  })]);
@@ -23790,9 +23873,9 @@ function EmbeddableChatInner({
23790
23873
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
23791
23874
  if (mentionKeysRef.current.has(key)) {
23792
23875
  mentionKeysRef.current.delete(key);
23793
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _777 => _777.current, 'optionalAccess', _778 => _778.getValue, 'call', _779 => _779()]), () => ( ""));
23876
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _781 => _781.current, 'optionalAccess', _782 => _782.getValue, 'call', _783 => _783()]), () => ( ""));
23794
23877
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
23795
- _optionalChain([chatInputRef, 'access', _780 => _780.current, 'optionalAccess', _781 => _781.setValue, 'call', _782 => _782(next)]);
23878
+ _optionalChain([chatInputRef, 'access', _784 => _784.current, 'optionalAccess', _785 => _785.setValue, 'call', _786 => _786(next)]);
23796
23879
  }
23797
23880
  },
23798
23881
  [mentionMarkerByType]
@@ -23814,7 +23897,7 @@ function EmbeddableChatInner({
23814
23897
  }, []);
23815
23898
  const closeContextPicker = _react.useCallback.call(void 0, () => {
23816
23899
  if (mentionActiveRef.current) {
23817
- _optionalChain([chatInputRef, 'access', _783 => _783.current, 'optionalAccess', _784 => _784.removeMentionTrigger, 'call', _785 => _785()]);
23900
+ _optionalChain([chatInputRef, 'access', _787 => _787.current, 'optionalAccess', _788 => _788.removeMentionTrigger, 'call', _789 => _789()]);
23818
23901
  }
23819
23902
  setContextPickerOpen(false);
23820
23903
  setMentionQuery(null);
@@ -23848,8 +23931,8 @@ function EmbeddableChatInner({
23848
23931
  [effectiveAssistantIcon]
23849
23932
  );
23850
23933
  const [timestampCache] = _react.useState.call(void 0, () => /* @__PURE__ */ new Map());
23851
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _786 => _786.firstName]), _optionalChain([identityUser, 'optionalAccess', _787 => _787.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _788 => _788.name, 'optionalAccess', _789 => _789.trim, 'call', _790 => _790()]) || void 0 : void 0;
23852
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _791 => _791.avatarUrl, 'optionalAccess', _792 => _792.trim, 'call', _793 => _793()]) || void 0 : void 0;
23934
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _790 => _790.firstName]), _optionalChain([identityUser, 'optionalAccess', _791 => _791.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _792 => _792.name, 'optionalAccess', _793 => _793.trim, 'call', _794 => _794()]) || void 0 : void 0;
23935
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _795 => _795.avatarUrl, 'optionalAccess', _796 => _796.trim, 'call', _797 => _797()]) || void 0 : void 0;
23853
23936
  const messages = _react.useMemo.call(void 0, () => {
23854
23937
  const cache = timestampCache;
23855
23938
  const seenIds = /* @__PURE__ */ new Set();
@@ -24038,9 +24121,9 @@ function EmbeddableChatInner({
24038
24121
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
24039
24122
  const lastSources = _react.useMemo.call(void 0, () => {
24040
24123
  if (chatLoading) return void 0;
24041
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _794 => _794.sources]);
24124
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _798 => _798.sources]);
24042
24125
  if (!sources || sources.length === 0) return void 0;
24043
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _795 => _795.content]) || "";
24126
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _799 => _799.content]) || "";
24044
24127
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map((m) => parseInt(m[1], 10));
24045
24128
  const seenOrder = /* @__PURE__ */ new Map();
24046
24129
  citationOrder.forEach((idx) => {
@@ -24058,7 +24141,7 @@ function EmbeddableChatInner({
24058
24141
  const el = panelMeasureRef.current;
24059
24142
  if (!el || typeof ResizeObserver === "undefined") return void 0;
24060
24143
  const ro = new ResizeObserver((entries) => {
24061
- const w = _optionalChain([entries, 'access', _796 => _796[0], 'optionalAccess', _797 => _797.contentRect, 'optionalAccess', _798 => _798.width]);
24144
+ const w = _optionalChain([entries, 'access', _800 => _800[0], 'optionalAccess', _801 => _801.contentRect, 'optionalAccess', _802 => _802.width]);
24062
24145
  if (typeof w === "number") setPanelWidth(w);
24063
24146
  });
24064
24147
  ro.observe(el);
@@ -24101,17 +24184,17 @@ function EmbeddableChatInner({
24101
24184
  const isMingoMode = activeMode === "mingo";
24102
24185
  const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
24103
24186
  const headerShowBack = hasConversation || guideCanReturnToMingo;
24104
- const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _799 => _799.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
24187
+ const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _803 => _803.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
24105
24188
  const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
24106
24189
  const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
24107
24190
  const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
24108
24191
  const headerOnRename = activeDialogId && activeDialog && mingoCaps.canRename ? () => setRenameTarget(activeDialog) : void 0;
24109
24192
  const headerOnArchive = activeDialogId && activeDialog && mingoCaps.canArchive ? () => setArchiveTarget(activeDialog) : void 0;
24110
- const headerOnCopyLink = activeDialogId && activeDialog && mingoCaps.onCopyLink ? () => _optionalChain([mingoCaps, 'access', _800 => _800.onCopyLink, 'optionalCall', _801 => _801(activeDialog)]) : void 0;
24193
+ const headerOnCopyLink = activeDialogId && activeDialog && mingoCaps.onCopyLink ? () => _optionalChain([mingoCaps, 'access', _804 => _804.onCopyLink, 'optionalCall', _805 => _805(activeDialog)]) : void 0;
24111
24194
  const headerOnOpenArchive = fetchArchivedDialogs ? openArchive : void 0;
24112
- const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _802 => _802.owner]) : void 0;
24113
- const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _803 => _803.name, 'optionalAccess', _804 => _804.trim, 'call', _805 => _805()]) || headerUserName;
24114
- const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _806 => _806.avatarUrl, 'optionalAccess', _807 => _807.trim, 'call', _808 => _808()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _809 => _809.avatarUrl, 'optionalAccess', _810 => _810.trim, 'call', _811 => _811()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _812 => _812.trim, 'call', _813 => _813()]) || void 0;
24195
+ const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _806 => _806.owner]) : void 0;
24196
+ const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _807 => _807.name, 'optionalAccess', _808 => _808.trim, 'call', _809 => _809()]) || headerUserName;
24197
+ const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _810 => _810.avatarUrl, 'optionalAccess', _811 => _811.trim, 'call', _812 => _812()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _813 => _813.avatarUrl, 'optionalAccess', _814 => _814.trim, 'call', _815 => _815()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _816 => _816.trim, 'call', _817 => _817()]) || void 0;
24115
24198
  const headerAvatar = headerPersonName || headerPersonAvatarUrl ? { name: headerPersonName, avatarUrl: headerPersonAvatarUrl } : void 0;
24116
24199
  const handleNewChat = _react.useCallback.call(void 0, () => {
24117
24200
  resetToNewChat();
@@ -24257,7 +24340,7 @@ function EmbeddableChatInner({
24257
24340
  headerAvatar ? (
24258
24341
  // Owner avatar at the title cell's right edge (Figma 113:63273).
24259
24342
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24260
- _chunkY6I2DGKCcjs.SquareAvatar,
24343
+ _chunkSK4IVCSIcjs.SquareAvatar,
24261
24344
  {
24262
24345
  variant: "round",
24263
24346
  sizePx: 32,
@@ -24441,9 +24524,9 @@ function EmbeddableChatInner({
24441
24524
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
24442
24525
  subtitleLoading: emptyStateLoading,
24443
24526
  ...guideWelcome,
24444
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _814 => _814.title]))),
24445
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _815 => _815.icon]))),
24446
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _816 => _816.quickActions]), () => ( guideSuggestedActions)),
24527
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _818 => _818.title]))),
24528
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _819 => _819.icon]))),
24529
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _820 => _820.quickActions]), () => ( guideSuggestedActions)),
24447
24530
  onQuickAction: (action) => {
24448
24531
  setQuickActionPreview(null);
24449
24532
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -24517,8 +24600,8 @@ function EmbeddableChatInner({
24517
24600
  selectedContextItems: contextItems,
24518
24601
  onToggleContextItem: toggleContextItem,
24519
24602
  onRemoveContextItem: removeContextItem,
24520
- contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _817 => _817.items]),
24521
- onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _818 => _818.onRemove]),
24603
+ contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _821 => _821.items]),
24604
+ onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _822 => _822.onRemove]),
24522
24605
  contextPickerOpen,
24523
24606
  onOpenContextPicker: openContextPicker,
24524
24607
  onCloseContextPicker: closeContextPicker,
@@ -24980,4 +25063,4 @@ function EmbeddableChatInner({
24980
25063
 
24981
25064
 
24982
25065
  exports.FloatingTooltip = FloatingTooltip; exports.tagVariants = tagVariants; exports.Tag = Tag; 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.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getCurrentPlatform = getCurrentPlatform; exports.switchPlatformTheme = switchPlatformTheme; exports.getSemanticColor = getSemanticColor; exports.getPlatformConfig = getPlatformConfig; exports.usePlatformColors = usePlatformColors; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.rgbToHsl = rgbToHsl; exports.hslToRgb = hslToRgb; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Modal = Modal; exports.ModalContent = ModalContent; exports.ModalTwoColumn = ModalTwoColumn; exports.ModalHeader = ModalHeader; exports.ModalTitle = ModalTitle; exports.ModalFooter = ModalFooter; 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.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.useIsHydrated = useIsHydrated; exports.MermaidDiagram = MermaidDiagram; exports.hasRenderableSrc = hasRenderableSrc; exports.buildStandardLeafRenderers = buildStandardLeafRenderers; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.NO_BROKEN_LINKS = NO_BROKEN_LINKS; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.extractYouTubeId = extractYouTubeId; exports.VIDEO_PLAYBACK_FAILED_EVENT = VIDEO_PLAYBACK_FAILED_EVENT; exports.Video = Video2; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.formatTime = formatTime; exports.AiAssistantInfo = AiAssistantInfo; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.TICKET_EVENT_KIND = TICKET_EVENT_KIND; exports.TicketEventMessage = TicketEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.AskDisplay = AskDisplay; 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.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.BlockCard = BlockCard; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.ChatMessageList = ChatMessageList; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; 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.GuideModeBanner = GuideModeBanner; exports.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; 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.ChatContextMemoryBar = ChatContextMemoryBar; 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.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.getCaptionsUrl = getCaptionsUrl; exports.rebaseCaptionsUrl = rebaseCaptionsUrl; exports.buildCaptionsUrl = buildCaptionsUrl; exports.getEntityCaptionUrls = getEntityCaptionUrls; exports.getEntityCaptionUrlsById = getEntityCaptionUrlsById; exports.captionsEntityTypeForDocType = captionsEntityTypeForDocType; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.useCaptions = useCaptions; exports.UserDisplay = UserDisplay; exports.CardHitLayer = CardHitLayer; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; 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.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.useChatCardItem = useChatCardItem; exports.clickupTaskUrl = clickupTaskUrl; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; 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.approvalDisplaysInline = approvalDisplaysInline; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.useSseChatAdapter = useSseChatAdapter; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; 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.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat;
24983
- //# sourceMappingURL=chunk-TVPJ5DIB.cjs.map
25066
+ //# sourceMappingURL=chunk-YYHYCQD6.cjs.map