@flamingo-stack/openframe-frontend-core 0.0.847 → 0.0.848
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/{case-study-card-DJOHIHYU.cjs → case-study-card-X2HKPKT7.cjs} +5 -5
- package/dist/{chunk-N2A24FDF.cjs → chunk-2V6FCVUL.cjs} +955 -932
- package/dist/{chunk-CNMXP77I.cjs → chunk-36DUCHI7.cjs} +4 -4
- package/dist/{chunk-J2IXYCEH.cjs → chunk-3W4ASAXN.cjs} +15 -15
- package/dist/{chunk-6LDL3UZE.cjs → chunk-4YBS4HIO.cjs} +20 -20
- package/dist/{chunk-QK2A334V.cjs → chunk-5HOWR4TG.cjs} +12 -12
- package/dist/{chunk-2FUTZKLB.cjs → chunk-74Z34I2C.cjs} +6 -6
- package/dist/{chunk-PV3NKXWS.cjs → chunk-7DW3LZ52.cjs} +57 -57
- package/dist/{chunk-ZTO7KNYV.cjs → chunk-7LE4HWHA.cjs} +35 -35
- package/dist/{chunk-URP6GYTD.cjs → chunk-7YJQTQPV.cjs} +56 -56
- package/dist/{chunk-4R4HAFXI.cjs → chunk-ALRYVZ3E.cjs} +6 -6
- package/dist/{chunk-57JYB3E2.cjs → chunk-C3WZXOZJ.cjs} +3 -3
- package/dist/{chunk-SSSI2RBV.cjs → chunk-FNQWL4W4.cjs} +14 -14
- package/dist/{chunk-J2ZSGOUC.cjs → chunk-GASFYPGH.cjs} +27 -27
- package/dist/{chunk-3V5JWG27.cjs → chunk-GG466XFQ.cjs} +2 -2
- package/dist/{chunk-XCVH5BCZ.cjs → chunk-GRCOEICK.cjs} +6 -6
- package/dist/{chunk-5GBLXY5F.cjs → chunk-HTYJUMFB.cjs} +7 -7
- package/dist/{chunk-HBDLJUI3.cjs → chunk-I3YRYS23.cjs} +5 -5
- package/dist/{chunk-HPXET3LH.cjs → chunk-IIUZE73M.cjs} +27 -27
- package/dist/{chunk-WCK5T3UD.cjs → chunk-IKOL6NJY.cjs} +101 -69
- package/dist/{chunk-DGQDGCQH.cjs → chunk-INA2FX2N.cjs} +2 -2
- package/dist/{chunk-PQDCSZ3W.cjs → chunk-IUZVOQXP.cjs} +85 -85
- package/dist/{chunk-BIOSHDXQ.cjs → chunk-MDLT6D46.cjs} +61 -61
- package/dist/{chunk-DEEQSVLX.cjs → chunk-MWYEROAP.cjs} +90 -90
- package/dist/{chunk-D5DMWXF2.cjs → chunk-NYT6IBIX.cjs} +4 -4
- package/dist/{chunk-TBOWFTEN.cjs → chunk-O4BXHCMK.cjs} +22 -22
- package/dist/{chunk-YC52LSPP.cjs → chunk-OCJXOSIH.cjs} +40 -40
- package/dist/{chunk-3TOWCFIK.cjs → chunk-PMUCEUFQ.cjs} +13 -1
- package/dist/{chunk-BZZE4KIV.cjs → chunk-QUSCSYHJ.cjs} +135 -135
- package/dist/{chunk-744JXTDP.cjs → chunk-SA2NNWIJ.cjs} +23 -23
- package/dist/{chunk-BHOVF4KP.cjs → chunk-SOSIXRQ3.cjs} +2 -2
- package/dist/{chunk-PZNWIJRZ.cjs → chunk-TIVPOVIM.cjs} +2 -2
- package/dist/{chunk-FLW4WULE.cjs → chunk-U7UBYJEZ.cjs} +17 -61
- package/dist/{chunk-Y2OEC7UW.cjs → chunk-VW4446JR.cjs} +40 -40
- package/dist/{chunk-NFNSPLGC.cjs → chunk-W7OFAROY.cjs} +14 -9
- package/dist/{chunk-RAJ5FYFL.cjs → chunk-Y2ZWWIUA.cjs} +14 -14
- package/dist/{chunk-MPVOPSU6.cjs → chunk-Y4BG7SPX.cjs} +96 -96
- package/dist/{chunk-SIFRIUPW.cjs → chunk-YAW7CHLV.cjs} +340 -354
- package/dist/{chunk-ABL5OBSF.cjs → chunk-YXKAHQYS.cjs} +294 -249
- package/dist/{chunk-SWF6TNZ3.cjs → chunk-ZGEWT3SF.cjs} +2 -2
- package/dist/{chunk-5SZ4ILU3.cjs → chunk-ZZDFMUEU.cjs} +3 -3
- package/dist/{cloud-tenants-XEUUMABT.cjs → cloud-tenants-YAZHLPOQ.cjs} +21 -21
- package/dist/components/case-studies/index.cjs +36 -36
- package/dist/components/chat/chat-composer.d.ts.map +1 -1
- package/dist/components/chat/chat-composer.js +4 -3
- package/dist/components/chat/chat-container.d.ts.map +1 -1
- package/dist/components/chat/chat-container.js +2 -2
- package/dist/components/chat/entity-cards/design-doc-card.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/design-doc-card.js +5 -17
- package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/dispatch.js +4 -7
- package/dist/components/chat/index.cjs +15 -15
- package/dist/components/contact/index.cjs +22 -22
- package/dist/components/docs/index.cjs +25 -25
- package/dist/components/embeds/index.cjs +22 -22
- package/dist/components/faq/index.cjs +23 -23
- package/dist/components/features/index.cjs +21 -21
- package/dist/components/features/status-filter-component.d.ts +7 -1
- package/dist/components/features/status-filter-component.d.ts.map +1 -1
- package/dist/components/features/status-filter-component.js +9 -3
- package/dist/components/help-center-pages/index.cjs +140 -140
- package/dist/components/index.cjs +137 -135
- package/dist/components/layout/back-button.d.ts +7 -1
- package/dist/components/layout/back-button.d.ts.map +1 -1
- package/dist/components/layout/back-button.js +34 -2
- package/dist/components/loading/unified-skeleton.d.ts +6 -1
- package/dist/components/loading/unified-skeleton.d.ts.map +1 -1
- package/dist/components/loading/unified-skeleton.js +13 -1
- package/dist/components/meeting-scheduler/index.cjs +119 -119
- package/dist/components/navigation/index.cjs +24 -24
- package/dist/components/onboarding-guides/index.cjs +24 -24
- package/dist/components/product-demo/index.cjs +33 -33
- package/dist/components/related-content/index.cjs +11 -11
- package/dist/components/tickets/index.cjs +28 -28
- package/dist/components/ui/file-manager/file-manager-table.d.ts.map +1 -1
- package/dist/components/ui/file-manager/file-manager-table.js +59 -50
- package/dist/components/ui/file-manager/index.cjs +71 -62
- package/dist/components/ui/index.cjs +23 -21
- package/dist/components/ui/markdown/engine.d.ts +5 -4
- package/dist/components/ui/markdown/engine.d.ts.map +1 -1
- package/dist/components/ui/markdown/engine.js +15 -15
- package/dist/components/ui/people-cell.d.ts +9 -2
- package/dist/components/ui/people-cell.d.ts.map +1 -1
- package/dist/components/ui/people-cell.js +39 -23
- package/dist/components/ui/progress-bar.d.ts +6 -0
- package/dist/components/ui/progress-bar.d.ts.map +1 -1
- package/dist/components/ui/progress-bar.js +2 -0
- package/dist/components/ui/tag.d.ts +8 -0
- package/dist/components/ui/tag.d.ts.map +1 -1
- package/dist/components/ui/tag.js +5 -0
- package/dist/{devices-7YDIHVVP.cjs → devices-IZROCLFK.cjs} +22 -22
- package/dist/embed-shims/index.cjs +3 -3
- package/dist/embed-shims/next-image.cjs +3 -3
- package/dist/{embeddable-chat-Z3S37SSM.cjs → embeddable-chat-ETW6S22E.cjs} +94 -94
- package/dist/hooks/index.cjs +6 -6
- package/dist/index.cjs +30 -32
- package/dist/{knowledge-SQVPQSKM.cjs → knowledge-4IRWLTNW.cjs} +22 -22
- package/dist/{logs-M5DFGUBC.cjs → logs-EFDGY5IO.cjs} +28 -28
- package/dist/{policies-T3VQEJUD.cjs → policies-3KEXZ5BP.cjs} +25 -25
- package/dist/{remote-session-EE6477O3.cjs → remote-session-NT4NG7EF.cjs} +10 -10
- package/dist/{scripts-JFRFJKPH.cjs → scripts-PCGTZLZL.cjs} +28 -28
- package/dist/{software-update-E7W3AAIY.cjs → software-update-YCDNVFJE.cjs} +25 -25
- package/dist/{tickets-board-44HO3LR4.cjs → tickets-board-7FLGQEHF.cjs} +10 -10
- package/dist/types/design-doc.d.ts +45 -8
- package/dist/types/design-doc.d.ts.map +1 -1
- package/dist/utils/design-doc-readiness.d.ts +17 -15
- package/dist/utils/design-doc-readiness.d.ts.map +1 -1
- package/dist/utils/design-doc-readiness.js +5 -11
- package/dist/utils/index.cjs +5 -11
- package/package.json +1 -1
- package/src/components/chat/chat-composer.tsx +10 -3
- package/src/components/chat/chat-container.tsx +6 -4
- package/src/components/chat/entity-cards/design-doc-card.tsx +12 -17
- package/src/components/chat/entity-cards/dispatch.tsx +7 -10
- package/src/components/features/status-filter-component.tsx +15 -0
- package/src/components/layout/back-button.tsx +54 -2
- package/src/components/loading/unified-skeleton.tsx +18 -2
- package/src/components/ui/file-manager/file-manager-table.tsx +8 -3
- package/src/components/ui/markdown/engine.tsx +21 -30
- package/src/components/ui/people-cell.tsx +53 -17
- package/src/components/ui/progress-bar.tsx +8 -0
- package/src/components/ui/tag.tsx +14 -0
- package/src/types/design-doc.ts +59 -10
- package/src/utils/design-doc-readiness.ts +22 -23
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunk3W4ASAXNcjs = require('./chunk-3W4ASAXN.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
|
|
@@ -36,7 +36,7 @@ var _chunkJ2IXYCEHcjs = require('./chunk-J2IXYCEH.cjs');
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
var
|
|
39
|
+
var _chunk4YBS4HIOcjs = require('./chunk-4YBS4HIO.cjs');
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
|
|
@@ -272,7 +272,7 @@ var _chunk7WT2C5YYcjs = require('./chunk-7WT2C5YY.cjs');
|
|
|
272
272
|
|
|
273
273
|
|
|
274
274
|
|
|
275
|
-
var
|
|
275
|
+
var _chunkGRCOEICKcjs = require('./chunk-GRCOEICK.cjs');
|
|
276
276
|
|
|
277
277
|
|
|
278
278
|
|
|
@@ -321,11 +321,11 @@ var _chunkIX2E3AN7cjs = require('./chunk-IX2E3AN7.cjs');
|
|
|
321
321
|
|
|
322
322
|
|
|
323
323
|
|
|
324
|
-
var _chunkABL5OBSFcjs = require('./chunk-ABL5OBSF.cjs');
|
|
325
324
|
|
|
325
|
+
var _chunkYXKAHQYScjs = require('./chunk-YXKAHQYS.cjs');
|
|
326
326
|
|
|
327
|
-
var _chunk5GBLXY5Fcjs = require('./chunk-5GBLXY5F.cjs');
|
|
328
327
|
|
|
328
|
+
var _chunkHTYJUMFBcjs = require('./chunk-HTYJUMFB.cjs');
|
|
329
329
|
|
|
330
330
|
|
|
331
331
|
|
|
@@ -334,9 +334,9 @@ var _chunk5GBLXY5Fcjs = require('./chunk-5GBLXY5F.cjs');
|
|
|
334
334
|
|
|
335
335
|
|
|
336
336
|
|
|
337
|
-
var _chunkNFNSPLGCcjs = require('./chunk-NFNSPLGC.cjs');
|
|
338
337
|
|
|
339
338
|
|
|
339
|
+
var _chunkW7OFAROYcjs = require('./chunk-W7OFAROY.cjs');
|
|
340
340
|
|
|
341
341
|
|
|
342
342
|
|
|
@@ -359,7 +359,9 @@ var _chunkNFNSPLGCcjs = require('./chunk-NFNSPLGC.cjs');
|
|
|
359
359
|
|
|
360
360
|
|
|
361
361
|
|
|
362
|
-
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
var _chunkMDLT6D46cjs = require('./chunk-MDLT6D46.cjs');
|
|
363
365
|
|
|
364
366
|
|
|
365
367
|
var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
|
|
@@ -376,7 +378,7 @@ var _chunkYSDB6HGQcjs = require('./chunk-YSDB6HGQ.cjs');
|
|
|
376
378
|
|
|
377
379
|
|
|
378
380
|
|
|
379
|
-
var
|
|
381
|
+
var _chunkTIVPOVIMcjs = require('./chunk-TIVPOVIM.cjs');
|
|
380
382
|
|
|
381
383
|
|
|
382
384
|
|
|
@@ -397,7 +399,7 @@ var _chunkNTPX5GXIcjs = require('./chunk-NTPX5GXI.cjs');
|
|
|
397
399
|
var _chunkGI3MMBP3cjs = require('./chunk-GI3MMBP3.cjs');
|
|
398
400
|
|
|
399
401
|
|
|
400
|
-
var
|
|
402
|
+
var _chunkGG466XFQcjs = require('./chunk-GG466XFQ.cjs');
|
|
401
403
|
|
|
402
404
|
|
|
403
405
|
|
|
@@ -422,7 +424,8 @@ var _chunk2XCORRJVcjs = require('./chunk-2XCORRJV.cjs');
|
|
|
422
424
|
|
|
423
425
|
|
|
424
426
|
|
|
425
|
-
|
|
427
|
+
|
|
428
|
+
var _chunkPMUCEUFQcjs = require('./chunk-PMUCEUFQ.cjs');
|
|
426
429
|
|
|
427
430
|
|
|
428
431
|
var _chunkFCZAUK4Dcjs = require('./chunk-FCZAUK4D.cjs');
|
|
@@ -503,7 +506,7 @@ function TabsTriggerSkeleton({
|
|
|
503
506
|
label,
|
|
504
507
|
className
|
|
505
508
|
}) {
|
|
506
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, tabsTriggerVariantClasses[variant], className), children: _nullishCoalesce(label, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
509
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, tabsTriggerVariantClasses[variant], className), children: _nullishCoalesce(label, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: TRIGGER_LABEL_TYPE[variant], className: "w-20" }))) });
|
|
507
510
|
}
|
|
508
511
|
var TabsContent = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
509
512
|
TabsPrimitive.Content,
|
|
@@ -535,7 +538,7 @@ function TextHold({ children, variant = "bar", className }) {
|
|
|
535
538
|
// `box-decoration-clone` gives every line its own bar (and its own mask, `BAR_STYLE`). Pure CSS: it
|
|
536
539
|
// is drawn in the server's HTML, before any script runs (a loading state streamed by the server
|
|
537
540
|
// is often replaced before it hydrates).
|
|
538
|
-
bar ? _chunk63A4GZMBcjs.cn.call(void 0,
|
|
541
|
+
bar ? _chunk63A4GZMBcjs.cn.call(void 0, _chunkPMUCEUFQcjs.SKELETON_SURFACE_CLASS, "rounded-md box-decoration-clone text-transparent") : "invisible",
|
|
539
542
|
// A hold is never selectable or clickable, whatever it wraps.
|
|
540
543
|
"pointer-events-none select-none",
|
|
541
544
|
className
|
|
@@ -713,14 +716,14 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
713
716
|
for (const section of sectionIds) {
|
|
714
717
|
sectionIdMap.set(section.title, section.id);
|
|
715
718
|
sectionIdMap.set(section.title.toLowerCase(), section.id);
|
|
716
|
-
sectionIdMap.set(
|
|
719
|
+
sectionIdMap.set(_chunkGRCOEICKcjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
|
|
717
720
|
}
|
|
718
721
|
}
|
|
719
|
-
const dedupe =
|
|
722
|
+
const dedupe = _chunkGRCOEICKcjs.createHeadingIdDeduper.call(void 0, );
|
|
720
723
|
const map = /* @__PURE__ */ new Map();
|
|
721
724
|
let sectionOrdinal = 0;
|
|
722
725
|
let headingOrdinal = 0;
|
|
723
|
-
for (const { line, level, text: rawText } of
|
|
726
|
+
for (const { line, level, text: rawText } of _chunkGRCOEICKcjs.scanHeadings.call(void 0, content)) {
|
|
724
727
|
const text2 = stripInlineMarkdown(rawText).trim();
|
|
725
728
|
headingOrdinal++;
|
|
726
729
|
if (level <= EXTRACTOR_MAX_LEVEL) sectionOrdinal++;
|
|
@@ -729,8 +732,8 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
729
732
|
for (const variation of [
|
|
730
733
|
text2,
|
|
731
734
|
text2.toLowerCase(),
|
|
732
|
-
|
|
733
|
-
|
|
735
|
+
_chunkGRCOEICKcjs.stripHeadingEmojis.call(void 0, text2),
|
|
736
|
+
_chunkGRCOEICKcjs.stripHeadingEmojis.call(void 0, text2).toLowerCase()
|
|
734
737
|
]) {
|
|
735
738
|
const id = sectionIdMap.get(variation);
|
|
736
739
|
if (id) {
|
|
@@ -740,7 +743,7 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
740
743
|
}
|
|
741
744
|
}
|
|
742
745
|
if (assigned === void 0) {
|
|
743
|
-
const baseId =
|
|
746
|
+
const baseId = _chunkGRCOEICKcjs.slugifyHeadingText.call(void 0, text2);
|
|
744
747
|
assigned = dedupe(
|
|
745
748
|
baseId || (level <= EXTRACTOR_MAX_LEVEL ? `section-${sectionOrdinal}` : `heading-${headingOrdinal}`)
|
|
746
749
|
);
|
|
@@ -1120,7 +1123,7 @@ var MermaidDiagramView = ({
|
|
|
1120
1123
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "error-description mb-4 max-w-full overflow-hidden break-words text-center font-sans text-sm text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-x-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: "whitespace-pre-wrap break-words text-xs", children: error }) }) })
|
|
1121
1124
|
] }) : empty || isLoading || !svg ? (
|
|
1122
1125
|
// The frame's own size, as a skeleton: the frame sets the height the diagram lands in.
|
|
1123
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1126
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { "aria-label": "Rendering diagram", className: "h-auto w-full self-stretch" })
|
|
1124
1127
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1125
1128
|
"div",
|
|
1126
1129
|
{
|
|
@@ -1285,7 +1288,7 @@ var MarkdownContentImage = ({ src, alt }) => {
|
|
|
1285
1288
|
const resolvedSrc = inScope ? src : authedSrc;
|
|
1286
1289
|
if (!resolvedSrc) return null;
|
|
1287
1290
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1288
|
-
|
|
1291
|
+
_chunkGG466XFQcjs.next_image_default,
|
|
1289
1292
|
{
|
|
1290
1293
|
src: resolvedSrc,
|
|
1291
1294
|
alt: _nullishCoalesce(alt, () => ( "No image available")),
|
|
@@ -1355,7 +1358,7 @@ function buildBaseComponents({
|
|
|
1355
1358
|
const mapped = useHeadingId(node);
|
|
1356
1359
|
const taken = useAssignedHeadingIds();
|
|
1357
1360
|
const explicit = typeof _optionalChain([node, 'optionalAccess', _27 => _27.properties, 'optionalAccess', _28 => _28.id]) === "string" && node.properties.id !== "" ? node.properties.id : void 0;
|
|
1358
|
-
const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(
|
|
1361
|
+
const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunkGRCOEICKcjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
|
|
1359
1362
|
const EffectiveTag = Tag2 === "h1" && demoteMarkdownH1ToH2 ? "h2" : Tag2;
|
|
1360
1363
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EffectiveTag, { id: id || void 0, className: headingClassName, children });
|
|
1361
1364
|
}
|
|
@@ -1427,10 +1430,10 @@ function buildBaseComponents({
|
|
|
1427
1430
|
const handleAnchorClick = (e) => {
|
|
1428
1431
|
if (inPageAnchorId === null) return;
|
|
1429
1432
|
if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0) return;
|
|
1430
|
-
const target =
|
|
1433
|
+
const target = _chunkGRCOEICKcjs.getHashTargetElement.call(void 0, inPageAnchorId);
|
|
1431
1434
|
if (!_optionalChain([target, 'optionalAccess', _29 => _29.id])) return;
|
|
1432
1435
|
e.preventDefault();
|
|
1433
|
-
|
|
1436
|
+
_chunkGRCOEICKcjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunkGRCOEICKcjs.HUB_HEADER_OFFSET_PX });
|
|
1434
1437
|
};
|
|
1435
1438
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1436
1439
|
_chunkV45KLJQPcjs.next_link_default,
|
|
@@ -2039,7 +2042,7 @@ function findInlineCodeRanges(source) {
|
|
|
2039
2042
|
while (pos <= len) {
|
|
2040
2043
|
let end = source.indexOf("\n", pos);
|
|
2041
2044
|
if (end === -1) end = len;
|
|
2042
|
-
const blank =
|
|
2045
|
+
const blank = _chunkGRCOEICKcjs.isBlankLine.call(void 0, source.slice(pos, end));
|
|
2043
2046
|
if (blank && segStart !== -1) break;
|
|
2044
2047
|
if (!blank) {
|
|
2045
2048
|
if (segStart === -1) segStart = pos;
|
|
@@ -2121,7 +2124,7 @@ function toMaskLines(source) {
|
|
|
2121
2124
|
return out;
|
|
2122
2125
|
}
|
|
2123
2126
|
function blankFencedRegions(masked, lines) {
|
|
2124
|
-
const fences =
|
|
2127
|
+
const fences = _chunkGRCOEICKcjs.createFenceTracker.call(void 0, );
|
|
2125
2128
|
const ranges = [];
|
|
2126
2129
|
let openStart = null;
|
|
2127
2130
|
let lastEnd = 0;
|
|
@@ -2160,7 +2163,7 @@ function blankIndentedCode(masked, lines) {
|
|
|
2160
2163
|
const listContentCols = [];
|
|
2161
2164
|
const ranges = [];
|
|
2162
2165
|
for (const line of lines) {
|
|
2163
|
-
if (
|
|
2166
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, line.content)) continue;
|
|
2164
2167
|
const indent = leadingIndent(line.content);
|
|
2165
2168
|
const top = listContentCols.length ? listContentCols[listContentCols.length - 1] : 0;
|
|
2166
2169
|
if (indent >= top + 4) {
|
|
@@ -2251,7 +2254,7 @@ function contPrefixLen(c) {
|
|
|
2251
2254
|
function findLabelClose(lines, i, from) {
|
|
2252
2255
|
for (let j = i; j < lines.length; j++) {
|
|
2253
2256
|
const c = stripCr(lines[j].content);
|
|
2254
|
-
if (j > i &&
|
|
2257
|
+
if (j > i && _chunkGRCOEICKcjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
|
|
2255
2258
|
for (let q = j === i ? from : contPrefixLen(c); q < c.length; q = skipEscaped(c, q)) {
|
|
2256
2259
|
if (c[q] === "[") return { stoppedAt: j };
|
|
2257
2260
|
if (c[q] !== "]") continue;
|
|
@@ -2269,7 +2272,7 @@ function blankLinkDefinitions(masked, lines) {
|
|
|
2269
2272
|
let k = from;
|
|
2270
2273
|
for (; k < lines.length; k++) {
|
|
2271
2274
|
const c = stripCr(lines[k].content);
|
|
2272
|
-
if (
|
|
2275
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, c)) break;
|
|
2273
2276
|
blankLine(lines[k]);
|
|
2274
2277
|
if (stop(c)) {
|
|
2275
2278
|
k++;
|
|
@@ -2312,7 +2315,7 @@ function blankLinkDefinitions(masked, lines) {
|
|
|
2312
2315
|
const k = j + 1;
|
|
2313
2316
|
if (k >= lines.length) break;
|
|
2314
2317
|
const c = stripCr(lines[k].content);
|
|
2315
|
-
if (
|
|
2318
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, c)) break;
|
|
2316
2319
|
const at = contPrefixLen(c);
|
|
2317
2320
|
const next = tail.k === "needDest" ? parseDefTail(c, at) : parseTitleTail(c, skipSpaces(c, at));
|
|
2318
2321
|
if (next.k === "decline") break;
|
|
@@ -2382,7 +2385,7 @@ function blankUnreferencedFootnotes(masked, lines, folded) {
|
|
|
2382
2385
|
let sawBlank = false;
|
|
2383
2386
|
for (let k = i + 1; k < lines.length; k++) {
|
|
2384
2387
|
const c = text2(lines[k]);
|
|
2385
|
-
if (
|
|
2388
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, c)) {
|
|
2386
2389
|
sawBlank = true;
|
|
2387
2390
|
continue;
|
|
2388
2391
|
}
|
|
@@ -2482,7 +2485,7 @@ function paragraphEnd(s, from) {
|
|
|
2482
2485
|
lineStart += 1;
|
|
2483
2486
|
const next = s.indexOf("\n", lineStart);
|
|
2484
2487
|
const line = s.slice(lineStart, next === -1 ? s.length : next);
|
|
2485
|
-
if (
|
|
2488
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, line)) return lineStart;
|
|
2486
2489
|
if (next === -1) break;
|
|
2487
2490
|
lineStart = next;
|
|
2488
2491
|
}
|
|
@@ -2636,7 +2639,7 @@ function blankListItemCode(masked, lines, depth = 0) {
|
|
|
2636
2639
|
run = [];
|
|
2637
2640
|
};
|
|
2638
2641
|
for (const line of lines) {
|
|
2639
|
-
if (
|
|
2642
|
+
if (_chunkGRCOEICKcjs.isBlankLine.call(void 0, line.content)) {
|
|
2640
2643
|
if (run.length > 0) run.push({ ...line, content: "" });
|
|
2641
2644
|
continue;
|
|
2642
2645
|
}
|
|
@@ -2861,7 +2864,7 @@ function htmlBlockStartKind(line, inParagraph) {
|
|
|
2861
2864
|
function computeHtmlBlockRanges(text2) {
|
|
2862
2865
|
if (text2.indexOf("<") === -1) return [];
|
|
2863
2866
|
const ranges = [];
|
|
2864
|
-
const fences =
|
|
2867
|
+
const fences = _chunkGRCOEICKcjs.createFenceTracker.call(void 0, );
|
|
2865
2868
|
let kind = null;
|
|
2866
2869
|
let start = 0;
|
|
2867
2870
|
let lastEnd = 0;
|
|
@@ -2876,9 +2879,9 @@ function computeHtmlBlockRanges(text2) {
|
|
|
2876
2879
|
const expanded = expandTabs(line);
|
|
2877
2880
|
const norm = stripContainerPrefix(expanded, listContentCol);
|
|
2878
2881
|
if (norm.openedListCol >= 0) listContentCol = norm.openedListCol;
|
|
2879
|
-
else if (!
|
|
2880
|
-
const normBlank =
|
|
2881
|
-
const blank = openPrefixLen > 0 ?
|
|
2882
|
+
else if (!_chunkGRCOEICKcjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
|
|
2883
|
+
const normBlank = _chunkGRCOEICKcjs.isBlankLine.call(void 0, norm.text);
|
|
2884
|
+
const blank = openPrefixLen > 0 ? _chunkGRCOEICKcjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunkGRCOEICKcjs.isBlankLine.call(void 0, line);
|
|
2882
2885
|
if (kind !== null) {
|
|
2883
2886
|
if (kind >= 6) {
|
|
2884
2887
|
if (blank) {
|
|
@@ -3032,7 +3035,7 @@ var ScanState = class {
|
|
|
3032
3035
|
* `FENCE_RE` plus its own open/close state machine, cross-referenced by a
|
|
3033
3036
|
* comment) is precisely the drift that produced the `~~~` bug.
|
|
3034
3037
|
*/
|
|
3035
|
-
this.fences =
|
|
3038
|
+
this.fences = _chunkGRCOEICKcjs.createFenceTracker.call(void 0, );
|
|
3036
3039
|
/** Depth of currently open raw HTML block containers. */
|
|
3037
3040
|
this.htmlDepth = 0;
|
|
3038
3041
|
/** Raw-block tag name of a start tag still waiting for its `>`, or null. */
|
|
@@ -3105,7 +3108,7 @@ function splitStreamingBlocks(content) {
|
|
|
3105
3108
|
const isListOrQuote = (line) => /^\s{0,3}(?:[-+*]\s|\d{1,9}[.)]\s|>)/.test(line);
|
|
3106
3109
|
const firstNonBlank = (arr) => {
|
|
3107
3110
|
for (const line of arr) {
|
|
3108
|
-
if (!
|
|
3111
|
+
if (!_chunkGRCOEICKcjs.isBlankLine.call(void 0, line)) return line;
|
|
3109
3112
|
}
|
|
3110
3113
|
return void 0;
|
|
3111
3114
|
};
|
|
@@ -3115,10 +3118,10 @@ function splitStreamingBlocks(content) {
|
|
|
3115
3118
|
state.scanLine(line);
|
|
3116
3119
|
if (state.htmlMark() !== markBefore || state.htmlLatched()) currentTouchedHtml = true;
|
|
3117
3120
|
current.push(line);
|
|
3118
|
-
const isBlank =
|
|
3121
|
+
const isBlank = _chunkGRCOEICKcjs.isBlankLine.call(void 0, line);
|
|
3119
3122
|
if (!isBlank || state.fences.openChar() !== null || state.htmlBlocksCut()) continue;
|
|
3120
3123
|
let j = i + 1;
|
|
3121
|
-
while (j < lines.length &&
|
|
3124
|
+
while (j < lines.length && _chunkGRCOEICKcjs.isBlankLine.call(void 0, lines[j])) j++;
|
|
3122
3125
|
if (j >= lines.length) continue;
|
|
3123
3126
|
const next = lines[j];
|
|
3124
3127
|
if (/^\s/.test(next)) continue;
|
|
@@ -3126,7 +3129,7 @@ function splitStreamingBlocks(content) {
|
|
|
3126
3129
|
if (isListOrQuote(next) && unitOpener !== void 0 && isListOrQuote(unitOpener)) {
|
|
3127
3130
|
continue;
|
|
3128
3131
|
}
|
|
3129
|
-
if (current.every(
|
|
3132
|
+
if (current.every(_chunkGRCOEICKcjs.isBlankLine)) continue;
|
|
3130
3133
|
units.push(current);
|
|
3131
3134
|
unitTouchedHtml.push(currentTouchedHtml);
|
|
3132
3135
|
current = [];
|
|
@@ -3296,10 +3299,13 @@ function rehypeLabelBareFences() {
|
|
|
3296
3299
|
};
|
|
3297
3300
|
return (tree) => visit5(tree);
|
|
3298
3301
|
}
|
|
3299
|
-
var MARKDOWN_SKELETON_LINES = 3;
|
|
3300
|
-
var SKELETON_SECTION_PARAGRAPHS = [
|
|
3301
|
-
|
|
3302
|
-
|
|
3302
|
+
var MARKDOWN_SKELETON_LINES = { phone: 3, md: 3, lg: 3 };
|
|
3303
|
+
var SKELETON_SECTION_PARAGRAPHS = [
|
|
3304
|
+
{ phone: 3, md: 3, lg: 3 },
|
|
3305
|
+
{ phone: 2, md: 2, lg: 2 }
|
|
3306
|
+
];
|
|
3307
|
+
var SKELETON_TITLE_LINES = { phone: 2, md: 1, lg: 1 };
|
|
3308
|
+
var SKELETON_LEAD_LINES = { phone: 5, md: 3, lg: 3 };
|
|
3303
3309
|
var MARKDOWN_RENDERER_CLASS = "simple-markdown-renderer";
|
|
3304
3310
|
var RENDERER_CLASS = MARKDOWN_RENDERER_CLASS;
|
|
3305
3311
|
var CONTENT_WRAPPER_CLASS = "max-w-none";
|
|
@@ -3452,13 +3458,7 @@ var MarkdownEngine = _react.memo.call(void 0, function MarkdownEngineGate(props)
|
|
|
3452
3458
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownEngineImpl, { ...props });
|
|
3453
3459
|
});
|
|
3454
3460
|
function ParagraphBar({ lines, className }) {
|
|
3455
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3456
|
-
}
|
|
3457
|
-
function LinesByBreakpoint({ lines, as = "div" }) {
|
|
3458
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
3459
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "inherit", as, lines: lines.phone, className: "w-full content-md:hidden" }),
|
|
3460
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3TOWCFIKcjs.TextLineSkeleton, { type: "inherit", as, lines: lines.wide, className: "hidden w-full content-md:flex" })
|
|
3461
|
-
] });
|
|
3461
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLinesByBreakpointSkeleton, { lines }) });
|
|
3462
3462
|
}
|
|
3463
3463
|
function MarkdownEngineSkeleton({
|
|
3464
3464
|
sections,
|
|
@@ -3473,12 +3473,12 @@ function MarkdownEngineSkeleton({
|
|
|
3473
3473
|
// `w-full`: bars have no width of their own, so in a shrink-to-fit parent (a flex item) the skeleton would be
|
|
3474
3474
|
// 0px wide where the loaded text fills its line.
|
|
3475
3475
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${RENDERER_CLASS} w-full ${className}`, "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CONTENT_WRAPPER_CLASS, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ARTICLE_CLASS, children: [
|
|
3476
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunk63A4GZMBcjs.cn.call(void 0, MARKDOWN_H1_CLASS, textSizes.h1), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3477
|
-
sections ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: paragraphClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3476
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunk63A4GZMBcjs.cn.call(void 0, MARKDOWN_H1_CLASS, textSizes.h1), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLinesByBreakpointSkeleton, { lines: SKELETON_TITLE_LINES, as: "span" }) }),
|
|
3477
|
+
sections ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: paragraphClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLinesByBreakpointSkeleton, { lines: SKELETON_LEAD_LINES }) }) : null,
|
|
3478
3478
|
sections ? (
|
|
3479
3479
|
// loading-standard-ok(ITEM_MARK): a document's sections are its markdown text; the loaded body has no items to mark
|
|
3480
3480
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count: sections, children: () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
|
|
3481
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunk63A4GZMBcjs.cn.call(void 0, MARKDOWN_H2_CLASS, textSizes.h2), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3481
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunk63A4GZMBcjs.cn.call(void 0, MARKDOWN_H2_CLASS, textSizes.h2), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-1/2" }) }),
|
|
3482
3482
|
SKELETON_SECTION_PARAGRAPHS.map((paragraphLines, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ParagraphBar, { lines: paragraphLines, className: paragraphClass }, index))
|
|
3483
3483
|
] }) })
|
|
3484
3484
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ParagraphBar, { lines, className: paragraphClass })
|
|
@@ -3539,7 +3539,7 @@ function onAskAiIntent(run) {
|
|
|
3539
3539
|
|
|
3540
3540
|
// src/components/chat/chat-appearance-context.tsx
|
|
3541
3541
|
|
|
3542
|
-
var ChatAppearanceContext = _react.createContext.call(void 0,
|
|
3542
|
+
var ChatAppearanceContext = _react.createContext.call(void 0, _chunk3W4ASAXNcjs.CHAT_APPEARANCE.CLASSIC);
|
|
3543
3543
|
function useChatAppearance() {
|
|
3544
3544
|
return _react.useContext.call(void 0, ChatAppearanceContext);
|
|
3545
3545
|
}
|
|
@@ -3578,7 +3578,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3578
3578
|
...props
|
|
3579
3579
|
}, ref) => {
|
|
3580
3580
|
const [isProcessing, setIsProcessing] = _react.useState.call(void 0, false);
|
|
3581
|
-
const isV2 = useChatAppearance() ===
|
|
3581
|
+
const isV2 = useChatAppearance() === _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2;
|
|
3582
3582
|
const handleApprove = async () => {
|
|
3583
3583
|
setIsProcessing(true);
|
|
3584
3584
|
try {
|
|
@@ -3601,7 +3601,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3601
3601
|
{
|
|
3602
3602
|
ref,
|
|
3603
3603
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
3604
|
-
|
|
3604
|
+
_chunk4YBS4HIOcjs.CHAT_BLOCK_CLASS,
|
|
3605
3605
|
// v2: the thread owns the space below the card.
|
|
3606
3606
|
!isV2 && "mb-[var(--spacing-system-xsf)]",
|
|
3607
3607
|
className
|
|
@@ -3609,7 +3609,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3609
3609
|
...props,
|
|
3610
3610
|
children: [
|
|
3611
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" }),
|
|
3612
|
-
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3612
|
+
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ApprovalWaitingLine, {}),
|
|
3613
3613
|
!showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
3614
3614
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3615
3615
|
_chunkFCZAUK4Dcjs.Button,
|
|
@@ -3641,14 +3641,14 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3641
3641
|
children: "Reject"
|
|
3642
3642
|
}
|
|
3643
3643
|
)
|
|
3644
|
-
] }) : /* @__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, _chunk4YBS4HIOcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
|
|
3645
3645
|
]
|
|
3646
3646
|
}
|
|
3647
3647
|
);
|
|
3648
3648
|
}
|
|
3649
|
-
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)]", _chunk4YBS4HIOcjs.CHAT_BLOCK_CLASS, className), ...props, children: [
|
|
3650
3650
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
|
|
3651
|
-
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3651
|
+
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ApprovalWaitingLine, {}),
|
|
3652
3652
|
!showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
3653
3653
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3654
3654
|
_chunkFCZAUK4Dcjs.Button,
|
|
@@ -3680,7 +3680,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3680
3680
|
children: "Reject"
|
|
3681
3681
|
}
|
|
3682
3682
|
)
|
|
3683
|
-
] }) : /* @__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, _chunk4YBS4HIOcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
|
|
3684
3684
|
] });
|
|
3685
3685
|
}
|
|
3686
3686
|
);
|
|
@@ -3710,7 +3710,7 @@ EscalationOfferMessage.displayName = "EscalationOfferMessage";
|
|
|
3710
3710
|
|
|
3711
3711
|
var AiAssistantInfo = _react.forwardRef.call(void 0,
|
|
3712
3712
|
({ className, icon, leading, title, body, timestamp, ...props }, ref) => {
|
|
3713
|
-
const isV2 = useChatAppearance() ===
|
|
3713
|
+
const isV2 = useChatAppearance() === _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2;
|
|
3714
3714
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3715
3715
|
"div",
|
|
3716
3716
|
{
|
|
@@ -3726,7 +3726,7 @@ var AiAssistantInfo = _react.forwardRef.call(void 0,
|
|
|
3726
3726
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
3727
3727
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start", children: [
|
|
3728
3728
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 truncate text-ods-text-primary text-h4", title, children: title }),
|
|
3729
|
-
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: _chunk3W4ASAXNcjs.formatTime.call(void 0, timestamp) })
|
|
3730
3730
|
] }),
|
|
3731
3731
|
body != null && body !== "" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full break-words text-ods-text-secondary text-h4", children: body })
|
|
3732
3732
|
] })
|
|
@@ -3841,7 +3841,7 @@ var SystemEventMessage = _react.forwardRef.call(void 0, ({ text: text2, timestam
|
|
|
3841
3841
|
AiAssistantInfo,
|
|
3842
3842
|
{
|
|
3843
3843
|
ref,
|
|
3844
|
-
leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3844
|
+
leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { alt: joined, fallback: joined, size: "lg", variant: "round", className: "shrink-0" }),
|
|
3845
3845
|
title: "Technician Joined",
|
|
3846
3846
|
body: `You're now chatting with ${joined}.`,
|
|
3847
3847
|
timestamp,
|
|
@@ -3965,7 +3965,7 @@ function nullableText(value) {
|
|
|
3965
3965
|
}
|
|
3966
3966
|
function httpsUrl(value) {
|
|
3967
3967
|
const candidate = text(value);
|
|
3968
|
-
if (!candidate ||
|
|
3968
|
+
if (!candidate || _chunkMDLT6D46cjs.UNSAFE_URL_CHARS.test(candidate)) return void 0;
|
|
3969
3969
|
try {
|
|
3970
3970
|
return new URL(candidate).protocol === "https:" ? candidate : void 0;
|
|
3971
3971
|
} catch (e4) {
|
|
@@ -4572,7 +4572,7 @@ var thoughtMdClasses = [
|
|
|
4572
4572
|
var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
4573
4573
|
({ className, text: text2, isStreaming = false, ...props }, ref) => {
|
|
4574
4574
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
4575
|
-
const { innerRef, isOverflowing, containerStyle } =
|
|
4575
|
+
const { innerRef, isOverflowing, containerStyle } = _chunk4YBS4HIOcjs.useCollapsible.call(void 0, {
|
|
4576
4576
|
expanded,
|
|
4577
4577
|
collapsedHeight: 19,
|
|
4578
4578
|
disableTransition: isStreaming
|
|
@@ -4587,7 +4587,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
|
4587
4587
|
setExpanded(!expanded);
|
|
4588
4588
|
}
|
|
4589
4589
|
};
|
|
4590
|
-
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, _chunk4YBS4HIOcjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4591
4591
|
"div",
|
|
4592
4592
|
{
|
|
4593
4593
|
role: "button",
|
|
@@ -4605,7 +4605,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
|
4605
4605
|
isStreaming && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOEP5KAT6cjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
|
|
4606
4606
|
] }),
|
|
4607
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" }) }) }),
|
|
4608
|
-
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, _chunk4YBS4HIOcjs.ExpandChevron, { expanded }) })
|
|
4609
4609
|
]
|
|
4610
4610
|
}
|
|
4611
4611
|
) });
|
|
@@ -4744,7 +4744,7 @@ function renderQuickActionIcon(icon) {
|
|
|
4744
4744
|
if (!spec.name && !spec.url) return void 0;
|
|
4745
4745
|
const accentClass = spec.accent ? ACCENT_CLASS[spec.accent] : void 0;
|
|
4746
4746
|
const props = spec.accent && !accentClass ? { color: spec.accent, ..._nullishCoalesce(spec.props, () => ( {})) } : spec.props;
|
|
4747
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4747
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.EntityIcon, { icon: { name: spec.name, url: spec.url, props }, size: _nullishCoalesce(spec.size, () => ( 16)), className: accentClass });
|
|
4748
4748
|
}
|
|
4749
4749
|
function composeChipLabel(label, lozenge) {
|
|
4750
4750
|
if (!lozenge) return label;
|
|
@@ -4784,17 +4784,17 @@ function QuickActionChipSkeleton({
|
|
|
4784
4784
|
}) {
|
|
4785
4785
|
const question = variant === "question";
|
|
4786
4786
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4787
|
-
|
|
4787
|
+
_chunkW7OFAROYcjs.Tag,
|
|
4788
4788
|
{
|
|
4789
4789
|
..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props),
|
|
4790
4790
|
variant: "outline",
|
|
4791
4791
|
size: question || fill ? "sentence" : size,
|
|
4792
4792
|
className: _chunk63A4GZMBcjs.cn.call(void 0, question && "max-w-full", fill && FILL_TAG_CLASS, className),
|
|
4793
|
-
icon: icon && !question ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4793
|
+
icon: icon && !question ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: size === "large" ? "block size-5" : "block size-4" }) : void 0,
|
|
4794
4794
|
label: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
4795
|
-
lozenge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4795
|
+
lozenge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: "mr-2 inline-block h-[16px] w-[26px] translate-y-[2px]" }),
|
|
4796
4796
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4797
|
-
|
|
4797
|
+
_chunkPMUCEUFQcjs.UnifiedSkeleton,
|
|
4798
4798
|
{
|
|
4799
4799
|
as: "span",
|
|
4800
4800
|
"aria-hidden": true,
|
|
@@ -4851,7 +4851,7 @@ function QuickActionChipButton({
|
|
|
4851
4851
|
const tagSize = question || fill ? "sentence" : size;
|
|
4852
4852
|
if (!interactive) {
|
|
4853
4853
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4854
|
-
|
|
4854
|
+
_chunkW7OFAROYcjs.Tag,
|
|
4855
4855
|
{
|
|
4856
4856
|
...markers,
|
|
4857
4857
|
variant: tagVariant,
|
|
@@ -4880,7 +4880,7 @@ function QuickActionChipButton({
|
|
|
4880
4880
|
className
|
|
4881
4881
|
),
|
|
4882
4882
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4883
|
-
|
|
4883
|
+
_chunkW7OFAROYcjs.Tag,
|
|
4884
4884
|
{
|
|
4885
4885
|
variant: tagVariant,
|
|
4886
4886
|
size: tagSize,
|
|
@@ -4956,9 +4956,9 @@ var iconTint = {
|
|
|
4956
4956
|
var ErrorMessageDisplay = _react.forwardRef.call(void 0,
|
|
4957
4957
|
({ className, title, details, type = "error", ...props }, ref) => {
|
|
4958
4958
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
4959
|
-
const { innerRef, containerStyle } =
|
|
4959
|
+
const { innerRef, containerStyle } = _chunk4YBS4HIOcjs.useCollapsible.call(void 0, { expanded });
|
|
4960
4960
|
const hasDetails = Boolean(details);
|
|
4961
|
-
const isV2 = useChatAppearance() ===
|
|
4961
|
+
const isV2 = useChatAppearance() === _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2;
|
|
4962
4962
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4963
4963
|
"div",
|
|
4964
4964
|
{
|
|
@@ -4992,7 +4992,7 @@ var ErrorMessageDisplay = _react.forwardRef.call(void 0,
|
|
|
4992
4992
|
children: title
|
|
4993
4993
|
}
|
|
4994
4994
|
),
|
|
4995
|
-
hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4995
|
+
hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ExpandChevron, { expanded })
|
|
4996
4996
|
]
|
|
4997
4997
|
}
|
|
4998
4998
|
),
|
|
@@ -5040,19 +5040,19 @@ function MspOrganizationCard({
|
|
|
5040
5040
|
const trailing = action && loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { children: action }) : action;
|
|
5041
5041
|
if (footer) {
|
|
5042
5042
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, FOOTER_FRAME_CLASS, className), children: [
|
|
5043
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5043
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "sm", variant: "square" }),
|
|
5044
5044
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TEXT_STACK_CLASS, children: [
|
|
5045
5045
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: FOOTER_CAPTION_CLASS, children: FOOTER_CAPTION }),
|
|
5046
|
-
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5046
|
+
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.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)) })
|
|
5047
5047
|
] }),
|
|
5048
5048
|
trailing
|
|
5049
5049
|
] });
|
|
5050
5050
|
}
|
|
5051
5051
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CARD_FRAME_CLASS, className), children: [
|
|
5052
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5052
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading, src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
|
|
5053
5053
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: TEXT_STACK_CLASS, children: loading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5054
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5055
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5054
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-3/5" }),
|
|
5055
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-2/5" })
|
|
5056
5056
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5057
5057
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h3", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
|
|
5058
5058
|
website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: website }) : null
|
|
@@ -5072,7 +5072,7 @@ var ConnectionIndicator = ({ status }) => {
|
|
|
5072
5072
|
case "connected":
|
|
5073
5073
|
return "bg-ods-success";
|
|
5074
5074
|
case "connecting":
|
|
5075
|
-
return `bg-ods-warning ${
|
|
5075
|
+
return `bg-ods-warning ${_chunkPMUCEUFQcjs.LIVE_PULSE_CLASS}`;
|
|
5076
5076
|
case "disconnected":
|
|
5077
5077
|
return "bg-ods-error";
|
|
5078
5078
|
default:
|
|
@@ -5155,11 +5155,11 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
5155
5155
|
className: _chunk63A4GZMBcjs.cn.call(void 0, cardClasses, "absolute right-full top-0 mr-[var(--spacing-system-s)] hover:bg-ods-bg-hover")
|
|
5156
5156
|
}
|
|
5157
5157
|
),
|
|
5158
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: cardClasses, children: [
|
|
5158
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, cardClasses, !bare && "overflow-hidden"), children: [
|
|
5159
5159
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 px-4 py-3", children: [
|
|
5160
5160
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
5161
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,
|
|
5162
|
-
|
|
5162
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
5163
5163
|
{
|
|
5164
5164
|
loading: isLoading,
|
|
5165
5165
|
src: userAvatar,
|
|
@@ -5171,8 +5171,8 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
5171
5171
|
}
|
|
5172
5172
|
),
|
|
5173
5173
|
isLoading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
5174
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5175
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5174
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-40" }),
|
|
5175
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-28" })
|
|
5176
5176
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
5177
5177
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3", children: userName }),
|
|
5178
5178
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-2", children: serverUrl && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -5215,7 +5215,7 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
5215
5215
|
name: "",
|
|
5216
5216
|
...mspOrganization,
|
|
5217
5217
|
loading: mspLoading || !mspOrganization,
|
|
5218
|
-
className: _chunk63A4GZMBcjs.cn.call(void 0, "rounded-none ring-0",
|
|
5218
|
+
className: _chunk63A4GZMBcjs.cn.call(void 0, "rounded-none ring-0", _optionalChain([mspOrganization, 'optionalAccess', _80 => _80.className]))
|
|
5219
5219
|
}
|
|
5220
5220
|
)
|
|
5221
5221
|
] }),
|
|
@@ -5241,9 +5241,9 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
5241
5241
|
)
|
|
5242
5242
|
] }),
|
|
5243
5243
|
(ticketInfo.status || ticketInfo.statusName) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5244
|
-
|
|
5244
|
+
_chunk4YBS4HIOcjs.TicketStatusTag,
|
|
5245
5245
|
{
|
|
5246
|
-
...
|
|
5246
|
+
..._chunk4YBS4HIOcjs.resolveStatusTagProps.call(void 0, {
|
|
5247
5247
|
status: ticketInfo.status,
|
|
5248
5248
|
statusKind: ticketInfo.statusKind,
|
|
5249
5249
|
statusName: ticketInfo.statusName,
|
|
@@ -5351,7 +5351,7 @@ function ContextMenuRow({
|
|
|
5351
5351
|
const loading = loadingProp || inScope && (label == null || label === "");
|
|
5352
5352
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5353
5353
|
icon != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: CONTEXT_ICON_CLASS, children: icon }),
|
|
5354
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: CONTEXT_LABEL_CLASS, children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5354
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: CONTEXT_LABEL_CLASS, children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-1/2" }) : label }),
|
|
5355
5355
|
!loading && trailing
|
|
5356
5356
|
] });
|
|
5357
5357
|
if (loading) {
|
|
@@ -5781,7 +5781,7 @@ function InlineChip({
|
|
|
5781
5781
|
loading
|
|
5782
5782
|
}) {
|
|
5783
5783
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5784
|
-
|
|
5784
|
+
_chunkW7OFAROYcjs.Tag,
|
|
5785
5785
|
{
|
|
5786
5786
|
as: "span",
|
|
5787
5787
|
variant: "badge",
|
|
@@ -5882,11 +5882,11 @@ var remarkMentionChips = () => {
|
|
|
5882
5882
|
// src/components/chat/tool-execution-display.tsx
|
|
5883
5883
|
|
|
5884
5884
|
|
|
5885
|
-
var COMMAND_BODY_KEYS = new Set(
|
|
5885
|
+
var COMMAND_BODY_KEYS = new Set(_chunk4YBS4HIOcjs.COMMAND_BODY_ARG_KEYS);
|
|
5886
5886
|
var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
5887
5887
|
({ className, message, assistantType, variant = "admin", ...props }, ref) => {
|
|
5888
5888
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
5889
|
-
const { innerRef, containerStyle } =
|
|
5889
|
+
const { innerRef, containerStyle } = _chunk4YBS4HIOcjs.useCollapsible.call(void 0, { expanded });
|
|
5890
5890
|
const isClient = assistantType === "fae";
|
|
5891
5891
|
const isClientView = variant === "client";
|
|
5892
5892
|
const isExecuting = message.type === "EXECUTING_TOOL";
|
|
@@ -5929,7 +5929,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5929
5929
|
}
|
|
5930
5930
|
),
|
|
5931
5931
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: renderStatusIcon() }),
|
|
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,
|
|
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, _chunk4YBS4HIOcjs.ExpandChevron, { expanded: isExpanded }) })
|
|
5933
5933
|
] });
|
|
5934
5934
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5935
5935
|
"div",
|
|
@@ -5939,7 +5939,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5939
5939
|
// The command running block keeps its bordered box in both chats
|
|
5940
5940
|
// (Figma 1972-6109). CLIENT (Fae) only drops the tool icon below.
|
|
5941
5941
|
"flex w-full flex-col overflow-hidden",
|
|
5942
|
-
|
|
5942
|
+
_chunk4YBS4HIOcjs.CHAT_BLOCK_FRAME_CLASS,
|
|
5943
5943
|
className
|
|
5944
5944
|
),
|
|
5945
5945
|
...props,
|
|
@@ -5950,7 +5950,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5950
5950
|
// It reads as a card: what was done, then one status line under it.
|
|
5951
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: [
|
|
5952
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 }),
|
|
5953
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5953
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.StatusLine, { tone: statusTone, label: statusLabel })
|
|
5954
5954
|
] })
|
|
5955
5955
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5956
5956
|
hasBody ? (
|
|
@@ -5969,9 +5969,9 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5969
5969
|
)
|
|
5970
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 }),
|
|
5971
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: [
|
|
5972
|
-
argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5972
|
+
argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ArgRow, { argKey: key, value }, key)),
|
|
5973
5973
|
hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5974
|
-
|
|
5974
|
+
_chunk4YBS4HIOcjs.ResultBlock,
|
|
5975
5975
|
{
|
|
5976
5976
|
result: message.result,
|
|
5977
5977
|
className: argEntries.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
|
|
@@ -6011,7 +6011,7 @@ function ChatMarkdownLink({
|
|
|
6011
6011
|
...anchorProps
|
|
6012
6012
|
}) {
|
|
6013
6013
|
const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
|
|
6014
|
-
if (!runtime ||
|
|
6014
|
+
if (!runtime || _chunkTIVPOVIMcjs.navLinkTarget.call(void 0, runtime, href).isNewTab) {
|
|
6015
6015
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Anchor2, { href, className, ...anchorProps, children });
|
|
6016
6016
|
}
|
|
6017
6017
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Anchor2, { href, ...anchorProps, className: "no-underline", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InlineChip, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRD4RFX3Kcjs.BrowserWindowIcon, {}), label: children, className: "hover:bg-ods-bg-hover" }) });
|
|
@@ -6019,8 +6019,8 @@ function ChatMarkdownLink({
|
|
|
6019
6019
|
|
|
6020
6020
|
// src/components/chat/chat-message-layout.ts
|
|
6021
6021
|
var CHAT_MESSAGE_ROW_PADDING_CLASS = {
|
|
6022
|
-
[
|
|
6023
|
-
[
|
|
6022
|
+
[_chunk3W4ASAXNcjs.CHAT_APPEARANCE.CLASSIC]: "py-[var(--spacing-system-s)]",
|
|
6023
|
+
[_chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2]: "py-[calc(var(--spacing-system-m)/2)]"
|
|
6024
6024
|
};
|
|
6025
6025
|
var CHAT_MESSAGE_STACK_CLASS = "grid min-w-0 grid-cols-1 gap-[var(--spacing-system-xxs)]";
|
|
6026
6026
|
var CHAT_MESSAGE_HEADER_CLASS = "flex items-center gap-[var(--spacing-system-xs)]";
|
|
@@ -6077,8 +6077,8 @@ var remarkStripCitations = () => {
|
|
|
6077
6077
|
var MENTION_MARKER_REGEX = /(^|[^\w@])@[a-zA-Z]+:([A-Za-z0-9_.+/=-]*[A-Za-z0-9_+/=])/g;
|
|
6078
6078
|
var CARD_MARKER_REGEX = createCardMarkerScanner();
|
|
6079
6079
|
function formatMessageTimestamp(timestamp) {
|
|
6080
|
-
const time =
|
|
6081
|
-
return
|
|
6080
|
+
const time = _chunk3W4ASAXNcjs.formatTime.call(void 0, timestamp);
|
|
6081
|
+
return _chunk4YBS4HIOcjs.isToday.call(void 0, timestamp) ? time : `${_chunk3W4ASAXNcjs.formatDate.call(void 0, timestamp)} ${time}`;
|
|
6082
6082
|
}
|
|
6083
6083
|
function normalizeContent(content) {
|
|
6084
6084
|
if (typeof content === "string") {
|
|
@@ -6134,7 +6134,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
6134
6134
|
const isError = role === "error";
|
|
6135
6135
|
const inheritedAppearance = useChatAppearance();
|
|
6136
6136
|
const appearance = _nullishCoalesce(appearanceProp, () => ( inheritedAppearance));
|
|
6137
|
-
const isV2 = appearance ===
|
|
6137
|
+
const isV2 = appearance === _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2;
|
|
6138
6138
|
const authorType = _nullishCoalesce(authorTypeProp, () => ( (isHuman ? "user" : assistantType === "mingo" ? "mingo" : "fae")));
|
|
6139
6139
|
const isOtherPerson = isHuman && selfAuthorType !== void 0 && authorType !== "system" && authorType !== selfAuthorType;
|
|
6140
6140
|
const isUser = isHuman && !isOtherPerson;
|
|
@@ -6322,9 +6322,9 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
6322
6322
|
const faceBox = "h-5 w-5 flex-shrink-0";
|
|
6323
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 ? (
|
|
6324
6324
|
// An agent with no picture shows its packaged mark, never initials.
|
|
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,
|
|
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, _chunk4YBS4HIOcjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
|
|
6326
6326
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: "inline-flex flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6327
|
-
|
|
6327
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
6328
6328
|
{
|
|
6329
6329
|
src: avatar || void 0,
|
|
6330
6330
|
alt: displayName,
|
|
@@ -6340,7 +6340,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
6340
6340
|
"div",
|
|
6341
6341
|
{
|
|
6342
6342
|
ref,
|
|
6343
|
-
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[_chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2], className),
|
|
6344
6344
|
...props,
|
|
6345
6345
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatAppearanceContext.Provider, { value: appearance, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SystemEventMessage, { text: name, timestamp }) })
|
|
6346
6346
|
}
|
|
@@ -6352,7 +6352,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
6352
6352
|
ref,
|
|
6353
6353
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
6354
6354
|
"relative",
|
|
6355
|
-
CHAT_MESSAGE_ROW_PADDING_CLASS[isV2 ?
|
|
6355
|
+
CHAT_MESSAGE_ROW_PADDING_CLASS[isV2 ? _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2 : _chunk3W4ASAXNcjs.CHAT_APPEARANCE.CLASSIC],
|
|
6356
6356
|
className
|
|
6357
6357
|
),
|
|
6358
6358
|
...props,
|
|
@@ -6409,7 +6409,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
6409
6409
|
);
|
|
6410
6410
|
} else if (segment.type === "approval_batch") {
|
|
6411
6411
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6412
|
-
|
|
6412
|
+
_chunk4YBS4HIOcjs.ApprovalBatchMessage,
|
|
6413
6413
|
{
|
|
6414
6414
|
data: segment.data,
|
|
6415
6415
|
status: segment.status,
|
|
@@ -6495,12 +6495,12 @@ function ChatMessageSkeleton({
|
|
|
6495
6495
|
const lines = Math.max(1, bodyLines);
|
|
6496
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: [
|
|
6497
6497
|
(showAvatar || showName) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CHAT_MESSAGE_HEADER_CLASS, isUser && "justify-end"), children: [
|
|
6498
|
-
showAvatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6499
|
-
showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6500
|
-
showName && showTime && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6498
|
+
showAvatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading: true, sizePx: CHAT_MESSAGE_FACE_PX, variant: "round" }),
|
|
6499
|
+
showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-24" }),
|
|
6500
|
+
showName && showTime && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: _chunk63A4GZMBcjs.cn.call(void 0, "ml-auto", TIME_BAR_CLASS) })
|
|
6501
6501
|
] }),
|
|
6502
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CHAT_MESSAGE_SEGMENTS_CLASS, children: isUser ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CHAT_MESSAGE_USER_ROW_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CHAT_MESSAGE_USER_BUBBLE_CLASS, "w-1/2"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6503
|
-
showTime && !showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6502
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CHAT_MESSAGE_SEGMENTS_CLASS, children: isUser ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CHAT_MESSAGE_USER_ROW_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, CHAT_MESSAGE_USER_BUBBLE_CLASS, "w-1/2"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", lines }) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CHAT_MESSAGE_TEXT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", lines }) }) }),
|
|
6503
|
+
showTime && !showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: _chunk63A4GZMBcjs.cn.call(void 0, TIME_BAR_CLASS, isUser && "justify-self-end") })
|
|
6504
6504
|
] }) });
|
|
6505
6505
|
}
|
|
6506
6506
|
var CHAT_MESSAGE_LIST_SKELETON_MESSAGES = 6;
|
|
@@ -6683,7 +6683,7 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
6683
6683
|
approvalVariant,
|
|
6684
6684
|
selfAuthorType,
|
|
6685
6685
|
nameEveryTurn,
|
|
6686
|
-
appearance =
|
|
6686
|
+
appearance = _chunk3W4ASAXNcjs.CHAT_APPEARANCE.CLASSIC,
|
|
6687
6687
|
assistantIcon,
|
|
6688
6688
|
pendingApprovals,
|
|
6689
6689
|
hasNextPage,
|
|
@@ -7181,18 +7181,14 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
7181
7181
|
ChatMessageList.displayName = "ChatMessageList";
|
|
7182
7182
|
|
|
7183
7183
|
// src/utils/design-doc-readiness.ts
|
|
7184
|
-
|
|
7185
|
-
|
|
7186
|
-
|
|
7187
|
-
not_ready: { label: "Not ready", scheme: "default" }
|
|
7188
|
-
};
|
|
7189
|
-
var designDocReadiness = (completion) => completion.isComplete ? "ready" : "not_ready";
|
|
7184
|
+
function designDocStatusDisplay(doc) {
|
|
7185
|
+
return _nullishCoalesce(_nullishCoalesce(doc.lifecycle, () => ( doc.readiness)), () => ( null));
|
|
7186
|
+
}
|
|
7190
7187
|
function formatCompletionLabel(completion) {
|
|
7191
|
-
return `${completion.completed}/${completion.total}
|
|
7188
|
+
return `${completion.completed}/${completion.total} signed off`;
|
|
7192
7189
|
}
|
|
7193
7190
|
function formatCompletionLabelWithBlockers(completion) {
|
|
7194
7191
|
const base = formatCompletionLabel(completion);
|
|
7195
|
-
if (completion.isComplete) return `${DESIGN_DOC_READINESS_DISPLAY.ready.label} \xB7 ${base}`;
|
|
7196
7192
|
return completion.openBlocking > 0 ? `${base} \xB7 ${completion.openBlocking} blocking` : base;
|
|
7197
7193
|
}
|
|
7198
7194
|
|
|
@@ -7549,7 +7545,7 @@ function formatChatAttachmentMarkdownForBubble(att, viewUrlPrefix) {
|
|
|
7549
7545
|
|
|
7550
7546
|
[Attached: ${safeName}](${url})`;
|
|
7551
7547
|
}
|
|
7552
|
-
var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED =
|
|
7548
|
+
var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunkYXKAHQYScjs.escapeRegExp.call(void 0, CHAT_ATTACHMENT_VIEW_URL_PREFIX);
|
|
7553
7549
|
var CHAT_ATTACHMENT_MARKDOWN_PATTERN = new RegExp(
|
|
7554
7550
|
`^\\s*!?\\[[^\\]]*\\]\\(${CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED}[^)]+\\)\\s*$`,
|
|
7555
7551
|
"gm"
|
|
@@ -7813,7 +7809,7 @@ function MarqueeWallFades({
|
|
|
7813
7809
|
}) });
|
|
7814
7810
|
}
|
|
7815
7811
|
function CloneCopy({ className, style, children }) {
|
|
7816
|
-
const ref =
|
|
7812
|
+
const ref = _chunkGRCOEICKcjs.useSuppressCloneFocus.call(void 0, true);
|
|
7817
7813
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, "aria-hidden": true, "data-marquee-copy": "clone", className, style, children });
|
|
7818
7814
|
}
|
|
7819
7815
|
function MarqueeWall({
|
|
@@ -7867,7 +7863,7 @@ function MarqueeWall({
|
|
|
7867
7863
|
ro.observe(copy);
|
|
7868
7864
|
return () => ro.disconnect();
|
|
7869
7865
|
}, [measure, marqueeMounted]);
|
|
7870
|
-
const { ref: observe, inView: nearViewport } =
|
|
7866
|
+
const { ref: observe, inView: nearViewport } = _chunkGRCOEICKcjs.useInView.call(void 0, {
|
|
7871
7867
|
rootMargin: _chunkNTPX5GXIcjs.NEAR_VIEWPORT_ROOT_MARGIN,
|
|
7872
7868
|
initial: true
|
|
7873
7869
|
});
|
|
@@ -7875,7 +7871,7 @@ function MarqueeWall({
|
|
|
7875
7871
|
observe(containerRef.current);
|
|
7876
7872
|
return () => observe(null);
|
|
7877
7873
|
}, [observe]);
|
|
7878
|
-
const autoplay =
|
|
7874
|
+
const autoplay = _chunkGRCOEICKcjs.useAutoplay.call(void 0, nearViewport);
|
|
7879
7875
|
const pointerInsideRef = _react.useRef.call(void 0, false);
|
|
7880
7876
|
const clearPointerInside = _react.useCallback.call(void 0, () => {
|
|
7881
7877
|
pointerInsideRef.current = false;
|
|
@@ -7888,7 +7884,7 @@ function MarqueeWall({
|
|
|
7888
7884
|
if (e.pointerType === "touch") return;
|
|
7889
7885
|
pointerInsideRef.current = false;
|
|
7890
7886
|
}, []);
|
|
7891
|
-
|
|
7887
|
+
_chunkGRCOEICKcjs.useResetOnPageHidden.call(void 0, clearPointerInside);
|
|
7892
7888
|
const draggingRef = _react.useRef.call(void 0, false);
|
|
7893
7889
|
const dragSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
7894
7890
|
const applyTransform = _react.useCallback.call(void 0,
|
|
@@ -7941,7 +7937,7 @@ function MarqueeWall({
|
|
|
7941
7937
|
if (!sync) return void 0;
|
|
7942
7938
|
return sync.register(member);
|
|
7943
7939
|
}, [sync, member]);
|
|
7944
|
-
const { posRef, wrap } =
|
|
7940
|
+
const { posRef, wrap } = _chunkGRCOEICKcjs.useMarqueeEngine.call(void 0, {
|
|
7945
7941
|
active: marqueeActive && autoplay.playing && isDriver,
|
|
7946
7942
|
speed,
|
|
7947
7943
|
isPaused: (now) => pauseOnHover && pointerInsideRef.current || draggingRef.current || now < dragSuppressUntilRef.current,
|
|
@@ -8449,9 +8445,9 @@ function chatDayLabel(timestamp, now = /* @__PURE__ */ new Date()) {
|
|
|
8449
8445
|
if (time >= startOfToday) return "Today";
|
|
8450
8446
|
const startOfYesterday = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 1).getTime();
|
|
8451
8447
|
if (time >= startOfYesterday) return "Yesterday";
|
|
8452
|
-
return
|
|
8448
|
+
return _chunkW7OFAROYcjs.formatDateWithTimezone.call(void 0,
|
|
8453
8449
|
date,
|
|
8454
|
-
|
|
8450
|
+
_chunkW7OFAROYcjs.VIEWER_TIMEZONE,
|
|
8455
8451
|
{ day: "numeric", month: "short", year: date.getFullYear() === now.getFullYear() ? void 0 : "numeric" },
|
|
8456
8452
|
{ viewerLocale: true }
|
|
8457
8453
|
);
|
|
@@ -8655,7 +8651,7 @@ function MingoChatHistoryRow({
|
|
|
8655
8651
|
!loading && "cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-accent"
|
|
8656
8652
|
),
|
|
8657
8653
|
children: [
|
|
8658
|
-
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8654
|
+
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: _chunk3W4ASAXNcjs.SKELETON_TITLE_WIDTHS[skeletonIndex % _chunk3W4ASAXNcjs.SKELETON_TITLE_WIDTHS.length] }) : null,
|
|
8659
8655
|
!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,
|
|
8660
8656
|
loading ? null : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8661
8657
|
"span",
|
|
@@ -8725,7 +8721,7 @@ function MingoChatHistoryRow({
|
|
|
8725
8721
|
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")
|
|
8726
8722
|
),
|
|
8727
8723
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8728
|
-
|
|
8724
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
8729
8725
|
{
|
|
8730
8726
|
variant: "round",
|
|
8731
8727
|
sizePx: 24,
|
|
@@ -8756,7 +8752,7 @@ function MingoChatHistorySkeleton({ rows, className }) {
|
|
|
8756
8752
|
label: "Loading conversations",
|
|
8757
8753
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-m)] overflow-hidden", className),
|
|
8758
8754
|
children: groups.map((count, group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, HISTORY_GROUP_CLASS, "shrink-0"), children: [
|
|
8759
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8755
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h5", className: "w-16" }),
|
|
8760
8756
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: HISTORY_GROUP_BOX_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count, children: (i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoChatHistoryRow, { loading: true, "data-loading-item": true, skeletonIndex: group * perGroup + i }) }) })
|
|
8761
8757
|
] }, group))
|
|
8762
8758
|
}
|
|
@@ -8782,7 +8778,7 @@ function MingoChatHistory({
|
|
|
8782
8778
|
const isLoading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading;
|
|
8783
8779
|
const groups = _react.useMemo.call(void 0, () => groupDialogs(dialogs), [dialogs]);
|
|
8784
8780
|
const noSearchResults = groups.length === 0 && !!_optionalChain([searchQuery, 'optionalAccess', _171 => _171.trim, 'call', _172 => _172()]);
|
|
8785
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8781
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunk3W4ASAXNcjs.useScrollFade.call(void 0, );
|
|
8786
8782
|
const onScroll = loadMore === "scroll";
|
|
8787
8783
|
const sentinelRef = useLoadMoreSentinel({
|
|
8788
8784
|
hasMore: hasMore && onScroll,
|
|
@@ -8845,8 +8841,8 @@ function MingoChatHistory({
|
|
|
8845
8841
|
]
|
|
8846
8842
|
}
|
|
8847
8843
|
),
|
|
8848
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8849
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8844
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, color: "var(--color-bg-card)", className: "h-12" }),
|
|
8845
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, color: "var(--color-bg-card)", className: "h-12" })
|
|
8850
8846
|
] }) });
|
|
8851
8847
|
}
|
|
8852
8848
|
|
|
@@ -8900,7 +8896,7 @@ function MingoWelcome({
|
|
|
8900
8896
|
} catch (e8) {
|
|
8901
8897
|
}
|
|
8902
8898
|
}, [promoStorage, promoStorageKey]);
|
|
8903
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } =
|
|
8899
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunk3W4ASAXNcjs.useScrollFade.call(void 0, );
|
|
8904
8900
|
const showPinnedRegion = !!dialogHistory || !historyLoading && !loadError;
|
|
8905
8901
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8906
8902
|
"div",
|
|
@@ -8932,7 +8928,7 @@ function MingoWelcome({
|
|
|
8932
8928
|
onScroll: updateScrollFade,
|
|
8933
8929
|
className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-m)] overflow-y-auto overscroll-contain",
|
|
8934
8930
|
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: [
|
|
8935
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8931
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
|
|
8936
8932
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
|
|
8937
8933
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: heading }),
|
|
8938
8934
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
@@ -8940,8 +8936,8 @@ function MingoWelcome({
|
|
|
8940
8936
|
] })
|
|
8941
8937
|
}
|
|
8942
8938
|
),
|
|
8943
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8944
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8939
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
|
|
8940
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
|
|
8945
8941
|
] }) })))),
|
|
8946
8942
|
showPinnedRegion && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col gap-[var(--spacing-system-m)]", children: [
|
|
8947
8943
|
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: [
|
|
@@ -9004,7 +9000,7 @@ function GuideWelcome({
|
|
|
9004
9000
|
children,
|
|
9005
9001
|
className
|
|
9006
9002
|
}) {
|
|
9007
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } =
|
|
9003
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateScrollFade } = _chunk3W4ASAXNcjs.useScrollFade.call(void 0, );
|
|
9008
9004
|
const inLoadingScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
9009
9005
|
const subtitleIsLoading = inLoadingScope || subtitleLoading && !subtitle;
|
|
9010
9006
|
const chipsAreLoading = inLoadingScope || quickActionsLoading && quickActions.length === 0;
|
|
@@ -9040,19 +9036,19 @@ function GuideWelcome({
|
|
|
9040
9036
|
icon && (icon.name || icon.url) ? (
|
|
9041
9037
|
// Agent-mode identity glyph (chat-config Identity tab). Sized to
|
|
9042
9038
|
// match the default Mingo mark (48px).
|
|
9043
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9044
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9039
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.EntityIcon, { icon: { name: icon.name, url: icon.url, props: icon.props }, size: 48 })
|
|
9040
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
|
|
9045
9041
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
|
|
9046
9042
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: title }),
|
|
9047
|
-
subtitleIsLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9043
|
+
subtitleIsLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.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
9044
|
] })
|
|
9049
9045
|
] }),
|
|
9050
9046
|
children
|
|
9051
9047
|
]
|
|
9052
9048
|
}
|
|
9053
9049
|
),
|
|
9054
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9055
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9050
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop, className: "h-12" }),
|
|
9051
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom, className: "h-12" })
|
|
9056
9052
|
] }),
|
|
9057
9053
|
(quickActions.length > 0 || chipsAreLoading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, QuickActionSet, { chips: chipItems, loading: chipsAreLoading, showTopic: showTopicProp })
|
|
9058
9054
|
] });
|
|
@@ -9122,17 +9118,17 @@ function MingoArchiveList({
|
|
|
9122
9118
|
className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-xxs)] px-[var(--spacing-system-xs)] pt-[var(--spacing-system-mf)]",
|
|
9123
9119
|
children: [
|
|
9124
9120
|
/* @__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" }),
|
|
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,
|
|
9121
|
+
/* @__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, _chunk3W4ASAXNcjs.ChatListItemLoadingPage, { count: pageSize, trailing: true }) : dialogs.length > 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9126
9122
|
dialogs.map((dialog) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9127
|
-
|
|
9123
|
+
_chunk3W4ASAXNcjs.ChatListItem,
|
|
9128
9124
|
{
|
|
9129
9125
|
"data-loading-item": true,
|
|
9130
9126
|
title: dialog.title || "Untitled Chat",
|
|
9131
9127
|
onClick: () => _optionalChain([onSelectDialog, 'optionalCall', _178 => _178(dialog.id)]),
|
|
9132
9128
|
trailing: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
9133
|
-
dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children:
|
|
9129
|
+
dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunk4YBS4HIOcjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
|
|
9134
9130
|
dialog.owner && (dialog.owner.name || dialog.owner.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9135
|
-
|
|
9131
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
9136
9132
|
{
|
|
9137
9133
|
variant: "round",
|
|
9138
9134
|
sizePx: 24,
|
|
@@ -9265,7 +9261,7 @@ function MingoChatHeader({
|
|
|
9265
9261
|
!renaming && subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: subtitle })
|
|
9266
9262
|
] }),
|
|
9267
9263
|
avatar && (avatar.name || avatar.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9268
|
-
|
|
9264
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
9269
9265
|
{
|
|
9270
9266
|
variant: "round",
|
|
9271
9267
|
sizePx: 32,
|
|
@@ -9314,7 +9310,7 @@ function ChatHeaderSearchField({
|
|
|
9314
9310
|
className
|
|
9315
9311
|
}) {
|
|
9316
9312
|
const [value, setValue] = _react.useState.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
9317
|
-
const debounced =
|
|
9313
|
+
const debounced = _chunkGRCOEICKcjs.useDebounce.call(void 0, value, 300);
|
|
9318
9314
|
const lastEmitted = _react.useRef.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
9319
9315
|
const [exiting, setExiting] = _react.useState.call(void 0, false);
|
|
9320
9316
|
const collapsedRef = _react.useRef.call(void 0, false);
|
|
@@ -9471,7 +9467,7 @@ function SearchInput({
|
|
|
9471
9467
|
}) {
|
|
9472
9468
|
const [internalValue, setInternalValue] = _react.useState.call(void 0, defaultValue);
|
|
9473
9469
|
const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
|
|
9474
|
-
const debouncedValue =
|
|
9470
|
+
const debouncedValue = _chunkGRCOEICKcjs.useDebounce.call(void 0, currentValue, debounceMs);
|
|
9475
9471
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
9476
9472
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
9477
9473
|
const keyboardPadding = _chunkFW7RKWPYcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
@@ -9644,7 +9640,7 @@ function SearchInput({
|
|
|
9644
9640
|
};
|
|
9645
9641
|
const renderDropdownContent = () => {
|
|
9646
9642
|
if (isLoading) {
|
|
9647
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading results", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count: loadingRows, children: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: SEARCH_RESULT_ROW_CLASS, "aria-hidden": true, "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9643
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading results", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count: loadingRows, children: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: SEARCH_RESULT_ROW_CLASS, "aria-hidden": true, "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-2/3" }) }) }) });
|
|
9648
9644
|
}
|
|
9649
9645
|
if (flatResults.length === 0) {
|
|
9650
9646
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-4 py-3 text-ods-text-secondary text-h6", children: emptyResultsText });
|
|
@@ -9681,7 +9677,7 @@ function SearchInput({
|
|
|
9681
9677
|
/* @__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, {}) }),
|
|
9682
9678
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
|
|
9683
9679
|
visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9684
|
-
|
|
9680
|
+
_chunkW7OFAROYcjs.Tag,
|
|
9685
9681
|
{
|
|
9686
9682
|
variant: chipVariantToTagVariant(chip.variant),
|
|
9687
9683
|
label: chip.label,
|
|
@@ -9774,7 +9770,7 @@ function SearchInput({
|
|
|
9774
9770
|
)
|
|
9775
9771
|
] }),
|
|
9776
9772
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9777
|
-
|
|
9773
|
+
_chunk3W4ASAXNcjs.HiddenTagsPopup,
|
|
9778
9774
|
{
|
|
9779
9775
|
ref: hiddenTagsPopupRef,
|
|
9780
9776
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
@@ -9794,7 +9790,7 @@ function SearchInput({
|
|
|
9794
9790
|
}
|
|
9795
9791
|
),
|
|
9796
9792
|
/* @__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,
|
|
9797
|
-
|
|
9793
|
+
_chunkW7OFAROYcjs.Tag,
|
|
9798
9794
|
{
|
|
9799
9795
|
variant: chipVariantToTagVariant(chip.variant),
|
|
9800
9796
|
label: chip.label,
|
|
@@ -9817,7 +9813,7 @@ var ICON_BUTTON_CLASS = "size-6 p-0 text-ods-text-secondary transition-colors ho
|
|
|
9817
9813
|
var SKELETON_TITLE_WIDTHS2 = ["w-4/5", "w-3/5", "w-11/12", "w-2/3", "w-3/4", "w-1/2"];
|
|
9818
9814
|
function SkeletonRows({ count, offset = 0 }) {
|
|
9819
9815
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: count }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 shrink-0 items-center px-[var(--spacing-system-xs)]", "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9820
|
-
|
|
9816
|
+
_chunkPMUCEUFQcjs.UnifiedSkeleton,
|
|
9821
9817
|
{
|
|
9822
9818
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "h-4 rounded", SKELETON_TITLE_WIDTHS2[(i + offset) % SKELETON_TITLE_WIDTHS2.length])
|
|
9823
9819
|
}
|
|
@@ -9825,7 +9821,7 @@ function SkeletonRows({ count, offset = 0 }) {
|
|
|
9825
9821
|
}
|
|
9826
9822
|
function HistorySkeleton() {
|
|
9827
9823
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading chats", className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [5, 4].map((rows, group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
9828
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-7 items-center px-[var(--spacing-system-xs)]", "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9824
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-7 items-center px-[var(--spacing-system-xs)]", "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: "h-3.5 w-16 rounded" }) }),
|
|
9829
9825
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonRows, { count: rows, offset: group * 2 })
|
|
9830
9826
|
] }, rows)) });
|
|
9831
9827
|
}
|
|
@@ -9944,7 +9940,7 @@ function MingoChatHistorySection({
|
|
|
9944
9940
|
className
|
|
9945
9941
|
}) {
|
|
9946
9942
|
const captionId = _react.useId.call(void 0, );
|
|
9947
|
-
const visitor =
|
|
9943
|
+
const visitor = _chunkGRCOEICKcjs.useVisitorOs.call(void 0, );
|
|
9948
9944
|
const [searchOpen, setSearchOpen] = _reactusecontrollablestate.useControllableState.call(void 0, {
|
|
9949
9945
|
prop: searchOpenProp,
|
|
9950
9946
|
defaultProp: false,
|
|
@@ -9952,7 +9948,7 @@ function MingoChatHistorySection({
|
|
|
9952
9948
|
});
|
|
9953
9949
|
const hasSearch = !!_optionalChain([searchQuery, 'optionalAccess', _216 => _216.trim, 'call', _217 => _217()]);
|
|
9954
9950
|
const showSearch = searchOpen && !!onSearchChange;
|
|
9955
|
-
const shortcut = visitor.known ?
|
|
9951
|
+
const shortcut = visitor.known ? _chunkGRCOEICKcjs.shortcutLabel.call(void 0, visitor.os, "K") : null;
|
|
9956
9952
|
const listProps = {
|
|
9957
9953
|
dialogs,
|
|
9958
9954
|
activeDialogId,
|
|
@@ -10017,7 +10013,7 @@ function MingoChatHistorySection({
|
|
|
10017
10013
|
variant: "transparent",
|
|
10018
10014
|
size: "icon",
|
|
10019
10015
|
"aria-label": "Search chats",
|
|
10020
|
-
"aria-keyshortcuts": shortcut ?
|
|
10016
|
+
"aria-keyshortcuts": shortcut ? _chunkGRCOEICKcjs.usesCommandKey.call(void 0, visitor.os) ? "Meta+K" : "Control+K" : void 0,
|
|
10021
10017
|
onClick: () => setSearchOpen(true),
|
|
10022
10018
|
className: ICON_BUTTON_CLASS,
|
|
10023
10019
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, { size: 20 })
|
|
@@ -10118,7 +10114,7 @@ function MingoChatSearchModal({
|
|
|
10118
10114
|
}
|
|
10119
10115
|
function SearchModalContent({ initialValue, onSearchChange, onClose, children }) {
|
|
10120
10116
|
const [value, setValue] = _react.useState.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
10121
|
-
const debounced =
|
|
10117
|
+
const debounced = _chunkGRCOEICKcjs.useDebounce.call(void 0, value, 300);
|
|
10122
10118
|
const lastSent = _react.useRef.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
10123
10119
|
const fieldRef = _react.useRef.call(void 0, null);
|
|
10124
10120
|
const send = (term) => {
|
|
@@ -10139,8 +10135,8 @@ function SearchModalContent({ initialValue, onSearchChange, onClose, children })
|
|
|
10139
10135
|
send("");
|
|
10140
10136
|
onClose();
|
|
10141
10137
|
};
|
|
10142
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10143
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10138
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen: true, onClose: close, className: "md:max-w-[600px]", children: [
|
|
10139
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Search chats" }) }),
|
|
10144
10140
|
/* @__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,
|
|
10145
10141
|
SearchInput,
|
|
10146
10142
|
{
|
|
@@ -10196,7 +10192,7 @@ function SectionRow({
|
|
|
10196
10192
|
// A row that lands in a day already on screen (the next page) fades in too.
|
|
10197
10193
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "group/row relative shrink-0 duration-300 animate-in fade-in motion-reduce:animate-none", children: [
|
|
10198
10194
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10199
|
-
|
|
10195
|
+
_chunk3W4ASAXNcjs.ChatListItem,
|
|
10200
10196
|
{
|
|
10201
10197
|
active,
|
|
10202
10198
|
title,
|
|
@@ -10218,7 +10214,7 @@ function SectionRow({
|
|
|
10218
10214
|
children: [
|
|
10219
10215
|
glyph && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": glyph.label, className: "flex", children: glyph.icon }),
|
|
10220
10216
|
ownerName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10221
|
-
|
|
10217
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
10222
10218
|
{
|
|
10223
10219
|
role: "img",
|
|
10224
10220
|
"aria-label": `Owner: ${ownerName}`,
|
|
@@ -10363,7 +10359,7 @@ function MingoChatRailPanel({
|
|
|
10363
10359
|
if (loadError) {
|
|
10364
10360
|
list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatListLoadError, { onRetry, className: "px-[var(--spacing-system-xs)] py-[var(--spacing-system-l)]" });
|
|
10365
10361
|
} else if (loading) {
|
|
10366
|
-
list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10362
|
+
list = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ChatListItemLoadingPage, { count: pageSize });
|
|
10367
10363
|
} else if (dialogs.length === 0 && !draftTitle) {
|
|
10368
10364
|
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,
|
|
10369
10365
|
ChatListEmptyState,
|
|
@@ -10375,7 +10371,7 @@ function MingoChatRailPanel({
|
|
|
10375
10371
|
);
|
|
10376
10372
|
} else {
|
|
10377
10373
|
list = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
10378
|
-
draftTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10374
|
+
draftTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ChatListItem, { active: true, title: draftTitle, tabIndex: -1, className: "cursor-default" }),
|
|
10379
10375
|
dialogs.map((dialog) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10380
10376
|
MingoChatRailRow,
|
|
10381
10377
|
{
|
|
@@ -10397,13 +10393,13 @@ function MingoChatRailPanel({
|
|
|
10397
10393
|
] });
|
|
10398
10394
|
}
|
|
10399
10395
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10400
|
-
|
|
10396
|
+
_chunk3W4ASAXNcjs.ChatNavSidebar,
|
|
10401
10397
|
{
|
|
10402
10398
|
className,
|
|
10403
10399
|
"data-accent": "mingo",
|
|
10404
10400
|
"aria-label": "Mingo chats",
|
|
10405
10401
|
logo: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center justify-between", children: [
|
|
10406
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10402
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
|
|
10407
10403
|
onExpand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10408
10404
|
_chunkFCZAUK4Dcjs.Button,
|
|
10409
10405
|
{
|
|
@@ -10456,7 +10452,7 @@ function MingoChatRailRow({ dialog, active, status, onSelect, menuItems, ...prop
|
|
|
10456
10452
|
const title = dialog.title || "Untitled Chat";
|
|
10457
10453
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props), className: "group/row relative shrink-0", children: [
|
|
10458
10454
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10459
|
-
|
|
10455
|
+
_chunk3W4ASAXNcjs.ChatListItem,
|
|
10460
10456
|
{
|
|
10461
10457
|
active,
|
|
10462
10458
|
title,
|
|
@@ -10674,8 +10670,8 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
|
|
|
10674
10670
|
const save = () => {
|
|
10675
10671
|
if (canSave) onSave(name.trim());
|
|
10676
10672
|
};
|
|
10677
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10678
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10673
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
10674
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Rename Chat" }) }),
|
|
10679
10675
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
10680
10676
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3MBQRCQcjs.Label, { htmlFor: "rename-chat-input", variant: "large", children: "Chat Name" }),
|
|
10681
10677
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10692,27 +10688,27 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
|
|
|
10692
10688
|
}
|
|
10693
10689
|
)
|
|
10694
10690
|
] }),
|
|
10695
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10691
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
|
|
10696
10692
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
|
|
10697
10693
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "accent", type: "button", onClick: save, disabled: !canSave, className: footerBtn, children: "Save" })
|
|
10698
10694
|
] })
|
|
10699
10695
|
] });
|
|
10700
10696
|
}
|
|
10701
10697
|
function ArchiveChatModal({ isOpen, onClose, onConfirm }) {
|
|
10702
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10703
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10698
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
10699
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Archive Chat" }) }),
|
|
10704
10700
|
/* @__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." }),
|
|
10705
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10701
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
|
|
10706
10702
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
|
|
10707
10703
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "destructive", type: "button", onClick: onConfirm, className: footerBtn, children: "Archive Chat" })
|
|
10708
10704
|
] })
|
|
10709
10705
|
] });
|
|
10710
10706
|
}
|
|
10711
10707
|
function UnarchiveChatModal({ isOpen, onClose, onConfirm }) {
|
|
10712
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10713
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10708
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
10709
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3W4ASAXNcjs.ModalTitle, { children: "Unarchive Chat" }) }),
|
|
10714
10710
|
/* @__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." }),
|
|
10715
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10711
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3W4ASAXNcjs.ModalFooter, { children: [
|
|
10716
10712
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", type: "button", onClick: onClose, className: footerBtn, children: "Cancel" }),
|
|
10717
10713
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "accent", type: "button", onClick: onConfirm, className: footerBtn, children: "Unarchive Chat" })
|
|
10718
10714
|
] })
|
|
@@ -10885,7 +10881,7 @@ function ChatPanelHeader({
|
|
|
10885
10881
|
avatar && (avatar.name || avatar.avatarUrl) ? (
|
|
10886
10882
|
// Owner avatar at the title cell's right edge (Figma 113:63273).
|
|
10887
10883
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10888
|
-
|
|
10884
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
10889
10885
|
{
|
|
10890
10886
|
variant: "round",
|
|
10891
10887
|
sizePx: 32,
|
|
@@ -11053,8 +11049,8 @@ function AttachmentChip({ attachment, onRemove, disabled, size = "default" }) {
|
|
|
11053
11049
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "truncate text-ods-text-primary text-h6", title: file.name, children: file.name }),
|
|
11054
11050
|
(!compact || status !== "ready") && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-muted text-h6", children: [
|
|
11055
11051
|
status === "sniffing" && "Checking the file",
|
|
11056
|
-
status === "uploading" && `${progress}% \xB7 ${
|
|
11057
|
-
status === "ready" &&
|
|
11052
|
+
status === "uploading" && `${progress}% \xB7 ${_chunkW7OFAROYcjs.formatFileSize.call(void 0, file.size)}`,
|
|
11053
|
+
status === "ready" && _chunkW7OFAROYcjs.formatFileSize.call(void 0, file.size),
|
|
11058
11054
|
status === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-error", title: errorMessage, children: _nullishCoalesce(errorMessage, () => ( "Upload failed")) })
|
|
11059
11055
|
] })
|
|
11060
11056
|
] }),
|
|
@@ -11138,7 +11134,7 @@ function ChatContextMemoryBar({
|
|
|
11138
11134
|
if (!hasItems && !leading && !pending) return null;
|
|
11139
11135
|
if (!hasItems && !leading) {
|
|
11140
11136
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, MEMORY_STRIP_CLASS, className), children: [
|
|
11141
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 truncate text-ods-text-secondary text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11137
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 truncate text-ods-text-secondary text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-48 max-w-full" }) }),
|
|
11142
11138
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "bare", size: "icon-sm", type: "button", tabIndex: -1, className: "invisible shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSWHUL32Wcjs.Ellipsis01Icon, { size: 16 }) })
|
|
11143
11139
|
] });
|
|
11144
11140
|
}
|
|
@@ -11317,13 +11313,13 @@ var ModelDisplay = _react2.default.forwardRef(
|
|
|
11317
11313
|
const isLoading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading;
|
|
11318
11314
|
const icon = getProviderIcon(provider);
|
|
11319
11315
|
const name = displayName || modelName;
|
|
11320
|
-
const isV2 = useChatAppearance() ===
|
|
11316
|
+
const isV2 = useChatAppearance() === _chunk3W4ASAXNcjs.CHAT_APPEARANCE.V2;
|
|
11321
11317
|
const formatCount = (count) => isV2 ? count.toLocaleString("en-US") : formatTokenCount(count);
|
|
11322
11318
|
if (isLoading) {
|
|
11323
11319
|
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: [
|
|
11324
|
-
icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: PROVIDER_ICON_BOX_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11325
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11326
|
-
contextWindow != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11320
|
+
icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: PROVIDER_ICON_BOX_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.MediaSkeleton.Icon, { size: "sm" }) }),
|
|
11321
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-24" }),
|
|
11322
|
+
contextWindow != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "ml-auto w-32" })
|
|
11327
11323
|
] });
|
|
11328
11324
|
}
|
|
11329
11325
|
const labelContent = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -11429,6 +11425,7 @@ ModelDisplay.displayName = "ModelDisplay";
|
|
|
11429
11425
|
// src/components/chat/chat-composer.tsx
|
|
11430
11426
|
|
|
11431
11427
|
|
|
11428
|
+
var TOP_STRIP_ROUNDING_CLASS = "rounded-t-[calc(var(--radius)_-_3px)]";
|
|
11432
11429
|
function ChatComposer({
|
|
11433
11430
|
archived = false,
|
|
11434
11431
|
lock = null,
|
|
@@ -11502,7 +11499,7 @@ function ChatComposer({
|
|
|
11502
11499
|
const showLegacyAttach = !contextEnabled && showAttachmentButton && !!onAddFiles;
|
|
11503
11500
|
const showFooterRow = showLegacyAttach || !!model || !!footerActions;
|
|
11504
11501
|
const inputNode = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11505
|
-
|
|
11502
|
+
_chunk3W4ASAXNcjs.ChatInput,
|
|
11506
11503
|
{
|
|
11507
11504
|
ref: inputRef,
|
|
11508
11505
|
onSend,
|
|
@@ -11548,7 +11545,7 @@ function ChatComposer({
|
|
|
11548
11545
|
// `border-b`) stack flush above the input; the card owns the border
|
|
11549
11546
|
// / radius / focus ring. No `overflow-hidden` so the picker and the
|
|
11550
11547
|
// memory popover can float above the input (whichever strip comes
|
|
11551
|
-
// first gets `
|
|
11548
|
+
// first gets `TOP_STRIP_ROUNDING_CLASS`).
|
|
11552
11549
|
// `has-[[data-editor]:focus]` (not `focus-within`) so the accent
|
|
11553
11550
|
// border reacts ONLY to the composer editor — not the picker's search
|
|
11554
11551
|
// input or item buttons, which also live inside this card. The editor
|
|
@@ -11564,7 +11561,7 @@ function ChatComposer({
|
|
|
11564
11561
|
resolveIcon: resolveContextIcon,
|
|
11565
11562
|
disabled: sending || locked,
|
|
11566
11563
|
leading: contextLeading,
|
|
11567
|
-
className:
|
|
11564
|
+
className: TOP_STRIP_ROUNDING_CLASS
|
|
11568
11565
|
}
|
|
11569
11566
|
),
|
|
11570
11567
|
selected.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -11577,7 +11574,7 @@ function ChatComposer({
|
|
|
11577
11574
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
11578
11575
|
"border-b border-ods-border bg-ods-bg p-2",
|
|
11579
11576
|
// Only the TOP strip rounds into the card corner.
|
|
11580
|
-
memory.length === 0 && !contextLeading &&
|
|
11577
|
+
memory.length === 0 && !contextLeading && TOP_STRIP_ROUNDING_CLASS
|
|
11581
11578
|
)
|
|
11582
11579
|
}
|
|
11583
11580
|
),
|
|
@@ -11692,7 +11689,7 @@ function ChatArchivePage(props) {
|
|
|
11692
11689
|
|
|
11693
11690
|
|
|
11694
11691
|
function useNavLinkTarget(href, targetPlatform, openIn) {
|
|
11695
|
-
return
|
|
11692
|
+
return _chunkTIVPOVIMcjs.navLinkTarget.call(void 0, _chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, ), href, targetPlatform, { openIn });
|
|
11696
11693
|
}
|
|
11697
11694
|
function useNavLinkViaRuntime({
|
|
11698
11695
|
href,
|
|
@@ -11708,22 +11705,22 @@ function useNavLinkViaRuntime({
|
|
|
11708
11705
|
const onClick = (e) => {
|
|
11709
11706
|
_optionalChain([onClickProp, 'optionalCall', _249 => _249(e)]);
|
|
11710
11707
|
if (e.defaultPrevented) return;
|
|
11711
|
-
const handled =
|
|
11708
|
+
const handled = _chunkGRCOEICKcjs.executeNavigation.call(void 0, { event: e, runtime, href: resolvedHref, path, targetPlatform, openIn });
|
|
11712
11709
|
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _250 => _250.closeChat])) panel.closeChat();
|
|
11713
11710
|
};
|
|
11714
|
-
return { href: resolvedHref, ...
|
|
11711
|
+
return { href: resolvedHref, ..._chunkTIVPOVIMcjs.newTabAnchorAttrs.call(void 0, isNewTab, resolvedHref, targetPlatform), onClick };
|
|
11715
11712
|
}
|
|
11716
11713
|
function useNavigateViaRuntime() {
|
|
11717
11714
|
const runtime = _chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, );
|
|
11718
11715
|
return _react.useCallback.call(void 0,
|
|
11719
11716
|
({ href, path, targetPlatform, openIn, modifierEvent }) => {
|
|
11720
11717
|
if (!href) return;
|
|
11721
|
-
if (modifierEvent &&
|
|
11718
|
+
if (modifierEvent && _chunkTIVPOVIMcjs.isModifierClick.call(void 0, modifierEvent)) {
|
|
11722
11719
|
const button = _nullishCoalesce(modifierEvent.button, () => ( 0));
|
|
11723
|
-
if (button === 0 || button === 1)
|
|
11720
|
+
if (button === 0 || button === 1) _chunkGRCOEICKcjs.executeNewTabNavigation.call(void 0, { runtime, href, targetPlatform });
|
|
11724
11721
|
return;
|
|
11725
11722
|
}
|
|
11726
|
-
|
|
11723
|
+
_chunkGRCOEICKcjs.executeNavigationImperative.call(void 0, { runtime, href, path, targetPlatform, openIn });
|
|
11727
11724
|
},
|
|
11728
11725
|
[runtime]
|
|
11729
11726
|
);
|
|
@@ -11780,7 +11777,7 @@ function FooterAction({
|
|
|
11780
11777
|
loading
|
|
11781
11778
|
}) {
|
|
11782
11779
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loading) {
|
|
11783
|
-
const mark = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
11780
|
+
const mark = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, _chunkPMUCEUFQcjs.SKELETON_SURFACE_CLASS, "inline-block h-3 w-3 rounded-sm") });
|
|
11784
11781
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": true, inert: true, className: "contents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11785
11782
|
_chunkFCZAUK4Dcjs.Button,
|
|
11786
11783
|
{
|
|
@@ -11913,7 +11910,7 @@ function UserDisplay({
|
|
|
11913
11910
|
compact = false,
|
|
11914
11911
|
className
|
|
11915
11912
|
}) {
|
|
11916
|
-
const avatarSrc =
|
|
11913
|
+
const avatarSrc = _chunkYXKAHQYScjs.useProxiedImageUrl.call(void 0, avatarUrl);
|
|
11917
11914
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, )) {
|
|
11918
11915
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11919
11916
|
UserDisplaySkeleton,
|
|
@@ -11927,7 +11924,7 @@ function UserDisplay({
|
|
|
11927
11924
|
);
|
|
11928
11925
|
}
|
|
11929
11926
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, USER_ROW_CLASS, className), children: [
|
|
11930
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11927
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { src: avatarSrc || void 0, fallback: name, alt: name, sizePx: size, variant: shape }),
|
|
11931
11928
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
|
|
11932
11929
|
/* @__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 }),
|
|
11933
11930
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block truncate text-ods-text-secondary text-h6", children: subtitle })
|
|
@@ -11942,10 +11939,10 @@ function UserDisplaySkeleton({
|
|
|
11942
11939
|
className
|
|
11943
11940
|
}) {
|
|
11944
11941
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, USER_ROW_CLASS, className), "aria-hidden": true, children: [
|
|
11945
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11942
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading: true, sizePx: size, variant: shape }),
|
|
11946
11943
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
|
|
11947
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11948
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11944
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: compact ? "h6" : "h4", className: "w-28" }),
|
|
11945
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-16" })
|
|
11949
11946
|
] })
|
|
11950
11947
|
] });
|
|
11951
11948
|
}
|
|
@@ -12053,7 +12050,7 @@ function ManagedCell({
|
|
|
12053
12050
|
}) {
|
|
12054
12051
|
const hintedWidth = _react2.default.isValidElement(item) ? item.props["data-strip-cell-width"] : void 0;
|
|
12055
12052
|
const desktopWidth = typeof hintedWidth === "number" ? hintedWidth : cardWidthDesktop;
|
|
12056
|
-
const cloneRef =
|
|
12053
|
+
const cloneRef = _chunkGRCOEICKcjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
|
|
12057
12054
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12058
12055
|
"div",
|
|
12059
12056
|
{
|
|
@@ -12171,12 +12168,12 @@ function CardsStrip(props) {
|
|
|
12171
12168
|
}, [measure, items.length, marqueeActive, isMobile]);
|
|
12172
12169
|
const chevronSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
12173
12170
|
const userScrollSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
12174
|
-
const { ref: observe, inView: nearViewport } =
|
|
12171
|
+
const { ref: observe, inView: nearViewport } = _chunkGRCOEICKcjs.useInView.call(void 0, { rootMargin: "200px", initial: true });
|
|
12175
12172
|
_react.useEffect.call(void 0, () => {
|
|
12176
12173
|
observe(wrapperRef.current);
|
|
12177
12174
|
return () => observe(null);
|
|
12178
12175
|
}, [observe]);
|
|
12179
|
-
const autoplay =
|
|
12176
|
+
const autoplay = _chunkGRCOEICKcjs.useAutoplay.call(void 0, nearViewport);
|
|
12180
12177
|
const [activeKey, setActiveKey] = _react.useState.call(void 0, null);
|
|
12181
12178
|
const activeKeyRef = _react.useRef.call(void 0, null);
|
|
12182
12179
|
const activate = _react.useCallback.call(void 0, (key) => {
|
|
@@ -12223,7 +12220,7 @@ function CardsStrip(props) {
|
|
|
12223
12220
|
const current = activeKeyRef.current;
|
|
12224
12221
|
if (current !== null) deactivate(current);
|
|
12225
12222
|
}, [deactivate]);
|
|
12226
|
-
|
|
12223
|
+
_chunkGRCOEICKcjs.useResetOnPageHidden.call(void 0, clearHover);
|
|
12227
12224
|
const syncHoverIfScrolled = _react.useCallback.call(void 0, () => {
|
|
12228
12225
|
const scroller = scrollerRef.current;
|
|
12229
12226
|
if (!scroller) return;
|
|
@@ -12244,7 +12241,7 @@ function CardsStrip(props) {
|
|
|
12244
12241
|
},
|
|
12245
12242
|
[reverse, seamBuffer]
|
|
12246
12243
|
);
|
|
12247
|
-
const { posRef: marqueePosRef, glideBy } =
|
|
12244
|
+
const { posRef: marqueePosRef, glideBy } = _chunkGRCOEICKcjs.useMarqueeEngine.call(void 0, {
|
|
12248
12245
|
// Viewport gates `active` (the rAF fully stops off-screen — a paused
|
|
12249
12246
|
// engine would keep scheduling frames forever), same treatment as
|
|
12250
12247
|
// <MarqueeWall>; the envelope persists, so re-entry resumes at cruise.
|
|
@@ -12381,7 +12378,7 @@ function CardsStrip(props) {
|
|
|
12381
12378
|
}
|
|
12382
12379
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ManagedCell, { item, ctx, cardWidthMobile, cardWidthDesktop });
|
|
12383
12380
|
};
|
|
12384
|
-
const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${
|
|
12381
|
+
const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkYXKAHQYScjs.SECTION_HEADING_CLASS} break-words`, children: _chunkYXKAHQYScjs.accentSentenceMarks.call(void 0, title) });
|
|
12385
12382
|
if (items.length === 0) {
|
|
12386
12383
|
if (!inScope || !skeleton) return null;
|
|
12387
12384
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, STRIP_ROOT_CLASS, className), children: [
|
|
@@ -12571,7 +12568,7 @@ var VIDEO_BITES_SKELETON_COUNT = Math.ceil(
|
|
|
12571
12568
|
);
|
|
12572
12569
|
function VideoBitesStrip({
|
|
12573
12570
|
bites,
|
|
12574
|
-
title =
|
|
12571
|
+
title = _chunkMDLT6D46cjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
12575
12572
|
showTitle = true,
|
|
12576
12573
|
filterPublished = true,
|
|
12577
12574
|
profile = null,
|
|
@@ -12584,7 +12581,7 @@ function VideoBitesStrip({
|
|
|
12584
12581
|
cardHeightMobile = VIDEO_BITES_CARD_HEIGHT_MOBILE_PX,
|
|
12585
12582
|
showChevrons = true,
|
|
12586
12583
|
onBiteNavigate,
|
|
12587
|
-
sortComparator =
|
|
12584
|
+
sortComparator = _chunkMDLT6D46cjs.sortBitesByCreatedAtDesc,
|
|
12588
12585
|
skeletonCount,
|
|
12589
12586
|
className
|
|
12590
12587
|
}) {
|
|
@@ -12673,7 +12670,7 @@ function VideoBiteCardSkeleton({ aspect = "9:16", height, heightMobile, classNam
|
|
|
12673
12670
|
{
|
|
12674
12671
|
className: _chunk63A4GZMBcjs.cn.call(void 0, BITE_MEDIA_CLASS, height !== void 0 && BITE_MEDIA_FIXED_HEIGHT_CLASS),
|
|
12675
12672
|
style: biteMediaStyle(cssAspect, height, heightMobile),
|
|
12676
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12673
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: "absolute inset-0 h-full rounded-none" })
|
|
12677
12674
|
}
|
|
12678
12675
|
)
|
|
12679
12676
|
}
|
|
@@ -12682,7 +12679,7 @@ function VideoBiteCardSkeleton({ aspect = "9:16", height, heightMobile, classNam
|
|
|
12682
12679
|
function VideoBitesStripSkeleton({
|
|
12683
12680
|
count = VIDEO_BITES_SKELETON_COUNT,
|
|
12684
12681
|
aspect = "9:16",
|
|
12685
|
-
title =
|
|
12682
|
+
title = _chunkMDLT6D46cjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
12686
12683
|
showTitle = true,
|
|
12687
12684
|
headerSlot,
|
|
12688
12685
|
cardHeightDesktop = VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX,
|
|
@@ -12814,7 +12811,7 @@ function VideoBiteCard({
|
|
|
12814
12811
|
style: biteMediaStyle(cssAspect, height, heightMobile),
|
|
12815
12812
|
children: [
|
|
12816
12813
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12817
|
-
|
|
12814
|
+
_chunkMDLT6D46cjs.VideoHoverPreviewSurface,
|
|
12818
12815
|
{
|
|
12819
12816
|
url: bite.url,
|
|
12820
12817
|
posterUrl: bite.thumbnail_url,
|
|
@@ -12886,7 +12883,7 @@ function EntityVideoSection({
|
|
|
12886
12883
|
title = "Video",
|
|
12887
12884
|
videoSummary,
|
|
12888
12885
|
videoBites,
|
|
12889
|
-
bitesTitle =
|
|
12886
|
+
bitesTitle = _chunkMDLT6D46cjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
12890
12887
|
filterPublishedBites = true,
|
|
12891
12888
|
bitesProfile = null,
|
|
12892
12889
|
bitesHref,
|
|
@@ -12921,7 +12918,7 @@ function EntityVideoSection({
|
|
|
12921
12918
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "highlights", className: VIDEO_TAB_TRIGGER_CLASS, children: HIGHLIGHTS_TAB_LABEL })
|
|
12922
12919
|
] }),
|
|
12923
12920
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12924
|
-
|
|
12921
|
+
_chunkMDLT6D46cjs.Video,
|
|
12925
12922
|
{
|
|
12926
12923
|
kind: fullVideoKind,
|
|
12927
12924
|
url: fullVideoUrl,
|
|
@@ -12933,7 +12930,7 @@ function EntityVideoSection({
|
|
|
12933
12930
|
}
|
|
12934
12931
|
) }),
|
|
12935
12932
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "highlights", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12936
|
-
|
|
12933
|
+
_chunkMDLT6D46cjs.Video,
|
|
12937
12934
|
{
|
|
12938
12935
|
url: highlightVideoUrl,
|
|
12939
12936
|
poster: highlightVideoThumbnail,
|
|
@@ -12942,7 +12939,7 @@ function EntityVideoSection({
|
|
|
12942
12939
|
}
|
|
12943
12940
|
) })
|
|
12944
12941
|
] }) : fullVideoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12945
|
-
|
|
12942
|
+
_chunkMDLT6D46cjs.Video,
|
|
12946
12943
|
{
|
|
12947
12944
|
kind: fullVideoKind,
|
|
12948
12945
|
url: fullVideoUrl,
|
|
@@ -12953,7 +12950,7 @@ function EntityVideoSection({
|
|
|
12953
12950
|
priority
|
|
12954
12951
|
}
|
|
12955
12952
|
) : highlightVideoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12956
|
-
|
|
12953
|
+
_chunkMDLT6D46cjs.Video,
|
|
12957
12954
|
{
|
|
12958
12955
|
url: highlightVideoUrl,
|
|
12959
12956
|
poster: highlightVideoThumbnail,
|
|
@@ -12963,7 +12960,7 @@ function EntityVideoSection({
|
|
|
12963
12960
|
}
|
|
12964
12961
|
) : null),
|
|
12965
12962
|
videoSummary && MarkdownRenderer && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
|
|
12966
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${
|
|
12963
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkYXKAHQYScjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
|
|
12967
12964
|
/* @__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 }) })
|
|
12968
12965
|
] }),
|
|
12969
12966
|
videoBites && videoBites.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -12982,13 +12979,13 @@ function EntityVideoSection({
|
|
|
12982
12979
|
] });
|
|
12983
12980
|
}
|
|
12984
12981
|
function EntityVideoSectionSkeleton({ tabs = false, className }) {
|
|
12985
|
-
if (!tabs) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12982
|
+
if (!tabs) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.Video, { loading: true, url: "", layout: "centered", className });
|
|
12986
12983
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tabs, { defaultValue: "full-video", className: _chunk63A4GZMBcjs.cn.call(void 0, "w-full", className), "aria-hidden": true, inert: true, children: [
|
|
12987
12984
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, TabsList, { className: VIDEO_TAB_LIST_CLASS, children: [
|
|
12988
12985
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "full-video", className: VIDEO_TAB_TRIGGER_CLASS, children: FULL_VIDEO_TAB_LABEL }),
|
|
12989
12986
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "highlights", className: VIDEO_TAB_TRIGGER_CLASS, children: HIGHLIGHTS_TAB_LABEL })
|
|
12990
12987
|
] }),
|
|
12991
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12988
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.Video, { loading: true, url: "", layout: "centered" }) })
|
|
12992
12989
|
] });
|
|
12993
12990
|
}
|
|
12994
12991
|
|
|
@@ -13080,7 +13077,7 @@ function ChatCardDisclosureButton({
|
|
|
13080
13077
|
{
|
|
13081
13078
|
label,
|
|
13082
13079
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: "!h-3 !w-3" }),
|
|
13083
|
-
trailingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13080
|
+
trailingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.ExpandChevron, { expanded: open, className: "!h-3 !w-3" }),
|
|
13084
13081
|
onClick: (e) => {
|
|
13085
13082
|
e.preventDefault();
|
|
13086
13083
|
e.stopPropagation();
|
|
@@ -13094,7 +13091,7 @@ function ChatCardDisclosureButton({
|
|
|
13094
13091
|
);
|
|
13095
13092
|
}
|
|
13096
13093
|
function DisclosurePanel({ open, children }) {
|
|
13097
|
-
const { innerRef, containerStyle } =
|
|
13094
|
+
const { innerRef, containerStyle } = _chunk4YBS4HIOcjs.useCollapsible.call(void 0, { expanded: open });
|
|
13098
13095
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children }) });
|
|
13099
13096
|
}
|
|
13100
13097
|
function useChatCardDisclosure(kind, chatRef, { reserve = false } = {}) {
|
|
@@ -13146,37 +13143,37 @@ function designDocPeople(doc) {
|
|
|
13146
13143
|
return people;
|
|
13147
13144
|
}
|
|
13148
13145
|
function designDocMetaLine(doc) {
|
|
13149
|
-
return [_optionalChain([doc, 'access', _296 => _296.author, 'optionalAccess', _297 => _297.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${
|
|
13146
|
+
return [_optionalChain([doc, 'access', _296 => _296.author, 'optionalAccess', _297 => _297.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${_chunkYXKAHQYScjs.formatDateShort.call(void 0, doc.updated_at)}`].filter(Boolean).join(" \xB7 ");
|
|
13150
13147
|
}
|
|
13151
13148
|
var DESIGN_DOC_CARD_BODY = "flex h-full flex-col gap-[var(--spacing-system-mf)] p-[var(--spacing-system-lf)]";
|
|
13152
13149
|
var DESIGN_DOC_CARD_HEADER = "flex w-full items-center gap-[16px]";
|
|
13153
13150
|
var DESIGN_DOC_CARD_HEADING = "flex min-w-0 flex-1 flex-col";
|
|
13154
|
-
var DESIGN_DOC_CARD_TITLE_ROW = `flex items-center text-h3 ${
|
|
13155
|
-
var DESIGN_DOC_CARD_META_ROW = `flex items-center text-h5 ${
|
|
13156
|
-
var DESIGN_DOC_CARD_SUMMARY_ROW = `flex items-center text-h4 ${
|
|
13151
|
+
var DESIGN_DOC_CARD_TITLE_ROW = `flex items-center text-h3 ${_chunkPMUCEUFQcjs.TEXT_LINES_MIN[2]}`;
|
|
13152
|
+
var DESIGN_DOC_CARD_META_ROW = `flex items-center text-h5 ${_chunkPMUCEUFQcjs.TEXT_LINES_MIN[1]}`;
|
|
13153
|
+
var DESIGN_DOC_CARD_SUMMARY_ROW = `flex items-center text-h4 ${_chunkPMUCEUFQcjs.TEXT_LINES_MIN[3]}`;
|
|
13157
13154
|
var DESIGN_DOC_CARD_FOOTER = "flex w-full items-center justify-between gap-2";
|
|
13158
13155
|
function DesignDocCardSkeleton({ className } = {}) {
|
|
13159
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
13156
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, _chunkMDLT6D46cjs.CONTENT_CARD_SKELETON_FRAME_CLASS, DESIGN_DOC_CARD_BODY, className), "aria-hidden": true, children: [
|
|
13160
13157
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADER, children: [
|
|
13161
13158
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADING, children: [
|
|
13162
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13163
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13159
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", lines: 2, className: "w-3/4" }) }),
|
|
13160
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h5", className: "w-1/3" }) })
|
|
13164
13161
|
] }),
|
|
13165
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13162
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.StatusBadge, { loading: true, text: "", variant: "button", className: "hidden md:inline-flex" })
|
|
13166
13163
|
] }),
|
|
13167
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13168
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_SUMMARY_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13164
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.StatusBadge, { loading: true, text: "", variant: "button" }) }),
|
|
13165
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_SUMMARY_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", lines: 3, className: "w-full" }) }),
|
|
13169
13166
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
13170
13167
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
|
|
13171
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13172
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13168
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-1/3" }),
|
|
13169
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTYJUMFBcjs.AvatarStack, { loading: true, people: [], max: 1, size: "xs", className: "shrink-0" })
|
|
13173
13170
|
] })
|
|
13174
13171
|
] });
|
|
13175
13172
|
}
|
|
13176
13173
|
function DesignDocCard({ doc, href, target, rel, className }) {
|
|
13177
|
-
const
|
|
13174
|
+
const status = designDocStatusDisplay(doc);
|
|
13178
13175
|
const people = designDocPeople(doc);
|
|
13179
|
-
const link =
|
|
13176
|
+
const link = _chunkMDLT6D46cjs.safeHref.call(void 0, _nullishCoalesce(href, () => ( null)));
|
|
13180
13177
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DesignDocCardSkeleton, { className });
|
|
13181
13178
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
13182
13179
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADER, children: [
|
|
@@ -13184,26 +13181,17 @@ function DesignDocCard({ doc, href, target, rel, className }) {
|
|
|
13184
13181
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "line-clamp-2 flex-1 text-ods-text-primary text-h3", children: doc.title || "Untitled design doc" }) }),
|
|
13185
13182
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h5", children: designDocMetaLine(doc) }) })
|
|
13186
13183
|
] }),
|
|
13187
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13188
|
-
_chunkBIOSHDXQcjs.StatusBadge,
|
|
13189
|
-
{
|
|
13190
|
-
text: readiness.label,
|
|
13191
|
-
colorScheme: readiness.scheme,
|
|
13192
|
-
variant: "button",
|
|
13193
|
-
singleLine: true,
|
|
13194
|
-
className: "hidden md:inline-flex"
|
|
13195
|
-
}
|
|
13196
|
-
)
|
|
13184
|
+
status ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.PaletteBadge, { text: status.label, color: status.color_scheme, className: "hidden md:inline-flex" }) : null
|
|
13197
13185
|
] }),
|
|
13198
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13186
|
+
status ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.PaletteBadge, { text: status.label, color: status.color_scheme }) }) : null,
|
|
13199
13187
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_SUMMARY_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-3 text-ods-text-secondary text-h4", children: doc.summary || "" }) }),
|
|
13200
13188
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
13201
13189
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
|
|
13202
13190
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: formatCompletionLabelWithBlockers(doc.completion) }),
|
|
13203
|
-
people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13191
|
+
people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTYJUMFBcjs.AvatarStack, { size: "xs", people, className: "shrink-0" }) : null
|
|
13204
13192
|
] })
|
|
13205
13193
|
] });
|
|
13206
|
-
const outer = _chunk63A4GZMBcjs.cn.call(void 0,
|
|
13194
|
+
const outer = _chunk63A4GZMBcjs.cn.call(void 0, _chunkMDLT6D46cjs.CONTENT_CARD_FRAME_CLASS, DESIGN_DOC_CARD_BODY, className);
|
|
13207
13195
|
return link ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href: link, target, rel, className: outer, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: outer, children: body });
|
|
13208
13196
|
}
|
|
13209
13197
|
|
|
@@ -13311,7 +13299,7 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
|
|
|
13311
13299
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GitHubActivityCardSkeleton, { variant, className });
|
|
13312
13300
|
const kind = _nullishCoalesce(item.kind, () => ( "commit"));
|
|
13313
13301
|
const repo = _nullishCoalesce(_nullishCoalesce(item.repo, () => ( parseRepoFromUrl(item.url))), () => ( ""));
|
|
13314
|
-
const dateText =
|
|
13302
|
+
const dateText = _chunkW7OFAROYcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
|
|
13315
13303
|
const idLabel = formatActivityId(item.id, kind);
|
|
13316
13304
|
const { display: title, reviewState } = parseGithubTitle(item.title, kind);
|
|
13317
13305
|
const primaryText = kind === "pr_review" ? title.replace(/^by\s+/i, "").trim() || "Reviewer" : title;
|
|
@@ -13345,26 +13333,26 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
|
|
|
13345
13333
|
metaParts.push(
|
|
13346
13334
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
|
|
13347
13335
|
);
|
|
13348
|
-
const href =
|
|
13336
|
+
const href = _chunkMDLT6D46cjs.safeHref.call(void 0, item.url);
|
|
13349
13337
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
13350
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
13351
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className:
|
|
13352
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${
|
|
13338
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_ICON_SLOT, children: kindIcon(kind, "h-5 w-5") }),
|
|
13339
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_TEXT_COL, children: [
|
|
13340
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkMDLT6D46cjs.COMPACT_CARD_TITLE_ROW} flex-nowrap gap-1.5`, children: [
|
|
13353
13341
|
reviewState ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReviewStateBadge, { state: reviewState }) : null,
|
|
13354
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
13342
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_TITLE, children: primaryText })
|
|
13355
13343
|
] }),
|
|
13356
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
13344
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
|
|
13357
13345
|
i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
|
|
13358
13346
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
|
|
13359
13347
|
] }, i)) }) }),
|
|
13360
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
13348
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkMDLT6D46cjs.COMPACT_CARD_SUMMARY, children: _chunkMDLT6D46cjs.COMPACT_CARD_ROW_FILLER }) })
|
|
13361
13349
|
] }),
|
|
13362
13350
|
href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
|
|
13363
13351
|
] });
|
|
13364
13352
|
if (anchorProps) {
|
|
13365
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${
|
|
13353
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkMDLT6D46cjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
|
|
13366
13354
|
}
|
|
13367
|
-
return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${
|
|
13355
|
+
return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkMDLT6D46cjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkMDLT6D46cjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
13368
13356
|
}
|
|
13369
13357
|
function GitHubActivityCardSkeleton({
|
|
13370
13358
|
variant = "compact",
|
|
@@ -13372,18 +13360,18 @@ function GitHubActivityCardSkeleton({
|
|
|
13372
13360
|
}) {
|
|
13373
13361
|
if (variant === "row") {
|
|
13374
13362
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13375
|
-
|
|
13363
|
+
_chunkMDLT6D46cjs.ActivityRowSkeleton,
|
|
13376
13364
|
{
|
|
13377
13365
|
lead: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-28 shrink-0 items-center gap-2", children: [
|
|
13378
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13379
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13366
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: "h-3.5 w-3.5 rounded" }),
|
|
13367
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { className: "h-3 w-16 rounded" })
|
|
13380
13368
|
] }),
|
|
13381
13369
|
trailingWidths: ["w-40", "w-20"],
|
|
13382
13370
|
className
|
|
13383
13371
|
}
|
|
13384
13372
|
);
|
|
13385
13373
|
}
|
|
13386
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13374
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.CompactCardSkeleton, { titleWidth: "w-2/3", rows: [{ width: "w-1/2" }, {}], trailingIcon: true, className });
|
|
13387
13375
|
}
|
|
13388
13376
|
|
|
13389
13377
|
// src/utils/url-fix.ts
|
|
@@ -13439,9 +13427,9 @@ function VendorIcon({
|
|
|
13439
13427
|
...props
|
|
13440
13428
|
}) {
|
|
13441
13429
|
const logoUrl = getVendorLogo(vendor);
|
|
13442
|
-
const logoSrc =
|
|
13430
|
+
const logoSrc = _chunkYXKAHQYScjs.useProxiedImageUrl.call(void 0, logoUrl, { directHttps: false });
|
|
13443
13431
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13444
|
-
|
|
13432
|
+
_chunkW7OFAROYcjs.SquareAvatar,
|
|
13445
13433
|
{
|
|
13446
13434
|
src: logoUrl ? logoSrc || void 0 : void 0,
|
|
13447
13435
|
alt: `${vendor.title} logo`,
|
|
@@ -13473,8 +13461,8 @@ function useChatCardItem(type, id) {
|
|
|
13473
13461
|
const res = await _chunkGI3MMBP3cjs.embedAuthedFetch.call(void 0, url);
|
|
13474
13462
|
if (!res.ok) throw new Error(`chat card fetch failed: ${res.status}`);
|
|
13475
13463
|
const data = await res.json();
|
|
13476
|
-
const items =
|
|
13477
|
-
const match = items.find((it) =>
|
|
13464
|
+
const items = _chunkYXKAHQYScjs.extractCardItems.call(void 0, type, data);
|
|
13465
|
+
const match = items.find((it) => _chunkYXKAHQYScjs.extractItemId.call(void 0, type, it) === id);
|
|
13478
13466
|
return _nullishCoalesce(match, () => ( null));
|
|
13479
13467
|
},
|
|
13480
13468
|
enabled: !!url && id.length > 0,
|
|
@@ -13516,15 +13504,15 @@ var TRAILING_CELL_LAYOUT = "w-[56px] md:w-[68px]";
|
|
|
13516
13504
|
function CardMedia({ imageSrc, imageAlt, icon }) {
|
|
13517
13505
|
if (imageSrc) {
|
|
13518
13506
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "relative block size-10 shrink-0", 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:
|
|
13507
|
+
/* @__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: _chunkW7OFAROYcjs.personInitials.call(void 0, imageAlt) || "?" }),
|
|
13520
13508
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13521
|
-
|
|
13509
|
+
_chunkGG466XFQcjs.next_image_default,
|
|
13522
13510
|
{
|
|
13523
13511
|
src: imageSrc,
|
|
13524
13512
|
alt: imageAlt || "",
|
|
13525
13513
|
className: "relative block size-10 rounded-sm border border-ods-border object-cover",
|
|
13526
|
-
width:
|
|
13527
|
-
height:
|
|
13514
|
+
width: _chunkPMUCEUFQcjs.AVATAR_SIZE_PX.md,
|
|
13515
|
+
height: _chunkPMUCEUFQcjs.AVATAR_SIZE_PX.md,
|
|
13528
13516
|
unoptimized: true,
|
|
13529
13517
|
onError: (e) => {
|
|
13530
13518
|
const img = e.currentTarget;
|
|
@@ -13548,12 +13536,12 @@ function MingoInfoCardSkeleton({ className }) {
|
|
|
13548
13536
|
className
|
|
13549
13537
|
),
|
|
13550
13538
|
children: [
|
|
13551
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13539
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", className: "block size-10 shrink-0 rounded-md border border-ods-border" }),
|
|
13552
13540
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-1 flex-col justify-center gap-1.5", children: [
|
|
13553
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13554
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13541
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", className: "block h-4 w-1/2 rounded" }),
|
|
13542
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", className: "block h-3 w-3/4 rounded" })
|
|
13555
13543
|
] }),
|
|
13556
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13544
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.UnifiedSkeleton, { as: "span", className: "block h-5 w-16 shrink-0 rounded" })
|
|
13557
13545
|
]
|
|
13558
13546
|
}
|
|
13559
13547
|
);
|
|
@@ -13588,7 +13576,7 @@ function MingoInfoCard({
|
|
|
13588
13576
|
status ? (
|
|
13589
13577
|
// Reuse the shared Tag palette (single source of truth for colours)
|
|
13590
13578
|
// without rendering Tag's `<div>` — span-only for `<p>` validity.
|
|
13591
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
13579
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, _chunkW7OFAROYcjs.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 }) })
|
|
13592
13580
|
) : null
|
|
13593
13581
|
] });
|
|
13594
13582
|
const contentClass = _chunk63A4GZMBcjs.cn.call(void 0,
|
|
@@ -13680,7 +13668,7 @@ function resolveFetchedCardHref({
|
|
|
13680
13668
|
composeContentUrl
|
|
13681
13669
|
}) {
|
|
13682
13670
|
if (!composeContentUrl || !contentRefType || !id) return null;
|
|
13683
|
-
const canonicalType =
|
|
13671
|
+
const canonicalType = _chunkYXKAHQYScjs.canonicalContentRefType.call(void 0, contentRefType);
|
|
13684
13672
|
return composeContentUrl({
|
|
13685
13673
|
// The card registry keys some entries by the legacy rail vocabulary
|
|
13686
13674
|
// (`blog_post_existing`) because that is what `buildListUrl` expects.
|
|
@@ -13723,16 +13711,16 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
13723
13711
|
// Canonical vocabulary only — a rail-vocab alias would miss the host's
|
|
13724
13712
|
// `hostedTypes` / `overrides` and fall through to the seam's default
|
|
13725
13713
|
// `<origin>/<type>/<id>` branch. Same canonicalizer `buildListUrl` uses.
|
|
13726
|
-
type:
|
|
13714
|
+
type: _chunkYXKAHQYScjs.canonicalContentRefType.call(void 0, row.documentType),
|
|
13727
13715
|
identifier: idValue,
|
|
13728
13716
|
...docPath ? { slug: docPath } : {},
|
|
13729
13717
|
externalUrl: _nullishCoalesce(row.externalUrl, () => ( null)),
|
|
13730
13718
|
targetPlatform: _nullishCoalesce(row.targetPlatform, () => ( null))
|
|
13731
13719
|
});
|
|
13732
|
-
href = composed.href ? _nullishCoalesce(
|
|
13720
|
+
href = composed.href ? _nullishCoalesce(_chunkMDLT6D46cjs.safeHref.call(void 0, composed.href), () => ( null)) : null;
|
|
13733
13721
|
targetPlatform = composed.targetPlatform;
|
|
13734
13722
|
} else if (row.externalUrl) {
|
|
13735
|
-
href = _nullishCoalesce(
|
|
13723
|
+
href = _nullishCoalesce(_chunkMDLT6D46cjs.safeHref.call(void 0, row.externalUrl), () => ( null));
|
|
13736
13724
|
targetPlatform = _nullishCoalesce(row.targetPlatform, () => ( null));
|
|
13737
13725
|
}
|
|
13738
13726
|
const documentType = row.documentType;
|
|
@@ -13799,7 +13787,7 @@ function resolveCardDestination({
|
|
|
13799
13787
|
itemHref: _nullishCoalesce(_optionalChain([entry, 'access', _306 => _306.fallbackHref, 'optionalCall', _307 => _307(item)]), () => ( null)),
|
|
13800
13788
|
allowComposed: !entry.noComposedHref
|
|
13801
13789
|
});
|
|
13802
|
-
const url = choice ? _nullishCoalesce(
|
|
13790
|
+
const url = choice ? _nullishCoalesce(_chunkMDLT6D46cjs.safeHref.call(void 0, choice.href), () => ( null)) : null;
|
|
13803
13791
|
if (choice && url) {
|
|
13804
13792
|
return { url, targetPlatform: _nullishCoalesce(choice.targetPlatform, () => ( rowPlatform)), path, source: choice.source };
|
|
13805
13793
|
}
|
|
@@ -13812,11 +13800,11 @@ function resolveCardDestination({
|
|
|
13812
13800
|
|
|
13813
13801
|
function DeletedDataCard({ title, entityLabel, recoveryNote, className }) {
|
|
13814
13802
|
const label = entityLabel || "Item";
|
|
13815
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${
|
|
13816
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
13817
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className:
|
|
13818
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
13819
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
13803
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${_chunkMDLT6D46cjs.COMPACT_CARD_OUTER_STATIC} opacity-70 ${_nullishCoalesce(className, () => ( ""))}`, children: [
|
|
13804
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkMDLT6D46cjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Trash2, { className: "h-4 w-4 text-ods-text-secondary" }) }),
|
|
13805
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkMDLT6D46cjs.COMPACT_CARD_TEXT_COL, children: [
|
|
13806
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkMDLT6D46cjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkMDLT6D46cjs.COMPACT_CARD_TITLE} text-ods-text-secondary line-through`, children: title || `Deleted ${label.toLowerCase()}` }) }),
|
|
13807
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkMDLT6D46cjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
13820
13808
|
label,
|
|
13821
13809
|
" deleted",
|
|
13822
13810
|
recoveryNote ? ` \xB7 ${recoveryNote}` : ""
|
|
@@ -13862,7 +13850,7 @@ function GitHubChatCard({
|
|
|
13862
13850
|
const title = kind === "pr_review" ? display.replace(/^by\s+/i, "").trim() || "Reviewer" : display;
|
|
13863
13851
|
const status = kind === "pr_review" && reviewState ? { label: reviewStateLabel(reviewState), variant: reviewStateToVariant(reviewState) } : { label: kindLabel(kind), variant: "grey" };
|
|
13864
13852
|
const idLabel = formatActivityId(chatRef.id, kind);
|
|
13865
|
-
const dateText =
|
|
13853
|
+
const dateText = _chunkW7OFAROYcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
|
|
13866
13854
|
const description = [idLabel, dateText].filter(Boolean).join(" \xB7 ") || void 0;
|
|
13867
13855
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13868
13856
|
MingoInfoCard,
|
|
@@ -13871,7 +13859,7 @@ function GitHubChatCard({
|
|
|
13871
13859
|
description,
|
|
13872
13860
|
icon: githubKindIcon(kind),
|
|
13873
13861
|
status,
|
|
13874
|
-
anchorProps:
|
|
13862
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
13875
13863
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
13876
13864
|
menuAriaLabel: "Activity actions"
|
|
13877
13865
|
}
|
|
@@ -13994,7 +13982,7 @@ function HubspotTicketChatCard({
|
|
|
13994
13982
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
13995
13983
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOSS23NHHcjs.TagIcon, { size: 24 }),
|
|
13996
13984
|
status: statusText ? { label: statusText, variant: hubspotStatusToVariant(status) } : void 0,
|
|
13997
|
-
anchorProps:
|
|
13985
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
13998
13986
|
menuGroups: cardMenuGroups(chatRef.url, discuss, {
|
|
13999
13987
|
label: "Open Ticket Details",
|
|
14000
13988
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOSS23NHHcjs.TagIcon, { size: 20 })
|
|
@@ -14017,7 +14005,7 @@ function FaqChatCard({
|
|
|
14017
14005
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
14018
14006
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFO6DOP6Mcjs.QuestionCircleIcon, { size: 24 }),
|
|
14019
14007
|
status: { label: statusLabel, variant: "grey" },
|
|
14020
|
-
anchorProps:
|
|
14008
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14021
14009
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
14022
14010
|
menuAriaLabel: "FAQ actions"
|
|
14023
14011
|
}
|
|
@@ -14037,7 +14025,7 @@ function SlackChatCard({
|
|
|
14037
14025
|
title,
|
|
14038
14026
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
14039
14027
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZUHFVG4Fcjs.SlackLogoGreyIcon, { size: 24 }),
|
|
14040
|
-
anchorProps:
|
|
14028
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14041
14029
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
14042
14030
|
menuAriaLabel: "Message actions"
|
|
14043
14031
|
}
|
|
@@ -14055,7 +14043,7 @@ function GlyphChatCard({
|
|
|
14055
14043
|
title: chatRef.title,
|
|
14056
14044
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
14057
14045
|
icon,
|
|
14058
|
-
anchorProps:
|
|
14046
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14059
14047
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
14060
14048
|
menuAriaLabel: "Card actions"
|
|
14061
14049
|
}
|
|
@@ -14073,20 +14061,20 @@ function TrustCenterChatCard({
|
|
|
14073
14061
|
}) {
|
|
14074
14062
|
const raw2 = _optionalChain([item, 'optionalAccess', _321 => _321.frameworks]);
|
|
14075
14063
|
const frameworks = Array.isArray(raw2) ? raw2 : [];
|
|
14076
|
-
const summary =
|
|
14064
|
+
const summary = _chunkYXKAHQYScjs.trustFrameworksSummary.call(void 0, frameworks);
|
|
14077
14065
|
const leadFramework = frameworks[0];
|
|
14078
14066
|
const lead = leadFramework ? {
|
|
14079
|
-
label:
|
|
14080
|
-
color:
|
|
14067
|
+
label: _chunkYXKAHQYScjs.trustFrameworkBadge.call(void 0, leadFramework),
|
|
14068
|
+
color: _chunkYXKAHQYScjs.trustFrameworkMonitoringEntry.call(void 0, leadFramework.monitoring).color
|
|
14081
14069
|
} : void 0;
|
|
14082
14070
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14083
14071
|
MingoInfoCard,
|
|
14084
14072
|
{
|
|
14085
|
-
title:
|
|
14086
|
-
description: summary ||
|
|
14073
|
+
title: _chunkYXKAHQYScjs.TRUST_CENTER_TITLE,
|
|
14074
|
+
description: summary || _chunkYXKAHQYScjs.TRUST_CENTER_TAGLINE,
|
|
14087
14075
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOBGYDNT6cjs.ShieldCheckIcon, { size: 24 }),
|
|
14088
14076
|
status: lead ? { label: lead.label, variant: TRUST_STATUS_TAG_VARIANT[lead.color] } : void 0,
|
|
14089
|
-
anchorProps:
|
|
14077
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14090
14078
|
menuGroups: cardMenuGroups(chatRef.url, discuss, {
|
|
14091
14079
|
label: "View trust center",
|
|
14092
14080
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOBGYDNT6cjs.ShieldCheckIcon, { size: 20 })
|
|
@@ -14108,7 +14096,7 @@ function DataRoomDocChatCard({
|
|
|
14108
14096
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
14109
14097
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 24 }),
|
|
14110
14098
|
status: { label: badgeText, variant: "grey" },
|
|
14111
|
-
anchorProps:
|
|
14099
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14112
14100
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
14113
14101
|
menuAriaLabel: "Document actions"
|
|
14114
14102
|
}
|
|
@@ -14127,7 +14115,7 @@ function GenericFinancialChatCard({
|
|
|
14127
14115
|
title: chatRef.title,
|
|
14128
14116
|
description: subtitle,
|
|
14129
14117
|
icon,
|
|
14130
|
-
anchorProps:
|
|
14118
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14131
14119
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
14132
14120
|
menuAriaLabel: "Document actions"
|
|
14133
14121
|
}
|
|
@@ -14218,7 +14206,7 @@ function CampaignChatCard({
|
|
|
14218
14206
|
}) {
|
|
14219
14207
|
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _327 => _327.goals])) ? item.goals.length : 0;
|
|
14220
14208
|
const meta = [
|
|
14221
|
-
_optionalChain([item, 'optionalAccess', _328 => _328.start_date]) ?
|
|
14209
|
+
_optionalChain([item, 'optionalAccess', _328 => _328.start_date]) ? _chunkYXKAHQYScjs.formatDateShort.call(void 0, item.start_date) : null,
|
|
14222
14210
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
14223
14211
|
"Marketing campaign"
|
|
14224
14212
|
].filter(Boolean).join(" \xB7 ");
|
|
@@ -14257,7 +14245,7 @@ function EntityMingoCard({
|
|
|
14257
14245
|
imageAlt: typeof title === "string" ? title : void 0,
|
|
14258
14246
|
icon: fallbackIcon,
|
|
14259
14247
|
status,
|
|
14260
|
-
anchorProps:
|
|
14248
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab, chatRef.targetPlatform),
|
|
14261
14249
|
menuGroups: cardMenuGroups(chatRef.url, discuss, openDetails, externalLink),
|
|
14262
14250
|
menuAriaLabel
|
|
14263
14251
|
}
|
|
@@ -14269,7 +14257,7 @@ function entityCover(image, ogPlaceholder) {
|
|
|
14269
14257
|
function statusPill(status) {
|
|
14270
14258
|
const s = typeof status === "string" ? status.trim() : "";
|
|
14271
14259
|
if (!s) return void 0;
|
|
14272
|
-
const scheme =
|
|
14260
|
+
const scheme = _chunkYXKAHQYScjs.getStatusColorScheme.call(void 0, s);
|
|
14273
14261
|
const variant = scheme === "success" || scheme === "error" || scheme === "warning" ? scheme : "grey";
|
|
14274
14262
|
return { label: s, variant };
|
|
14275
14263
|
}
|
|
@@ -14352,15 +14340,15 @@ function DesignDocChatCard({
|
|
|
14352
14340
|
}) {
|
|
14353
14341
|
const displayRef = fetchedItemDisplayRef(item, chatRef);
|
|
14354
14342
|
const doc = _optionalChain([item, 'optionalAccess', _354 => _354.doc]);
|
|
14355
|
-
const
|
|
14343
|
+
const status = doc ? designDocStatusDisplay(doc) : null;
|
|
14356
14344
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14357
14345
|
MingoInfoCard,
|
|
14358
14346
|
{
|
|
14359
14347
|
title: _nullishCoalesce(_optionalChain([doc, 'optionalAccess', _355 => _355.title]), () => ( displayRef.title)),
|
|
14360
14348
|
description: doc ? [designDocMetaLine(doc), formatCompletionLabel(doc.completion)].join(" \xB7 ") : _nullishCoalesce(displayRef.preview, () => ( void 0)),
|
|
14361
14349
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 24 }),
|
|
14362
|
-
status:
|
|
14363
|
-
anchorProps:
|
|
14350
|
+
status: status ? { label: status.label, variant: _chunkW7OFAROYcjs.tagVariantForBadgeColor.call(void 0, status.color_scheme) } : { label: "Design doc", variant: "grey" },
|
|
14351
|
+
anchorProps: _chunkTIVPOVIMcjs.buildAnchorProps.call(void 0, displayRef.url, isNewTab, displayRef.targetPlatform),
|
|
14364
14352
|
menuGroups: cardMenuGroups(displayRef.url, discuss),
|
|
14365
14353
|
menuAriaLabel: "Design doc actions"
|
|
14366
14354
|
}
|
|
@@ -14378,7 +14366,7 @@ function InvestorUpdateChatCard({
|
|
|
14378
14366
|
EntityMingoCard,
|
|
14379
14367
|
{
|
|
14380
14368
|
title,
|
|
14381
|
-
description: _optionalChain([item, 'optionalAccess', _358 => _358.strategic_update]) || _optionalChain([item, 'optionalAccess', _359 => _359.content]) ||
|
|
14369
|
+
description: _optionalChain([item, 'optionalAccess', _358 => _358.strategic_update]) || _optionalChain([item, 'optionalAccess', _359 => _359.content]) || _chunkYXKAHQYScjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _360 => _360.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _361 => _361.period_end]), () => ( null))) || void 0,
|
|
14382
14370
|
cover: entityCover(_optionalChain([item, 'optionalAccess', _362 => _362.featured_image]), ogPlaceholder),
|
|
14383
14371
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk37SGOMF5cjs.PresentationLineIcon, { size: 24 }),
|
|
14384
14372
|
status: { label: "Investor update", variant: "grey" },
|
|
@@ -14422,7 +14410,7 @@ function ProgramChatCard({
|
|
|
14422
14410
|
discuss
|
|
14423
14411
|
}) {
|
|
14424
14412
|
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 });
|
|
14425
|
-
const { line: meta } =
|
|
14413
|
+
const { line: meta } = _chunkYXKAHQYScjs.programMetaLine.call(void 0, _nullishCoalesce(item, () => ( {})), configKey, _chunkYXKAHQYScjs.programMetaFormatters.call(void 0, _chunkYXKAHQYScjs.PROGRAM_META_RENDERERS));
|
|
14426
14414
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14427
14415
|
EntityMingoCard,
|
|
14428
14416
|
{
|
|
@@ -14448,11 +14436,11 @@ function RoadmapChatCard({
|
|
|
14448
14436
|
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _372 => _372.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
14449
14437
|
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _373 => _373.customItemId]) != null;
|
|
14450
14438
|
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 });
|
|
14451
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14439
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _374 => _374.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
14452
14440
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
14453
14441
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
14454
14442
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14455
|
-
|
|
14443
|
+
_chunkGG466XFQcjs.next_image_default,
|
|
14456
14444
|
{
|
|
14457
14445
|
src: logoUrl,
|
|
14458
14446
|
alt: "",
|
|
@@ -14524,11 +14512,11 @@ function refText(ref, key) {
|
|
|
14524
14512
|
return typeof value === "string" && value.length > 0 ? value : null;
|
|
14525
14513
|
}
|
|
14526
14514
|
function VendorGlyph({ title, logoUrl }) {
|
|
14527
|
-
if (!logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14515
|
+
if (!logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.EntityIcon, { icon: { name: SOURCE_ICON_NAMES.vendors }, size: 24 });
|
|
14528
14516
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, VendorIcon, { vendor: { title, logo_url: logoUrl }, size: "xs", showBackground: false });
|
|
14529
14517
|
}
|
|
14530
14518
|
function SitePageGlyph({ iconName }) {
|
|
14531
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14519
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.EntityIcon, { icon: { name: _nullishCoalesce(iconName, () => ( SOURCE_ICON_NAMES["website-pages"])) }, size: 24 });
|
|
14532
14520
|
}
|
|
14533
14521
|
var GITHUB_CARD_CONFIGS = {
|
|
14534
14522
|
github_commit: { label: "GitHub commit", kind: "commit" },
|
|
@@ -14656,7 +14644,7 @@ function programRegistryEntries() {
|
|
|
14656
14644
|
contentRefType: cfg.contentRefType,
|
|
14657
14645
|
bareInline: true,
|
|
14658
14646
|
disclosure: cfg.disclosure,
|
|
14659
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14647
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.ProgramCard, { loading: true, size: "sm" }),
|
|
14660
14648
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14661
14649
|
ProgramChatCard,
|
|
14662
14650
|
{
|
|
@@ -14697,7 +14685,7 @@ function roadmapRegistryEntries() {
|
|
|
14697
14685
|
bareInline: true,
|
|
14698
14686
|
...cfg.noComposedHref ? { noComposedHref: true } : {},
|
|
14699
14687
|
...cfg.fallbackHref ? { fallbackHref: cfg.fallbackHref } : {},
|
|
14700
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14688
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.RoadmapCard, { loading: true, size: "sm" }),
|
|
14701
14689
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14702
14690
|
RoadmapChatCard,
|
|
14703
14691
|
{
|
|
@@ -14755,12 +14743,12 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14755
14743
|
// projection route; `extractCardItems` turns its object payload into the
|
|
14756
14744
|
// single matched row. Destination is the public page unless the host
|
|
14757
14745
|
// re-homes the type (`composeContentUrl` override).
|
|
14758
|
-
[
|
|
14746
|
+
[_chunkYXKAHQYScjs.TRUST_CENTER_DOCUMENT_TYPE]: {
|
|
14759
14747
|
label: "Trust center",
|
|
14760
14748
|
bareInline: true,
|
|
14761
|
-
contentRefType:
|
|
14749
|
+
contentRefType: _chunkYXKAHQYScjs.TRUST_CENTER_DOCUMENT_TYPE,
|
|
14762
14750
|
noComposedHref: true,
|
|
14763
|
-
fallbackHref: () =>
|
|
14751
|
+
fallbackHref: () => _chunkYXKAHQYScjs.TRUST_CENTER_PAGE_PATH,
|
|
14764
14752
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCard, { loading: true, title: "" }),
|
|
14765
14753
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterChatCard, { item, chatRef, isNewTab: opts.isNewTab, discuss: opts.discuss })
|
|
14766
14754
|
},
|
|
@@ -14786,7 +14774,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14786
14774
|
label: "Blog post",
|
|
14787
14775
|
contentRefType: "blog_post_existing",
|
|
14788
14776
|
bareInline: true,
|
|
14789
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14777
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.BlogCard, { loading: true, size: "sm" }),
|
|
14790
14778
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14791
14779
|
BlogChatCard,
|
|
14792
14780
|
{
|
|
@@ -14804,7 +14792,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14804
14792
|
label: "Case study",
|
|
14805
14793
|
contentRefType: "case_study",
|
|
14806
14794
|
bareInline: true,
|
|
14807
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14795
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMDLT6D46cjs.CaseStudyCard, { loading: true, size: "sm" }),
|
|
14808
14796
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14809
14797
|
CaseStudyChatCard,
|
|
14810
14798
|
{
|
|
@@ -14830,7 +14818,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14830
14818
|
label: "Customer interview",
|
|
14831
14819
|
contentRefType: "customer_interview",
|
|
14832
14820
|
bareInline: true,
|
|
14833
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14821
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.CustomerInterviewCard, { loading: true, size: "sm" }),
|
|
14834
14822
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14835
14823
|
CustomerInterviewChatCard,
|
|
14836
14824
|
{
|
|
@@ -14847,9 +14835,9 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14847
14835
|
label: "Product release",
|
|
14848
14836
|
contentRefType: "product_release",
|
|
14849
14837
|
bareInline: true,
|
|
14850
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14838
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.ProductReleaseCard, { loading: true, size: "sm" }),
|
|
14851
14839
|
render: (item, chatRef, opts) => {
|
|
14852
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _415 => _415.extras, 'optionalAccess', _416 => _416.buildProductReleaseCardProps]), () => (
|
|
14840
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _415 => _415.extras, 'optionalAccess', _416 => _416.buildProductReleaseCardProps]), () => ( _chunkYXKAHQYScjs.defaultBuildProductReleaseCardProps));
|
|
14853
14841
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14854
14842
|
ProductReleaseChatCard,
|
|
14855
14843
|
{
|
|
@@ -14868,7 +14856,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14868
14856
|
label: "Investor update",
|
|
14869
14857
|
contentRefType: "investor_update",
|
|
14870
14858
|
bareInline: true,
|
|
14871
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14859
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.InvestorUpdateCard, { loading: true, size: "sm" }),
|
|
14872
14860
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14873
14861
|
InvestorUpdateChatCard,
|
|
14874
14862
|
{
|
|
@@ -14887,7 +14875,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
14887
14875
|
bareInline: true,
|
|
14888
14876
|
// "Display" affordance (verbatim guide body) instead of "Ask".
|
|
14889
14877
|
displayAction: true,
|
|
14890
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14878
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKAHQYScjs.OnboardingGuideCard, { loading: true, size: "sm" }),
|
|
14891
14879
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14892
14880
|
OnboardingGuideChatCard,
|
|
14893
14881
|
{
|
|
@@ -14931,7 +14919,7 @@ function ChatCardNavWrap({
|
|
|
14931
14919
|
if (!_optionalChain([host, 'optionalAccess', _428 => _428.contains, 'call', _429 => _429(targetEl)])) return;
|
|
14932
14920
|
if (_optionalChain([targetEl, 'optionalAccess', _430 => _430.closest, 'optionalCall', _431 => _431("button")])) return;
|
|
14933
14921
|
if (!_optionalChain([targetEl, 'optionalAccess', _432 => _432.closest, 'optionalCall', _433 => _433("a")])) return;
|
|
14934
|
-
const handled =
|
|
14922
|
+
const handled = _chunkGRCOEICKcjs.executeNavigation.call(void 0, { event: e, runtime, href, path, targetPlatform, hostRoute });
|
|
14935
14923
|
if (!handled) return;
|
|
14936
14924
|
e.stopPropagation();
|
|
14937
14925
|
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _434 => _434.closeChat])) panel.closeChat();
|
|
@@ -14969,7 +14957,7 @@ function ChatCardLoader({ chatRef, onDiscuss, onDisplay, extras }) {
|
|
|
14969
14957
|
entry: fetchEntry,
|
|
14970
14958
|
ctx: sourceRowCtxFromRuntime(runtime),
|
|
14971
14959
|
composeContentUrl: runtime.composeContentUrl,
|
|
14972
|
-
resolveHref: (href) =>
|
|
14960
|
+
resolveHref: (href) => _chunkTIVPOVIMcjs.navLinkTarget.call(void 0, runtime, href).href
|
|
14973
14961
|
});
|
|
14974
14962
|
const hrefResolvedChatRef = {
|
|
14975
14963
|
...chatRef,
|
|
@@ -14980,13 +14968,13 @@ function ChatCardLoader({ chatRef, onDiscuss, onDisplay, extras }) {
|
|
|
14980
14968
|
};
|
|
14981
14969
|
const fetchedTitle = fetchEntry && item ? readFetchedCardTitle(item) : null;
|
|
14982
14970
|
const finalChatRef = fetchedTitle && (!hrefResolvedChatRef.title || hrefResolvedChatRef.title === hrefResolvedChatRef.id) ? { ...hrefResolvedChatRef, title: fetchedTitle } : hrefResolvedChatRef;
|
|
14983
|
-
const hostRoute = (destination.source === "composed" || destination.source === "hostOverride") && !!finalChatRef.url &&
|
|
14984
|
-
const isNewTab = finalChatRef.url ?
|
|
14971
|
+
const hostRoute = (destination.source === "composed" || destination.source === "hostOverride") && !!finalChatRef.url && _chunkTIVPOVIMcjs.isRelativeHref.call(void 0, finalChatRef.url);
|
|
14972
|
+
const isNewTab = finalChatRef.url ? _chunkTIVPOVIMcjs.navLinkTarget.call(void 0, runtime, finalChatRef.url, finalChatRef.targetPlatform, { hostRoute }).isNewTab : false;
|
|
14985
14973
|
const useDisplay = !!entry.displayAction && !!onDisplay;
|
|
14986
14974
|
const discussFn = useDisplay ? onDisplay : onDiscuss;
|
|
14987
14975
|
const discuss = discussFn ? {
|
|
14988
14976
|
label: useDisplay ? "Display" : "Ask Mingo",
|
|
14989
|
-
icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14977
|
+
icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4YBS4HIOcjs.AgentMark, { agent: "mingo", className: "size-5" }),
|
|
14990
14978
|
run: () => discussFn(finalChatRef)
|
|
14991
14979
|
} : void 0;
|
|
14992
14980
|
const renderOpts = {
|
|
@@ -15092,12 +15080,12 @@ function makeBatchDedupKey(item) {
|
|
|
15092
15080
|
return `${item.messageType}:${seq}:${type}:${text2}:${integratedToolType}:${toolFunction}:${approvalRequestId}`;
|
|
15093
15081
|
}
|
|
15094
15082
|
function getChatTypeMessageType(chatType) {
|
|
15095
|
-
return chatType ===
|
|
15083
|
+
return chatType === _chunk3W4ASAXNcjs.CHAT_TYPE.ADMIN ? "admin-message" : "message";
|
|
15096
15084
|
}
|
|
15097
15085
|
function useChunkCatchup({
|
|
15098
15086
|
dialogId,
|
|
15099
15087
|
onChunkReceived,
|
|
15100
|
-
chatTypes = [
|
|
15088
|
+
chatTypes = [_chunk3W4ASAXNcjs.CHAT_TYPE.CLIENT],
|
|
15101
15089
|
fetchChunks
|
|
15102
15090
|
}) {
|
|
15103
15091
|
const processedSequenceKeys = _react.useRef.call(void 0, /* @__PURE__ */ new Set());
|
|
@@ -16064,7 +16052,7 @@ function useChatAttachmentImageGallery() {
|
|
|
16064
16052
|
return () => root.removeEventListener("click", onClick);
|
|
16065
16053
|
}, [viewUrlPrefix]);
|
|
16066
16054
|
const modal = state.isOpen ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16067
|
-
|
|
16055
|
+
_chunkYXKAHQYScjs.ImageGalleryModal,
|
|
16068
16056
|
{
|
|
16069
16057
|
images: state.images,
|
|
16070
16058
|
isOpen: state.isOpen,
|
|
@@ -17433,7 +17421,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
17433
17421
|
const status = approvalStatuses[requestId] || "pending";
|
|
17434
17422
|
if (!displayInline(approvalType)) {
|
|
17435
17423
|
const required = _nullishCoalesce(toolCalls.find((c) => c.requiresApproval), () => ( toolCalls[0]));
|
|
17436
|
-
const summary = required ?
|
|
17424
|
+
const summary = required ? _chunk4YBS4HIOcjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
|
|
17437
17425
|
pendingEscalated.set(requestId, {
|
|
17438
17426
|
command: summary,
|
|
17439
17427
|
explanation: _optionalChain([required, 'optionalAccess', _563 => _563.toolExplanation]),
|
|
@@ -17466,7 +17454,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
17466
17454
|
if (!call.requiresApproval) continue;
|
|
17467
17455
|
segments = accumulator.addApprovalRequest(
|
|
17468
17456
|
requestId,
|
|
17469
|
-
|
|
17457
|
+
_chunk4YBS4HIOcjs.getCommandText.call(void 0, call),
|
|
17470
17458
|
call.toolExplanation,
|
|
17471
17459
|
approvalType,
|
|
17472
17460
|
status,
|
|
@@ -17545,7 +17533,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
17545
17533
|
if (!call.requiresApproval) continue;
|
|
17546
17534
|
segments = accumulator.addApprovalRequest(
|
|
17547
17535
|
requestId,
|
|
17548
|
-
|
|
17536
|
+
_chunk4YBS4HIOcjs.getCommandText.call(void 0, call),
|
|
17549
17537
|
call.toolExplanation,
|
|
17550
17538
|
escalatedData.approvalType,
|
|
17551
17539
|
status
|
|
@@ -19554,12 +19542,12 @@ function extractIncompleteTailState(messages) {
|
|
|
19554
19542
|
|
|
19555
19543
|
// src/components/chat/utils/process-historical-messages.ts
|
|
19556
19544
|
function getOwnerDisplayName(owner) {
|
|
19557
|
-
if (_optionalChain([owner, 'optionalAccess', _639 => _639.type]) ===
|
|
19545
|
+
if (_optionalChain([owner, 'optionalAccess', _639 => _639.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.ADMIN && owner.user) {
|
|
19558
19546
|
const { firstName, lastName } = owner.user;
|
|
19559
19547
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
19560
19548
|
if (name) return name;
|
|
19561
19549
|
}
|
|
19562
|
-
return _optionalChain([owner, 'optionalAccess', _640 => _640.type]) ===
|
|
19550
|
+
return _optionalChain([owner, 'optionalAccess', _640 => _640.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
19563
19551
|
}
|
|
19564
19552
|
function getOwnerAvatar(owner) {
|
|
19565
19553
|
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _641 => _641.user, 'optionalAccess', _642 => _642.image, 'optionalAccess', _643 => _643.imageUrl]), () => ( void 0));
|
|
@@ -19822,7 +19810,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
19822
19810
|
if (!call.requiresApproval) continue;
|
|
19823
19811
|
accumulator.addApprovalRequest(
|
|
19824
19812
|
event.requestId,
|
|
19825
|
-
|
|
19813
|
+
_chunk4YBS4HIOcjs.getCommandText.call(void 0, call),
|
|
19826
19814
|
call.toolExplanation,
|
|
19827
19815
|
approvalType,
|
|
19828
19816
|
status,
|
|
@@ -19883,7 +19871,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
19883
19871
|
if (!call.requiresApproval) continue;
|
|
19884
19872
|
accumulator.addApprovalRequest(
|
|
19885
19873
|
requestId,
|
|
19886
|
-
|
|
19874
|
+
_chunk4YBS4HIOcjs.getCommandText.call(void 0, call),
|
|
19887
19875
|
call.toolExplanation,
|
|
19888
19876
|
escalatedData.approvalType,
|
|
19889
19877
|
status
|
|
@@ -19991,10 +19979,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
19991
19979
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
19992
19980
|
return;
|
|
19993
19981
|
}
|
|
19994
|
-
const isUserMessage = _optionalChain([msg, 'access', _656 => _656.owner, 'optionalAccess', _657 => _657.type]) ===
|
|
19982
|
+
const isUserMessage = _optionalChain([msg, 'access', _656 => _656.owner, 'optionalAccess', _657 => _657.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _658 => _658.owner, 'optionalAccess', _659 => _659.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.ADMIN;
|
|
19995
19983
|
if (isUserMessage) {
|
|
19996
19984
|
flushAssistantMessage();
|
|
19997
|
-
const userAuthorType = _optionalChain([msg, 'access', _660 => _660.owner, 'optionalAccess', _661 => _661.type]) ===
|
|
19985
|
+
const userAuthorType = _optionalChain([msg, 'access', _660 => _660.owner, 'optionalAccess', _661 => _661.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
19998
19986
|
messageDataArray.forEach((data) => {
|
|
19999
19987
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
20000
19988
|
const rawContext = data.contextItems;
|
|
@@ -20045,7 +20033,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
20045
20033
|
});
|
|
20046
20034
|
const nextMsg = messages[index + 1];
|
|
20047
20035
|
const isLastMessage = index === messages.length - 1;
|
|
20048
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _664 => _664.owner, 'optionalAccess', _665 => _665.type]) ===
|
|
20036
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _664 => _664.owner, 'optionalAccess', _665 => _665.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _666 => _666.owner, 'optionalAccess', _667 => _667.type]) === _chunk3W4ASAXNcjs.OWNER_TYPE.ADMIN);
|
|
20049
20037
|
if (isLastMessage || nextIsFromUser) {
|
|
20050
20038
|
flushAssistantMessage();
|
|
20051
20039
|
}
|
|
@@ -21190,6 +21178,4 @@ function PanelResizeHandle({
|
|
|
21190
21178
|
|
|
21191
21179
|
|
|
21192
21180
|
|
|
21193
|
-
|
|
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;
|
|
21181
|
+
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.designDocStatusDisplay = designDocStatusDisplay; 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;
|