@flamingo-stack/openframe-frontend-core 0.0.839 → 0.0.840
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.
- package/dist/build/export-map.json +1 -1
- package/dist/{chunk-37XKZ4JM.cjs → chunk-275AQ6LC.cjs} +6 -6
- package/dist/{chunk-5BM7X4GA.cjs → chunk-5GBLXY5F.cjs} +2 -2
- package/dist/{chunk-5L3UKDC6.cjs → chunk-6LDL3UZE.cjs} +9 -9
- package/dist/{chunk-SWMUW3RR.cjs → chunk-744JXTDP.cjs} +19 -19
- package/dist/{chunk-46LATWQR.cjs → chunk-7WKRMJI6.cjs} +5 -5
- package/dist/{chunk-XJ4AB24Y.cjs → chunk-AT6D7BAZ.cjs} +5 -5
- package/dist/{chunk-C4OQIYGW.cjs → chunk-CCRXBFNL.cjs} +8 -8
- package/dist/{chunk-LC65AC6M.cjs → chunk-COWMXUHN.cjs} +2 -0
- package/dist/{chunk-5E4YEHHO.cjs → chunk-DGY5KEPY.cjs} +55 -55
- package/dist/{chunk-N2TCVIPR.cjs → chunk-DYDQLS2R.cjs} +539 -539
- package/dist/{chunk-LWMWY3JO.cjs → chunk-E7M54JWW.cjs} +14 -14
- package/dist/{chunk-Z7A7IZWL.cjs → chunk-EV6BPF47.cjs} +236 -210
- package/dist/{chunk-7XRFAHJF.cjs → chunk-FHI4I3TQ.cjs} +9 -9
- package/dist/{chunk-ZABZIM2Y.cjs → chunk-FRL2ZN4O.cjs} +3 -3
- package/dist/{chunk-7Z536SPR.cjs → chunk-FW7RKWPY.cjs} +15 -1
- package/dist/{chunk-3MBKEF7Z.cjs → chunk-GMK4JGC2.cjs} +46 -46
- package/dist/{chunk-SZVPRP5E.cjs → chunk-GUKFMMDZ.cjs} +3 -3
- package/dist/{chunk-GN6LEJWY.cjs → chunk-HXTZZE3R.cjs} +253 -131
- package/dist/{chunk-2XZZHRRU.cjs → chunk-IELPVUPR.cjs} +18 -18
- package/dist/{chunk-64PF3UC7.cjs → chunk-INBFKUZA.cjs} +17 -17
- package/dist/{chunk-APOMNC7H.cjs → chunk-IUDBG3HJ.cjs} +3 -3
- package/dist/{chunk-4JHO2NVI.cjs → chunk-J2IXYCEH.cjs} +26 -10
- package/dist/{chunk-C4RYIDPU.cjs → chunk-JM2XA7VY.cjs} +28 -28
- package/dist/{chunk-GPXKG34G.cjs → chunk-JUEAZCD6.cjs} +46 -46
- package/dist/{chunk-2QAUQPGC.cjs → chunk-MYAPG3FQ.cjs} +21 -21
- package/dist/{chunk-GRHF5SWL.cjs → chunk-NFNSPLGC.cjs} +3 -3
- package/dist/{chunk-UDRVVCOC.cjs → chunk-Q6WUHYOG.cjs} +72 -72
- package/dist/{chunk-H3WTYAVR.cjs → chunk-RSJYTQEA.cjs} +30 -30
- package/dist/{chunk-MG3HJIGG.cjs → chunk-UAI4VMEF.cjs} +4 -4
- package/dist/{chunk-S5RMRQKT.cjs → chunk-UZPYYHF5.cjs} +18 -18
- package/dist/{chunk-DFTXZE7B.cjs → chunk-VBH2RCFM.cjs} +73 -73
- package/dist/{chunk-FNNDGOR3.cjs → chunk-WCK5T3UD.cjs} +43 -43
- package/dist/{chunk-TRZEFT2N.cjs → chunk-WI7EXAZT.cjs} +9 -5
- package/dist/{chunk-TKS25VKE.cjs → chunk-Z35PL3UR.cjs} +32 -32
- package/dist/{chunk-ENK75WN4.cjs → chunk-ZAO5SYBJ.cjs} +4 -4
- package/dist/{cloud-tenants-WE3H3VAW.cjs → cloud-tenants-PV63RZ73.cjs} +19 -19
- package/dist/components/case-studies/index.cjs +33 -33
- package/dist/components/chat/chat-nav-sidebar.d.ts.map +1 -1
- package/dist/components/chat/chat-nav-sidebar.js +17 -3
- package/dist/components/chat/index.cjs +13 -13
- package/dist/components/contact/index.cjs +20 -20
- package/dist/components/docs/index.cjs +23 -23
- package/dist/components/embeds/index.cjs +20 -20
- package/dist/components/faq/index.cjs +21 -21
- package/dist/components/features/index.cjs +19 -19
- package/dist/components/help-center-pages/index.cjs +120 -120
- package/dist/components/index.cjs +76 -76
- package/dist/components/meeting-scheduler/index.cjs +82 -82
- package/dist/components/navigation/account-popover.d.ts.map +1 -1
- package/dist/components/navigation/account-popover.js +26 -2
- package/dist/components/navigation/app-layout-side-panel.d.ts.map +1 -1
- package/dist/components/navigation/app-layout-side-panel.js +2 -9
- package/dist/components/navigation/index.cjs +22 -22
- package/dist/components/navigation/navigation-sidebar-grouped.d.ts.map +1 -1
- package/dist/components/navigation/navigation-sidebar-grouped.js +30 -6
- package/dist/components/navigation/navigation-sidebar-item.d.ts.map +1 -1
- package/dist/components/navigation/navigation-sidebar-item.js +14 -1
- package/dist/components/navigation/navigation-sidebar.d.ts.map +1 -1
- package/dist/components/navigation/navigation-sidebar.js +72 -3
- package/dist/components/onboarding-guides/index.cjs +22 -22
- package/dist/components/product-demo/index.cjs +30 -30
- package/dist/components/related-content/index.cjs +8 -8
- package/dist/components/tickets/index.cjs +24 -24
- package/dist/components/ui/index.cjs +19 -19
- package/dist/components/ui/panel-resize-handle.d.ts +27 -6
- package/dist/components/ui/panel-resize-handle.d.ts.map +1 -1
- package/dist/components/ui/panel-resize-handle.js +27 -3
- package/dist/{devices-ZBZN2RRG.cjs → devices-VECG5JNC.cjs} +20 -20
- package/dist/{embeddable-chat-RBC7F4TL.cjs → embeddable-chat-VRYAQQF6.cjs} +90 -90
- package/dist/hooks/index.cjs +11 -7
- package/dist/hooks/ui/index.d.ts +1 -0
- package/dist/hooks/ui/index.d.ts.map +1 -1
- package/dist/hooks/ui/index.js +1 -0
- package/dist/hooks/ui/use-clipped-label-tooltip.d.ts +14 -0
- package/dist/hooks/ui/use-clipped-label-tooltip.d.ts.map +1 -0
- package/dist/hooks/ui/use-clipped-label-tooltip.js +13 -0
- package/dist/hooks/ui/use-is-truncated.d.ts.map +1 -1
- package/dist/hooks/ui/use-is-truncated.js +1 -0
- package/dist/hooks/ui/use-media-query.d.ts.map +1 -1
- package/dist/hooks/ui/use-media-query.js +1 -0
- package/dist/hooks/ui/use-resizable-panel-size.d.ts +1 -0
- package/dist/hooks/ui/use-resizable-panel-size.d.ts.map +1 -1
- package/dist/hooks/ui/use-resizable-panel-size.js +5 -1
- package/dist/index.cjs +28 -24
- package/dist/{knowledge-2QNZGDFO.cjs → knowledge-YJSDJIXT.cjs} +20 -20
- package/dist/{logs-YPWTJVIH.cjs → logs-42JG3NZ5.cjs} +26 -26
- package/dist/{policies-BK7TUKAF.cjs → policies-D4QNVJ26.cjs} +23 -23
- package/dist/{remote-session-CN3G7JNR.cjs → remote-session-EE6477O3.cjs} +10 -10
- package/dist/{scripts-K7AOYWZE.cjs → scripts-4VFYBXBE.cjs} +26 -26
- package/dist/{software-update-UFN4SBMY.cjs → software-update-OSDZQ5CP.cjs} +23 -23
- package/dist/{tickets-board-PLYD2NSY.cjs → tickets-board-44HO3LR4.cjs} +10 -10
- package/dist/types/navigation.d.ts +36 -0
- package/dist/types/navigation.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/chat/chat-nav-sidebar.tsx +17 -4
- package/src/components/navigation/account-popover.tsx +31 -2
- package/src/components/navigation/app-layout-side-panel.tsx +2 -7
- package/src/components/navigation/navigation-sidebar-grouped.tsx +37 -6
- package/src/components/navigation/navigation-sidebar-item.tsx +18 -1
- package/src/components/navigation/navigation-sidebar.tsx +116 -7
- package/src/components/ui/panel-resize-handle.tsx +50 -8
- package/src/hooks/ui/index.ts +1 -0
- package/src/hooks/ui/use-clipped-label-tooltip.ts +20 -0
- package/src/hooks/ui/use-is-truncated.ts +2 -0
- package/src/hooks/ui/use-media-query.ts +2 -0
- package/src/hooks/ui/use-resizable-panel-size.ts +7 -1
- package/src/types/navigation.ts +37 -0
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
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
|
|
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
|
|
275
|
+
var _chunkFRL2ZN4Ocjs = require('./chunk-FRL2ZN4O.cjs');
|
|
273
276
|
|
|
274
277
|
|
|
275
278
|
|
|
276
|
-
var
|
|
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
|
|
324
|
+
var _chunkRSJYTQEAcjs = require('./chunk-RSJYTQEA.cjs');
|
|
322
325
|
|
|
323
326
|
|
|
324
|
-
var
|
|
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
|
|
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
|
|
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(
|
|
716
|
+
sectionIdMap.set(_chunkFRL2ZN4Ocjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
|
|
714
717
|
}
|
|
715
718
|
}
|
|
716
|
-
const dedupe =
|
|
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
|
|
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
|
-
|
|
730
|
-
|
|
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 =
|
|
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 =
|
|
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(
|
|
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 =
|
|
1430
|
+
const target = _chunkFRL2ZN4Ocjs.getHashTargetElement.call(void 0, inPageAnchorId);
|
|
1428
1431
|
if (!_optionalChain([target, 'optionalAccess', _29 => _29.id])) return;
|
|
1429
1432
|
e.preventDefault();
|
|
1430
|
-
|
|
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 =
|
|
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 =
|
|
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 (
|
|
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 &&
|
|
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 (
|
|
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 (
|
|
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 (
|
|
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 (
|
|
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 (
|
|
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 =
|
|
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 (!
|
|
2877
|
-
const normBlank =
|
|
2878
|
-
const blank = openPrefixLen > 0 ?
|
|
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 =
|
|
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 (!
|
|
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 =
|
|
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 &&
|
|
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(
|
|
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,
|
|
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() ===
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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)]",
|
|
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,
|
|
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,
|
|
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() ===
|
|
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:
|
|
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,
|
|
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 } =
|
|
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,
|
|
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,
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 } =
|
|
4959
|
+
const { innerRef, containerStyle } = _chunk6LDL3UZEcjs.useCollapsible.call(void 0, { expanded });
|
|
4957
4960
|
const hasDetails = Boolean(details);
|
|
4958
|
-
const isV2 = useChatAppearance() ===
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
-
|
|
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
|
-
|
|
5244
|
+
_chunk6LDL3UZEcjs.TicketStatusTag,
|
|
5242
5245
|
{
|
|
5243
|
-
...
|
|
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
|
-
|
|
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(
|
|
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 } =
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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
|
-
|
|
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
|
-
[
|
|
6020
|
-
[
|
|
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 =
|
|
6078
|
-
return
|
|
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 ===
|
|
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,
|
|
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
|
-
|
|
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[
|
|
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 ?
|
|
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
|
-
|
|
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,
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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(
|
|
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 } =
|
|
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 =
|
|
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
|
-
|
|
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 } =
|
|
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
|
|
8452
|
+
return _chunkNFNSPLGCcjs.formatDateWithTimezone.call(void 0,
|
|
8450
8453
|
date,
|
|
8451
|
-
|
|
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:
|
|
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
|
-
|
|
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 } =
|
|
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,
|
|
8846
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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 } =
|
|
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,
|
|
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,
|
|
8941
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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 } =
|
|
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,
|
|
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,
|
|
9052
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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,
|
|
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
|
-
|
|
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:
|
|
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
|
-
|
|
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
|
-
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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
|
-
} =
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 =
|
|
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 ?
|
|
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 ?
|
|
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 =
|
|
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,
|
|
10140
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
10675
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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,
|
|
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,
|
|
10700
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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,
|
|
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,
|
|
10710
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
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,
|
|
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
|
-
|
|
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 ${
|
|
11054
|
-
status === "ready" &&
|
|
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() ===
|
|
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
|
-
|
|
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 =
|
|
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)
|
|
11723
|
+
if (button === 0 || button === 1) _chunkFRL2ZN4Ocjs.executeNewTabNavigation.call(void 0, { runtime, href, targetPlatform });
|
|
11721
11724
|
return;
|
|
11722
11725
|
}
|
|
11723
|
-
|
|
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 =
|
|
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,
|
|
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,
|
|
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 =
|
|
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 } =
|
|
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 =
|
|
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
|
-
|
|
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 } =
|
|
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: `${
|
|
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: `${
|
|
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,
|
|
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 } =
|
|
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 ${
|
|
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,
|
|
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,
|
|
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 =
|
|
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 =
|
|
13442
|
+
const logoSrc = _chunkRSJYTQEAcjs.useProxiedImageUrl.call(void 0, logoUrl, { directHttps: false });
|
|
13440
13443
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13441
|
-
|
|
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 =
|
|
13474
|
-
const match = items.find((it) =>
|
|
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:
|
|
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,
|
|
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 =
|
|
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:
|
|
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 =
|
|
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 =
|
|
14076
|
+
const summary = _chunkRSJYTQEAcjs.trustFrameworksSummary.call(void 0, frameworks);
|
|
14074
14077
|
const leadFramework = frameworks[0];
|
|
14075
14078
|
const lead = leadFramework ? {
|
|
14076
|
-
label:
|
|
14077
|
-
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:
|
|
14083
|
-
description: summary ||
|
|
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]) ?
|
|
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 =
|
|
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]) ||
|
|
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 } =
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
-
[
|
|
14758
|
+
[_chunkRSJYTQEAcjs.TRUST_CENTER_DOCUMENT_TYPE]: {
|
|
14756
14759
|
label: "Trust center",
|
|
14757
14760
|
bareInline: true,
|
|
14758
|
-
contentRefType:
|
|
14761
|
+
contentRefType: _chunkRSJYTQEAcjs.TRUST_CENTER_DOCUMENT_TYPE,
|
|
14759
14762
|
noComposedHref: true,
|
|
14760
|
-
fallbackHref: () =>
|
|
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,
|
|
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,
|
|
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,
|
|
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]), () => (
|
|
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,
|
|
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,
|
|
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 =
|
|
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,
|
|
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 ===
|
|
15095
|
+
return chatType === _chunkJ2IXYCEHcjs.CHAT_TYPE.ADMIN ? "admin-message" : "message";
|
|
15093
15096
|
}
|
|
15094
15097
|
function useChunkCatchup({
|
|
15095
15098
|
dialogId,
|
|
15096
15099
|
onChunkReceived,
|
|
15097
|
-
chatTypes = [
|
|
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
|
-
|
|
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 ?
|
|
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
|
-
|
|
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
|
-
|
|
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]) ===
|
|
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]) ===
|
|
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
|
-
|
|
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
|
-
|
|
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]) ===
|
|
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]) ===
|
|
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]) ===
|
|
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
|
-
|
|
20795
|
-
if (!
|
|
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
|
-
|
|
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;
|