@flamingo-stack/openframe-frontend-core 0.0.839 → 0.0.841

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 (111) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/build/route-styles.cjs +3 -1
  3. package/dist/build/style-sources.cjs +15 -2
  4. package/dist/build/style-sources.d.ts +3 -0
  5. package/dist/{chunk-37XKZ4JM.cjs → chunk-275AQ6LC.cjs} +6 -6
  6. package/dist/{chunk-5BM7X4GA.cjs → chunk-5GBLXY5F.cjs} +2 -2
  7. package/dist/{chunk-5L3UKDC6.cjs → chunk-6LDL3UZE.cjs} +9 -9
  8. package/dist/{chunk-SWMUW3RR.cjs → chunk-744JXTDP.cjs} +19 -19
  9. package/dist/{chunk-46LATWQR.cjs → chunk-7WKRMJI6.cjs} +5 -5
  10. package/dist/{chunk-XJ4AB24Y.cjs → chunk-AT6D7BAZ.cjs} +5 -5
  11. package/dist/{chunk-C4OQIYGW.cjs → chunk-CCRXBFNL.cjs} +8 -8
  12. package/dist/{chunk-LC65AC6M.cjs → chunk-COWMXUHN.cjs} +2 -0
  13. package/dist/{chunk-5E4YEHHO.cjs → chunk-DGY5KEPY.cjs} +55 -55
  14. package/dist/{chunk-N2TCVIPR.cjs → chunk-DYDQLS2R.cjs} +539 -539
  15. package/dist/{chunk-LWMWY3JO.cjs → chunk-E7M54JWW.cjs} +14 -14
  16. package/dist/{chunk-Z7A7IZWL.cjs → chunk-EV6BPF47.cjs} +236 -210
  17. package/dist/{chunk-7XRFAHJF.cjs → chunk-FHI4I3TQ.cjs} +9 -9
  18. package/dist/{chunk-ZABZIM2Y.cjs → chunk-FRL2ZN4O.cjs} +3 -3
  19. package/dist/{chunk-7Z536SPR.cjs → chunk-FW7RKWPY.cjs} +15 -1
  20. package/dist/{chunk-3MBKEF7Z.cjs → chunk-GMK4JGC2.cjs} +46 -46
  21. package/dist/{chunk-SZVPRP5E.cjs → chunk-GUKFMMDZ.cjs} +3 -3
  22. package/dist/{chunk-GN6LEJWY.cjs → chunk-HXTZZE3R.cjs} +253 -131
  23. package/dist/{chunk-2XZZHRRU.cjs → chunk-IELPVUPR.cjs} +18 -18
  24. package/dist/{chunk-64PF3UC7.cjs → chunk-INBFKUZA.cjs} +17 -17
  25. package/dist/{chunk-APOMNC7H.cjs → chunk-IUDBG3HJ.cjs} +3 -3
  26. package/dist/{chunk-4JHO2NVI.cjs → chunk-J2IXYCEH.cjs} +26 -10
  27. package/dist/{chunk-C4RYIDPU.cjs → chunk-JM2XA7VY.cjs} +28 -28
  28. package/dist/{chunk-GPXKG34G.cjs → chunk-JUEAZCD6.cjs} +46 -46
  29. package/dist/{chunk-2QAUQPGC.cjs → chunk-MYAPG3FQ.cjs} +21 -21
  30. package/dist/{chunk-GRHF5SWL.cjs → chunk-NFNSPLGC.cjs} +3 -3
  31. package/dist/{chunk-UDRVVCOC.cjs → chunk-Q6WUHYOG.cjs} +72 -72
  32. package/dist/{chunk-H3WTYAVR.cjs → chunk-RSJYTQEA.cjs} +30 -30
  33. package/dist/{chunk-MG3HJIGG.cjs → chunk-UAI4VMEF.cjs} +4 -4
  34. package/dist/{chunk-S5RMRQKT.cjs → chunk-UZPYYHF5.cjs} +18 -18
  35. package/dist/{chunk-DFTXZE7B.cjs → chunk-VBH2RCFM.cjs} +73 -73
  36. package/dist/{chunk-FNNDGOR3.cjs → chunk-WCK5T3UD.cjs} +43 -43
  37. package/dist/{chunk-TRZEFT2N.cjs → chunk-WI7EXAZT.cjs} +9 -5
  38. package/dist/{chunk-TKS25VKE.cjs → chunk-Z35PL3UR.cjs} +32 -32
  39. package/dist/{chunk-ENK75WN4.cjs → chunk-ZAO5SYBJ.cjs} +4 -4
  40. package/dist/{cloud-tenants-WE3H3VAW.cjs → cloud-tenants-PV63RZ73.cjs} +19 -19
  41. package/dist/components/case-studies/index.cjs +33 -33
  42. package/dist/components/chat/chat-nav-sidebar.d.ts.map +1 -1
  43. package/dist/components/chat/chat-nav-sidebar.js +17 -3
  44. package/dist/components/chat/index.cjs +13 -13
  45. package/dist/components/contact/index.cjs +20 -20
  46. package/dist/components/docs/index.cjs +23 -23
  47. package/dist/components/embeds/index.cjs +20 -20
  48. package/dist/components/faq/index.cjs +21 -21
  49. package/dist/components/features/index.cjs +19 -19
  50. package/dist/components/help-center-pages/index.cjs +120 -120
  51. package/dist/components/index.cjs +76 -76
  52. package/dist/components/meeting-scheduler/index.cjs +82 -82
  53. package/dist/components/navigation/account-popover.d.ts.map +1 -1
  54. package/dist/components/navigation/account-popover.js +26 -2
  55. package/dist/components/navigation/app-layout-side-panel.d.ts.map +1 -1
  56. package/dist/components/navigation/app-layout-side-panel.js +2 -9
  57. package/dist/components/navigation/index.cjs +22 -22
  58. package/dist/components/navigation/navigation-sidebar-grouped.d.ts.map +1 -1
  59. package/dist/components/navigation/navigation-sidebar-grouped.js +30 -6
  60. package/dist/components/navigation/navigation-sidebar-item.d.ts.map +1 -1
  61. package/dist/components/navigation/navigation-sidebar-item.js +14 -1
  62. package/dist/components/navigation/navigation-sidebar.d.ts.map +1 -1
  63. package/dist/components/navigation/navigation-sidebar.js +72 -3
  64. package/dist/components/onboarding-guides/index.cjs +22 -22
  65. package/dist/components/product-demo/index.cjs +30 -30
  66. package/dist/components/related-content/index.cjs +8 -8
  67. package/dist/components/tickets/index.cjs +24 -24
  68. package/dist/components/ui/index.cjs +19 -19
  69. package/dist/components/ui/panel-resize-handle.d.ts +27 -6
  70. package/dist/components/ui/panel-resize-handle.d.ts.map +1 -1
  71. package/dist/components/ui/panel-resize-handle.js +27 -3
  72. package/dist/{devices-ZBZN2RRG.cjs → devices-VECG5JNC.cjs} +20 -20
  73. package/dist/{embeddable-chat-RBC7F4TL.cjs → embeddable-chat-VRYAQQF6.cjs} +90 -90
  74. package/dist/hooks/index.cjs +11 -7
  75. package/dist/hooks/ui/index.d.ts +1 -0
  76. package/dist/hooks/ui/index.d.ts.map +1 -1
  77. package/dist/hooks/ui/index.js +1 -0
  78. package/dist/hooks/ui/use-clipped-label-tooltip.d.ts +14 -0
  79. package/dist/hooks/ui/use-clipped-label-tooltip.d.ts.map +1 -0
  80. package/dist/hooks/ui/use-clipped-label-tooltip.js +13 -0
  81. package/dist/hooks/ui/use-is-truncated.d.ts.map +1 -1
  82. package/dist/hooks/ui/use-is-truncated.js +1 -0
  83. package/dist/hooks/ui/use-media-query.d.ts.map +1 -1
  84. package/dist/hooks/ui/use-media-query.js +1 -0
  85. package/dist/hooks/ui/use-resizable-panel-size.d.ts +1 -0
  86. package/dist/hooks/ui/use-resizable-panel-size.d.ts.map +1 -1
  87. package/dist/hooks/ui/use-resizable-panel-size.js +5 -1
  88. package/dist/index.cjs +28 -24
  89. package/dist/{knowledge-2QNZGDFO.cjs → knowledge-YJSDJIXT.cjs} +20 -20
  90. package/dist/{logs-YPWTJVIH.cjs → logs-42JG3NZ5.cjs} +26 -26
  91. package/dist/{policies-BK7TUKAF.cjs → policies-D4QNVJ26.cjs} +23 -23
  92. package/dist/{remote-session-CN3G7JNR.cjs → remote-session-EE6477O3.cjs} +10 -10
  93. package/dist/{scripts-K7AOYWZE.cjs → scripts-4VFYBXBE.cjs} +26 -26
  94. package/dist/{software-update-UFN4SBMY.cjs → software-update-OSDZQ5CP.cjs} +23 -23
  95. package/dist/{tickets-board-PLYD2NSY.cjs → tickets-board-44HO3LR4.cjs} +10 -10
  96. package/dist/types/navigation.d.ts +36 -0
  97. package/dist/types/navigation.d.ts.map +1 -1
  98. package/package.json +1 -1
  99. package/src/components/chat/chat-nav-sidebar.tsx +17 -4
  100. package/src/components/navigation/account-popover.tsx +31 -2
  101. package/src/components/navigation/app-layout-side-panel.tsx +2 -7
  102. package/src/components/navigation/navigation-sidebar-grouped.tsx +37 -6
  103. package/src/components/navigation/navigation-sidebar-item.tsx +18 -1
  104. package/src/components/navigation/navigation-sidebar.tsx +116 -7
  105. package/src/components/ui/panel-resize-handle.tsx +50 -8
  106. package/src/hooks/ui/index.ts +1 -0
  107. package/src/hooks/ui/use-clipped-label-tooltip.ts +20 -0
  108. package/src/hooks/ui/use-is-truncated.ts +2 -0
  109. package/src/hooks/ui/use-media-query.ts +2 -0
  110. package/src/hooks/ui/use-resizable-panel-size.ts +7 -1
  111. package/src/types/navigation.ts +37 -0
@@ -17,7 +17,7 @@
17
17
 
18
18
 
19
19
 
20
- var _chunk4JHO2NVIcjs = require('./chunk-4JHO2NVI.cjs');
20
+ var _chunkJ2IXYCEHcjs = require('./chunk-J2IXYCEH.cjs');
21
21
 
22
22
 
23
23
 
@@ -36,7 +36,7 @@ var _chunk4JHO2NVIcjs = require('./chunk-4JHO2NVI.cjs');
36
36
 
37
37
 
38
38
 
39
- var _chunk5L3UKDC6cjs = require('./chunk-5L3UKDC6.cjs');
39
+ var _chunk6LDL3UZEcjs = require('./chunk-6LDL3UZE.cjs');
40
40
 
41
41
 
42
42
 
@@ -135,6 +135,9 @@ var _chunkESG3WKLBcjs = require('./chunk-ESG3WKLB.cjs');
135
135
  var _chunk6OCFDC2Qcjs = require('./chunk-6OCFDC2Q.cjs');
136
136
 
137
137
 
138
+ var _chunkIWCYHXS3cjs = require('./chunk-IWCYHXS3.cjs');
139
+
140
+
138
141
  var _chunkMQDSQKK2cjs = require('./chunk-MQDSQKK2.cjs');
139
142
 
140
143
 
@@ -269,11 +272,11 @@ var _chunk7WT2C5YYcjs = require('./chunk-7WT2C5YY.cjs');
269
272
 
270
273
 
271
274
 
272
- var _chunkZABZIM2Ycjs = require('./chunk-ZABZIM2Y.cjs');
275
+ var _chunkFRL2ZN4Ocjs = require('./chunk-FRL2ZN4O.cjs');
273
276
 
274
277
 
275
278
 
276
- var _chunk7Z536SPRcjs = require('./chunk-7Z536SPR.cjs');
279
+ var _chunkFW7RKWPYcjs = require('./chunk-FW7RKWPY.cjs');
277
280
 
278
281
 
279
282
  var _chunkBUEEQD3Gcjs = require('./chunk-BUEEQD3G.cjs');
@@ -318,10 +321,10 @@ var _chunkIX2E3AN7cjs = require('./chunk-IX2E3AN7.cjs');
318
321
 
319
322
 
320
323
 
321
- var _chunkH3WTYAVRcjs = require('./chunk-H3WTYAVR.cjs');
324
+ var _chunkRSJYTQEAcjs = require('./chunk-RSJYTQEA.cjs');
322
325
 
323
326
 
324
- var _chunk5BM7X4GAcjs = require('./chunk-5BM7X4GA.cjs');
327
+ var _chunk5GBLXY5Fcjs = require('./chunk-5GBLXY5F.cjs');
325
328
 
326
329
 
327
330
 
@@ -331,7 +334,7 @@ var _chunk5BM7X4GAcjs = require('./chunk-5BM7X4GA.cjs');
331
334
 
332
335
 
333
336
 
334
- var _chunkGRHF5SWLcjs = require('./chunk-GRHF5SWL.cjs');
337
+ var _chunkNFNSPLGCcjs = require('./chunk-NFNSPLGC.cjs');
335
338
 
336
339
 
337
340
 
@@ -363,7 +366,7 @@ var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
363
366
 
364
367
 
365
368
 
366
- var _chunkLC65AC6Mcjs = require('./chunk-LC65AC6M.cjs');
369
+ var _chunkCOWMXUHNcjs = require('./chunk-COWMXUHN.cjs');
367
370
 
368
371
 
369
372
  var _chunkYSDB6HGQcjs = require('./chunk-YSDB6HGQ.cjs');
@@ -710,14 +713,14 @@ function buildHeadingIdMap(content, sectionIds) {
710
713
  for (const section of sectionIds) {
711
714
  sectionIdMap.set(section.title, section.id);
712
715
  sectionIdMap.set(section.title.toLowerCase(), section.id);
713
- sectionIdMap.set(_chunkZABZIM2Ycjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
716
+ sectionIdMap.set(_chunkFRL2ZN4Ocjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
714
717
  }
715
718
  }
716
- const dedupe = _chunkZABZIM2Ycjs.createHeadingIdDeduper.call(void 0, );
719
+ const dedupe = _chunkFRL2ZN4Ocjs.createHeadingIdDeduper.call(void 0, );
717
720
  const map = /* @__PURE__ */ new Map();
718
721
  let sectionOrdinal = 0;
719
722
  let headingOrdinal = 0;
720
- for (const { line, level, text: rawText } of _chunkZABZIM2Ycjs.scanHeadings.call(void 0, content)) {
723
+ for (const { line, level, text: rawText } of _chunkFRL2ZN4Ocjs.scanHeadings.call(void 0, content)) {
721
724
  const text2 = stripInlineMarkdown(rawText).trim();
722
725
  headingOrdinal++;
723
726
  if (level <= EXTRACTOR_MAX_LEVEL) sectionOrdinal++;
@@ -726,8 +729,8 @@ function buildHeadingIdMap(content, sectionIds) {
726
729
  for (const variation of [
727
730
  text2,
728
731
  text2.toLowerCase(),
729
- _chunkZABZIM2Ycjs.stripHeadingEmojis.call(void 0, text2),
730
- _chunkZABZIM2Ycjs.stripHeadingEmojis.call(void 0, text2).toLowerCase()
732
+ _chunkFRL2ZN4Ocjs.stripHeadingEmojis.call(void 0, text2),
733
+ _chunkFRL2ZN4Ocjs.stripHeadingEmojis.call(void 0, text2).toLowerCase()
731
734
  ]) {
732
735
  const id = sectionIdMap.get(variation);
733
736
  if (id) {
@@ -737,7 +740,7 @@ function buildHeadingIdMap(content, sectionIds) {
737
740
  }
738
741
  }
739
742
  if (assigned === void 0) {
740
- const baseId = _chunkZABZIM2Ycjs.slugifyHeadingText.call(void 0, text2);
743
+ const baseId = _chunkFRL2ZN4Ocjs.slugifyHeadingText.call(void 0, text2);
741
744
  assigned = dedupe(
742
745
  baseId || (level <= EXTRACTOR_MAX_LEVEL ? `section-${sectionOrdinal}` : `heading-${headingOrdinal}`)
743
746
  );
@@ -1278,7 +1281,7 @@ var MARKDOWN_H2_CLASS = "mb-4 mt-8 border-b border-ods-border pb-2 font-sans fon
1278
1281
  var MARKDOWN_PARAGRAPH_CLASS = "mb-4 leading-relaxed text-ods-text-primary first:mt-0 last:mb-0";
1279
1282
  var MarkdownContentImage = ({ src, alt }) => {
1280
1283
  const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
1281
- const authedSrc = _chunkLC65AC6Mcjs.useAuthedImageSrc.call(void 0, inScope ? void 0 : src);
1284
+ const authedSrc = _chunkCOWMXUHNcjs.useAuthedImageSrc.call(void 0, inScope ? void 0 : src);
1282
1285
  const resolvedSrc = inScope ? src : authedSrc;
1283
1286
  if (!resolvedSrc) return null;
1284
1287
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -1352,7 +1355,7 @@ function buildBaseComponents({
1352
1355
  const mapped = useHeadingId(node);
1353
1356
  const taken = useAssignedHeadingIds();
1354
1357
  const explicit = typeof _optionalChain([node, 'optionalAccess', _27 => _27.properties, 'optionalAccess', _28 => _28.id]) === "string" && node.properties.id !== "" ? node.properties.id : void 0;
1355
- const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunkZABZIM2Ycjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
1358
+ const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunkFRL2ZN4Ocjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
1356
1359
  const EffectiveTag = Tag2 === "h1" && demoteMarkdownH1ToH2 ? "h2" : Tag2;
1357
1360
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EffectiveTag, { id: id || void 0, className: headingClassName, children });
1358
1361
  }
@@ -1424,10 +1427,10 @@ function buildBaseComponents({
1424
1427
  const handleAnchorClick = (e) => {
1425
1428
  if (inPageAnchorId === null) return;
1426
1429
  if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0) return;
1427
- const target = _chunkZABZIM2Ycjs.getHashTargetElement.call(void 0, inPageAnchorId);
1430
+ const target = _chunkFRL2ZN4Ocjs.getHashTargetElement.call(void 0, inPageAnchorId);
1428
1431
  if (!_optionalChain([target, 'optionalAccess', _29 => _29.id])) return;
1429
1432
  e.preventDefault();
1430
- _chunkZABZIM2Ycjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunkZABZIM2Ycjs.HUB_HEADER_OFFSET_PX });
1433
+ _chunkFRL2ZN4Ocjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunkFRL2ZN4Ocjs.HUB_HEADER_OFFSET_PX });
1431
1434
  };
1432
1435
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1433
1436
  _chunkV45KLJQPcjs.next_link_default,
@@ -2036,7 +2039,7 @@ function findInlineCodeRanges(source) {
2036
2039
  while (pos <= len) {
2037
2040
  let end = source.indexOf("\n", pos);
2038
2041
  if (end === -1) end = len;
2039
- const blank = _chunkZABZIM2Ycjs.isBlankLine.call(void 0, source.slice(pos, end));
2042
+ const blank = _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, source.slice(pos, end));
2040
2043
  if (blank && segStart !== -1) break;
2041
2044
  if (!blank) {
2042
2045
  if (segStart === -1) segStart = pos;
@@ -2118,7 +2121,7 @@ function toMaskLines(source) {
2118
2121
  return out;
2119
2122
  }
2120
2123
  function blankFencedRegions(masked, lines) {
2121
- const fences = _chunkZABZIM2Ycjs.createFenceTracker.call(void 0, );
2124
+ const fences = _chunkFRL2ZN4Ocjs.createFenceTracker.call(void 0, );
2122
2125
  const ranges = [];
2123
2126
  let openStart = null;
2124
2127
  let lastEnd = 0;
@@ -2157,7 +2160,7 @@ function blankIndentedCode(masked, lines) {
2157
2160
  const listContentCols = [];
2158
2161
  const ranges = [];
2159
2162
  for (const line of lines) {
2160
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, line.content)) continue;
2163
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line.content)) continue;
2161
2164
  const indent = leadingIndent(line.content);
2162
2165
  const top = listContentCols.length ? listContentCols[listContentCols.length - 1] : 0;
2163
2166
  if (indent >= top + 4) {
@@ -2248,7 +2251,7 @@ function contPrefixLen(c) {
2248
2251
  function findLabelClose(lines, i, from) {
2249
2252
  for (let j = i; j < lines.length; j++) {
2250
2253
  const c = stripCr(lines[j].content);
2251
- if (j > i && _chunkZABZIM2Ycjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
2254
+ if (j > i && _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
2252
2255
  for (let q = j === i ? from : contPrefixLen(c); q < c.length; q = skipEscaped(c, q)) {
2253
2256
  if (c[q] === "[") return { stoppedAt: j };
2254
2257
  if (c[q] !== "]") continue;
@@ -2266,7 +2269,7 @@ function blankLinkDefinitions(masked, lines) {
2266
2269
  let k = from;
2267
2270
  for (; k < lines.length; k++) {
2268
2271
  const c = stripCr(lines[k].content);
2269
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, c)) break;
2272
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, c)) break;
2270
2273
  blankLine(lines[k]);
2271
2274
  if (stop(c)) {
2272
2275
  k++;
@@ -2309,7 +2312,7 @@ function blankLinkDefinitions(masked, lines) {
2309
2312
  const k = j + 1;
2310
2313
  if (k >= lines.length) break;
2311
2314
  const c = stripCr(lines[k].content);
2312
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, c)) break;
2315
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, c)) break;
2313
2316
  const at = contPrefixLen(c);
2314
2317
  const next = tail.k === "needDest" ? parseDefTail(c, at) : parseTitleTail(c, skipSpaces(c, at));
2315
2318
  if (next.k === "decline") break;
@@ -2379,7 +2382,7 @@ function blankUnreferencedFootnotes(masked, lines, folded) {
2379
2382
  let sawBlank = false;
2380
2383
  for (let k = i + 1; k < lines.length; k++) {
2381
2384
  const c = text2(lines[k]);
2382
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, c)) {
2385
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, c)) {
2383
2386
  sawBlank = true;
2384
2387
  continue;
2385
2388
  }
@@ -2479,7 +2482,7 @@ function paragraphEnd(s, from) {
2479
2482
  lineStart += 1;
2480
2483
  const next = s.indexOf("\n", lineStart);
2481
2484
  const line = s.slice(lineStart, next === -1 ? s.length : next);
2482
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, line)) return lineStart;
2485
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line)) return lineStart;
2483
2486
  if (next === -1) break;
2484
2487
  lineStart = next;
2485
2488
  }
@@ -2633,7 +2636,7 @@ function blankListItemCode(masked, lines, depth = 0) {
2633
2636
  run = [];
2634
2637
  };
2635
2638
  for (const line of lines) {
2636
- if (_chunkZABZIM2Ycjs.isBlankLine.call(void 0, line.content)) {
2639
+ if (_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line.content)) {
2637
2640
  if (run.length > 0) run.push({ ...line, content: "" });
2638
2641
  continue;
2639
2642
  }
@@ -2858,7 +2861,7 @@ function htmlBlockStartKind(line, inParagraph) {
2858
2861
  function computeHtmlBlockRanges(text2) {
2859
2862
  if (text2.indexOf("<") === -1) return [];
2860
2863
  const ranges = [];
2861
- const fences = _chunkZABZIM2Ycjs.createFenceTracker.call(void 0, );
2864
+ const fences = _chunkFRL2ZN4Ocjs.createFenceTracker.call(void 0, );
2862
2865
  let kind = null;
2863
2866
  let start = 0;
2864
2867
  let lastEnd = 0;
@@ -2873,9 +2876,9 @@ function computeHtmlBlockRanges(text2) {
2873
2876
  const expanded = expandTabs(line);
2874
2877
  const norm = stripContainerPrefix(expanded, listContentCol);
2875
2878
  if (norm.openedListCol >= 0) listContentCol = norm.openedListCol;
2876
- else if (!_chunkZABZIM2Ycjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
2877
- const normBlank = _chunkZABZIM2Ycjs.isBlankLine.call(void 0, norm.text);
2878
- const blank = openPrefixLen > 0 ? _chunkZABZIM2Ycjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunkZABZIM2Ycjs.isBlankLine.call(void 0, line);
2879
+ else if (!_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
2880
+ const normBlank = _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, norm.text);
2881
+ const blank = openPrefixLen > 0 ? _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line);
2879
2882
  if (kind !== null) {
2880
2883
  if (kind >= 6) {
2881
2884
  if (blank) {
@@ -3029,7 +3032,7 @@ var ScanState = class {
3029
3032
  * `FENCE_RE` plus its own open/close state machine, cross-referenced by a
3030
3033
  * comment) is precisely the drift that produced the `~~~` bug.
3031
3034
  */
3032
- this.fences = _chunkZABZIM2Ycjs.createFenceTracker.call(void 0, );
3035
+ this.fences = _chunkFRL2ZN4Ocjs.createFenceTracker.call(void 0, );
3033
3036
  /** Depth of currently open raw HTML block containers. */
3034
3037
  this.htmlDepth = 0;
3035
3038
  /** Raw-block tag name of a start tag still waiting for its `>`, or null. */
@@ -3102,7 +3105,7 @@ function splitStreamingBlocks(content) {
3102
3105
  const isListOrQuote = (line) => /^\s{0,3}(?:[-+*]\s|\d{1,9}[.)]\s|>)/.test(line);
3103
3106
  const firstNonBlank = (arr) => {
3104
3107
  for (const line of arr) {
3105
- if (!_chunkZABZIM2Ycjs.isBlankLine.call(void 0, line)) return line;
3108
+ if (!_chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line)) return line;
3106
3109
  }
3107
3110
  return void 0;
3108
3111
  };
@@ -3112,10 +3115,10 @@ function splitStreamingBlocks(content) {
3112
3115
  state.scanLine(line);
3113
3116
  if (state.htmlMark() !== markBefore || state.htmlLatched()) currentTouchedHtml = true;
3114
3117
  current.push(line);
3115
- const isBlank = _chunkZABZIM2Ycjs.isBlankLine.call(void 0, line);
3118
+ const isBlank = _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, line);
3116
3119
  if (!isBlank || state.fences.openChar() !== null || state.htmlBlocksCut()) continue;
3117
3120
  let j = i + 1;
3118
- while (j < lines.length && _chunkZABZIM2Ycjs.isBlankLine.call(void 0, lines[j])) j++;
3121
+ while (j < lines.length && _chunkFRL2ZN4Ocjs.isBlankLine.call(void 0, lines[j])) j++;
3119
3122
  if (j >= lines.length) continue;
3120
3123
  const next = lines[j];
3121
3124
  if (/^\s/.test(next)) continue;
@@ -3123,7 +3126,7 @@ function splitStreamingBlocks(content) {
3123
3126
  if (isListOrQuote(next) && unitOpener !== void 0 && isListOrQuote(unitOpener)) {
3124
3127
  continue;
3125
3128
  }
3126
- if (current.every(_chunkZABZIM2Ycjs.isBlankLine)) continue;
3129
+ if (current.every(_chunkFRL2ZN4Ocjs.isBlankLine)) continue;
3127
3130
  units.push(current);
3128
3131
  unitTouchedHtml.push(currentTouchedHtml);
3129
3132
  current = [];
@@ -3536,7 +3539,7 @@ function onAskAiIntent(run) {
3536
3539
 
3537
3540
  // src/components/chat/chat-appearance-context.tsx
3538
3541
 
3539
- var ChatAppearanceContext = _react.createContext.call(void 0, _chunk4JHO2NVIcjs.CHAT_APPEARANCE.CLASSIC);
3542
+ var ChatAppearanceContext = _react.createContext.call(void 0, _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.CLASSIC);
3540
3543
  function useChatAppearance() {
3541
3544
  return _react.useContext.call(void 0, ChatAppearanceContext);
3542
3545
  }
@@ -3575,7 +3578,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3575
3578
  ...props
3576
3579
  }, ref) => {
3577
3580
  const [isProcessing, setIsProcessing] = _react.useState.call(void 0, false);
3578
- const isV2 = useChatAppearance() === _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2;
3581
+ const isV2 = useChatAppearance() === _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2;
3579
3582
  const handleApprove = async () => {
3580
3583
  setIsProcessing(true);
3581
3584
  try {
@@ -3598,7 +3601,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3598
3601
  {
3599
3602
  ref,
3600
3603
  className: _chunk63A4GZMBcjs.cn.call(void 0,
3601
- _chunk5L3UKDC6cjs.CHAT_BLOCK_CLASS,
3604
+ _chunk6LDL3UZEcjs.CHAT_BLOCK_CLASS,
3602
3605
  // v2: the thread owns the space below the card.
3603
3606
  !isV2 && "mb-[var(--spacing-system-xsf)]",
3604
3607
  className
@@ -3606,7 +3609,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3606
3609
  ...props,
3607
3610
  children: [
3608
3611
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full whitespace-pre-line break-words text-ods-text-primary text-h4", children: _optionalChain([data, 'access', _51 => _51.explanation, 'optionalAccess', _52 => _52.trim, 'call', _53 => _53()]) || "Approval required" }),
3609
- showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ApprovalWaitingLine, {}),
3612
+ showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ApprovalWaitingLine, {}),
3610
3613
  !showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xsf)]", children: [
3611
3614
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3612
3615
  _chunkFCZAUK4Dcjs.Button,
@@ -3638,14 +3641,14 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3638
3641
  children: "Reject"
3639
3642
  }
3640
3643
  )
3641
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3644
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3642
3645
  ]
3643
3646
  }
3644
3647
  );
3645
3648
  }
3646
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk63A4GZMBcjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]", _chunk5L3UKDC6cjs.CHAT_BLOCK_CLASS, className), ...props, children: [
3649
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk63A4GZMBcjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]", _chunk6LDL3UZEcjs.CHAT_BLOCK_CLASS, className), ...props, children: [
3647
3650
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
3648
- showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ApprovalWaitingLine, {}),
3651
+ showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ApprovalWaitingLine, {}),
3649
3652
  !showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
3650
3653
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3651
3654
  _chunkFCZAUK4Dcjs.Button,
@@ -3677,7 +3680,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3677
3680
  children: "Reject"
3678
3681
  }
3679
3682
  )
3680
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3683
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3681
3684
  ] });
3682
3685
  }
3683
3686
  );
@@ -3707,7 +3710,7 @@ EscalationOfferMessage.displayName = "EscalationOfferMessage";
3707
3710
 
3708
3711
  var AiAssistantInfo = _react.forwardRef.call(void 0,
3709
3712
  ({ className, icon, leading, title, body, timestamp, ...props }, ref) => {
3710
- const isV2 = useChatAppearance() === _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2;
3713
+ const isV2 = useChatAppearance() === _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2;
3711
3714
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3712
3715
  "div",
3713
3716
  {
@@ -3723,7 +3726,7 @@ var AiAssistantInfo = _react.forwardRef.call(void 0,
3723
3726
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
3724
3727
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start", children: [
3725
3728
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 truncate text-ods-text-primary text-h4", title, children: title }),
3726
- timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-right text-ods-text-secondary text-h6", children: _chunk4JHO2NVIcjs.formatTime.call(void 0, timestamp) })
3729
+ timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-right text-ods-text-secondary text-h6", children: _chunkJ2IXYCEHcjs.formatTime.call(void 0, timestamp) })
3727
3730
  ] }),
3728
3731
  body != null && body !== "" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full break-words text-ods-text-secondary text-h4", children: body })
3729
3732
  ] })
@@ -3838,7 +3841,7 @@ var SystemEventMessage = _react.forwardRef.call(void 0, ({ text: text2, timestam
3838
3841
  AiAssistantInfo,
3839
3842
  {
3840
3843
  ref,
3841
- leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { alt: joined, fallback: joined, size: "lg", variant: "round", className: "shrink-0" }),
3844
+ leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { alt: joined, fallback: joined, size: "lg", variant: "round", className: "shrink-0" }),
3842
3845
  title: "Technician Joined",
3843
3846
  body: `You're now chatting with ${joined}.`,
3844
3847
  timestamp,
@@ -4569,7 +4572,7 @@ var thoughtMdClasses = [
4569
4572
  var ThinkingDisplay = _react.forwardRef.call(void 0,
4570
4573
  ({ className, text: text2, isStreaming = false, ...props }, ref) => {
4571
4574
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
4572
- const { innerRef, isOverflowing, containerStyle } = _chunk5L3UKDC6cjs.useCollapsible.call(void 0, {
4575
+ const { innerRef, isOverflowing, containerStyle } = _chunk6LDL3UZEcjs.useCollapsible.call(void 0, {
4573
4576
  expanded,
4574
4577
  collapsedHeight: 19,
4575
4578
  disableTransition: isStreaming
@@ -4584,7 +4587,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
4584
4587
  setExpanded(!expanded);
4585
4588
  }
4586
4589
  };
4587
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk63A4GZMBcjs.cn.call(void 0, _chunk5L3UKDC6cjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4590
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk63A4GZMBcjs.cn.call(void 0, _chunk6LDL3UZEcjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4588
4591
  "div",
4589
4592
  {
4590
4593
  role: "button",
@@ -4602,7 +4605,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
4602
4605
  isStreaming && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOEP5KAT6cjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
4603
4606
  ] }),
4604
4607
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: _chunk63A4GZMBcjs.cn.call(void 0, "text-sm leading-snug text-ods-text-secondary", thoughtMdClasses), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SimpleMarkdownRenderer, { content: escapeThinkingTags(text2), textSize: "compact" }) }) }),
4605
- canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ExpandChevron, { expanded }) })
4608
+ canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ExpandChevron, { expanded }) })
4606
4609
  ]
4607
4610
  }
4608
4611
  ) });
@@ -4781,7 +4784,7 @@ function QuickActionChipSkeleton({
4781
4784
  }) {
4782
4785
  const question = variant === "question";
4783
4786
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4784
- _chunkGRHF5SWLcjs.Tag,
4787
+ _chunkNFNSPLGCcjs.Tag,
4785
4788
  {
4786
4789
  ..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props),
4787
4790
  variant: "outline",
@@ -4848,7 +4851,7 @@ function QuickActionChipButton({
4848
4851
  const tagSize = question || fill ? "sentence" : size;
4849
4852
  if (!interactive) {
4850
4853
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4851
- _chunkGRHF5SWLcjs.Tag,
4854
+ _chunkNFNSPLGCcjs.Tag,
4852
4855
  {
4853
4856
  ...markers,
4854
4857
  variant: tagVariant,
@@ -4877,7 +4880,7 @@ function QuickActionChipButton({
4877
4880
  className
4878
4881
  ),
4879
4882
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4880
- _chunkGRHF5SWLcjs.Tag,
4883
+ _chunkNFNSPLGCcjs.Tag,
4881
4884
  {
4882
4885
  variant: tagVariant,
4883
4886
  size: tagSize,
@@ -4953,9 +4956,9 @@ var iconTint = {
4953
4956
  var ErrorMessageDisplay = _react.forwardRef.call(void 0,
4954
4957
  ({ className, title, details, type = "error", ...props }, ref) => {
4955
4958
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
4956
- const { innerRef, containerStyle } = _chunk5L3UKDC6cjs.useCollapsible.call(void 0, { expanded });
4959
+ const { innerRef, containerStyle } = _chunk6LDL3UZEcjs.useCollapsible.call(void 0, { expanded });
4957
4960
  const hasDetails = Boolean(details);
4958
- const isV2 = useChatAppearance() === _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2;
4961
+ const isV2 = useChatAppearance() === _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2;
4959
4962
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
4960
4963
  "div",
4961
4964
  {
@@ -4989,7 +4992,7 @@ var ErrorMessageDisplay = _react.forwardRef.call(void 0,
4989
4992
  children: title
4990
4993
  }
4991
4994
  ),
4992
- hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ExpandChevron, { expanded })
4995
+ hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ExpandChevron, { expanded })
4993
4996
  ]
4994
4997
  }
4995
4998
  ),
@@ -5037,7 +5040,7 @@ function MspOrganizationCard({
5037
5040
  const trailing = action && loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { children: action }) : action;
5038
5041
  if (footer) {
5039
5042
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, FOOTER_FRAME_CLASS, className), children: [
5040
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "sm", variant: "square" }),
5043
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "sm", variant: "square" }),
5041
5044
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TEXT_STACK_CLASS, children: [
5042
5045
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: FOOTER_CAPTION_CLASS, children: FOOTER_CAPTION }),
5043
5046
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h4", className: "w-3/5" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: _nullishCoalesce(title, () => ( name)) })
@@ -5046,7 +5049,7 @@ function MspOrganizationCard({
5046
5049
  ] });
5047
5050
  }
5048
5051
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CARD_FRAME_CLASS, className), children: [
5049
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
5052
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
5050
5053
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: TEXT_STACK_CLASS, children: loading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
5051
5054
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h3", className: "w-3/5" }),
5052
5055
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h4", className: "w-2/5" })
@@ -5156,7 +5159,7 @@ var ChatHeader = _react.forwardRef.call(void 0,
5156
5159
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 px-4 py-3", children: [
5157
5160
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
5158
5161
  userIcon && !isLoading ? /* @__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,
5159
- _chunkGRHF5SWLcjs.SquareAvatar,
5162
+ _chunkNFNSPLGCcjs.SquareAvatar,
5160
5163
  {
5161
5164
  loading: isLoading,
5162
5165
  src: userAvatar,
@@ -5238,9 +5241,9 @@ var ChatHeader = _react.forwardRef.call(void 0,
5238
5241
  )
5239
5242
  ] }),
5240
5243
  (ticketInfo.status || ticketInfo.statusName) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5241
- _chunk5L3UKDC6cjs.TicketStatusTag,
5244
+ _chunk6LDL3UZEcjs.TicketStatusTag,
5242
5245
  {
5243
- ..._chunk5L3UKDC6cjs.resolveStatusTagProps.call(void 0, {
5246
+ ..._chunk6LDL3UZEcjs.resolveStatusTagProps.call(void 0, {
5244
5247
  status: ticketInfo.status,
5245
5248
  statusKind: ticketInfo.statusKind,
5246
5249
  statusName: ticketInfo.statusName,
@@ -5778,7 +5781,7 @@ function InlineChip({
5778
5781
  loading
5779
5782
  }) {
5780
5783
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5781
- _chunkGRHF5SWLcjs.Tag,
5784
+ _chunkNFNSPLGCcjs.Tag,
5782
5785
  {
5783
5786
  as: "span",
5784
5787
  variant: "badge",
@@ -5879,11 +5882,11 @@ var remarkMentionChips = () => {
5879
5882
  // src/components/chat/tool-execution-display.tsx
5880
5883
 
5881
5884
 
5882
- var COMMAND_BODY_KEYS = new Set(_chunk5L3UKDC6cjs.COMMAND_BODY_ARG_KEYS);
5885
+ var COMMAND_BODY_KEYS = new Set(_chunk6LDL3UZEcjs.COMMAND_BODY_ARG_KEYS);
5883
5886
  var ToolExecutionDisplay = _react.forwardRef.call(void 0,
5884
5887
  ({ className, message, assistantType, variant = "admin", ...props }, ref) => {
5885
5888
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
5886
- const { innerRef, containerStyle } = _chunk5L3UKDC6cjs.useCollapsible.call(void 0, { expanded });
5889
+ const { innerRef, containerStyle } = _chunk6LDL3UZEcjs.useCollapsible.call(void 0, { expanded });
5887
5890
  const isClient = assistantType === "fae";
5888
5891
  const isClientView = variant === "client";
5889
5892
  const isExecuting = message.type === "EXECUTING_TOOL";
@@ -5926,7 +5929,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
5926
5929
  }
5927
5930
  ),
5928
5931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: renderStatusIcon() }),
5929
- !isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ExpandChevron, { expanded: isExpanded }) })
5932
+ !isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ExpandChevron, { expanded: isExpanded }) })
5930
5933
  ] });
5931
5934
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5932
5935
  "div",
@@ -5936,7 +5939,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
5936
5939
  // The command running block keeps its bordered box in both chats
5937
5940
  // (Figma 1972-6109). CLIENT (Fae) only drops the tool icon below.
5938
5941
  "flex w-full flex-col overflow-hidden",
5939
- _chunk5L3UKDC6cjs.CHAT_BLOCK_FRAME_CLASS,
5942
+ _chunk6LDL3UZEcjs.CHAT_BLOCK_FRAME_CLASS,
5940
5943
  className
5941
5944
  ),
5942
5945
  ...props,
@@ -5947,7 +5950,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
5947
5950
  // It reads as a card: what was done, then one status line under it.
5948
5951
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-sf)] text-left", children: [
5949
5952
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 whitespace-pre-wrap break-words text-ods-text-primary text-h4", children: previewText }),
5950
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.StatusLine, { tone: statusTone, label: statusLabel })
5953
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.StatusLine, { tone: statusTone, label: statusLabel })
5951
5954
  ] })
5952
5955
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
5953
5956
  hasBody ? (
@@ -5966,9 +5969,9 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
5966
5969
  )
5967
5970
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-start gap-[var(--spacing-system-xs)] p-[var(--spacing-system-s)] text-left", children: headerContent }),
5968
5971
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start gap-0 border-t border-ods-border p-[var(--spacing-system-sf)] text-h6", children: [
5969
- argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ArgRow, { argKey: key, value }, key)),
5972
+ argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ArgRow, { argKey: key, value }, key)),
5970
5973
  hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5971
- _chunk5L3UKDC6cjs.ResultBlock,
5974
+ _chunk6LDL3UZEcjs.ResultBlock,
5972
5975
  {
5973
5976
  result: message.result,
5974
5977
  className: argEntries.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
@@ -6016,8 +6019,8 @@ function ChatMarkdownLink({
6016
6019
 
6017
6020
  // src/components/chat/chat-message-layout.ts
6018
6021
  var CHAT_MESSAGE_ROW_PADDING_CLASS = {
6019
- [_chunk4JHO2NVIcjs.CHAT_APPEARANCE.CLASSIC]: "py-[var(--spacing-system-s)]",
6020
- [_chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2]: "py-[calc(var(--spacing-system-m)/2)]"
6022
+ [_chunkJ2IXYCEHcjs.CHAT_APPEARANCE.CLASSIC]: "py-[var(--spacing-system-s)]",
6023
+ [_chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2]: "py-[calc(var(--spacing-system-m)/2)]"
6021
6024
  };
6022
6025
  var CHAT_MESSAGE_STACK_CLASS = "grid min-w-0 grid-cols-1 gap-[var(--spacing-system-xxs)]";
6023
6026
  var CHAT_MESSAGE_HEADER_CLASS = "flex items-center gap-[var(--spacing-system-xs)]";
@@ -6074,8 +6077,8 @@ var remarkStripCitations = () => {
6074
6077
  var MENTION_MARKER_REGEX = /(^|[^\w@])@[a-zA-Z]+:([A-Za-z0-9_.+/=-]*[A-Za-z0-9_+/=])/g;
6075
6078
  var CARD_MARKER_REGEX = createCardMarkerScanner();
6076
6079
  function formatMessageTimestamp(timestamp) {
6077
- const time = _chunk4JHO2NVIcjs.formatTime.call(void 0, timestamp);
6078
- return _chunk5L3UKDC6cjs.isToday.call(void 0, timestamp) ? time : `${_chunk4JHO2NVIcjs.formatDate.call(void 0, timestamp)} ${time}`;
6080
+ const time = _chunkJ2IXYCEHcjs.formatTime.call(void 0, timestamp);
6081
+ return _chunk6LDL3UZEcjs.isToday.call(void 0, timestamp) ? time : `${_chunkJ2IXYCEHcjs.formatDate.call(void 0, timestamp)} ${time}`;
6079
6082
  }
6080
6083
  function normalizeContent(content) {
6081
6084
  if (typeof content === "string") {
@@ -6131,7 +6134,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
6131
6134
  const isError = role === "error";
6132
6135
  const inheritedAppearance = useChatAppearance();
6133
6136
  const appearance = _nullishCoalesce(appearanceProp, () => ( inheritedAppearance));
6134
- const isV2 = appearance === _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2;
6137
+ const isV2 = appearance === _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2;
6135
6138
  const authorType = _nullishCoalesce(authorTypeProp, () => ( (isHuman ? "user" : assistantType === "mingo" ? "mingo" : "fae")));
6136
6139
  const isOtherPerson = isHuman && selfAuthorType !== void 0 && authorType !== "system" && authorType !== selfAuthorType;
6137
6140
  const isUser = isHuman && !isOtherPerson;
@@ -6319,9 +6322,9 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
6319
6322
  const faceBox = "h-5 w-5 flex-shrink-0";
6320
6323
  const face = !showAvatar || isSystem ? null : !isHuman && !avatar && assistantIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: _chunk63A4GZMBcjs.cn.call(void 0, "flex items-center justify-center", faceBox), children: assistantIcon }) : !isHuman && !avatar && assistantType ? (
6321
6324
  // An agent with no picture shows its packaged mark, never initials.
6322
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk63A4GZMBcjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
6325
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk63A4GZMBcjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
6323
6326
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: "inline-flex flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6324
- _chunkGRHF5SWLcjs.SquareAvatar,
6327
+ _chunkNFNSPLGCcjs.SquareAvatar,
6325
6328
  {
6326
6329
  src: avatar || void 0,
6327
6330
  alt: displayName,
@@ -6337,7 +6340,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
6337
6340
  "div",
6338
6341
  {
6339
6342
  ref,
6340
- className: _chunk63A4GZMBcjs.cn.call(void 0, "relative", CHAT_MESSAGE_ROW_PADDING_CLASS[_chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2], className),
6343
+ className: _chunk63A4GZMBcjs.cn.call(void 0, "relative", CHAT_MESSAGE_ROW_PADDING_CLASS[_chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2], className),
6341
6344
  ...props,
6342
6345
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatAppearanceContext.Provider, { value: appearance, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SystemEventMessage, { text: name, timestamp }) })
6343
6346
  }
@@ -6349,7 +6352,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
6349
6352
  ref,
6350
6353
  className: _chunk63A4GZMBcjs.cn.call(void 0,
6351
6354
  "relative",
6352
- CHAT_MESSAGE_ROW_PADDING_CLASS[isV2 ? _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2 : _chunk4JHO2NVIcjs.CHAT_APPEARANCE.CLASSIC],
6355
+ CHAT_MESSAGE_ROW_PADDING_CLASS[isV2 ? _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2 : _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.CLASSIC],
6353
6356
  className
6354
6357
  ),
6355
6358
  ...props,
@@ -6406,7 +6409,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
6406
6409
  );
6407
6410
  } else if (segment.type === "approval_batch") {
6408
6411
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6409
- _chunk5L3UKDC6cjs.ApprovalBatchMessage,
6412
+ _chunk6LDL3UZEcjs.ApprovalBatchMessage,
6410
6413
  {
6411
6414
  data: segment.data,
6412
6415
  status: segment.status,
@@ -6492,7 +6495,7 @@ function ChatMessageSkeleton({
6492
6495
  const lines = Math.max(1, bodyLines);
6493
6496
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "relative", CHAT_MESSAGE_ROW_PADDING_CLASS[appearance], className), ..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CHAT_MESSAGE_STACK_CLASS, children: [
6494
6497
  (showAvatar || showName) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CHAT_MESSAGE_HEADER_CLASS, isUser && "justify-end"), children: [
6495
- showAvatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { loading: true, sizePx: CHAT_MESSAGE_FACE_PX, variant: "round" }),
6498
+ showAvatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { loading: true, sizePx: CHAT_MESSAGE_FACE_PX, variant: "round" }),
6496
6499
  showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h6", className: "w-24" }),
6497
6500
  showName && showTime && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h6", className: _chunk63A4GZMBcjs.cn.call(void 0, "ml-auto", TIME_BAR_CLASS) })
6498
6501
  ] }),
@@ -6680,7 +6683,7 @@ var ChatMessageList = _react.forwardRef.call(void 0,
6680
6683
  approvalVariant,
6681
6684
  selfAuthorType,
6682
6685
  nameEveryTurn,
6683
- appearance = _chunk4JHO2NVIcjs.CHAT_APPEARANCE.CLASSIC,
6686
+ appearance = _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.CLASSIC,
6684
6687
  assistantIcon,
6685
6688
  pendingApprovals,
6686
6689
  hasNextPage,
@@ -7546,7 +7549,7 @@ function formatChatAttachmentMarkdownForBubble(att, viewUrlPrefix) {
7546
7549
 
7547
7550
  [Attached: ${safeName}](${url})`;
7548
7551
  }
7549
- var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunkH3WTYAVRcjs.escapeRegExp.call(void 0, CHAT_ATTACHMENT_VIEW_URL_PREFIX);
7552
+ var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunkRSJYTQEAcjs.escapeRegExp.call(void 0, CHAT_ATTACHMENT_VIEW_URL_PREFIX);
7550
7553
  var CHAT_ATTACHMENT_MARKDOWN_PATTERN = new RegExp(
7551
7554
  `^\\s*!?\\[[^\\]]*\\]\\(${CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED}[^)]+\\)\\s*$`,
7552
7555
  "gm"
@@ -7810,7 +7813,7 @@ function MarqueeWallFades({
7810
7813
  }) });
7811
7814
  }
7812
7815
  function CloneCopy({ className, style, children }) {
7813
- const ref = _chunkZABZIM2Ycjs.useSuppressCloneFocus.call(void 0, true);
7816
+ const ref = _chunkFRL2ZN4Ocjs.useSuppressCloneFocus.call(void 0, true);
7814
7817
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, "aria-hidden": true, "data-marquee-copy": "clone", className, style, children });
7815
7818
  }
7816
7819
  function MarqueeWall({
@@ -7837,7 +7840,7 @@ function MarqueeWall({
7837
7840
  const containerRef = _react.useRef.call(void 0, null);
7838
7841
  const trackRef = _react.useRef.call(void 0, null);
7839
7842
  const copyRef = _react.useRef.call(void 0, null);
7840
- const reducedMotion = _nullishCoalesce(_chunkLC65AC6Mcjs.useMediaQuery.call(void 0, "(prefers-reduced-motion: reduce)"), () => ( false));
7843
+ const reducedMotion = _nullishCoalesce(_chunkCOWMXUHNcjs.useMediaQuery.call(void 0, "(prefers-reduced-motion: reduce)"), () => ( false));
7841
7844
  const [overflows, setOverflows] = _react.useState.call(void 0, false);
7842
7845
  const copySizeRef = _react.useRef.call(void 0, 0);
7843
7846
  const wrapSizeRef = _react.useRef.call(void 0, 0);
@@ -7864,7 +7867,7 @@ function MarqueeWall({
7864
7867
  ro.observe(copy);
7865
7868
  return () => ro.disconnect();
7866
7869
  }, [measure, marqueeMounted]);
7867
- const { ref: observe, inView: nearViewport } = _chunkZABZIM2Ycjs.useInView.call(void 0, {
7870
+ const { ref: observe, inView: nearViewport } = _chunkFRL2ZN4Ocjs.useInView.call(void 0, {
7868
7871
  rootMargin: _chunkNTPX5GXIcjs.NEAR_VIEWPORT_ROOT_MARGIN,
7869
7872
  initial: true
7870
7873
  });
@@ -7872,7 +7875,7 @@ function MarqueeWall({
7872
7875
  observe(containerRef.current);
7873
7876
  return () => observe(null);
7874
7877
  }, [observe]);
7875
- const autoplay = _chunkZABZIM2Ycjs.useAutoplay.call(void 0, nearViewport);
7878
+ const autoplay = _chunkFRL2ZN4Ocjs.useAutoplay.call(void 0, nearViewport);
7876
7879
  const pointerInsideRef = _react.useRef.call(void 0, false);
7877
7880
  const clearPointerInside = _react.useCallback.call(void 0, () => {
7878
7881
  pointerInsideRef.current = false;
@@ -7885,7 +7888,7 @@ function MarqueeWall({
7885
7888
  if (e.pointerType === "touch") return;
7886
7889
  pointerInsideRef.current = false;
7887
7890
  }, []);
7888
- _chunkZABZIM2Ycjs.useResetOnPageHidden.call(void 0, clearPointerInside);
7891
+ _chunkFRL2ZN4Ocjs.useResetOnPageHidden.call(void 0, clearPointerInside);
7889
7892
  const draggingRef = _react.useRef.call(void 0, false);
7890
7893
  const dragSuppressUntilRef = _react.useRef.call(void 0, 0);
7891
7894
  const applyTransform = _react.useCallback.call(void 0,
@@ -7938,7 +7941,7 @@ function MarqueeWall({
7938
7941
  if (!sync) return void 0;
7939
7942
  return sync.register(member);
7940
7943
  }, [sync, member]);
7941
- const { posRef, wrap } = _chunkZABZIM2Ycjs.useMarqueeEngine.call(void 0, {
7944
+ const { posRef, wrap } = _chunkFRL2ZN4Ocjs.useMarqueeEngine.call(void 0, {
7942
7945
  active: marqueeActive && autoplay.playing && isDriver,
7943
7946
  speed,
7944
7947
  isPaused: (now) => pauseOnHover && pointerInsideRef.current || draggingRef.current || now < dragSuppressUntilRef.current,
@@ -8446,9 +8449,9 @@ function chatDayLabel(timestamp, now = /* @__PURE__ */ new Date()) {
8446
8449
  if (time >= startOfToday) return "Today";
8447
8450
  const startOfYesterday = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 1).getTime();
8448
8451
  if (time >= startOfYesterday) return "Yesterday";
8449
- return _chunkGRHF5SWLcjs.formatDateWithTimezone.call(void 0,
8452
+ return _chunkNFNSPLGCcjs.formatDateWithTimezone.call(void 0,
8450
8453
  date,
8451
- _chunkGRHF5SWLcjs.VIEWER_TIMEZONE,
8454
+ _chunkNFNSPLGCcjs.VIEWER_TIMEZONE,
8452
8455
  { day: "numeric", month: "short", year: date.getFullYear() === now.getFullYear() ? void 0 : "numeric" },
8453
8456
  { viewerLocale: true }
8454
8457
  );
@@ -8652,7 +8655,7 @@ function MingoChatHistoryRow({
8652
8655
  !loading && "cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-accent"
8653
8656
  ),
8654
8657
  children: [
8655
- loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h4", className: _chunk4JHO2NVIcjs.SKELETON_TITLE_WIDTHS[skeletonIndex % _chunk4JHO2NVIcjs.SKELETON_TITLE_WIDTHS.length] }) : null,
8658
+ loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h4", className: _chunkJ2IXYCEHcjs.SKELETON_TITLE_WIDTHS[skeletonIndex % _chunkJ2IXYCEHcjs.SKELETON_TITLE_WIDTHS.length] }) : null,
8656
8659
  !loading && unread > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-8 min-w-8 shrink-0 items-center justify-center rounded-md bg-ods-accent px-[var(--spacing-system-xsf)] text-ods-text-on-accent text-h5", children: unread > 99 ? "99+" : unread }) : null,
8657
8660
  loading ? null : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8658
8661
  "span",
@@ -8722,7 +8725,7 @@ function MingoChatHistoryRow({
8722
8725
  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")
8723
8726
  ),
8724
8727
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8725
- _chunkGRHF5SWLcjs.SquareAvatar,
8728
+ _chunkNFNSPLGCcjs.SquareAvatar,
8726
8729
  {
8727
8730
  variant: "round",
8728
8731
  sizePx: 24,
@@ -8779,7 +8782,7 @@ function MingoChatHistory({
8779
8782
  const isLoading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading;
8780
8783
  const groups = _react.useMemo.call(void 0, () => groupDialogs(dialogs), [dialogs]);
8781
8784
  const noSearchResults = groups.length === 0 && !!_optionalChain([searchQuery, 'optionalAccess', _171 => _171.trim, 'call', _172 => _172()]);
8782
- const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunk4JHO2NVIcjs.useScrollFade.call(void 0, );
8785
+ const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkJ2IXYCEHcjs.useScrollFade.call(void 0, );
8783
8786
  const onScroll = loadMore === "scroll";
8784
8787
  const sentinelRef = useLoadMoreSentinel({
8785
8788
  hasMore: hasMore && onScroll,
@@ -8842,8 +8845,8 @@ function MingoChatHistory({
8842
8845
  ]
8843
8846
  }
8844
8847
  ),
8845
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, color: "var(--color-bg-card)", className: "h-12" }),
8846
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, color: "var(--color-bg-card)", className: "h-12" })
8848
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, color: "var(--color-bg-card)", className: "h-12" }),
8849
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, color: "var(--color-bg-card)", className: "h-12" })
8847
8850
  ] }) });
8848
8851
  }
8849
8852
 
@@ -8897,7 +8900,7 @@ function MingoWelcome({
8897
8900
  } catch (e8) {
8898
8901
  }
8899
8902
  }, [promoStorage, promoStorageKey]);
8900
- const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunk4JHO2NVIcjs.useScrollFade.call(void 0, );
8903
+ const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunkJ2IXYCEHcjs.useScrollFade.call(void 0, );
8901
8904
  const showPinnedRegion = !!dialogHistory || !historyLoading && !loadError;
8902
8905
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
8903
8906
  "div",
@@ -8929,7 +8932,7 @@ function MingoWelcome({
8929
8932
  onScroll: updateScrollFade,
8930
8933
  className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-m)] overflow-y-auto overscroll-contain",
8931
8934
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-center justify-center gap-[var(--spacing-system-l)] px-[var(--spacing-system-l)] py-[var(--spacing-system-xxl)] text-center", children: [
8932
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
8935
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
8933
8936
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
8934
8937
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: heading }),
8935
8938
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
@@ -8937,8 +8940,8 @@ function MingoWelcome({
8937
8940
  ] })
8938
8941
  }
8939
8942
  ),
8940
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
8941
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
8943
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
8944
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
8942
8945
  ] }) })))),
8943
8946
  showPinnedRegion && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col gap-[var(--spacing-system-m)]", children: [
8944
8947
  resolvedPromo && !promoDismissed && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex shrink-0 items-center gap-[var(--spacing-system-m)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)] pr-[var(--spacing-system-xl)]", children: [
@@ -9001,7 +9004,7 @@ function GuideWelcome({
9001
9004
  children,
9002
9005
  className
9003
9006
  }) {
9004
- const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunk4JHO2NVIcjs.useScrollFade.call(void 0, );
9007
+ const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunkJ2IXYCEHcjs.useScrollFade.call(void 0, );
9005
9008
  const inLoadingScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
9006
9009
  const subtitleIsLoading = inLoadingScope || subtitleLoading && !subtitle;
9007
9010
  const chipsAreLoading = inLoadingScope || quickActionsLoading && quickActions.length === 0;
@@ -9038,7 +9041,7 @@ function GuideWelcome({
9038
9041
  // Agent-mode identity glyph (chat-config Identity tab). Sized to
9039
9042
  // match the default Mingo mark (48px).
9040
9043
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTD4CC4KVcjs.EntityIcon, { icon: { name: icon.name, url: icon.url, props: icon.props }, size: 48 })
9041
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
9044
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
9042
9045
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
9043
9046
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: title }),
9044
9047
  subtitleIsLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h4", className: "w-3/4 max-w-80" }) }) : subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle }) : null
@@ -9048,8 +9051,8 @@ function GuideWelcome({
9048
9051
  ]
9049
9052
  }
9050
9053
  ),
9051
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
9052
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
9054
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
9055
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
9053
9056
  ] }),
9054
9057
  (quickActions.length > 0 || chipsAreLoading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, QuickActionSet, { chips: chipItems, loading: chipsAreLoading, showTopic: showTopicProp })
9055
9058
  ] });
@@ -9119,17 +9122,17 @@ function MingoArchiveList({
9119
9122
  className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-xxs)] px-[var(--spacing-system-xs)] pt-[var(--spacing-system-mf)]",
9120
9123
  children: [
9121
9124
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "shrink-0 px-[var(--spacing-system-xs)] pt-[var(--spacing-system-xs)] text-ods-text-secondary text-h5", children: "Archived Chats" }),
9122
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-xxs)] overflow-y-auto overscroll-contain pb-[var(--spacing-system-mf)]", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ChatListItemLoadingPage, { count: pageSize, trailing: true }) : dialogs.length > 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
9125
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-xxs)] overflow-y-auto overscroll-contain pb-[var(--spacing-system-mf)]", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ChatListItemLoadingPage, { count: pageSize, trailing: true }) : dialogs.length > 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
9123
9126
  dialogs.map((dialog) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9124
- _chunk4JHO2NVIcjs.ChatListItem,
9127
+ _chunkJ2IXYCEHcjs.ChatListItem,
9125
9128
  {
9126
9129
  "data-loading-item": true,
9127
9130
  title: dialog.title || "Untitled Chat",
9128
9131
  onClick: () => _optionalChain([onSelectDialog, 'optionalCall', _178 => _178(dialog.id)]),
9129
9132
  trailing: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
9130
- dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunk5L3UKDC6cjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
9133
+ dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunk6LDL3UZEcjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
9131
9134
  dialog.owner && (dialog.owner.name || dialog.owner.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9132
- _chunkGRHF5SWLcjs.SquareAvatar,
9135
+ _chunkNFNSPLGCcjs.SquareAvatar,
9133
9136
  {
9134
9137
  variant: "round",
9135
9138
  sizePx: 24,
@@ -9262,7 +9265,7 @@ function MingoChatHeader({
9262
9265
  !renaming && subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: subtitle })
9263
9266
  ] }),
9264
9267
  avatar && (avatar.name || avatar.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9265
- _chunkGRHF5SWLcjs.SquareAvatar,
9268
+ _chunkNFNSPLGCcjs.SquareAvatar,
9266
9269
  {
9267
9270
  variant: "round",
9268
9271
  sizePx: 32,
@@ -9311,7 +9314,7 @@ function ChatHeaderSearchField({
9311
9314
  className
9312
9315
  }) {
9313
9316
  const [value, setValue] = _react.useState.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
9314
- const debounced = _chunkZABZIM2Ycjs.useDebounce.call(void 0, value, 300);
9317
+ const debounced = _chunkFRL2ZN4Ocjs.useDebounce.call(void 0, value, 300);
9315
9318
  const lastEmitted = _react.useRef.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
9316
9319
  const [exiting, setExiting] = _react.useState.call(void 0, false);
9317
9320
  const collapsedRef = _react.useRef.call(void 0, false);
@@ -9468,10 +9471,10 @@ function SearchInput({
9468
9471
  }) {
9469
9472
  const [internalValue, setInternalValue] = _react.useState.call(void 0, defaultValue);
9470
9473
  const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
9471
- const debouncedValue = _chunkZABZIM2Ycjs.useDebounce.call(void 0, currentValue, debounceMs);
9474
+ const debouncedValue = _chunkFRL2ZN4Ocjs.useDebounce.call(void 0, currentValue, debounceMs);
9472
9475
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
9473
9476
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
9474
- const keyboardPadding = _chunk7Z536SPRcjs.useKeyboardCollisionPadding.call(void 0, );
9477
+ const keyboardPadding = _chunkFW7RKWPYcjs.useKeyboardCollisionPadding.call(void 0, );
9475
9478
  const containerRef = _react.useRef.call(void 0, null);
9476
9479
  const currentPlaceholder = filterChips.length > 0 ? "Add filter..." : placeholder;
9477
9480
  const {
@@ -9481,7 +9484,7 @@ function SearchInput({
9481
9484
  textMeasureRef,
9482
9485
  badgeRef,
9483
9486
  inputRef
9484
- } = _chunk7Z536SPRcjs.useAutoLimitTags.call(void 0, {
9487
+ } = _chunkFW7RKWPYcjs.useAutoLimitTags.call(void 0, {
9485
9488
  count: filterChips.length,
9486
9489
  limitTags,
9487
9490
  // When chips exist, pass empty placeholder so the hook only reserves input minWidth,
@@ -9678,7 +9681,7 @@ function SearchInput({
9678
9681
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 content-md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, {}) }),
9679
9682
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
9680
9683
  visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9681
- _chunkGRHF5SWLcjs.Tag,
9684
+ _chunkNFNSPLGCcjs.Tag,
9682
9685
  {
9683
9686
  variant: chipVariantToTagVariant(chip.variant),
9684
9687
  label: chip.label,
@@ -9771,7 +9774,7 @@ function SearchInput({
9771
9774
  )
9772
9775
  ] }),
9773
9776
  showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9774
- _chunk4JHO2NVIcjs.HiddenTagsPopup,
9777
+ _chunkJ2IXYCEHcjs.HiddenTagsPopup,
9775
9778
  {
9776
9779
  ref: hiddenTagsPopupRef,
9777
9780
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
@@ -9791,7 +9794,7 @@ function SearchInput({
9791
9794
  }
9792
9795
  ),
9793
9796
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: measureRef, "aria-hidden": "true", className: "pointer-events-none fixed -left-[9999px] top-0 flex gap-2", children: filterChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9794
- _chunkGRHF5SWLcjs.Tag,
9797
+ _chunkNFNSPLGCcjs.Tag,
9795
9798
  {
9796
9799
  variant: chipVariantToTagVariant(chip.variant),
9797
9800
  label: chip.label,
@@ -9941,7 +9944,7 @@ function MingoChatHistorySection({
9941
9944
  className
9942
9945
  }) {
9943
9946
  const captionId = _react.useId.call(void 0, );
9944
- const visitor = _chunkZABZIM2Ycjs.useVisitorOs.call(void 0, );
9947
+ const visitor = _chunkFRL2ZN4Ocjs.useVisitorOs.call(void 0, );
9945
9948
  const [searchOpen, setSearchOpen] = _reactusecontrollablestate.useControllableState.call(void 0, {
9946
9949
  prop: searchOpenProp,
9947
9950
  defaultProp: false,
@@ -9949,7 +9952,7 @@ function MingoChatHistorySection({
9949
9952
  });
9950
9953
  const hasSearch = !!_optionalChain([searchQuery, 'optionalAccess', _216 => _216.trim, 'call', _217 => _217()]);
9951
9954
  const showSearch = searchOpen && !!onSearchChange;
9952
- const shortcut = visitor.known ? _chunkZABZIM2Ycjs.shortcutLabel.call(void 0, visitor.os, "K") : null;
9955
+ const shortcut = visitor.known ? _chunkFRL2ZN4Ocjs.shortcutLabel.call(void 0, visitor.os, "K") : null;
9953
9956
  const listProps = {
9954
9957
  dialogs,
9955
9958
  activeDialogId,
@@ -10014,7 +10017,7 @@ function MingoChatHistorySection({
10014
10017
  variant: "transparent",
10015
10018
  size: "icon",
10016
10019
  "aria-label": "Search chats",
10017
- "aria-keyshortcuts": shortcut ? _chunkZABZIM2Ycjs.usesCommandKey.call(void 0, visitor.os) ? "Meta+K" : "Control+K" : void 0,
10020
+ "aria-keyshortcuts": shortcut ? _chunkFRL2ZN4Ocjs.usesCommandKey.call(void 0, visitor.os) ? "Meta+K" : "Control+K" : void 0,
10018
10021
  onClick: () => setSearchOpen(true),
10019
10022
  className: ICON_BUTTON_CLASS,
10020
10023
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, { size: 20 })
@@ -10115,7 +10118,7 @@ function MingoChatSearchModal({
10115
10118
  }
10116
10119
  function SearchModalContent({ initialValue, onSearchChange, onClose, children }) {
10117
10120
  const [value, setValue] = _react.useState.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
10118
- const debounced = _chunkZABZIM2Ycjs.useDebounce.call(void 0, value, 300);
10121
+ const debounced = _chunkFRL2ZN4Ocjs.useDebounce.call(void 0, value, 300);
10119
10122
  const lastSent = _react.useRef.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
10120
10123
  const fieldRef = _react.useRef.call(void 0, null);
10121
10124
  const send = (term) => {
@@ -10136,8 +10139,8 @@ function SearchModalContent({ initialValue, onSearchChange, onClose, children })
10136
10139
  send("");
10137
10140
  onClose();
10138
10141
  };
10139
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.Modal, { isOpen: true, onClose: close, className: "md:max-w-[600px]", children: [
10140
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalTitle, { children: "Search chats" }) }),
10142
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.Modal, { isOpen: true, onClose: close, className: "md:max-w-[600px]", children: [
10143
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalTitle, { children: "Search chats" }) }),
10141
10144
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: fieldRef, role: "search", "aria-label": "Search chats", className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10142
10145
  SearchInput,
10143
10146
  {
@@ -10193,7 +10196,7 @@ function SectionRow({
10193
10196
  // A row that lands in a day already on screen (the next page) fades in too.
10194
10197
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "group/row relative shrink-0 duration-300 animate-in fade-in motion-reduce:animate-none", children: [
10195
10198
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10196
- _chunk4JHO2NVIcjs.ChatListItem,
10199
+ _chunkJ2IXYCEHcjs.ChatListItem,
10197
10200
  {
10198
10201
  active,
10199
10202
  title,
@@ -10215,7 +10218,7 @@ function SectionRow({
10215
10218
  children: [
10216
10219
  glyph && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": glyph.label, className: "flex", children: glyph.icon }),
10217
10220
  ownerName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10218
- _chunkGRHF5SWLcjs.SquareAvatar,
10221
+ _chunkNFNSPLGCcjs.SquareAvatar,
10219
10222
  {
10220
10223
  role: "img",
10221
10224
  "aria-label": `Owner: ${ownerName}`,
@@ -10360,7 +10363,7 @@ function MingoChatRailPanel({
10360
10363
  if (loadError) {
10361
10364
  list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatListLoadError, { onRetry, className: "px-[var(--spacing-system-xs)] py-[var(--spacing-system-l)]" });
10362
10365
  } else if (loading) {
10363
- list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ChatListItemLoadingPage, { count: pageSize });
10366
+ list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ChatListItemLoadingPage, { count: pageSize });
10364
10367
  } else if (dialogs.length === 0 && !draftTitle) {
10365
10368
  list = hasSearch ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "px-[var(--spacing-system-xs)] py-[var(--spacing-system-s)] text-ods-text-secondary text-h6", children: "No chats found" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10366
10369
  ChatListEmptyState,
@@ -10372,7 +10375,7 @@ function MingoChatRailPanel({
10372
10375
  );
10373
10376
  } else {
10374
10377
  list = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
10375
- draftTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ChatListItem, { active: true, title: draftTitle, tabIndex: -1, className: "cursor-default" }),
10378
+ draftTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ChatListItem, { active: true, title: draftTitle, tabIndex: -1, className: "cursor-default" }),
10376
10379
  dialogs.map((dialog) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10377
10380
  MingoChatRailRow,
10378
10381
  {
@@ -10394,13 +10397,13 @@ function MingoChatRailPanel({
10394
10397
  ] });
10395
10398
  }
10396
10399
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10397
- _chunk4JHO2NVIcjs.ChatNavSidebar,
10400
+ _chunkJ2IXYCEHcjs.ChatNavSidebar,
10398
10401
  {
10399
10402
  className,
10400
10403
  "data-accent": "mingo",
10401
10404
  "aria-label": "Mingo chats",
10402
10405
  logo: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center justify-between", children: [
10403
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
10406
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
10404
10407
  onExpand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10405
10408
  _chunkFCZAUK4Dcjs.Button,
10406
10409
  {
@@ -10453,7 +10456,7 @@ function MingoChatRailRow({ dialog, active, status, onSelect, menuItems, ...prop
10453
10456
  const title = dialog.title || "Untitled Chat";
10454
10457
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props), className: "group/row relative shrink-0", children: [
10455
10458
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10456
- _chunk4JHO2NVIcjs.ChatListItem,
10459
+ _chunkJ2IXYCEHcjs.ChatListItem,
10457
10460
  {
10458
10461
  active,
10459
10462
  title,
@@ -10671,8 +10674,8 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
10671
10674
  const save = () => {
10672
10675
  if (canSave) onSave(name.trim());
10673
10676
  };
10674
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10675
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalTitle, { children: "Rename Chat" }) }),
10677
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10678
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalTitle, { children: "Rename Chat" }) }),
10676
10679
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xxs)]", children: [
10677
10680
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { htmlFor: "rename-chat-input", variant: "large", children: "Chat Name" }),
10678
10681
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -10689,27 +10692,27 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
10689
10692
  }
10690
10693
  )
10691
10694
  ] }),
10692
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.ModalFooter, { children: [
10695
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.ModalFooter, { children: [
10693
10696
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
10694
10697
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "accent", type: "button", onClick: save, disabled: !canSave, className: footerBtn, children: "Save" })
10695
10698
  ] })
10696
10699
  ] });
10697
10700
  }
10698
10701
  function ArchiveChatModal({ isOpen, onClose, onConfirm }) {
10699
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10700
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalTitle, { children: "Archive Chat" }) }),
10702
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10703
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalTitle, { children: "Archive Chat" }) }),
10701
10704
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This chat will be hidden from your current chats." }),
10702
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.ModalFooter, { children: [
10705
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.ModalFooter, { children: [
10703
10706
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
10704
10707
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "destructive", type: "button", onClick: onConfirm, className: footerBtn, children: "Archive Chat" })
10705
10708
  ] })
10706
10709
  ] });
10707
10710
  }
10708
10711
  function UnarchiveChatModal({ isOpen, onClose, onConfirm }) {
10709
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10710
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4JHO2NVIcjs.ModalTitle, { children: "Unarchive Chat" }) }),
10712
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
10713
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2IXYCEHcjs.ModalTitle, { children: "Unarchive Chat" }) }),
10711
10714
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This chat will be moved back to your current chats." }),
10712
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4JHO2NVIcjs.ModalFooter, { children: [
10715
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkJ2IXYCEHcjs.ModalFooter, { children: [
10713
10716
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
10714
10717
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "accent", type: "button", onClick: onConfirm, className: footerBtn, children: "Unarchive Chat" })
10715
10718
  ] })
@@ -10882,7 +10885,7 @@ function ChatPanelHeader({
10882
10885
  avatar && (avatar.name || avatar.avatarUrl) ? (
10883
10886
  // Owner avatar at the title cell's right edge (Figma 113:63273).
10884
10887
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10885
- _chunkGRHF5SWLcjs.SquareAvatar,
10888
+ _chunkNFNSPLGCcjs.SquareAvatar,
10886
10889
  {
10887
10890
  variant: "round",
10888
10891
  sizePx: 32,
@@ -11050,8 +11053,8 @@ function AttachmentChip({ attachment, onRemove, disabled, size = "default" }) {
11050
11053
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "truncate text-ods-text-primary text-h6", title: file.name, children: file.name }),
11051
11054
  (!compact || status !== "ready") && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-muted text-h6", children: [
11052
11055
  status === "sniffing" && "Checking the file",
11053
- status === "uploading" && `${progress}% \xB7 ${_chunkGRHF5SWLcjs.formatFileSize.call(void 0, file.size)}`,
11054
- status === "ready" && _chunkGRHF5SWLcjs.formatFileSize.call(void 0, file.size),
11056
+ status === "uploading" && `${progress}% \xB7 ${_chunkNFNSPLGCcjs.formatFileSize.call(void 0, file.size)}`,
11057
+ status === "ready" && _chunkNFNSPLGCcjs.formatFileSize.call(void 0, file.size),
11055
11058
  status === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-error", title: errorMessage, children: _nullishCoalesce(errorMessage, () => ( "Upload failed")) })
11056
11059
  ] })
11057
11060
  ] }),
@@ -11314,7 +11317,7 @@ var ModelDisplay = _react2.default.forwardRef(
11314
11317
  const isLoading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading;
11315
11318
  const icon = getProviderIcon(provider);
11316
11319
  const name = displayName || modelName;
11317
- const isV2 = useChatAppearance() === _chunk4JHO2NVIcjs.CHAT_APPEARANCE.V2;
11320
+ const isV2 = useChatAppearance() === _chunkJ2IXYCEHcjs.CHAT_APPEARANCE.V2;
11318
11321
  const formatCount = (count) => isV2 ? count.toLocaleString("en-US") : formatTokenCount(count);
11319
11322
  if (isLoading) {
11320
11323
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, MODEL_DISPLAY_ROW_CLASS, className), ...props, children: [
@@ -11499,7 +11502,7 @@ function ChatComposer({
11499
11502
  const showLegacyAttach = !contextEnabled && showAttachmentButton && !!onAddFiles;
11500
11503
  const showFooterRow = showLegacyAttach || !!model || !!footerActions;
11501
11504
  const inputNode = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11502
- _chunk4JHO2NVIcjs.ChatInput,
11505
+ _chunkJ2IXYCEHcjs.ChatInput,
11503
11506
  {
11504
11507
  ref: inputRef,
11505
11508
  onSend,
@@ -11705,7 +11708,7 @@ function useNavLinkViaRuntime({
11705
11708
  const onClick = (e) => {
11706
11709
  _optionalChain([onClickProp, 'optionalCall', _249 => _249(e)]);
11707
11710
  if (e.defaultPrevented) return;
11708
- const handled = _chunkZABZIM2Ycjs.executeNavigation.call(void 0, { event: e, runtime, href: resolvedHref, path, targetPlatform, openIn });
11711
+ const handled = _chunkFRL2ZN4Ocjs.executeNavigation.call(void 0, { event: e, runtime, href: resolvedHref, path, targetPlatform, openIn });
11709
11712
  if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _250 => _250.closeChat])) panel.closeChat();
11710
11713
  };
11711
11714
  return { href: resolvedHref, ..._chunkAPNONOHYcjs.newTabAnchorAttrs.call(void 0, isNewTab, resolvedHref, targetPlatform), onClick };
@@ -11717,10 +11720,10 @@ function useNavigateViaRuntime() {
11717
11720
  if (!href) return;
11718
11721
  if (modifierEvent && _chunkAPNONOHYcjs.isModifierClick.call(void 0, modifierEvent)) {
11719
11722
  const button = _nullishCoalesce(modifierEvent.button, () => ( 0));
11720
- if (button === 0 || button === 1) _chunkZABZIM2Ycjs.executeNewTabNavigation.call(void 0, { runtime, href, targetPlatform });
11723
+ if (button === 0 || button === 1) _chunkFRL2ZN4Ocjs.executeNewTabNavigation.call(void 0, { runtime, href, targetPlatform });
11721
11724
  return;
11722
11725
  }
11723
- _chunkZABZIM2Ycjs.executeNavigationImperative.call(void 0, { runtime, href, path, targetPlatform, openIn });
11726
+ _chunkFRL2ZN4Ocjs.executeNavigationImperative.call(void 0, { runtime, href, path, targetPlatform, openIn });
11724
11727
  },
11725
11728
  [runtime]
11726
11729
  );
@@ -11910,7 +11913,7 @@ function UserDisplay({
11910
11913
  compact = false,
11911
11914
  className
11912
11915
  }) {
11913
- const avatarSrc = _chunkH3WTYAVRcjs.useProxiedImageUrl.call(void 0, avatarUrl);
11916
+ const avatarSrc = _chunkRSJYTQEAcjs.useProxiedImageUrl.call(void 0, avatarUrl);
11914
11917
  if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, )) {
11915
11918
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
11916
11919
  UserDisplaySkeleton,
@@ -11924,7 +11927,7 @@ function UserDisplay({
11924
11927
  );
11925
11928
  }
11926
11929
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, USER_ROW_CLASS, className), children: [
11927
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { src: avatarSrc || void 0, fallback: name, alt: name, sizePx: size, variant: shape }),
11930
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { src: avatarSrc || void 0, fallback: name, alt: name, sizePx: size, variant: shape }),
11928
11931
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
11929
11932
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk63A4GZMBcjs.cn.call(void 0, "truncate text-ods-text-primary", compact ? "text-h6" : "text-h4"), children: name }),
11930
11933
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block truncate text-ods-text-secondary text-h6", children: subtitle })
@@ -11939,7 +11942,7 @@ function UserDisplaySkeleton({
11939
11942
  className
11940
11943
  }) {
11941
11944
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, USER_ROW_CLASS, className), "aria-hidden": true, children: [
11942
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRHF5SWLcjs.SquareAvatar, { loading: true, sizePx: size, variant: shape }),
11945
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNFNSPLGCcjs.SquareAvatar, { loading: true, sizePx: size, variant: shape }),
11943
11946
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
11944
11947
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: compact ? "h6" : "h4", className: "w-28" }),
11945
11948
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h6", className: "w-16" })
@@ -12050,7 +12053,7 @@ function ManagedCell({
12050
12053
  }) {
12051
12054
  const hintedWidth = _react2.default.isValidElement(item) ? item.props["data-strip-cell-width"] : void 0;
12052
12055
  const desktopWidth = typeof hintedWidth === "number" ? hintedWidth : cardWidthDesktop;
12053
- const cloneRef = _chunkZABZIM2Ycjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
12056
+ const cloneRef = _chunkFRL2ZN4Ocjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
12054
12057
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12055
12058
  "div",
12056
12059
  {
@@ -12168,12 +12171,12 @@ function CardsStrip(props) {
12168
12171
  }, [measure, items.length, marqueeActive, isMobile]);
12169
12172
  const chevronSuppressUntilRef = _react.useRef.call(void 0, 0);
12170
12173
  const userScrollSuppressUntilRef = _react.useRef.call(void 0, 0);
12171
- const { ref: observe, inView: nearViewport } = _chunkZABZIM2Ycjs.useInView.call(void 0, { rootMargin: "200px", initial: true });
12174
+ const { ref: observe, inView: nearViewport } = _chunkFRL2ZN4Ocjs.useInView.call(void 0, { rootMargin: "200px", initial: true });
12172
12175
  _react.useEffect.call(void 0, () => {
12173
12176
  observe(wrapperRef.current);
12174
12177
  return () => observe(null);
12175
12178
  }, [observe]);
12176
- const autoplay = _chunkZABZIM2Ycjs.useAutoplay.call(void 0, nearViewport);
12179
+ const autoplay = _chunkFRL2ZN4Ocjs.useAutoplay.call(void 0, nearViewport);
12177
12180
  const [activeKey, setActiveKey] = _react.useState.call(void 0, null);
12178
12181
  const activeKeyRef = _react.useRef.call(void 0, null);
12179
12182
  const activate = _react.useCallback.call(void 0, (key) => {
@@ -12220,7 +12223,7 @@ function CardsStrip(props) {
12220
12223
  const current = activeKeyRef.current;
12221
12224
  if (current !== null) deactivate(current);
12222
12225
  }, [deactivate]);
12223
- _chunkZABZIM2Ycjs.useResetOnPageHidden.call(void 0, clearHover);
12226
+ _chunkFRL2ZN4Ocjs.useResetOnPageHidden.call(void 0, clearHover);
12224
12227
  const syncHoverIfScrolled = _react.useCallback.call(void 0, () => {
12225
12228
  const scroller = scrollerRef.current;
12226
12229
  if (!scroller) return;
@@ -12241,7 +12244,7 @@ function CardsStrip(props) {
12241
12244
  },
12242
12245
  [reverse, seamBuffer]
12243
12246
  );
12244
- const { posRef: marqueePosRef, glideBy } = _chunkZABZIM2Ycjs.useMarqueeEngine.call(void 0, {
12247
+ const { posRef: marqueePosRef, glideBy } = _chunkFRL2ZN4Ocjs.useMarqueeEngine.call(void 0, {
12245
12248
  // Viewport gates `active` (the rAF fully stops off-screen — a paused
12246
12249
  // engine would keep scheduling frames forever), same treatment as
12247
12250
  // <MarqueeWall>; the envelope persists, so re-entry resumes at cruise.
@@ -12378,7 +12381,7 @@ function CardsStrip(props) {
12378
12381
  }
12379
12382
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ManagedCell, { item, ctx, cardWidthMobile, cardWidthDesktop });
12380
12383
  };
12381
- const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkH3WTYAVRcjs.SECTION_HEADING_CLASS} break-words`, children: _chunkH3WTYAVRcjs.accentSentenceMarks.call(void 0, title) });
12384
+ const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkRSJYTQEAcjs.SECTION_HEADING_CLASS} break-words`, children: _chunkRSJYTQEAcjs.accentSentenceMarks.call(void 0, title) });
12382
12385
  if (items.length === 0) {
12383
12386
  if (!inScope || !skeleton) return null;
12384
12387
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, STRIP_ROOT_CLASS, className), children: [
@@ -12960,7 +12963,7 @@ function EntityVideoSection({
12960
12963
  }
12961
12964
  ) : null),
12962
12965
  videoSummary && MarkdownRenderer && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
12963
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkH3WTYAVRcjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
12966
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkRSJYTQEAcjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
12964
12967
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden break-words text-ods-text-primary text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: videoSummary }) })
12965
12968
  ] }),
12966
12969
  videoBites && videoBites.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -13077,7 +13080,7 @@ function ChatCardDisclosureButton({
13077
13080
  {
13078
13081
  label,
13079
13082
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: "!h-3 !w-3" }),
13080
- trailingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.ExpandChevron, { expanded: open, className: "!h-3 !w-3" }),
13083
+ trailingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.ExpandChevron, { expanded: open, className: "!h-3 !w-3" }),
13081
13084
  onClick: (e) => {
13082
13085
  e.preventDefault();
13083
13086
  e.stopPropagation();
@@ -13091,7 +13094,7 @@ function ChatCardDisclosureButton({
13091
13094
  );
13092
13095
  }
13093
13096
  function DisclosurePanel({ open, children }) {
13094
- const { innerRef, containerStyle } = _chunk5L3UKDC6cjs.useCollapsible.call(void 0, { expanded: open });
13097
+ const { innerRef, containerStyle } = _chunk6LDL3UZEcjs.useCollapsible.call(void 0, { expanded: open });
13095
13098
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children }) });
13096
13099
  }
13097
13100
  function useChatCardDisclosure(kind, chatRef, { reserve = false } = {}) {
@@ -13143,7 +13146,7 @@ function designDocPeople(doc) {
13143
13146
  return people;
13144
13147
  }
13145
13148
  function designDocMetaLine(doc) {
13146
- return [_optionalChain([doc, 'access', _296 => _296.author, 'optionalAccess', _297 => _297.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${_chunkH3WTYAVRcjs.formatDateShort.call(void 0, doc.updated_at)}`].filter(Boolean).join(" \xB7 ");
13149
+ return [_optionalChain([doc, 'access', _296 => _296.author, 'optionalAccess', _297 => _297.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${_chunkRSJYTQEAcjs.formatDateShort.call(void 0, doc.updated_at)}`].filter(Boolean).join(" \xB7 ");
13147
13150
  }
13148
13151
  var DESIGN_DOC_CARD_BODY = "flex h-full flex-col gap-[var(--spacing-system-mf)] p-[var(--spacing-system-lf)]";
13149
13152
  var DESIGN_DOC_CARD_HEADER = "flex w-full items-center gap-[16px]";
@@ -13166,7 +13169,7 @@ function DesignDocCardSkeleton({ className } = {}) {
13166
13169
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
13167
13170
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
13168
13171
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "h6", className: "w-1/3" }),
13169
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5BM7X4GAcjs.AvatarStack, { loading: true, people: [], max: 1, size: "xs", className: "shrink-0" })
13172
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5GBLXY5Fcjs.AvatarStack, { loading: true, people: [], max: 1, size: "xs", className: "shrink-0" })
13170
13173
  ] })
13171
13174
  ] });
13172
13175
  }
@@ -13197,7 +13200,7 @@ function DesignDocCard({ doc, href, target, rel, className }) {
13197
13200
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
13198
13201
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
13199
13202
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: formatCompletionLabelWithBlockers(doc.completion) }),
13200
- people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5BM7X4GAcjs.AvatarStack, { size: "xs", people, className: "shrink-0" }) : null
13203
+ people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5GBLXY5Fcjs.AvatarStack, { size: "xs", people, className: "shrink-0" }) : null
13201
13204
  ] })
13202
13205
  ] });
13203
13206
  const outer = _chunk63A4GZMBcjs.cn.call(void 0, _chunkTD4CC4KVcjs.CONTENT_CARD_FRAME_CLASS, DESIGN_DOC_CARD_BODY, className);
@@ -13308,7 +13311,7 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
13308
13311
  if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GitHubActivityCardSkeleton, { variant, className });
13309
13312
  const kind = _nullishCoalesce(item.kind, () => ( "commit"));
13310
13313
  const repo = _nullishCoalesce(_nullishCoalesce(item.repo, () => ( parseRepoFromUrl(item.url))), () => ( ""));
13311
- const dateText = _chunkGRHF5SWLcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
13314
+ const dateText = _chunkNFNSPLGCcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
13312
13315
  const idLabel = formatActivityId(item.id, kind);
13313
13316
  const { display: title, reviewState } = parseGithubTitle(item.title, kind);
13314
13317
  const primaryText = kind === "pr_review" ? title.replace(/^by\s+/i, "").trim() || "Reviewer" : title;
@@ -13436,9 +13439,9 @@ function VendorIcon({
13436
13439
  ...props
13437
13440
  }) {
13438
13441
  const logoUrl = getVendorLogo(vendor);
13439
- const logoSrc = _chunkH3WTYAVRcjs.useProxiedImageUrl.call(void 0, logoUrl, { directHttps: false });
13442
+ const logoSrc = _chunkRSJYTQEAcjs.useProxiedImageUrl.call(void 0, logoUrl, { directHttps: false });
13440
13443
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13441
- _chunkGRHF5SWLcjs.SquareAvatar,
13444
+ _chunkNFNSPLGCcjs.SquareAvatar,
13442
13445
  {
13443
13446
  src: logoUrl ? logoSrc || void 0 : void 0,
13444
13447
  alt: `${vendor.title} logo`,
@@ -13470,8 +13473,8 @@ function useChatCardItem(type, id) {
13470
13473
  const res = await _chunkGI3MMBP3cjs.embedAuthedFetch.call(void 0, url);
13471
13474
  if (!res.ok) throw new Error(`chat card fetch failed: ${res.status}`);
13472
13475
  const data = await res.json();
13473
- const items = _chunkH3WTYAVRcjs.extractCardItems.call(void 0, type, data);
13474
- const match = items.find((it) => _chunkH3WTYAVRcjs.extractItemId.call(void 0, type, it) === id);
13476
+ const items = _chunkRSJYTQEAcjs.extractCardItems.call(void 0, type, data);
13477
+ const match = items.find((it) => _chunkRSJYTQEAcjs.extractItemId.call(void 0, type, it) === id);
13475
13478
  return _nullishCoalesce(match, () => ( null));
13476
13479
  },
13477
13480
  enabled: !!url && id.length > 0,
@@ -13513,7 +13516,7 @@ var TRAILING_CELL_LAYOUT = "w-[56px] md:w-[68px]";
13513
13516
  function CardMedia({ imageSrc, imageAlt, icon }) {
13514
13517
  if (imageSrc) {
13515
13518
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "relative block size-10 shrink-0", children: [
13516
- /* @__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: _chunkGRHF5SWLcjs.personInitials.call(void 0, imageAlt) || "?" }),
13519
+ /* @__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: _chunkNFNSPLGCcjs.personInitials.call(void 0, imageAlt) || "?" }),
13517
13520
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13518
13521
  _chunk3V5JWG27cjs.next_image_default,
13519
13522
  {
@@ -13585,7 +13588,7 @@ function MingoInfoCard({
13585
13588
  status ? (
13586
13589
  // Reuse the shared Tag palette (single source of truth for colours)
13587
13590
  // without rendering Tag's `<div>` — span-only for `<p>` validity.
13588
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, _chunkGRHF5SWLcjs.tagVariants.call(void 0, { variant: _nullishCoalesce(status.variant, () => ( "success")) }), "shrink-0"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate uppercase tracking-[-0.28px]", children: status.label }) })
13591
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, _chunkNFNSPLGCcjs.tagVariants.call(void 0, { variant: _nullishCoalesce(status.variant, () => ( "success")) }), "shrink-0"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate uppercase tracking-[-0.28px]", children: status.label }) })
13589
13592
  ) : null
13590
13593
  ] });
13591
13594
  const contentClass = _chunk63A4GZMBcjs.cn.call(void 0,
@@ -13677,7 +13680,7 @@ function resolveFetchedCardHref({
13677
13680
  composeContentUrl
13678
13681
  }) {
13679
13682
  if (!composeContentUrl || !contentRefType || !id) return null;
13680
- const canonicalType = _chunkH3WTYAVRcjs.canonicalContentRefType.call(void 0, contentRefType);
13683
+ const canonicalType = _chunkRSJYTQEAcjs.canonicalContentRefType.call(void 0, contentRefType);
13681
13684
  return composeContentUrl({
13682
13685
  // The card registry keys some entries by the legacy rail vocabulary
13683
13686
  // (`blog_post_existing`) because that is what `buildListUrl` expects.
@@ -13720,7 +13723,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
13720
13723
  // Canonical vocabulary only — a rail-vocab alias would miss the host's
13721
13724
  // `hostedTypes` / `overrides` and fall through to the seam's default
13722
13725
  // `<origin>/<type>/<id>` branch. Same canonicalizer `buildListUrl` uses.
13723
- type: _chunkH3WTYAVRcjs.canonicalContentRefType.call(void 0, row.documentType),
13726
+ type: _chunkRSJYTQEAcjs.canonicalContentRefType.call(void 0, row.documentType),
13724
13727
  identifier: idValue,
13725
13728
  ...docPath ? { slug: docPath } : {},
13726
13729
  externalUrl: _nullishCoalesce(row.externalUrl, () => ( null)),
@@ -13859,7 +13862,7 @@ function GitHubChatCard({
13859
13862
  const title = kind === "pr_review" ? display.replace(/^by\s+/i, "").trim() || "Reviewer" : display;
13860
13863
  const status = kind === "pr_review" && reviewState ? { label: reviewStateLabel(reviewState), variant: reviewStateToVariant(reviewState) } : { label: kindLabel(kind), variant: "grey" };
13861
13864
  const idLabel = formatActivityId(chatRef.id, kind);
13862
- const dateText = _chunkGRHF5SWLcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
13865
+ const dateText = _chunkNFNSPLGCcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
13863
13866
  const description = [idLabel, dateText].filter(Boolean).join(" \xB7 ") || void 0;
13864
13867
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13865
13868
  MingoInfoCard,
@@ -14070,17 +14073,17 @@ function TrustCenterChatCard({
14070
14073
  }) {
14071
14074
  const raw2 = _optionalChain([item, 'optionalAccess', _321 => _321.frameworks]);
14072
14075
  const frameworks = Array.isArray(raw2) ? raw2 : [];
14073
- const summary = _chunkH3WTYAVRcjs.trustFrameworksSummary.call(void 0, frameworks);
14076
+ const summary = _chunkRSJYTQEAcjs.trustFrameworksSummary.call(void 0, frameworks);
14074
14077
  const leadFramework = frameworks[0];
14075
14078
  const lead = leadFramework ? {
14076
- label: _chunkH3WTYAVRcjs.trustFrameworkBadge.call(void 0, leadFramework),
14077
- color: _chunkH3WTYAVRcjs.trustFrameworkMonitoringEntry.call(void 0, leadFramework.monitoring).color
14079
+ label: _chunkRSJYTQEAcjs.trustFrameworkBadge.call(void 0, leadFramework),
14080
+ color: _chunkRSJYTQEAcjs.trustFrameworkMonitoringEntry.call(void 0, leadFramework.monitoring).color
14078
14081
  } : void 0;
14079
14082
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14080
14083
  MingoInfoCard,
14081
14084
  {
14082
- title: _chunkH3WTYAVRcjs.TRUST_CENTER_TITLE,
14083
- description: summary || _chunkH3WTYAVRcjs.TRUST_CENTER_TAGLINE,
14085
+ title: _chunkRSJYTQEAcjs.TRUST_CENTER_TITLE,
14086
+ description: summary || _chunkRSJYTQEAcjs.TRUST_CENTER_TAGLINE,
14084
14087
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOBGYDNT6cjs.ShieldCheckIcon, { size: 24 }),
14085
14088
  status: lead ? { label: lead.label, variant: TRUST_STATUS_TAG_VARIANT[lead.color] } : void 0,
14086
14089
  anchorProps: _chunkAPNONOHYcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
@@ -14215,7 +14218,7 @@ function CampaignChatCard({
14215
14218
  }) {
14216
14219
  const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _327 => _327.goals])) ? item.goals.length : 0;
14217
14220
  const meta = [
14218
- _optionalChain([item, 'optionalAccess', _328 => _328.start_date]) ? _chunkH3WTYAVRcjs.formatDateShort.call(void 0, item.start_date) : null,
14221
+ _optionalChain([item, 'optionalAccess', _328 => _328.start_date]) ? _chunkRSJYTQEAcjs.formatDateShort.call(void 0, item.start_date) : null,
14219
14222
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
14220
14223
  "Marketing campaign"
14221
14224
  ].filter(Boolean).join(" \xB7 ");
@@ -14266,7 +14269,7 @@ function entityCover(image, ogPlaceholder) {
14266
14269
  function statusPill(status) {
14267
14270
  const s = typeof status === "string" ? status.trim() : "";
14268
14271
  if (!s) return void 0;
14269
- const scheme = _chunkH3WTYAVRcjs.getStatusColorScheme.call(void 0, s);
14272
+ const scheme = _chunkRSJYTQEAcjs.getStatusColorScheme.call(void 0, s);
14270
14273
  const variant = scheme === "success" || scheme === "error" || scheme === "warning" ? scheme : "grey";
14271
14274
  return { label: s, variant };
14272
14275
  }
@@ -14375,7 +14378,7 @@ function InvestorUpdateChatCard({
14375
14378
  EntityMingoCard,
14376
14379
  {
14377
14380
  title,
14378
- description: _optionalChain([item, 'optionalAccess', _358 => _358.strategic_update]) || _optionalChain([item, 'optionalAccess', _359 => _359.content]) || _chunkH3WTYAVRcjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _360 => _360.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _361 => _361.period_end]), () => ( null))) || void 0,
14381
+ description: _optionalChain([item, 'optionalAccess', _358 => _358.strategic_update]) || _optionalChain([item, 'optionalAccess', _359 => _359.content]) || _chunkRSJYTQEAcjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _360 => _360.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _361 => _361.period_end]), () => ( null))) || void 0,
14379
14382
  cover: entityCover(_optionalChain([item, 'optionalAccess', _362 => _362.featured_image]), ogPlaceholder),
14380
14383
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk37SGOMF5cjs.PresentationLineIcon, { size: 24 }),
14381
14384
  status: { label: "Investor update", variant: "grey" },
@@ -14419,7 +14422,7 @@ function ProgramChatCard({
14419
14422
  discuss
14420
14423
  }) {
14421
14424
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZ6NU2C2cjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkM4KPLFFAcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZL4LQNYXcjs.MicrophoneIcon, { size: 24 });
14422
- const { line: meta } = _chunkH3WTYAVRcjs.programMetaLine.call(void 0, _nullishCoalesce(item, () => ( {})), configKey, _chunkH3WTYAVRcjs.programMetaFormatters.call(void 0, _chunkH3WTYAVRcjs.PROGRAM_META_RENDERERS));
14425
+ const { line: meta } = _chunkRSJYTQEAcjs.programMetaLine.call(void 0, _nullishCoalesce(item, () => ( {})), configKey, _chunkRSJYTQEAcjs.programMetaFormatters.call(void 0, _chunkRSJYTQEAcjs.PROGRAM_META_RENDERERS));
14423
14426
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14424
14427
  EntityMingoCard,
14425
14428
  {
@@ -14445,7 +14448,7 @@ function RoadmapChatCard({
14445
14448
  const logoUrl = typeof _optionalChain([item, 'optionalAccess', _372 => _372.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
14446
14449
  const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _373 => _373.customItemId]) != null;
14447
14450
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3UIJR4PYcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6DN5HKRWcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMQDSQKK2cjs.MapIcon, { size: 24 });
14448
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _374 => _374.customItemId]), className: "size-6" }) : logoUrl ? (
14451
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _374 => _374.customItemId]), className: "size-6" }) : logoUrl ? (
14449
14452
  // Contained (not full-bleed) so the integration logo keeps its aspect
14450
14453
  // ratio inside the bordered icon box — matches RoadmapCard.
14451
14454
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -14653,7 +14656,7 @@ function programRegistryEntries() {
14653
14656
  contentRefType: cfg.contentRefType,
14654
14657
  bareInline: true,
14655
14658
  disclosure: cfg.disclosure,
14656
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.ProgramCard, { loading: true, size: "sm" }),
14659
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.ProgramCard, { loading: true, size: "sm" }),
14657
14660
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14658
14661
  ProgramChatCard,
14659
14662
  {
@@ -14694,7 +14697,7 @@ function roadmapRegistryEntries() {
14694
14697
  bareInline: true,
14695
14698
  ...cfg.noComposedHref ? { noComposedHref: true } : {},
14696
14699
  ...cfg.fallbackHref ? { fallbackHref: cfg.fallbackHref } : {},
14697
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.RoadmapCard, { loading: true, size: "sm" }),
14700
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.RoadmapCard, { loading: true, size: "sm" }),
14698
14701
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14699
14702
  RoadmapChatCard,
14700
14703
  {
@@ -14752,12 +14755,12 @@ var CHAT_CARD_REGISTRY = {
14752
14755
  // projection route; `extractCardItems` turns its object payload into the
14753
14756
  // single matched row. Destination is the public page unless the host
14754
14757
  // re-homes the type (`composeContentUrl` override).
14755
- [_chunkH3WTYAVRcjs.TRUST_CENTER_DOCUMENT_TYPE]: {
14758
+ [_chunkRSJYTQEAcjs.TRUST_CENTER_DOCUMENT_TYPE]: {
14756
14759
  label: "Trust center",
14757
14760
  bareInline: true,
14758
- contentRefType: _chunkH3WTYAVRcjs.TRUST_CENTER_DOCUMENT_TYPE,
14761
+ contentRefType: _chunkRSJYTQEAcjs.TRUST_CENTER_DOCUMENT_TYPE,
14759
14762
  noComposedHref: true,
14760
- fallbackHref: () => _chunkH3WTYAVRcjs.TRUST_CENTER_PAGE_PATH,
14763
+ fallbackHref: () => _chunkRSJYTQEAcjs.TRUST_CENTER_PAGE_PATH,
14761
14764
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCard, { loading: true, title: "" }),
14762
14765
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterChatCard, { item, chatRef, isNewTab: opts.isNewTab, discuss: opts.discuss })
14763
14766
  },
@@ -14783,7 +14786,7 @@ var CHAT_CARD_REGISTRY = {
14783
14786
  label: "Blog post",
14784
14787
  contentRefType: "blog_post_existing",
14785
14788
  bareInline: true,
14786
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.BlogCard, { loading: true, size: "sm" }),
14789
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.BlogCard, { loading: true, size: "sm" }),
14787
14790
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14788
14791
  BlogChatCard,
14789
14792
  {
@@ -14827,7 +14830,7 @@ var CHAT_CARD_REGISTRY = {
14827
14830
  label: "Customer interview",
14828
14831
  contentRefType: "customer_interview",
14829
14832
  bareInline: true,
14830
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.CustomerInterviewCard, { loading: true, size: "sm" }),
14833
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.CustomerInterviewCard, { loading: true, size: "sm" }),
14831
14834
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14832
14835
  CustomerInterviewChatCard,
14833
14836
  {
@@ -14844,9 +14847,9 @@ var CHAT_CARD_REGISTRY = {
14844
14847
  label: "Product release",
14845
14848
  contentRefType: "product_release",
14846
14849
  bareInline: true,
14847
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.ProductReleaseCard, { loading: true, size: "sm" }),
14850
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.ProductReleaseCard, { loading: true, size: "sm" }),
14848
14851
  render: (item, chatRef, opts) => {
14849
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _415 => _415.extras, 'optionalAccess', _416 => _416.buildProductReleaseCardProps]), () => ( _chunkH3WTYAVRcjs.defaultBuildProductReleaseCardProps));
14852
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _415 => _415.extras, 'optionalAccess', _416 => _416.buildProductReleaseCardProps]), () => ( _chunkRSJYTQEAcjs.defaultBuildProductReleaseCardProps));
14850
14853
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14851
14854
  ProductReleaseChatCard,
14852
14855
  {
@@ -14865,7 +14868,7 @@ var CHAT_CARD_REGISTRY = {
14865
14868
  label: "Investor update",
14866
14869
  contentRefType: "investor_update",
14867
14870
  bareInline: true,
14868
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.InvestorUpdateCard, { loading: true, size: "sm" }),
14871
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.InvestorUpdateCard, { loading: true, size: "sm" }),
14869
14872
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14870
14873
  InvestorUpdateChatCard,
14871
14874
  {
@@ -14884,7 +14887,7 @@ var CHAT_CARD_REGISTRY = {
14884
14887
  bareInline: true,
14885
14888
  // "Display" affordance (verbatim guide body) instead of "Ask".
14886
14889
  displayAction: true,
14887
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3WTYAVRcjs.OnboardingGuideCard, { loading: true, size: "sm" }),
14890
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRSJYTQEAcjs.OnboardingGuideCard, { loading: true, size: "sm" }),
14888
14891
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14889
14892
  OnboardingGuideChatCard,
14890
14893
  {
@@ -14928,7 +14931,7 @@ function ChatCardNavWrap({
14928
14931
  if (!_optionalChain([host, 'optionalAccess', _428 => _428.contains, 'call', _429 => _429(targetEl)])) return;
14929
14932
  if (_optionalChain([targetEl, 'optionalAccess', _430 => _430.closest, 'optionalCall', _431 => _431("button")])) return;
14930
14933
  if (!_optionalChain([targetEl, 'optionalAccess', _432 => _432.closest, 'optionalCall', _433 => _433("a")])) return;
14931
- const handled = _chunkZABZIM2Ycjs.executeNavigation.call(void 0, { event: e, runtime, href, path, targetPlatform, hostRoute });
14934
+ const handled = _chunkFRL2ZN4Ocjs.executeNavigation.call(void 0, { event: e, runtime, href, path, targetPlatform, hostRoute });
14932
14935
  if (!handled) return;
14933
14936
  e.stopPropagation();
14934
14937
  if (!isNewTab && _optionalChain([panel, 'optionalAccess', _434 => _434.closeChat])) panel.closeChat();
@@ -14983,7 +14986,7 @@ function ChatCardLoader({ chatRef, onDiscuss, onDisplay, extras }) {
14983
14986
  const discussFn = useDisplay ? onDisplay : onDiscuss;
14984
14987
  const discuss = discussFn ? {
14985
14988
  label: useDisplay ? "Display" : "Ask Mingo",
14986
- icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5L3UKDC6cjs.AgentMark, { agent: "mingo", className: "size-5" }),
14989
+ icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6LDL3UZEcjs.AgentMark, { agent: "mingo", className: "size-5" }),
14987
14990
  run: () => discussFn(finalChatRef)
14988
14991
  } : void 0;
14989
14992
  const renderOpts = {
@@ -15089,12 +15092,12 @@ function makeBatchDedupKey(item) {
15089
15092
  return `${item.messageType}:${seq}:${type}:${text2}:${integratedToolType}:${toolFunction}:${approvalRequestId}`;
15090
15093
  }
15091
15094
  function getChatTypeMessageType(chatType) {
15092
- return chatType === _chunk4JHO2NVIcjs.CHAT_TYPE.ADMIN ? "admin-message" : "message";
15095
+ return chatType === _chunkJ2IXYCEHcjs.CHAT_TYPE.ADMIN ? "admin-message" : "message";
15093
15096
  }
15094
15097
  function useChunkCatchup({
15095
15098
  dialogId,
15096
15099
  onChunkReceived,
15097
- chatTypes = [_chunk4JHO2NVIcjs.CHAT_TYPE.CLIENT],
15100
+ chatTypes = [_chunkJ2IXYCEHcjs.CHAT_TYPE.CLIENT],
15098
15101
  fetchChunks
15099
15102
  }) {
15100
15103
  const processedSequenceKeys = _react.useRef.call(void 0, /* @__PURE__ */ new Set());
@@ -16061,7 +16064,7 @@ function useChatAttachmentImageGallery() {
16061
16064
  return () => root.removeEventListener("click", onClick);
16062
16065
  }, [viewUrlPrefix]);
16063
16066
  const modal = state.isOpen ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16064
- _chunkH3WTYAVRcjs.ImageGalleryModal,
16067
+ _chunkRSJYTQEAcjs.ImageGalleryModal,
16065
16068
  {
16066
16069
  images: state.images,
16067
16070
  isOpen: state.isOpen,
@@ -17430,7 +17433,7 @@ function createChatStreamReducer(options = {}) {
17430
17433
  const status = approvalStatuses[requestId] || "pending";
17431
17434
  if (!displayInline(approvalType)) {
17432
17435
  const required = _nullishCoalesce(toolCalls.find((c) => c.requiresApproval), () => ( toolCalls[0]));
17433
- const summary = required ? _chunk5L3UKDC6cjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
17436
+ const summary = required ? _chunk6LDL3UZEcjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
17434
17437
  pendingEscalated.set(requestId, {
17435
17438
  command: summary,
17436
17439
  explanation: _optionalChain([required, 'optionalAccess', _563 => _563.toolExplanation]),
@@ -17463,7 +17466,7 @@ function createChatStreamReducer(options = {}) {
17463
17466
  if (!call.requiresApproval) continue;
17464
17467
  segments = accumulator.addApprovalRequest(
17465
17468
  requestId,
17466
- _chunk5L3UKDC6cjs.getCommandText.call(void 0, call),
17469
+ _chunk6LDL3UZEcjs.getCommandText.call(void 0, call),
17467
17470
  call.toolExplanation,
17468
17471
  approvalType,
17469
17472
  status,
@@ -17542,7 +17545,7 @@ function createChatStreamReducer(options = {}) {
17542
17545
  if (!call.requiresApproval) continue;
17543
17546
  segments = accumulator.addApprovalRequest(
17544
17547
  requestId,
17545
- _chunk5L3UKDC6cjs.getCommandText.call(void 0, call),
17548
+ _chunk6LDL3UZEcjs.getCommandText.call(void 0, call),
17546
17549
  call.toolExplanation,
17547
17550
  escalatedData.approvalType,
17548
17551
  status
@@ -19551,12 +19554,12 @@ function extractIncompleteTailState(messages) {
19551
19554
 
19552
19555
  // src/components/chat/utils/process-historical-messages.ts
19553
19556
  function getOwnerDisplayName(owner) {
19554
- if (_optionalChain([owner, 'optionalAccess', _639 => _639.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.ADMIN && owner.user) {
19557
+ if (_optionalChain([owner, 'optionalAccess', _639 => _639.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.ADMIN && owner.user) {
19555
19558
  const { firstName, lastName } = owner.user;
19556
19559
  const name = [firstName, lastName].filter(Boolean).join(" ");
19557
19560
  if (name) return name;
19558
19561
  }
19559
- return _optionalChain([owner, 'optionalAccess', _640 => _640.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.ADMIN ? "Admin" : "You";
19562
+ return _optionalChain([owner, 'optionalAccess', _640 => _640.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.ADMIN ? "Admin" : "You";
19560
19563
  }
19561
19564
  function getOwnerAvatar(owner) {
19562
19565
  return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _641 => _641.user, 'optionalAccess', _642 => _642.image, 'optionalAccess', _643 => _643.imageUrl]), () => ( void 0));
@@ -19819,7 +19822,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
19819
19822
  if (!call.requiresApproval) continue;
19820
19823
  accumulator.addApprovalRequest(
19821
19824
  event.requestId,
19822
- _chunk5L3UKDC6cjs.getCommandText.call(void 0, call),
19825
+ _chunk6LDL3UZEcjs.getCommandText.call(void 0, call),
19823
19826
  call.toolExplanation,
19824
19827
  approvalType,
19825
19828
  status,
@@ -19880,7 +19883,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
19880
19883
  if (!call.requiresApproval) continue;
19881
19884
  accumulator.addApprovalRequest(
19882
19885
  requestId,
19883
- _chunk5L3UKDC6cjs.getCommandText.call(void 0, call),
19886
+ _chunk6LDL3UZEcjs.getCommandText.call(void 0, call),
19884
19887
  call.toolExplanation,
19885
19888
  escalatedData.approvalType,
19886
19889
  status
@@ -19988,10 +19991,10 @@ function processHistoricalMessages(messages, options = {}) {
19988
19991
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
19989
19992
  return;
19990
19993
  }
19991
- const isUserMessage = _optionalChain([msg, 'access', _656 => _656.owner, 'optionalAccess', _657 => _657.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _658 => _658.owner, 'optionalAccess', _659 => _659.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.ADMIN;
19994
+ const isUserMessage = _optionalChain([msg, 'access', _656 => _656.owner, 'optionalAccess', _657 => _657.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _658 => _658.owner, 'optionalAccess', _659 => _659.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.ADMIN;
19992
19995
  if (isUserMessage) {
19993
19996
  flushAssistantMessage();
19994
- const userAuthorType = _optionalChain([msg, 'access', _660 => _660.owner, 'optionalAccess', _661 => _661.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.ADMIN ? "admin" : "user";
19997
+ const userAuthorType = _optionalChain([msg, 'access', _660 => _660.owner, 'optionalAccess', _661 => _661.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.ADMIN ? "admin" : "user";
19995
19998
  messageDataArray.forEach((data) => {
19996
19999
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
19997
20000
  const rawContext = data.contextItems;
@@ -20042,7 +20045,7 @@ function processHistoricalMessages(messages, options = {}) {
20042
20045
  });
20043
20046
  const nextMsg = messages[index + 1];
20044
20047
  const isLastMessage = index === messages.length - 1;
20045
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _664 => _664.owner, 'optionalAccess', _665 => _665.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _666 => _666.owner, 'optionalAccess', _667 => _667.type]) === _chunk4JHO2NVIcjs.OWNER_TYPE.ADMIN);
20048
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _664 => _664.owner, 'optionalAccess', _665 => _665.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _666 => _666.owner, 'optionalAccess', _667 => _667.type]) === _chunkJ2IXYCEHcjs.OWNER_TYPE.ADMIN);
20046
20049
  if (isLastMessage || nextIsFromUser) {
20047
20050
  flushAssistantMessage();
20048
20051
  }
@@ -20750,6 +20753,20 @@ var MINGO_V2_SPLIT_WIDTH = MINGO_V2_RAIL_WIDTH + CHAT_BLOCK_MIN_WIDTH;
20750
20753
  // src/components/ui/panel-resize-handle.tsx
20751
20754
 
20752
20755
 
20756
+ function PanelResizeGrip({ className }) {
20757
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20758
+ "span",
20759
+ {
20760
+ "aria-hidden": true,
20761
+ className: _chunk63A4GZMBcjs.cn.call(void 0,
20762
+ "flex h-8 w-4 items-center justify-center rounded-sm border border-ods-border bg-ods-bg text-ods-text-secondary transition-colors",
20763
+ "group-hover:border-ods-border-hover group-focus-visible:border-ods-accent group-focus-visible:text-ods-accent",
20764
+ className
20765
+ ),
20766
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIWCYHXS3cjs.Menu01Icon, { size: 12 })
20767
+ }
20768
+ );
20769
+ }
20753
20770
  var HORIZONTAL_SIDES = /* @__PURE__ */ new Set(["left", "right"]);
20754
20771
  function finishDrag(startRef, dragSizeRef, commit) {
20755
20772
  if (!startRef.current) return;
@@ -20767,6 +20784,8 @@ function PanelResizeHandle({
20767
20784
  onSize,
20768
20785
  clampSize,
20769
20786
  panelRef,
20787
+ onDrag,
20788
+ onReset,
20770
20789
  variant,
20771
20790
  ariaLabel,
20772
20791
  className,
@@ -20791,12 +20810,17 @@ function PanelResizeHandle({
20791
20810
  };
20792
20811
  const handlePointerMove = (e) => {
20793
20812
  const start = startRef.current;
20794
- const panel = panelRef.current;
20795
- if (!start || !panel) return;
20813
+ if (!start) return;
20814
+ if (!onDrag && !_optionalChain([panelRef, 'optionalAccess', _681 => _681.current])) return;
20796
20815
  const delta = isHorizontal ? e.clientX - start.x : e.clientY - start.y;
20797
20816
  const next = clampSize(start.size + delta * direction);
20798
20817
  dragSizeRef.current = next;
20799
- panel.style[isHorizontal ? "width" : "height"] = `${next}px`;
20818
+ if (onDrag) {
20819
+ onDrag(next);
20820
+ } else if (panelRef) {
20821
+ const panel = panelRef.current;
20822
+ if (panel) panel.style[isHorizontal ? "width" : "height"] = `${next}px`;
20823
+ }
20800
20824
  e.currentTarget.setAttribute("aria-valuenow", String(Math.round(next)));
20801
20825
  };
20802
20826
  const endDrag = (e) => {
@@ -20854,6 +20878,7 @@ function PanelResizeHandle({
20854
20878
  onPointerCancel: endDrag,
20855
20879
  onLostPointerCapture: endDrag,
20856
20880
  onKeyDown: handleKeyDown,
20881
+ onDoubleClick: onReset,
20857
20882
  className: _chunk63A4GZMBcjs.cn.call(void 0,
20858
20883
  "group absolute z-20 flex touch-none select-none",
20859
20884
  "outline-none ring-0 focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0",
@@ -21166,4 +21191,5 @@ function PanelResizeHandle({
21166
21191
 
21167
21192
 
21168
21193
 
21169
- exports.PanelResizeHandle = PanelResizeHandle; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.TextHold = TextHold; exports.LayoutHold = LayoutHold; exports.AUTHORED_LINK_REL_TOKENS = AUTHORED_LINK_REL_TOKENS; exports.authoredRelTokens = authoredRelTokens; exports.isNofollowRel = isNofollowRel; exports.renderedLinkRel = renderedLinkRel; exports.findMarkdownLinkAt = findMarkdownLinkAt; exports.formatMarkdownLink = formatMarkdownLink; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.useIsHydrated = useIsHydrated; exports.MermaidDiagram = MermaidDiagram; exports.MARKDOWN_H1_CLASS = MARKDOWN_H1_CLASS; exports.MARKDOWN_H2_CLASS = MARKDOWN_H2_CLASS; exports.MARKDOWN_PARAGRAPH_CLASS = MARKDOWN_PARAGRAPH_CLASS; 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.MARKDOWN_SKELETON_LINES = MARKDOWN_SKELETON_LINES; exports.MARKDOWN_RENDERER_CLASS = MARKDOWN_RENDERER_CLASS; exports.MarkdownEngine = MarkdownEngine; exports.MarkdownEngineSkeleton = MarkdownEngineSkeleton; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ASK_AI_OPEN_EVENT = ASK_AI_OPEN_EVENT; exports.ASK_AI_OPEN_WITH_REF_EVENT = ASK_AI_OPEN_WITH_REF_EVENT; exports.ASK_AI_OPEN_EVENTS = ASK_AI_OPEN_EVENTS; exports.holdAskAiOpens = holdAskAiOpens; exports.askAiOpenIsHeld = askAiOpenIsHeld; exports.chatListensForAskAiOpens = chatListensForAskAiOpens; exports.ASK_AI_TRIGGER_ATTRIBUTE = ASK_AI_TRIGGER_ATTRIBUTE; exports.onAskAiIntent = onAskAiIntent; exports.ChatAppearanceContext = ChatAppearanceContext; exports.useChatAppearance = useChatAppearance; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; 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.SystemEventMessage = SystemEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.extractCardReferences = extractCardReferences; exports.ThinkingDisplay = ThinkingDisplay; exports.AskDisplay = AskDisplay; exports.ChatPanelContext = ChatPanelContext; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.SuggestionsDisplay = SuggestionsDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.LoadingFallback = LoadingFallback; exports.LoadingSuspense = LoadingSuspense; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_BAR_CLASS = CONTEXT_BACK_BAR_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; 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.InlineChip = InlineChip; exports.BlockCard = BlockCard; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.citedSourceNumbers = citedSourceNumbers; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.CHAT_MESSAGE_LIST_SKELETON_MESSAGES = CHAT_MESSAGE_LIST_SKELETON_MESSAGES; exports.ChatMessageList = ChatMessageList; exports.DESIGN_DOC_READINESS = DESIGN_DOC_READINESS; exports.DESIGN_DOC_READINESS_DISPLAY = DESIGN_DOC_READINESS_DISPLAY; exports.designDocReadiness = designDocReadiness; exports.formatCompletionLabel = formatCompletionLabel; exports.formatCompletionLabelWithBlockers = formatCompletionLabelWithBlockers; 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.DOC_TABLE_TYPES = DOC_TABLE_TYPES; exports.groupsByTable = groupsByTable; exports.recordCountLabel = recordCountLabel; exports.buildGroupedSource = buildGroupedSource; exports.groupSourcesByTable = groupSourcesByTable; exports.formatCitationIndices = formatCitationIndices; 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.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.clickupTaskUrl = clickupTaskUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.MingoEdgeLight = MingoEdgeLight; 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.PageTopicLabel = PageTopicLabel; exports.QUICK_ACTION_SET_SLOTS = QUICK_ACTION_SET_SLOTS; exports.QuickActionSet = QuickActionSet; exports.MingoQuickActionWall = MingoQuickActionWall; exports.chatDialogMenuItems = chatDialogMenuItems; exports.ChatListEmptyState = ChatListEmptyState; exports.chatDayLabel = chatDayLabel; exports.ChatListLoadError = ChatListLoadError; exports.CHAT_HISTORY_PAGE_SIZE = CHAT_HISTORY_PAGE_SIZE; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.GuideModeBanner = GuideModeBanner; exports.MingoArchiveList = MingoArchiveList; exports.MingoChatHeader = MingoChatHeader; exports.ChatHeaderSearchField = ChatHeaderSearchField; exports.SearchInput = SearchInput; exports.MingoChatSearchModal = MingoChatSearchModal; exports.MingoChatRail = MingoChatRail; exports.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatPanelHeader = ChatPanelHeader; 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.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.useNavLinkViaRuntime = useNavLinkViaRuntime; exports.useNavigateViaRuntime = useNavigateViaRuntime; 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.useCaptions = useCaptions; exports.UserDisplay = UserDisplay; exports.CardHitLayer = CardHitLayer; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; 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.VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX = VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX; exports.VIDEO_BITES_CARD_HEIGHT_MOBILE_PX = VIDEO_BITES_CARD_HEIGHT_MOBILE_PX; exports.STRIP_LINE_MAX_PX = STRIP_LINE_MAX_PX; exports.VIDEO_BITES_SKELETON_COUNT = VIDEO_BITES_SKELETON_COUNT; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.CHAT_CARD_DISCLOSURE = CHAT_CARD_DISCLOSURE; exports.CHAT_CARD_DISCLOSURES = CHAT_CARD_DISCLOSURES; exports.chatCardDisclosureOf = chatCardDisclosureOf; exports.ChatCardDisclosureButton = ChatCardDisclosureButton; exports.useChatCardDisclosure = useChatCardDisclosure; exports.ChatCardDisclosureRow = ChatCardDisclosureRow; exports.designDocPeople = designDocPeople; exports.designDocMetaLine = designDocMetaLine; exports.DesignDocCard = DesignDocCard; exports.GitHubActivityCard = GitHubActivityCard; exports.getVendorLogo = getVendorLogo; exports.VendorIcon = VendorIcon; exports.useChatCardItem = useChatCardItem; exports.MingoInfoCardActionProvider = MingoInfoCardActionProvider; exports.readFetchedCardTitle = readFetchedCardTitle; exports.readFetchedCardPath = readFetchedCardPath; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.sourceRowCtxFromRuntime = sourceRowCtxFromRuntime; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.resolveCardDestination = resolveCardDestination; exports.chatCardLabel = chatCardLabel; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.EMPTY_DIALOG_CAPABILITIES = EMPTY_DIALOG_CAPABILITIES; exports.useChunkCatchup = useChunkCatchup; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.emptyStateUrlForTopic = emptyStateUrlForTopic; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useWhatToAsk = useWhatToAsk; exports.awaitsDecision = awaitsDecision; exports.mergeByTime = mergeByTime; exports.approvalDisplaysInline = approvalDisplaysInline; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; 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.createChatConversationsApi = createChatConversationsApi; exports.buildDiscussPrompt = buildDiscussPrompt; exports.useManagedDialogList = useManagedDialogList; 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.useStableShallow = useStableShallow; exports.useUnifiedChat = useUnifiedChat; exports.chatChipClass = chatChipClass; exports.MINGO_V2_RAIL_WIDTH = MINGO_V2_RAIL_WIDTH; exports.CHAT_BLOCK_MIN_WIDTH = CHAT_BLOCK_MIN_WIDTH; exports.MINGO_V2_SPLIT_WIDTH = MINGO_V2_SPLIT_WIDTH;
21194
+
21195
+ exports.PanelResizeGrip = PanelResizeGrip; exports.PanelResizeHandle = PanelResizeHandle; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.TextHold = TextHold; exports.LayoutHold = LayoutHold; exports.AUTHORED_LINK_REL_TOKENS = AUTHORED_LINK_REL_TOKENS; exports.authoredRelTokens = authoredRelTokens; exports.isNofollowRel = isNofollowRel; exports.renderedLinkRel = renderedLinkRel; exports.findMarkdownLinkAt = findMarkdownLinkAt; exports.formatMarkdownLink = formatMarkdownLink; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.useIsHydrated = useIsHydrated; exports.MermaidDiagram = MermaidDiagram; exports.MARKDOWN_H1_CLASS = MARKDOWN_H1_CLASS; exports.MARKDOWN_H2_CLASS = MARKDOWN_H2_CLASS; exports.MARKDOWN_PARAGRAPH_CLASS = MARKDOWN_PARAGRAPH_CLASS; 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.MARKDOWN_SKELETON_LINES = MARKDOWN_SKELETON_LINES; exports.MARKDOWN_RENDERER_CLASS = MARKDOWN_RENDERER_CLASS; exports.MarkdownEngine = MarkdownEngine; exports.MarkdownEngineSkeleton = MarkdownEngineSkeleton; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ASK_AI_OPEN_EVENT = ASK_AI_OPEN_EVENT; exports.ASK_AI_OPEN_WITH_REF_EVENT = ASK_AI_OPEN_WITH_REF_EVENT; exports.ASK_AI_OPEN_EVENTS = ASK_AI_OPEN_EVENTS; exports.holdAskAiOpens = holdAskAiOpens; exports.askAiOpenIsHeld = askAiOpenIsHeld; exports.chatListensForAskAiOpens = chatListensForAskAiOpens; exports.ASK_AI_TRIGGER_ATTRIBUTE = ASK_AI_TRIGGER_ATTRIBUTE; exports.onAskAiIntent = onAskAiIntent; exports.ChatAppearanceContext = ChatAppearanceContext; exports.useChatAppearance = useChatAppearance; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; 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.SystemEventMessage = SystemEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.extractCardReferences = extractCardReferences; exports.ThinkingDisplay = ThinkingDisplay; exports.AskDisplay = AskDisplay; exports.ChatPanelContext = ChatPanelContext; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.SuggestionsDisplay = SuggestionsDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.LoadingFallback = LoadingFallback; exports.LoadingSuspense = LoadingSuspense; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_BAR_CLASS = CONTEXT_BACK_BAR_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; 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.InlineChip = InlineChip; exports.BlockCard = BlockCard; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.citedSourceNumbers = citedSourceNumbers; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.CHAT_MESSAGE_LIST_SKELETON_MESSAGES = CHAT_MESSAGE_LIST_SKELETON_MESSAGES; exports.ChatMessageList = ChatMessageList; exports.DESIGN_DOC_READINESS = DESIGN_DOC_READINESS; exports.DESIGN_DOC_READINESS_DISPLAY = DESIGN_DOC_READINESS_DISPLAY; exports.designDocReadiness = designDocReadiness; exports.formatCompletionLabel = formatCompletionLabel; exports.formatCompletionLabelWithBlockers = formatCompletionLabelWithBlockers; 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.DOC_TABLE_TYPES = DOC_TABLE_TYPES; exports.groupsByTable = groupsByTable; exports.recordCountLabel = recordCountLabel; exports.buildGroupedSource = buildGroupedSource; exports.groupSourcesByTable = groupSourcesByTable; exports.formatCitationIndices = formatCitationIndices; 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.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.clickupTaskUrl = clickupTaskUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.MingoEdgeLight = MingoEdgeLight; 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.PageTopicLabel = PageTopicLabel; exports.QUICK_ACTION_SET_SLOTS = QUICK_ACTION_SET_SLOTS; exports.QuickActionSet = QuickActionSet; exports.MingoQuickActionWall = MingoQuickActionWall; exports.chatDialogMenuItems = chatDialogMenuItems; exports.ChatListEmptyState = ChatListEmptyState; exports.chatDayLabel = chatDayLabel; exports.ChatListLoadError = ChatListLoadError; exports.CHAT_HISTORY_PAGE_SIZE = CHAT_HISTORY_PAGE_SIZE; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.GuideModeBanner = GuideModeBanner; exports.MingoArchiveList = MingoArchiveList; exports.MingoChatHeader = MingoChatHeader; exports.ChatHeaderSearchField = ChatHeaderSearchField; exports.SearchInput = SearchInput; exports.MingoChatSearchModal = MingoChatSearchModal; exports.MingoChatRail = MingoChatRail; exports.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatPanelHeader = ChatPanelHeader; 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.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.useNavLinkViaRuntime = useNavLinkViaRuntime; exports.useNavigateViaRuntime = useNavigateViaRuntime; 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.useCaptions = useCaptions; exports.UserDisplay = UserDisplay; exports.CardHitLayer = CardHitLayer; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; 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.VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX = VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX; exports.VIDEO_BITES_CARD_HEIGHT_MOBILE_PX = VIDEO_BITES_CARD_HEIGHT_MOBILE_PX; exports.STRIP_LINE_MAX_PX = STRIP_LINE_MAX_PX; exports.VIDEO_BITES_SKELETON_COUNT = VIDEO_BITES_SKELETON_COUNT; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.CHAT_CARD_DISCLOSURE = CHAT_CARD_DISCLOSURE; exports.CHAT_CARD_DISCLOSURES = CHAT_CARD_DISCLOSURES; exports.chatCardDisclosureOf = chatCardDisclosureOf; exports.ChatCardDisclosureButton = ChatCardDisclosureButton; exports.useChatCardDisclosure = useChatCardDisclosure; exports.ChatCardDisclosureRow = ChatCardDisclosureRow; exports.designDocPeople = designDocPeople; exports.designDocMetaLine = designDocMetaLine; exports.DesignDocCard = DesignDocCard; exports.GitHubActivityCard = GitHubActivityCard; exports.getVendorLogo = getVendorLogo; exports.VendorIcon = VendorIcon; exports.useChatCardItem = useChatCardItem; exports.MingoInfoCardActionProvider = MingoInfoCardActionProvider; exports.readFetchedCardTitle = readFetchedCardTitle; exports.readFetchedCardPath = readFetchedCardPath; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.sourceRowCtxFromRuntime = sourceRowCtxFromRuntime; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.resolveCardDestination = resolveCardDestination; exports.chatCardLabel = chatCardLabel; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.EMPTY_DIALOG_CAPABILITIES = EMPTY_DIALOG_CAPABILITIES; exports.useChunkCatchup = useChunkCatchup; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.emptyStateUrlForTopic = emptyStateUrlForTopic; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useWhatToAsk = useWhatToAsk; exports.awaitsDecision = awaitsDecision; exports.mergeByTime = mergeByTime; exports.approvalDisplaysInline = approvalDisplaysInline; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; 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.createChatConversationsApi = createChatConversationsApi; exports.buildDiscussPrompt = buildDiscussPrompt; exports.useManagedDialogList = useManagedDialogList; 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.useStableShallow = useStableShallow; exports.useUnifiedChat = useUnifiedChat; exports.chatChipClass = chatChipClass; exports.MINGO_V2_RAIL_WIDTH = MINGO_V2_RAIL_WIDTH; exports.CHAT_BLOCK_MIN_WIDTH = CHAT_BLOCK_MIN_WIDTH; exports.MINGO_V2_SPLIT_WIDTH = MINGO_V2_SPLIT_WIDTH;