@flamingo-stack/openframe-frontend-core 0.0.288 → 0.0.289-snapshot.20260618174139
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/{chunk-6CSW5TMS.cjs → chunk-2V6RCQ5M.cjs} +23 -23
- package/dist/{chunk-6CSW5TMS.cjs.map → chunk-2V6RCQ5M.cjs.map} +1 -1
- package/dist/{chunk-GJDXIVEQ.js → chunk-4F3X2AOB.js} +2 -2
- package/dist/{chunk-TY2EB7VK.js → chunk-4XMYOZFO.js} +2 -2
- package/dist/{chunk-RG6FNZUA.cjs → chunk-7L22MF3U.cjs} +3 -3
- package/dist/{chunk-RG6FNZUA.cjs.map → chunk-7L22MF3U.cjs.map} +1 -1
- package/dist/{chunk-DVUFNTI2.cjs → chunk-AAK6IY6Y.cjs} +4 -4
- package/dist/{chunk-DVUFNTI2.cjs.map → chunk-AAK6IY6Y.cjs.map} +1 -1
- package/dist/{chunk-AISIZLZP.js → chunk-KJF7SRKH.js} +2 -2
- package/dist/{chunk-RWCA2ZQK.js → chunk-LVOBI2M5.js} +2 -2
- package/dist/{chunk-6AW25OS6.cjs → chunk-OYXZIPNM.cjs} +25 -25
- package/dist/{chunk-6AW25OS6.cjs.map → chunk-OYXZIPNM.cjs.map} +1 -1
- package/dist/{chunk-EFYXPR43.js → chunk-R4CLIWAU.js} +33 -5
- package/dist/{chunk-EFYXPR43.js.map → chunk-R4CLIWAU.js.map} +1 -1
- package/dist/{chunk-JQ4I743L.cjs → chunk-UC5GB255.cjs} +5 -5
- package/dist/{chunk-JQ4I743L.cjs.map → chunk-UC5GB255.cjs.map} +1 -1
- package/dist/{chunk-OXC72UIP.cjs → chunk-VJ4ZWD5G.cjs} +226 -198
- package/dist/chunk-VJ4ZWD5G.cjs.map +1 -0
- package/dist/{chunk-ZYLQMCHW.js → chunk-Z5QIVHJW.js} +2 -2
- package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-realtime-chunk-processor.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/chat/types/api.types.d.ts +11 -4
- package/dist/components/chat/types/api.types.d.ts.map +1 -1
- package/dist/components/chat/utils/history-merge.d.ts +5 -1
- package/dist/components/chat/utils/history-merge.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/index.cjs +46 -46
- package/dist/components/index.js +5 -5
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +45 -45
- package/dist/components/tickets/index.js +3 -3
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/components/chat/entity-cards/dispatch.tsx +42 -0
- package/src/components/chat/hooks/use-realtime-chunk-processor.ts +3 -1
- package/src/components/chat/types/api.types.ts +9 -6
- package/src/components/chat/utils/__tests__/history-merge.test.ts +62 -0
- package/src/components/chat/utils/history-merge.ts +5 -1
- package/dist/chunk-OXC72UIP.cjs.map +0 -1
- /package/dist/{chunk-GJDXIVEQ.js.map → chunk-4F3X2AOB.js.map} +0 -0
- /package/dist/{chunk-TY2EB7VK.js.map → chunk-4XMYOZFO.js.map} +0 -0
- /package/dist/{chunk-AISIZLZP.js.map → chunk-KJF7SRKH.js.map} +0 -0
- /package/dist/{chunk-RWCA2ZQK.js.map → chunk-LVOBI2M5.js.map} +0 -0
- /package/dist/{chunk-ZYLQMCHW.js.map → chunk-Z5QIVHJW.js.map} +0 -0
|
@@ -32356,12 +32356,32 @@ function HubspotTicketChatCard({
|
|
|
32356
32356
|
}
|
|
32357
32357
|
);
|
|
32358
32358
|
}
|
|
32359
|
+
function FaqChatCard({
|
|
32360
|
+
chatRef,
|
|
32361
|
+
isNewTab,
|
|
32362
|
+
discuss
|
|
32363
|
+
}) {
|
|
32364
|
+
const section = typeof _optionalChain([chatRef, 'access', _659 => _659.metadata, 'optionalAccess', _660 => _660.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
|
|
32365
|
+
const statusLabel = section && section.length > 0 ? section : "FAQ";
|
|
32366
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32367
|
+
MingoInfoCard,
|
|
32368
|
+
{
|
|
32369
|
+
title: chatRef.title,
|
|
32370
|
+
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
32371
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.QuestionCircleIcon, { size: 24 }),
|
|
32372
|
+
status: { label: statusLabel, variant: "grey" },
|
|
32373
|
+
anchorProps: _chunkEI4WALN2cjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
32374
|
+
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
32375
|
+
menuAriaLabel: "FAQ actions"
|
|
32376
|
+
}
|
|
32377
|
+
);
|
|
32378
|
+
}
|
|
32359
32379
|
function SlackChatCard({
|
|
32360
32380
|
chatRef,
|
|
32361
32381
|
isNewTab,
|
|
32362
32382
|
discuss
|
|
32363
32383
|
}) {
|
|
32364
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
32384
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _661 => _661.metadata, 'optionalAccess', _662 => _662.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
32365
32385
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
32366
32386
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
32367
32387
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -32401,7 +32421,7 @@ function GenericFinancialChatCard({
|
|
|
32401
32421
|
isNewTab,
|
|
32402
32422
|
discuss
|
|
32403
32423
|
}) {
|
|
32404
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
32424
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _663 => _663.metadata, 'optionalAccess', _664 => _664.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
32405
32425
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32406
32426
|
MingoInfoCard,
|
|
32407
32427
|
{
|
|
@@ -32470,12 +32490,12 @@ function ProductReleaseChatCard({
|
|
|
32470
32490
|
discuss
|
|
32471
32491
|
}) {
|
|
32472
32492
|
const releaseProps = buildProps(item);
|
|
32473
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
32493
|
+
const status = _optionalChain([item, 'optionalAccess', _665 => _665.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
32474
32494
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32475
32495
|
EntityMingoCard,
|
|
32476
32496
|
{
|
|
32477
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32478
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32497
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _666 => _666.title]), () => ( "")),
|
|
32498
|
+
description: _optionalChain([item, 'optionalAccess', _667 => _667.summary]) || releaseProps.formattedDate || void 0,
|
|
32479
32499
|
cover: releaseProps.coverImage || void 0,
|
|
32480
32500
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Rocket02Icon, { size: 24 }),
|
|
32481
32501
|
status,
|
|
@@ -32492,17 +32512,17 @@ function CampaignChatCard({
|
|
|
32492
32512
|
isNewTab,
|
|
32493
32513
|
discuss
|
|
32494
32514
|
}) {
|
|
32495
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
32515
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _668 => _668.goals])) ? item.goals.length : 0;
|
|
32496
32516
|
const meta = [
|
|
32497
|
-
_optionalChain([item, 'optionalAccess',
|
|
32517
|
+
_optionalChain([item, 'optionalAccess', _669 => _669.start_date]) ? _chunkD6RK5YXXcjs.formatDateShort.call(void 0, item.start_date) : null,
|
|
32498
32518
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
32499
32519
|
"Marketing campaign"
|
|
32500
32520
|
].filter(Boolean).join(" \xB7 ");
|
|
32501
32521
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32502
32522
|
EntityMingoCard,
|
|
32503
32523
|
{
|
|
32504
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32505
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
32524
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _670 => _670.name]), () => ( "")),
|
|
32525
|
+
description: meta || _optionalChain([item, 'optionalAccess', _671 => _671.description]) || void 0,
|
|
32506
32526
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Megaphone01Icon, { size: 24 }),
|
|
32507
32527
|
chatRef,
|
|
32508
32528
|
isNewTab,
|
|
@@ -32555,14 +32575,14 @@ function BlogChatCard({
|
|
|
32555
32575
|
hasEmbeddedVideo,
|
|
32556
32576
|
discuss
|
|
32557
32577
|
}) {
|
|
32558
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
32578
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _672 => _672.categories])) ? _optionalChain([item, 'access', _673 => _673.categories, 'access', _674 => _674.find, 'call', _675 => _675((c) => c && c.name), 'optionalAccess', _676 => _676.name]) : void 0;
|
|
32559
32579
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
32560
32580
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32561
32581
|
EntityMingoCard,
|
|
32562
32582
|
{
|
|
32563
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32564
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32565
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32583
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _677 => _677.title]), () => ( "")),
|
|
32584
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _678 => _678.summary]), () => ( void 0)),
|
|
32585
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _679 => _679.featured_image]), ogPlaceholder),
|
|
32566
32586
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.NewspaperIcon, { size: 24 }),
|
|
32567
32587
|
status,
|
|
32568
32588
|
chatRef,
|
|
@@ -32579,13 +32599,13 @@ function CaseStudyChatCard({
|
|
|
32579
32599
|
ogPlaceholder,
|
|
32580
32600
|
discuss
|
|
32581
32601
|
}) {
|
|
32582
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
32602
|
+
const meta = [_optionalChain([item, 'optionalAccess', _680 => _680.msp, 'optionalAccess', _681 => _681.name]), _optionalChain([item, 'optionalAccess', _682 => _682.user, 'optionalAccess', _683 => _683.full_name])].filter(Boolean).join(" \xB7 ");
|
|
32583
32603
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32584
32604
|
EntityMingoCard,
|
|
32585
32605
|
{
|
|
32586
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32587
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32588
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32606
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _684 => _684.title]), () => ( "")),
|
|
32607
|
+
description: _optionalChain([item, 'optionalAccess', _685 => _685.summary]) || meta || void 0,
|
|
32608
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _686 => _686.featured_image]), ogPlaceholder),
|
|
32589
32609
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.TrophyIcon, { size: 24 }),
|
|
32590
32610
|
status: { label: "Case study", variant: "grey" },
|
|
32591
32611
|
chatRef,
|
|
@@ -32602,13 +32622,13 @@ function CustomerInterviewChatCard({
|
|
|
32602
32622
|
ogPlaceholder,
|
|
32603
32623
|
discuss
|
|
32604
32624
|
}) {
|
|
32605
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
32625
|
+
const meta = [_optionalChain([item, 'optionalAccess', _687 => _687.user, 'optionalAccess', _688 => _688.full_name]), _optionalChain([item, 'optionalAccess', _689 => _689.msp, 'optionalAccess', _690 => _690.name])].filter(Boolean).join(" \xB7 ");
|
|
32606
32626
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32607
32627
|
EntityMingoCard,
|
|
32608
32628
|
{
|
|
32609
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32610
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32611
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32629
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _691 => _691.title]), () => ( "")),
|
|
32630
|
+
description: _optionalChain([item, 'optionalAccess', _692 => _692.video_summary]) || meta || void 0,
|
|
32631
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _693 => _693.featured_image]), ogPlaceholder),
|
|
32612
32632
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MicrophoneIcon, { size: 24 }),
|
|
32613
32633
|
status: { label: "Interview", variant: "grey" },
|
|
32614
32634
|
chatRef,
|
|
@@ -32625,13 +32645,13 @@ function InvestorUpdateChatCard({
|
|
|
32625
32645
|
ogPlaceholder,
|
|
32626
32646
|
discuss
|
|
32627
32647
|
}) {
|
|
32628
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
32648
|
+
const title = _optionalChain([item, 'optionalAccess', _694 => _694.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _695 => _695.update_number]), () => ( "?"))}`;
|
|
32629
32649
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32630
32650
|
EntityMingoCard,
|
|
32631
32651
|
{
|
|
32632
32652
|
title,
|
|
32633
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32634
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32653
|
+
description: _optionalChain([item, 'optionalAccess', _696 => _696.strategic_update]) || _optionalChain([item, 'optionalAccess', _697 => _697.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _698 => _698.period_start]), _optionalChain([item, 'optionalAccess', _699 => _699.period_end])) || void 0,
|
|
32654
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _700 => _700.featured_image]), ogPlaceholder),
|
|
32635
32655
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.PresentationLineIcon, { size: 24 }),
|
|
32636
32656
|
status: { label: "Investor update", variant: "grey" },
|
|
32637
32657
|
chatRef,
|
|
@@ -32648,12 +32668,12 @@ function OnboardingGuideChatCard({
|
|
|
32648
32668
|
ogPlaceholder,
|
|
32649
32669
|
discuss
|
|
32650
32670
|
}) {
|
|
32651
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
32671
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _701 => _701.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _702 => _702.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _703 => _703.og_image_url]), ogPlaceholder)));
|
|
32652
32672
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32653
32673
|
EntityMingoCard,
|
|
32654
32674
|
{
|
|
32655
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32656
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32675
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _704 => _704.title]), () => ( "")),
|
|
32676
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _705 => _705.summary]), () => ( _optionalChain([item, 'optionalAccess', _706 => _706.description]))), () => ( void 0)),
|
|
32657
32677
|
cover,
|
|
32658
32678
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CompassIcon, { size: 24 }),
|
|
32659
32679
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -32674,25 +32694,25 @@ function ProgramChatCard({
|
|
|
32674
32694
|
discuss
|
|
32675
32695
|
}) {
|
|
32676
32696
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MicrophoneIcon, { size: 24 });
|
|
32677
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
32697
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _707 => _707.status]) === "scheduled";
|
|
32678
32698
|
let typeMeta;
|
|
32679
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
32699
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _708 => _708.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
32680
32700
|
typeMeta = _chunkY4JNA4W6cjs.formatDurationCompact.call(void 0, item.duration_seconds);
|
|
32681
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
32701
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _709 => _709.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
32682
32702
|
typeMeta = item.location_name;
|
|
32683
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
32703
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _710 => _710.start_at])) {
|
|
32684
32704
|
const time = _chunkY4JNA4W6cjs.formatTimeWithTimezone.call(void 0, item.start_at, null);
|
|
32685
32705
|
const dur = _chunkY4JNA4W6cjs.formatDurationFromRange.call(void 0, item.start_at, item.end_at);
|
|
32686
32706
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
32687
32707
|
}
|
|
32688
|
-
const itemDate = _chunkY4JNA4W6cjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32708
|
+
const itemDate = _chunkY4JNA4W6cjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _711 => _711.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
32689
32709
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
32690
32710
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32691
32711
|
EntityMingoCard,
|
|
32692
32712
|
{
|
|
32693
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32694
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
32695
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32713
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _712 => _712.title]), () => ( "")),
|
|
32714
|
+
description: meta || _optionalChain([item, 'optionalAccess', _713 => _713.description]) || void 0,
|
|
32715
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _714 => _714.cover_url]), ogPlaceholder),
|
|
32696
32716
|
fallbackIcon: icon,
|
|
32697
32717
|
status: { label, variant: "grey" },
|
|
32698
32718
|
chatRef,
|
|
@@ -32709,10 +32729,10 @@ function RoadmapChatCard({
|
|
|
32709
32729
|
cardType,
|
|
32710
32730
|
discuss
|
|
32711
32731
|
}) {
|
|
32712
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
32713
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
32732
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _715 => _715.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
32733
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _716 => _716.customItemId]) != null;
|
|
32714
32734
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MapIcon, { size: 24 });
|
|
32715
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
32735
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _717 => _717.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
32716
32736
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
32717
32737
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
32718
32738
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -32720,10 +32740,10 @@ function RoadmapChatCard({
|
|
|
32720
32740
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32721
32741
|
EntityMingoCard,
|
|
32722
32742
|
{
|
|
32723
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32724
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32743
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _718 => _718.title]), () => ( "")),
|
|
32744
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _719 => _719.description]), () => ( void 0)),
|
|
32725
32745
|
fallbackIcon: icon,
|
|
32726
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
32746
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _720 => _720.status])),
|
|
32727
32747
|
chatRef,
|
|
32728
32748
|
isNewTab,
|
|
32729
32749
|
discuss,
|
|
@@ -32809,7 +32829,7 @@ function programRegistryEntries() {
|
|
|
32809
32829
|
discuss: opts.discuss,
|
|
32810
32830
|
configKey: cfg.configKey,
|
|
32811
32831
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
32812
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
32832
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _721 => _721.extras, 'optionalAccess', _722 => _722.buildOgPlaceholderUrl, 'optionalCall', _723 => _723(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _724 => _724.title]), () => ( "")))]), () => ( null))
|
|
32813
32833
|
}
|
|
32814
32834
|
)
|
|
32815
32835
|
};
|
|
@@ -32868,6 +32888,12 @@ var CHAT_CARD_REGISTRY = {
|
|
|
32868
32888
|
}
|
|
32869
32889
|
)
|
|
32870
32890
|
},
|
|
32891
|
+
faq: {
|
|
32892
|
+
mode: "no-fetch",
|
|
32893
|
+
label: "FAQ",
|
|
32894
|
+
bareInline: true,
|
|
32895
|
+
render: (chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FaqChatCard, { chatRef, isNewTab: opts.isNewTab, discuss: opts.discuss })
|
|
32896
|
+
},
|
|
32871
32897
|
hubspot_ticket: {
|
|
32872
32898
|
mode: "no-fetch",
|
|
32873
32899
|
label: "HubSpot ticket",
|
|
@@ -32955,8 +32981,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
32955
32981
|
chatRef,
|
|
32956
32982
|
isNewTab: opts.isNewTab,
|
|
32957
32983
|
discuss: opts.discuss,
|
|
32958
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
32959
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
32984
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _725 => _725.extras, 'optionalAccess', _726 => _726.buildOgPlaceholderUrl, 'optionalCall', _727 => _727(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _728 => _728.title]), () => ( "")))]), () => ( null)),
|
|
32985
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _729 => _729.metadata, 'optionalAccess', _730 => _730.hasEmbeddedVideo]) === true
|
|
32960
32986
|
}
|
|
32961
32987
|
)
|
|
32962
32988
|
},
|
|
@@ -32973,7 +32999,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
32973
32999
|
chatRef,
|
|
32974
33000
|
isNewTab: opts.isNewTab,
|
|
32975
33001
|
discuss: opts.discuss,
|
|
32976
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33002
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _731 => _731.extras, 'optionalAccess', _732 => _732.buildOgPlaceholderUrl, 'optionalCall', _733 => _733(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _734 => _734.title]), () => ( "")))]), () => ( null))
|
|
32977
33003
|
}
|
|
32978
33004
|
)
|
|
32979
33005
|
},
|
|
@@ -32990,7 +33016,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
32990
33016
|
chatRef,
|
|
32991
33017
|
isNewTab: opts.isNewTab,
|
|
32992
33018
|
discuss: opts.discuss,
|
|
32993
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33019
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _735 => _735.extras, 'optionalAccess', _736 => _736.buildOgPlaceholderUrl, 'optionalCall', _737 => _737(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _738 => _738.title]), () => ( "")))]), () => ( null))
|
|
32994
33020
|
}
|
|
32995
33021
|
)
|
|
32996
33022
|
},
|
|
@@ -33001,7 +33027,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33001
33027
|
bareInline: true,
|
|
33002
33028
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
33003
33029
|
render: (item, chatRef, opts) => {
|
|
33004
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33030
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _739 => _739.extras, 'optionalAccess', _740 => _740.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
33005
33031
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33006
33032
|
ProductReleaseChatCard,
|
|
33007
33033
|
{
|
|
@@ -33028,7 +33054,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33028
33054
|
chatRef,
|
|
33029
33055
|
isNewTab: opts.isNewTab,
|
|
33030
33056
|
discuss: opts.discuss,
|
|
33031
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33057
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _741 => _741.extras, 'optionalAccess', _742 => _742.buildOgPlaceholderUrl, 'optionalCall', _743 => _743(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _744 => _744.title]), () => ( "")))]), () => ( null))
|
|
33032
33058
|
}
|
|
33033
33059
|
)
|
|
33034
33060
|
},
|
|
@@ -33047,7 +33073,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33047
33073
|
chatRef,
|
|
33048
33074
|
isNewTab: opts.isNewTab,
|
|
33049
33075
|
discuss: opts.discuss,
|
|
33050
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33076
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _745 => _745.extras, 'optionalAccess', _746 => _746.buildOgPlaceholderUrl, 'optionalCall', _747 => _747(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _748 => _748.title]), () => ( "")))]), () => ( null))
|
|
33051
33077
|
}
|
|
33052
33078
|
)
|
|
33053
33079
|
},
|
|
@@ -33059,7 +33085,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33059
33085
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
33060
33086
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
33061
33087
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
33062
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
33088
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _749 => _749.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
33063
33089
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33064
33090
|
CampaignChatCard,
|
|
33065
33091
|
{
|
|
@@ -33085,12 +33111,12 @@ function ChatCardNavWrap({
|
|
|
33085
33111
|
const onClickCapture = (e) => {
|
|
33086
33112
|
if (!href) return;
|
|
33087
33113
|
const targetEl = e.target;
|
|
33088
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
33089
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
33114
|
+
if (_optionalChain([targetEl, 'optionalAccess', _750 => _750.closest, 'optionalCall', _751 => _751("button")])) return;
|
|
33115
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _752 => _752.closest, 'optionalCall', _753 => _753("a")])) return;
|
|
33090
33116
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
33091
33117
|
if (!handled) return;
|
|
33092
33118
|
e.stopPropagation();
|
|
33093
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
33119
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _754 => _754.closeChat])) panel.closeChat();
|
|
33094
33120
|
};
|
|
33095
33121
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
33096
33122
|
}
|
|
@@ -33112,7 +33138,7 @@ function ChatCardLoader({
|
|
|
33112
33138
|
title: chatRef.title,
|
|
33113
33139
|
externalUrl: chatRef.url,
|
|
33114
33140
|
targetPlatform: chatRef.targetPlatform,
|
|
33115
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
33141
|
+
path: typeof _optionalChain([chatRef, 'access', _755 => _755.metadata, 'optionalAccess', _756 => _756.path]) === "string" ? chatRef.metadata.path : null
|
|
33116
33142
|
},
|
|
33117
33143
|
_chunkY4JNA4W6cjs.sourceRowCtxFromRuntime.call(void 0, runtime, { baseRoute, chipBasePlatform })
|
|
33118
33144
|
);
|
|
@@ -33126,7 +33152,7 @@ function ChatCardLoader({
|
|
|
33126
33152
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
33127
33153
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
33128
33154
|
const { item, isLoading } = useChatCardItem(
|
|
33129
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
33155
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _757 => _757.contentRefType]), () => ( "")),
|
|
33130
33156
|
fetchEntry ? resolvedChatRef.id : ""
|
|
33131
33157
|
);
|
|
33132
33158
|
if (!entry) return null;
|
|
@@ -33157,7 +33183,7 @@ function ChatCardLoader({
|
|
|
33157
33183
|
isNewTab,
|
|
33158
33184
|
discuss
|
|
33159
33185
|
};
|
|
33160
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
33186
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _758 => _758.metadata, 'optionalAccess', _759 => _759.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
33161
33187
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33162
33188
|
ChatCardNavWrap,
|
|
33163
33189
|
{
|
|
@@ -33543,7 +33569,7 @@ function useJetStreamDialogSubscription({
|
|
|
33543
33569
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
33544
33570
|
conn: sharedConn,
|
|
33545
33571
|
wsUrl,
|
|
33546
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
33572
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _760 => _760.current, 'optionalCall', _761 => _761()]),
|
|
33547
33573
|
backoff: reconnectionBackoffRef.current,
|
|
33548
33574
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
33549
33575
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -33558,7 +33584,7 @@ function useJetStreamDialogSubscription({
|
|
|
33558
33584
|
setReconnectionCount((c) => c + 1);
|
|
33559
33585
|
}
|
|
33560
33586
|
hadConnectionBeforeRef.current = true;
|
|
33561
|
-
_optionalChain([onConnectRef, 'access',
|
|
33587
|
+
_optionalChain([onConnectRef, 'access', _762 => _762.current, 'optionalCall', _763 => _763()]);
|
|
33562
33588
|
}
|
|
33563
33589
|
if (status === "error") {
|
|
33564
33590
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -33568,7 +33594,7 @@ function useJetStreamDialogSubscription({
|
|
|
33568
33594
|
setIsConnected(false);
|
|
33569
33595
|
setIsSubscribed(false);
|
|
33570
33596
|
tearDownSubscription();
|
|
33571
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
33597
|
+
_optionalChain([onDisconnectRef, 'access', _764 => _764.current, 'optionalCall', _765 => _765()]);
|
|
33572
33598
|
}
|
|
33573
33599
|
}
|
|
33574
33600
|
});
|
|
@@ -33647,7 +33673,7 @@ function useJetStreamDialogSubscription({
|
|
|
33647
33673
|
}
|
|
33648
33674
|
subscriptionRef.current = handle;
|
|
33649
33675
|
setIsSubscribed(true);
|
|
33650
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
33676
|
+
_optionalChain([onSubscribedRef, 'access', _766 => _766.current, 'optionalCall', _767 => _767()]);
|
|
33651
33677
|
} catch (e24) {
|
|
33652
33678
|
if (!cancelled) {
|
|
33653
33679
|
setIsSubscribed(false);
|
|
@@ -33760,20 +33786,20 @@ function useNatsDialogSubscription({
|
|
|
33760
33786
|
const tearDownSubscriptions = () => {
|
|
33761
33787
|
subscriptionRefs.current.forEach((sub) => {
|
|
33762
33788
|
try {
|
|
33763
|
-
_optionalChain([sub, 'optionalAccess',
|
|
33789
|
+
_optionalChain([sub, 'optionalAccess', _768 => _768.unsubscribe, 'call', _769 => _769()]);
|
|
33764
33790
|
} catch (e26) {
|
|
33765
33791
|
}
|
|
33766
33792
|
});
|
|
33767
33793
|
subscriptionRefs.current.clear();
|
|
33768
33794
|
lastSubscribedDialogIdRef.current = null;
|
|
33769
|
-
_optionalChain([abortControllerRef, 'access',
|
|
33795
|
+
_optionalChain([abortControllerRef, 'access', _770 => _770.current, 'optionalAccess', _771 => _771.abort, 'call', _772 => _772()]);
|
|
33770
33796
|
abortControllerRef.current = null;
|
|
33771
33797
|
};
|
|
33772
33798
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
33773
33799
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
33774
33800
|
conn: sharedConn,
|
|
33775
33801
|
wsUrl,
|
|
33776
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
33802
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _773 => _773.current, 'optionalCall', _774 => _774()]),
|
|
33777
33803
|
backoff: reconnectionBackoffRef.current,
|
|
33778
33804
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
33779
33805
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -33784,7 +33810,7 @@ function useNatsDialogSubscription({
|
|
|
33784
33810
|
setReconnectionCount((c) => c + 1);
|
|
33785
33811
|
}
|
|
33786
33812
|
hadConnectionBeforeRef.current = true;
|
|
33787
|
-
_optionalChain([onConnectRef, 'access',
|
|
33813
|
+
_optionalChain([onConnectRef, 'access', _775 => _775.current, 'optionalCall', _776 => _776()]);
|
|
33788
33814
|
}
|
|
33789
33815
|
if (status === "error") {
|
|
33790
33816
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -33794,7 +33820,7 @@ function useNatsDialogSubscription({
|
|
|
33794
33820
|
setIsConnected(false);
|
|
33795
33821
|
setIsSubscribed(false);
|
|
33796
33822
|
tearDownSubscriptions();
|
|
33797
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
33823
|
+
_optionalChain([onDisconnectRef, 'access', _777 => _777.current, 'optionalCall', _778 => _778()]);
|
|
33798
33824
|
}
|
|
33799
33825
|
}
|
|
33800
33826
|
});
|
|
@@ -33825,13 +33851,13 @@ function useNatsDialogSubscription({
|
|
|
33825
33851
|
setIsSubscribed(false);
|
|
33826
33852
|
subscriptionRefs.current.forEach((sub) => {
|
|
33827
33853
|
try {
|
|
33828
|
-
_optionalChain([sub, 'optionalAccess',
|
|
33854
|
+
_optionalChain([sub, 'optionalAccess', _779 => _779.unsubscribe, 'call', _780 => _780()]);
|
|
33829
33855
|
} catch (e27) {
|
|
33830
33856
|
}
|
|
33831
33857
|
});
|
|
33832
33858
|
subscriptionRefs.current.clear();
|
|
33833
33859
|
lastSubscribedDialogIdRef.current = null;
|
|
33834
|
-
_optionalChain([abortControllerRef, 'access',
|
|
33860
|
+
_optionalChain([abortControllerRef, 'access', _781 => _781.current, 'optionalAccess', _782 => _782.abort, 'call', _783 => _783()]);
|
|
33835
33861
|
abortControllerRef.current = null;
|
|
33836
33862
|
}
|
|
33837
33863
|
return;
|
|
@@ -33843,12 +33869,12 @@ function useNatsDialogSubscription({
|
|
|
33843
33869
|
if (subscriptionRefs.current.size > 0) {
|
|
33844
33870
|
subscriptionRefs.current.forEach((sub) => {
|
|
33845
33871
|
try {
|
|
33846
|
-
_optionalChain([sub, 'optionalAccess',
|
|
33872
|
+
_optionalChain([sub, 'optionalAccess', _784 => _784.unsubscribe, 'call', _785 => _785()]);
|
|
33847
33873
|
} catch (e28) {
|
|
33848
33874
|
}
|
|
33849
33875
|
});
|
|
33850
33876
|
subscriptionRefs.current.clear();
|
|
33851
|
-
_optionalChain([abortControllerRef, 'access',
|
|
33877
|
+
_optionalChain([abortControllerRef, 'access', _786 => _786.current, 'optionalAccess', _787 => _787.abort, 'call', _788 => _788()]);
|
|
33852
33878
|
}
|
|
33853
33879
|
abortControllerRef.current = new AbortController();
|
|
33854
33880
|
const abort = abortControllerRef.current;
|
|
@@ -33880,7 +33906,7 @@ function useNatsDialogSubscription({
|
|
|
33880
33906
|
});
|
|
33881
33907
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
33882
33908
|
setIsSubscribed(true);
|
|
33883
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
33909
|
+
_optionalChain([onSubscribedRef, 'access', _789 => _789.current, 'optionalCall', _790 => _790()]);
|
|
33884
33910
|
};
|
|
33885
33911
|
if (isConnectedRef.current) {
|
|
33886
33912
|
createSubscriptions();
|
|
@@ -33890,7 +33916,7 @@ function useNatsDialogSubscription({
|
|
|
33890
33916
|
abort.abort();
|
|
33891
33917
|
subscriptionRefs.current.forEach((sub) => {
|
|
33892
33918
|
try {
|
|
33893
|
-
_optionalChain([sub, 'optionalAccess',
|
|
33919
|
+
_optionalChain([sub, 'optionalAccess', _791 => _791.unsubscribe, 'call', _792 => _792()]);
|
|
33894
33920
|
} catch (e30) {
|
|
33895
33921
|
}
|
|
33896
33922
|
});
|
|
@@ -33931,7 +33957,7 @@ function useNatsDialogSubscription({
|
|
|
33931
33957
|
});
|
|
33932
33958
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
33933
33959
|
setIsSubscribed(true);
|
|
33934
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
33960
|
+
_optionalChain([onSubscribedRef, 'access', _793 => _793.current, 'optionalCall', _794 => _794()]);
|
|
33935
33961
|
} else if (subscriptionRefs.current.size > 0) {
|
|
33936
33962
|
setIsSubscribed(true);
|
|
33937
33963
|
}
|
|
@@ -33939,10 +33965,10 @@ function useNatsDialogSubscription({
|
|
|
33939
33965
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
33940
33966
|
}
|
|
33941
33967
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
33942
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
33968
|
+
const path = _optionalChain([options, 'optionalAccess', _795 => _795.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
33943
33969
|
const u = new URL(path, apiBaseUrl);
|
|
33944
33970
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
33945
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
33971
|
+
if (_optionalChain([options, 'optionalAccess', _796 => _796.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _797 => _797.token])) {
|
|
33946
33972
|
u.searchParams.set("authorization", options.token);
|
|
33947
33973
|
}
|
|
33948
33974
|
return u.toString();
|
|
@@ -34263,8 +34289,8 @@ var MessageSegmentAccumulator = class {
|
|
|
34263
34289
|
type: "tool_execution",
|
|
34264
34290
|
data: {
|
|
34265
34291
|
...toolData,
|
|
34266
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
34267
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
34292
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _798 => _798.data, 'access', _799 => _799.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _800 => _800.toolTitle]))),
|
|
34293
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _801 => _801.parameters])
|
|
34268
34294
|
}
|
|
34269
34295
|
};
|
|
34270
34296
|
if (existingIndex !== -1) {
|
|
@@ -34288,8 +34314,8 @@ var MessageSegmentAccumulator = class {
|
|
|
34288
34314
|
if (seg.type !== "approval_batch") return seg;
|
|
34289
34315
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
34290
34316
|
if (!hasCall) return seg;
|
|
34291
|
-
const prev = _optionalChain([seg, 'access',
|
|
34292
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
34317
|
+
const prev = _optionalChain([seg, 'access', _802 => _802.data, 'access', _803 => _803.executions, 'optionalAccess', _804 => _804[execId]]);
|
|
34318
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _805 => _805.result]), success: _optionalChain([prev, 'optionalAccess', _806 => _806.success]) };
|
|
34293
34319
|
matched = true;
|
|
34294
34320
|
return {
|
|
34295
34321
|
...seg,
|
|
@@ -34411,10 +34437,10 @@ var MessageSegmentAccumulator = class {
|
|
|
34411
34437
|
const segment = {
|
|
34412
34438
|
type: "approval_request",
|
|
34413
34439
|
data: {
|
|
34414
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34415
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34440
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _807 => _807.command]) || "",
|
|
34441
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _808 => _808.explanation]),
|
|
34416
34442
|
requestId,
|
|
34417
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34443
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _809 => _809.approvalType]) || approvalType
|
|
34418
34444
|
},
|
|
34419
34445
|
status,
|
|
34420
34446
|
onApprove: this.callbacks.onApprove,
|
|
@@ -34607,7 +34633,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34607
34633
|
if (initialState.escalatedApprovals) {
|
|
34608
34634
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
34609
34635
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
34610
|
-
_optionalChain([callbacks, 'access',
|
|
34636
|
+
_optionalChain([callbacks, 'access', _810 => _810.onEscalatedApproval, 'optionalCall', _811 => _811(requestId, data)]);
|
|
34611
34637
|
});
|
|
34612
34638
|
}
|
|
34613
34639
|
hasEverStreamedRef.current = true;
|
|
@@ -34631,12 +34657,12 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34631
34657
|
if (!action) return;
|
|
34632
34658
|
const accumulator = accumulatorRef.current;
|
|
34633
34659
|
const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
|
|
34634
|
-
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access',
|
|
34660
|
+
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _812 => _812.onSegmentsUpdate, 'optionalCall', _813 => _813(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
|
|
34635
34661
|
if (action.action === "direct_message") sawDirectMessageRef.current = true;
|
|
34636
34662
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
34637
34663
|
if (isInStreamRef.current) {
|
|
34638
34664
|
isInStreamRef.current = false;
|
|
34639
|
-
_optionalChain([callbacks, 'access',
|
|
34665
|
+
_optionalChain([callbacks, 'access', _814 => _814.onStreamEnd, 'optionalCall', _815 => _815()]);
|
|
34640
34666
|
accumulator.resetSegments();
|
|
34641
34667
|
}
|
|
34642
34668
|
return;
|
|
@@ -34645,16 +34671,16 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34645
34671
|
case "message_start":
|
|
34646
34672
|
isInStreamRef.current = true;
|
|
34647
34673
|
hasEverStreamedRef.current = true;
|
|
34648
|
-
_optionalChain([callbacks, 'access',
|
|
34674
|
+
_optionalChain([callbacks, 'access', _816 => _816.onStreamStart, 'optionalCall', _817 => _817()]);
|
|
34649
34675
|
accumulator.resetSegments();
|
|
34650
34676
|
break;
|
|
34651
34677
|
case "message_end":
|
|
34652
34678
|
isInStreamRef.current = false;
|
|
34653
|
-
_optionalChain([callbacks, 'access',
|
|
34679
|
+
_optionalChain([callbacks, 'access', _818 => _818.onStreamEnd, 'optionalCall', _819 => _819()]);
|
|
34654
34680
|
accumulator.resetSegments();
|
|
34655
34681
|
break;
|
|
34656
34682
|
case "metadata":
|
|
34657
|
-
_optionalChain([callbacks, 'access',
|
|
34683
|
+
_optionalChain([callbacks, 'access', _820 => _820.onMetadata, 'optionalCall', _821 => _821(action)]);
|
|
34658
34684
|
break;
|
|
34659
34685
|
case "text": {
|
|
34660
34686
|
const segments = accumulator.appendText(action.text);
|
|
@@ -34697,7 +34723,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34697
34723
|
emitSegments(segments);
|
|
34698
34724
|
} else {
|
|
34699
34725
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
34700
|
-
_optionalChain([callbacks, 'access',
|
|
34726
|
+
_optionalChain([callbacks, 'access', _822 => _822.onEscalatedApproval, 'optionalCall', _823 => _823(requestId, { command, explanation, approvalType })]);
|
|
34701
34727
|
}
|
|
34702
34728
|
break;
|
|
34703
34729
|
}
|
|
@@ -34709,13 +34735,13 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34709
34735
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
34710
34736
|
pendingEscalatedRef.current.set(requestId, {
|
|
34711
34737
|
command: summary,
|
|
34712
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
34738
|
+
explanation: _optionalChain([required, 'optionalAccess', _824 => _824.toolExplanation]),
|
|
34713
34739
|
approvalType,
|
|
34714
34740
|
toolCalls
|
|
34715
34741
|
});
|
|
34716
|
-
_optionalChain([callbacks, 'access',
|
|
34742
|
+
_optionalChain([callbacks, 'access', _825 => _825.onEscalatedApproval, 'optionalCall', _826 => _826(requestId, {
|
|
34717
34743
|
command: summary,
|
|
34718
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
34744
|
+
explanation: _optionalChain([required, 'optionalAccess', _827 => _827.toolExplanation]),
|
|
34719
34745
|
approvalType
|
|
34720
34746
|
})]);
|
|
34721
34747
|
break;
|
|
@@ -34745,7 +34771,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34745
34771
|
const status = approved ? "approved" : "rejected";
|
|
34746
34772
|
if (escalatedData) {
|
|
34747
34773
|
pendingEscalatedRef.current.delete(requestId);
|
|
34748
|
-
_optionalChain([callbacks, 'access',
|
|
34774
|
+
_optionalChain([callbacks, 'access', _828 => _828.onEscalatedApprovalResult, 'optionalCall', _829 => _829(requestId, approved, {
|
|
34749
34775
|
command: escalatedData.command,
|
|
34750
34776
|
explanation: escalatedData.explanation,
|
|
34751
34777
|
approvalType: escalatedData.approvalType
|
|
@@ -34791,44 +34817,46 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34791
34817
|
emitSegments(accumulator.getSegments());
|
|
34792
34818
|
}
|
|
34793
34819
|
}
|
|
34794
|
-
_optionalChain([callbacks, 'access',
|
|
34820
|
+
_optionalChain([callbacks, 'access', _830 => _830.onApprovalResolved, 'optionalCall', _831 => _831(requestId, status, approvalType, resolvedByName)]);
|
|
34795
34821
|
break;
|
|
34796
34822
|
}
|
|
34797
34823
|
case "error": {
|
|
34798
34824
|
let message2;
|
|
34799
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
34825
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _832 => _832.details])) {
|
|
34800
34826
|
try {
|
|
34801
|
-
message2 = _optionalChain([JSON, 'access',
|
|
34827
|
+
message2 = _optionalChain([JSON, 'access', _833 => _833.parse, 'call', _834 => _834(action.details), 'optionalAccess', _835 => _835.error, 'optionalAccess', _836 => _836.message]);
|
|
34802
34828
|
} catch (e32) {
|
|
34803
34829
|
message2 = action.details;
|
|
34804
34830
|
}
|
|
34805
34831
|
}
|
|
34806
34832
|
const segments = accumulator.addError(action.error, message2);
|
|
34807
34833
|
emitSegments(segments);
|
|
34808
|
-
_optionalChain([callbacks, 'access',
|
|
34834
|
+
_optionalChain([callbacks, 'access', _837 => _837.onError, 'optionalCall', _838 => _838(action.error, message2)]);
|
|
34809
34835
|
break;
|
|
34810
34836
|
}
|
|
34811
34837
|
case "system": {
|
|
34812
|
-
_optionalChain([callbacks, 'access',
|
|
34838
|
+
_optionalChain([callbacks, 'access', _839 => _839.onSystemMessage, 'optionalCall', _840 => _840(action.text, { streamSeq })]);
|
|
34813
34839
|
break;
|
|
34814
34840
|
}
|
|
34815
34841
|
case "direct_message": {
|
|
34816
|
-
_optionalChain([callbacks, 'access',
|
|
34842
|
+
_optionalChain([callbacks, 'access', _841 => _841.onDirectMessage, 'optionalCall', _842 => _842(action.text, {
|
|
34817
34843
|
ownerType: action.ownerType,
|
|
34818
34844
|
displayName: action.displayName,
|
|
34819
|
-
userId: action.userId
|
|
34845
|
+
userId: action.userId,
|
|
34846
|
+
streamSeq
|
|
34820
34847
|
})]);
|
|
34821
34848
|
break;
|
|
34822
34849
|
}
|
|
34823
34850
|
case "message_request":
|
|
34824
|
-
_optionalChain([callbacks, 'access',
|
|
34851
|
+
_optionalChain([callbacks, 'access', _843 => _843.onUserMessage, 'optionalCall', _844 => _844(action.text, {
|
|
34825
34852
|
ownerType: action.ownerType,
|
|
34826
34853
|
displayName: action.displayName,
|
|
34827
|
-
userId: action.userId
|
|
34854
|
+
userId: action.userId,
|
|
34855
|
+
streamSeq
|
|
34828
34856
|
})]);
|
|
34829
34857
|
break;
|
|
34830
34858
|
case "token_usage":
|
|
34831
|
-
_optionalChain([callbacks, 'access',
|
|
34859
|
+
_optionalChain([callbacks, 'access', _845 => _845.onTokenUsage, 'optionalCall', _846 => _846(action.data)]);
|
|
34832
34860
|
break;
|
|
34833
34861
|
case "context_compaction_start": {
|
|
34834
34862
|
const standalone = !isInStreamRef.current;
|
|
@@ -34843,7 +34871,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34843
34871
|
break;
|
|
34844
34872
|
}
|
|
34845
34873
|
case "dialog_closed":
|
|
34846
|
-
_optionalChain([callbacks, 'access',
|
|
34874
|
+
_optionalChain([callbacks, 'access', _847 => _847.onDialogClosed, 'optionalCall', _848 => _848()]);
|
|
34847
34875
|
break;
|
|
34848
34876
|
default:
|
|
34849
34877
|
break;
|
|
@@ -34905,7 +34933,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
34905
34933
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
34906
34934
|
if (!cancelled) setCommands(next);
|
|
34907
34935
|
} catch (err) {
|
|
34908
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
34936
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _849 => _849.name]) !== "AbortError") {
|
|
34909
34937
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
34910
34938
|
}
|
|
34911
34939
|
} finally {
|
|
@@ -34924,7 +34952,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
34924
34952
|
const query = _reactquery.useQuery.call(void 0, {
|
|
34925
34953
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
34926
34954
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
34927
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
34955
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _850 => _850.enabled]), () => ( true)),
|
|
34928
34956
|
staleTime: Infinity,
|
|
34929
34957
|
gcTime: Infinity
|
|
34930
34958
|
});
|
|
@@ -34954,13 +34982,13 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
|
34954
34982
|
}
|
|
34955
34983
|
const data = await res.json();
|
|
34956
34984
|
return {
|
|
34957
|
-
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
34958
|
-
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
34959
|
-
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
34985
|
+
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _851 => _851.greeting]), () => ( null)),
|
|
34986
|
+
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _852 => _852.enabledRagTableIds]), () => ( [])),
|
|
34987
|
+
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _853 => _853.suggestedQueries]), () => ( []))
|
|
34960
34988
|
};
|
|
34961
34989
|
}
|
|
34962
34990
|
function useEmptyStateConfig(emptyStateUrl, options) {
|
|
34963
|
-
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
34991
|
+
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _854 => _854.enabled]), () => ( true))) && !!emptyStateUrl;
|
|
34964
34992
|
const query = _reactquery.useQuery.call(void 0, {
|
|
34965
34993
|
queryKey: ["chat-empty-state", emptyStateUrl],
|
|
34966
34994
|
queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
|
|
@@ -34985,7 +35013,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
34985
35013
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
34986
35014
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
34987
35015
|
return new Promise((resolve, reject) => {
|
|
34988
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
35016
|
+
if (_optionalChain([signal, 'optionalAccess', _855 => _855.aborted])) {
|
|
34989
35017
|
reject(new Error("Upload cancelled"));
|
|
34990
35018
|
return;
|
|
34991
35019
|
}
|
|
@@ -34999,7 +35027,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
34999
35027
|
xhr.removeEventListener("error", handleError);
|
|
35000
35028
|
xhr.removeEventListener("abort", handleAbort);
|
|
35001
35029
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
35002
|
-
_optionalChain([signal, 'optionalAccess',
|
|
35030
|
+
_optionalChain([signal, 'optionalAccess', _856 => _856.removeEventListener, 'call', _857 => _857("abort", handleSignalAbort)]);
|
|
35003
35031
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
35004
35032
|
};
|
|
35005
35033
|
const handleProgress = (event) => {
|
|
@@ -35035,7 +35063,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
35035
35063
|
const handleSignalAbort = () => {
|
|
35036
35064
|
xhr.abort();
|
|
35037
35065
|
};
|
|
35038
|
-
_optionalChain([signal, 'optionalAccess',
|
|
35066
|
+
_optionalChain([signal, 'optionalAccess', _858 => _858.addEventListener, 'call', _859 => _859("abort", handleSignalAbort, { once: true })]);
|
|
35039
35067
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
35040
35068
|
xhr.addEventListener("load", handleLoad);
|
|
35041
35069
|
xhr.addEventListener("error", handleError);
|
|
@@ -35079,12 +35107,12 @@ function useChatAttachments() {
|
|
|
35079
35107
|
try {
|
|
35080
35108
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
35081
35109
|
} catch (err) {
|
|
35082
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35110
|
+
if (_optionalChain([ctrl, 'optionalAccess', _860 => _860.signal, 'access', _861 => _861.aborted])) return;
|
|
35083
35111
|
throw new Error(
|
|
35084
35112
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
35085
35113
|
);
|
|
35086
35114
|
}
|
|
35087
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35115
|
+
if (_optionalChain([ctrl, 'optionalAccess', _862 => _862.signal, 'access', _863 => _863.aborted])) return;
|
|
35088
35116
|
if (!sniffed) {
|
|
35089
35117
|
throw new Error("Unrecognized file format");
|
|
35090
35118
|
}
|
|
@@ -35098,7 +35126,7 @@ function useChatAttachments() {
|
|
|
35098
35126
|
const urlResp = await _chunkYETA25JWcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
35099
35127
|
method: "POST",
|
|
35100
35128
|
headers: { "Content-Type": "application/json" },
|
|
35101
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
35129
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _864 => _864.signal]),
|
|
35102
35130
|
body: JSON.stringify({
|
|
35103
35131
|
fileName: att.file.name,
|
|
35104
35132
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -35124,9 +35152,9 @@ function useChatAttachments() {
|
|
|
35124
35152
|
(pct) => {
|
|
35125
35153
|
updateOne(att.id, { progress: pct });
|
|
35126
35154
|
},
|
|
35127
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
35155
|
+
_optionalChain([ctrl, 'optionalAccess', _865 => _865.signal])
|
|
35128
35156
|
);
|
|
35129
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35157
|
+
if (_optionalChain([ctrl, 'optionalAccess', _866 => _866.signal, 'access', _867 => _867.aborted])) return;
|
|
35130
35158
|
updateOne(att.id, {
|
|
35131
35159
|
status: "ready",
|
|
35132
35160
|
progress: 100,
|
|
@@ -35134,7 +35162,7 @@ function useChatAttachments() {
|
|
|
35134
35162
|
viewToken: mintData.viewToken
|
|
35135
35163
|
});
|
|
35136
35164
|
} catch (err) {
|
|
35137
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35165
|
+
if (_optionalChain([ctrl, 'optionalAccess', _868 => _868.signal, 'access', _869 => _869.aborted])) return;
|
|
35138
35166
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
35139
35167
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
35140
35168
|
} finally {
|
|
@@ -35285,7 +35313,7 @@ var ANON_DEFAULTS = {
|
|
|
35285
35313
|
function useResolveChatIdentity(enabled) {
|
|
35286
35314
|
const runtime = _chunkAQOWFSMBcjs.useRequiredChatRuntime.call(void 0, );
|
|
35287
35315
|
const url = runtime.endpoints.identityUrl;
|
|
35288
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([_chunkYETA25JWcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess',
|
|
35316
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([_chunkYETA25JWcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _870 => _870.email]), () => ( null));
|
|
35289
35317
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
35290
35318
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
35291
35319
|
_react.useEffect.call(void 0, () => {
|
|
@@ -35373,7 +35401,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
35373
35401
|
yield chunk;
|
|
35374
35402
|
}
|
|
35375
35403
|
} catch (err) {
|
|
35376
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
35404
|
+
if (_optionalChain([err, 'optionalAccess', _871 => _871.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
35377
35405
|
return;
|
|
35378
35406
|
}
|
|
35379
35407
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -35424,7 +35452,7 @@ function useChat({
|
|
|
35424
35452
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
35425
35453
|
onMessagesChangeRef.current = onMessagesChange;
|
|
35426
35454
|
_react.useEffect.call(void 0, () => {
|
|
35427
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
35455
|
+
_optionalChain([onMessagesChangeRef, 'access', _872 => _872.current, 'optionalCall', _873 => _873(messages)]);
|
|
35428
35456
|
}, [messages]);
|
|
35429
35457
|
const {
|
|
35430
35458
|
streamMessage,
|
|
@@ -35461,7 +35489,7 @@ function useChat({
|
|
|
35461
35489
|
name: "You",
|
|
35462
35490
|
content: text,
|
|
35463
35491
|
timestamp: /* @__PURE__ */ new Date(),
|
|
35464
|
-
..._optionalChain([options, 'optionalAccess',
|
|
35492
|
+
..._optionalChain([options, 'optionalAccess', _874 => _874.hidden]) ? { hidden: true } : {}
|
|
35465
35493
|
};
|
|
35466
35494
|
addMessage(userMessage);
|
|
35467
35495
|
setIsTyping(true);
|
|
@@ -35523,7 +35551,7 @@ function useChat({
|
|
|
35523
35551
|
currentTextSegment = "";
|
|
35524
35552
|
}
|
|
35525
35553
|
const seg = segment;
|
|
35526
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
35554
|
+
const proposalId = _optionalChain([seg, 'access', _875 => _875.data, 'optionalAccess', _876 => _876.requestId]);
|
|
35527
35555
|
const updateApprovalMessage = (transform) => {
|
|
35528
35556
|
setMessages((prev) => {
|
|
35529
35557
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -35532,7 +35560,7 @@ function useChat({
|
|
|
35532
35560
|
if (!Array.isArray(m.content)) continue;
|
|
35533
35561
|
const segments = m.content;
|
|
35534
35562
|
const hasMatch = segments.some(
|
|
35535
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35563
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _877 => _877.data, 'optionalAccess', _878 => _878.requestId]) === proposalId
|
|
35536
35564
|
);
|
|
35537
35565
|
if (!hasMatch) continue;
|
|
35538
35566
|
const next = [...prev];
|
|
@@ -35574,11 +35602,11 @@ function useChat({
|
|
|
35574
35602
|
if (!Array.isArray(m.content)) continue;
|
|
35575
35603
|
const segments = m.content;
|
|
35576
35604
|
const hasMatch = segments.some(
|
|
35577
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35605
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _879 => _879.data, 'optionalAccess', _880 => _880.requestId]) === decision.proposalId
|
|
35578
35606
|
);
|
|
35579
35607
|
if (!hasMatch) continue;
|
|
35580
35608
|
const flipped = segments.map(
|
|
35581
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35609
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _881 => _881.data, 'optionalAccess', _882 => _882.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
35582
35610
|
);
|
|
35583
35611
|
const next = [...prev];
|
|
35584
35612
|
next[i] = { ...m, content: flipped };
|
|
@@ -35740,8 +35768,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
35740
35768
|
})),
|
|
35741
35769
|
{ role: "user", content: message2 }
|
|
35742
35770
|
];
|
|
35743
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
35744
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
35771
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _883 => _883.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
35772
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _884 => _884.approvalAction]) ? {
|
|
35745
35773
|
proposal_id: extra.approvalAction.proposalId,
|
|
35746
35774
|
action: extra.approvalAction.action,
|
|
35747
35775
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -35750,8 +35778,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
35750
35778
|
}))
|
|
35751
35779
|
} : {
|
|
35752
35780
|
messages: apiMessages,
|
|
35753
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
35754
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
35781
|
+
..._optionalChain([extra, 'optionalAccess', _885 => _885.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
35782
|
+
..._optionalChain([extra, 'optionalAccess', _886 => _886.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
35755
35783
|
};
|
|
35756
35784
|
const response = await _chunkYETA25JWcjs.embedAuthedFetch.call(void 0, targetPath, {
|
|
35757
35785
|
method: "POST",
|
|
@@ -35761,7 +35789,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
35761
35789
|
if (!response.ok) {
|
|
35762
35790
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
35763
35791
|
}
|
|
35764
|
-
const reader = _optionalChain([response, 'access',
|
|
35792
|
+
const reader = _optionalChain([response, 'access', _887 => _887.body, 'optionalAccess', _888 => _888.getReader, 'call', _889 => _889()]);
|
|
35765
35793
|
if (!reader) throw new Error("No response body");
|
|
35766
35794
|
const decoder = new TextDecoder();
|
|
35767
35795
|
let buffer = "";
|
|
@@ -35844,7 +35872,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
35844
35872
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
35845
35873
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
35846
35874
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
35847
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
35875
|
+
if (_optionalChain([card, 'optionalAccess', _890 => _890.ref, 'optionalAccess', _891 => _891.id]) && _optionalChain([card, 'optionalAccess', _892 => _892.type])) {
|
|
35848
35876
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
35849
35877
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
35850
35878
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -35857,8 +35885,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
35857
35885
|
willAutoContinue: meta.willAutoContinue === true,
|
|
35858
35886
|
...toolName ? { toolName } : {},
|
|
35859
35887
|
...result ? { result } : {},
|
|
35860
|
-
..._optionalChain([card, 'optionalAccess',
|
|
35861
|
-
..._optionalChain([card, 'optionalAccess',
|
|
35888
|
+
..._optionalChain([card, 'optionalAccess', _893 => _893.marker]) ? { marker: card.marker } : {},
|
|
35889
|
+
..._optionalChain([card, 'optionalAccess', _894 => _894.ref]) ? { cardRef: card.ref } : {},
|
|
35862
35890
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
35863
35891
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
35864
35892
|
};
|
|
@@ -35977,7 +36005,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
|
|
|
35977
36005
|
var chatStorageKey = (source) => {
|
|
35978
36006
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
35979
36007
|
const auth = _chunkYETA25JWcjs.getEmbedProxyAuth.call(void 0, );
|
|
35980
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
36008
|
+
if (_optionalChain([auth, 'optionalAccess', _895 => _895.email])) {
|
|
35981
36009
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
35982
36010
|
}
|
|
35983
36011
|
return base;
|
|
@@ -36032,7 +36060,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36032
36060
|
const { active = true } = runtimeOptions;
|
|
36033
36061
|
const runtime = _chunkAQOWFSMBcjs.useRequiredChatRuntime.call(void 0, );
|
|
36034
36062
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
36035
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
36063
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _896 => _896.tableIdForDocumentType]), () => ( _chunkY4JNA4W6cjs.defaultTableIdForDocumentType));
|
|
36036
36064
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
36037
36065
|
if (persistedRef.current === null) {
|
|
36038
36066
|
pruneStaleChatStorage(source);
|
|
@@ -36137,7 +36165,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36137
36165
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
36138
36166
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
36139
36167
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
36140
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
36168
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _897 => _897.current, 'access', _898 => _898.get, 'call', _899 => _899(lookupIdx), 'optionalAccess', _900 => _900.scrollAnchor]), () => ( void 0));
|
|
36141
36169
|
}
|
|
36142
36170
|
return {
|
|
36143
36171
|
id: m.id,
|
|
@@ -36185,7 +36213,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36185
36213
|
);
|
|
36186
36214
|
return;
|
|
36187
36215
|
}
|
|
36188
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
36216
|
+
const refSlug = typeof _optionalChain([reference, 'access', _901 => _901.metadata, 'optionalAccess', _902 => _902.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
36189
36217
|
const queryValue = refSlug || _chunkD6RK5YXXcjs.sanitizeTitleForChat.call(void 0, reference.title) || reference.id;
|
|
36190
36218
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
36191
36219
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -36257,18 +36285,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36257
36285
|
clearMessages,
|
|
36258
36286
|
streamingPhase,
|
|
36259
36287
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
36260
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36261
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36262
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36288
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _903 => _903.provider]), () => ( null)),
|
|
36289
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _904 => _904.modelLabel]), () => ( null)),
|
|
36290
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _905 => _905.contextWindowMaxTokens]), () => ( null)),
|
|
36263
36291
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
36264
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36292
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _906 => _906.inputTokens]), () => ( null)),
|
|
36265
36293
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
36266
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36294
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _907 => _907.outputTokens]), () => ( null)),
|
|
36267
36295
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
36268
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36296
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _908 => _908.cacheHitRatePct]), () => ( null)),
|
|
36269
36297
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
36270
36298
|
* token counts). null until the trailing usage frame lands. */
|
|
36271
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36299
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _909 => _909.breakdown]), () => ( null)),
|
|
36272
36300
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
36273
36301
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
36274
36302
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -36326,15 +36354,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
36326
36354
|
|
|
36327
36355
|
// src/components/chat/utils/process-historical-messages.ts
|
|
36328
36356
|
function getOwnerDisplayName(owner) {
|
|
36329
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
36357
|
+
if (_optionalChain([owner, 'optionalAccess', _910 => _910.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
36330
36358
|
const { firstName, lastName } = owner.user;
|
|
36331
36359
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
36332
36360
|
if (name) return name;
|
|
36333
36361
|
}
|
|
36334
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
36362
|
+
return _optionalChain([owner, 'optionalAccess', _911 => _911.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
36335
36363
|
}
|
|
36336
36364
|
function getOwnerAvatar(owner) {
|
|
36337
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
36365
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _912 => _912.user, 'optionalAccess', _913 => _913.image, 'optionalAccess', _914 => _914.imageUrl]), () => ( void 0));
|
|
36338
36366
|
}
|
|
36339
36367
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
36340
36368
|
messageDataArray.forEach((data) => {
|
|
@@ -36397,10 +36425,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
36397
36425
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
36398
36426
|
return;
|
|
36399
36427
|
}
|
|
36400
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
36428
|
+
const isUserMessage = _optionalChain([msg, 'access', _915 => _915.owner, 'optionalAccess', _916 => _916.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _917 => _917.owner, 'optionalAccess', _918 => _918.type]) === OWNER_TYPE.ADMIN;
|
|
36401
36429
|
if (isUserMessage) {
|
|
36402
36430
|
flushAssistantMessage();
|
|
36403
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
36431
|
+
const userAuthorType = _optionalChain([msg, 'access', _919 => _919.owner, 'optionalAccess', _920 => _920.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
36404
36432
|
messageDataArray.forEach((data) => {
|
|
36405
36433
|
if (data.type === _chunkD6RK5YXXcjs.MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
36406
36434
|
processedMessages.push({
|
|
@@ -36425,7 +36453,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
36425
36453
|
});
|
|
36426
36454
|
const nextMsg = messages[index + 1];
|
|
36427
36455
|
const isLastMessage = index === messages.length - 1;
|
|
36428
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
36456
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _921 => _921.owner, 'optionalAccess', _922 => _922.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _923 => _923.owner, 'optionalAccess', _924 => _924.type]) === OWNER_TYPE.ADMIN);
|
|
36429
36457
|
if (isLastMessage || nextIsFromUser) {
|
|
36430
36458
|
flushAssistantMessage();
|
|
36431
36459
|
}
|
|
@@ -36535,7 +36563,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36535
36563
|
}
|
|
36536
36564
|
}
|
|
36537
36565
|
} else {
|
|
36538
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36566
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _925 => _925.set, 'call', _926 => _926(data.approvalRequestId, {
|
|
36539
36567
|
command: data.command || "",
|
|
36540
36568
|
explanation: data.explanation,
|
|
36541
36569
|
approvalType,
|
|
@@ -36549,8 +36577,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36549
36577
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
36550
36578
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
36551
36579
|
const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
|
|
36552
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36553
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
36580
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _927 => _927.get, 'call', _928 => _928(data.approvalRequestId)]);
|
|
36581
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _929 => _929.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
36554
36582
|
if (batchApprovalsEnabled) {
|
|
36555
36583
|
accumulator.addApprovalBatch(
|
|
36556
36584
|
data.approvalRequestId,
|
|
@@ -36572,7 +36600,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36572
36600
|
);
|
|
36573
36601
|
}
|
|
36574
36602
|
}
|
|
36575
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36603
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _930 => _930.delete, 'call', _931 => _931(data.approvalRequestId)]);
|
|
36576
36604
|
break;
|
|
36577
36605
|
}
|
|
36578
36606
|
if (escalatedData) {
|
|
@@ -36581,7 +36609,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36581
36609
|
explanation: escalatedData.explanation,
|
|
36582
36610
|
approvalType: escalatedData.approvalType
|
|
36583
36611
|
});
|
|
36584
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36612
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _932 => _932.delete, 'call', _933 => _933(data.approvalRequestId)]);
|
|
36585
36613
|
}
|
|
36586
36614
|
const before = accumulator.getSegments();
|
|
36587
36615
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
|
|
@@ -36597,9 +36625,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36597
36625
|
case _chunkD6RK5YXXcjs.MESSAGE_TYPE.ERROR:
|
|
36598
36626
|
if ("error" in data) {
|
|
36599
36627
|
let message2;
|
|
36600
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
36628
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _934 => _934.details])) {
|
|
36601
36629
|
try {
|
|
36602
|
-
message2 = _optionalChain([JSON, 'access',
|
|
36630
|
+
message2 = _optionalChain([JSON, 'access', _935 => _935.parse, 'call', _936 => _936(data.details), 'optionalAccess', _937 => _937.error, 'optionalAccess', _938 => _938.message]);
|
|
36603
36631
|
} catch (e39) {
|
|
36604
36632
|
message2 = data.details;
|
|
36605
36633
|
}
|
|
@@ -36682,10 +36710,10 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
36682
36710
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
36683
36711
|
return;
|
|
36684
36712
|
}
|
|
36685
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
36713
|
+
const isUserMessage = _optionalChain([msg, 'access', _939 => _939.owner, 'optionalAccess', _940 => _940.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _941 => _941.owner, 'optionalAccess', _942 => _942.type]) === OWNER_TYPE.ADMIN;
|
|
36686
36714
|
if (isUserMessage) {
|
|
36687
36715
|
flushAssistantMessage();
|
|
36688
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
36716
|
+
const userAuthorType = _optionalChain([msg, 'access', _943 => _943.owner, 'optionalAccess', _944 => _944.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
36689
36717
|
messageDataArray.forEach((data) => {
|
|
36690
36718
|
if (data.type === _chunkD6RK5YXXcjs.MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
36691
36719
|
processedMessages.push({
|
|
@@ -36710,7 +36738,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
36710
36738
|
});
|
|
36711
36739
|
const nextMsg = messages[index + 1];
|
|
36712
36740
|
const isLastMessage = index === messages.length - 1;
|
|
36713
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
36741
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _945 => _945.owner, 'optionalAccess', _946 => _946.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _947 => _947.owner, 'optionalAccess', _948 => _948.type]) === OWNER_TYPE.ADMIN);
|
|
36714
36742
|
if (isLastMessage || nextIsFromUser) {
|
|
36715
36743
|
flushAssistantMessage();
|
|
36716
36744
|
}
|
|
@@ -37048,7 +37076,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
37048
37076
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
37049
37077
|
const sendMessage = _react.useCallback.call(void 0,
|
|
37050
37078
|
async (text, sendOptions) => {
|
|
37051
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
37079
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _949 => _949.hidden]), () => ( false));
|
|
37052
37080
|
setMessages((prev) => [
|
|
37053
37081
|
...prev,
|
|
37054
37082
|
{
|
|
@@ -37212,11 +37240,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
37212
37240
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
37213
37241
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
37214
37242
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
37215
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
37216
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
37217
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37218
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37219
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37243
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _950 => _950.provider]), () => ( modelProvider)), () => ( null)),
|
|
37244
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _951 => _951.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
37245
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _952 => _952.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _953 => _953.contextWindowMaxTokens]))), () => ( null)),
|
|
37246
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _954 => _954.inputTokensSize]), () => ( null)),
|
|
37247
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _955 => _955.outputTokensSize]), () => ( null)),
|
|
37220
37248
|
currentCacheHitRatePct: null,
|
|
37221
37249
|
currentUsageBreakdown: null,
|
|
37222
37250
|
// Dialog management
|
|
@@ -37464,7 +37492,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
37464
37492
|
break;
|
|
37465
37493
|
case "approval_batch": {
|
|
37466
37494
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
37467
|
-
(c) => _optionalChain([segment, 'access',
|
|
37495
|
+
(c) => _optionalChain([segment, 'access', _956 => _956.data, 'access', _957 => _957.executions, 'optionalAccess', _958 => _958[c.toolExecutionRequestId], 'optionalAccess', _959 => _959.status]) === "done"
|
|
37468
37496
|
);
|
|
37469
37497
|
if (segment.status !== "rejected" && !allDone) {
|
|
37470
37498
|
hasIncompleteState = true;
|
|
@@ -37489,7 +37517,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
37489
37517
|
}
|
|
37490
37518
|
|
|
37491
37519
|
// src/components/chat/utils/history-merge.ts
|
|
37492
|
-
var SYNTHETIC_REALTIME_ID_PREFIXES = ["assistant-", "user-", "error-"];
|
|
37520
|
+
var SYNTHETIC_REALTIME_ID_PREFIXES = ["assistant-", "user-", "direct-", "system-", "error-"];
|
|
37493
37521
|
function isSyntheticRealtimeId(id) {
|
|
37494
37522
|
return SYNTHETIC_REALTIME_ID_PREFIXES.some((prefix) => id.startsWith(prefix));
|
|
37495
37523
|
}
|
|
@@ -37532,20 +37560,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
37532
37560
|
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
37533
37561
|
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
37534
37562
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
37535
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
37536
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
37563
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _960 => _960.role]) === "assistant" ? trailing : null;
|
|
37564
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _961 => _961.content, 'access', _962 => _962.find, 'call', _963 => _963((s) => s.type === "approval_batch"), 'optionalAccess', _964 => _964.data, 'optionalAccess', _965 => _965.approvalRequestId]), () => ( null)) : null;
|
|
37537
37565
|
let processedToUse = processedHistory;
|
|
37538
37566
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
37539
37567
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
37540
37568
|
if (historyBatchId) {
|
|
37541
37569
|
const batchTwins = existingMessages.filter(
|
|
37542
37570
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
37543
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
37571
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _966 => _966.data, 'optionalAccess', _967 => _967.approvalRequestId]) === historyBatchId
|
|
37544
37572
|
)
|
|
37545
37573
|
);
|
|
37546
37574
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
37547
37575
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
37548
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
37576
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _968 => _968.content])) ? historyTrailingAssistant.content.length : 0;
|
|
37549
37577
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
37550
37578
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
37551
37579
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -37561,16 +37589,16 @@ function mergeHistoryWithRealtime(input) {
|
|
|
37561
37589
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
37562
37590
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
37563
37591
|
if (processedIds.has(m.id)) return false;
|
|
37564
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
37592
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _969 => _969.has, 'call', _970 => _970(m.id)])) return false;
|
|
37565
37593
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
37566
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
37594
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _971 => _971.timestamp, 'optionalAccess', _972 => _972.getTime, 'call', _973 => _973()]), () => ( 0))) <= historyFetchedAt;
|
|
37567
37595
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
37568
37596
|
}
|
|
37569
37597
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
37570
37598
|
if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
|
|
37571
37599
|
return false;
|
|
37572
37600
|
}
|
|
37573
|
-
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
37601
|
+
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _974 => _974.timestamp, 'optionalAccess', _975 => _975.getTime, 'call', _976 => _976()]), () => ( 0))) <= historyFetchedAt;
|
|
37574
37602
|
if (covered) return false;
|
|
37575
37603
|
}
|
|
37576
37604
|
return true;
|
|
@@ -37790,7 +37818,7 @@ function useChatDialogManager({
|
|
|
37790
37818
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
37791
37819
|
if (restoreTarget) {
|
|
37792
37820
|
try {
|
|
37793
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
37821
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _977 => _977(restoreTarget.id)]);
|
|
37794
37822
|
} catch (err) {
|
|
37795
37823
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
37796
37824
|
return;
|
|
@@ -38191,7 +38219,7 @@ function EmbeddableChatInner({
|
|
|
38191
38219
|
}),
|
|
38192
38220
|
[commandsUrl]
|
|
38193
38221
|
);
|
|
38194
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
38222
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _978 => _978.firstName, 'optionalAccess', _979 => _979.trim, 'call', _980 => _980()]) || _optionalChain([identityUser, 'optionalAccess', _981 => _981.name, 'optionalAccess', _982 => _982.split, 'call', _983 => _983(" "), 'access', _984 => _984[0], 'optionalAccess', _985 => _985.trim, 'call', _986 => _986()]) || void 0;
|
|
38195
38223
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
38196
38224
|
if (modes) return modes;
|
|
38197
38225
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -38200,17 +38228,17 @@ function EmbeddableChatInner({
|
|
|
38200
38228
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
38201
38229
|
if (mingoState) {
|
|
38202
38230
|
return {
|
|
38203
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38204
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38205
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38206
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38231
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _987 => _987.canRename]), () => ( false)),
|
|
38232
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _988 => _988.canArchive]), () => ( false)),
|
|
38233
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _989 => _989.fetchArchivedDialogs]),
|
|
38234
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _990 => _990.unarchiveDialog])
|
|
38207
38235
|
};
|
|
38208
38236
|
}
|
|
38209
38237
|
return {
|
|
38210
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
38211
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
38212
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
38213
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
38238
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _991 => _991.mingo, 'optionalAccess', _992 => _992.renameDialog]),
|
|
38239
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _993 => _993.mingo, 'optionalAccess', _994 => _994.archiveDialog]),
|
|
38240
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _995 => _995.mingo, 'optionalAccess', _996 => _996.fetchArchivedDialogs]),
|
|
38241
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _997 => _997.mingo, 'optionalAccess', _998 => _998.unarchiveDialog])
|
|
38214
38242
|
};
|
|
38215
38243
|
}, [mingoState, mingoDialogCapabilities, effectiveModes]);
|
|
38216
38244
|
const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
|
|
@@ -38222,7 +38250,7 @@ function EmbeddableChatInner({
|
|
|
38222
38250
|
if (controlledActiveMode === void 0) {
|
|
38223
38251
|
setUncontrolledActiveMode(next);
|
|
38224
38252
|
}
|
|
38225
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
38253
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _999 => _999(next)]);
|
|
38226
38254
|
},
|
|
38227
38255
|
[controlledActiveMode, onActiveModeChange]
|
|
38228
38256
|
);
|
|
@@ -38276,7 +38304,7 @@ function EmbeddableChatInner({
|
|
|
38276
38304
|
clear: clearAttachments
|
|
38277
38305
|
} = useChatAttachments();
|
|
38278
38306
|
const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
|
|
38279
|
-
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
38307
|
+
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1000 => _1000.maxItems]), () => ( 10));
|
|
38280
38308
|
const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
|
|
38281
38309
|
const [contextItems, setContextItems] = _react.useState.call(void 0, []);
|
|
38282
38310
|
const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
|
|
@@ -38300,7 +38328,7 @@ function EmbeddableChatInner({
|
|
|
38300
38328
|
);
|
|
38301
38329
|
const grows = !alreadySelected && !mentionKeyRef.current;
|
|
38302
38330
|
if (grows && contextItems.length >= contextMaxItems) return;
|
|
38303
|
-
_optionalChain([chatInputRef, 'access',
|
|
38331
|
+
_optionalChain([chatInputRef, 'access', _1001 => _1001.current, 'optionalAccess', _1002 => _1002.commitMention, 'call', _1003 => _1003(key)]);
|
|
38304
38332
|
setContextItems((prev) => {
|
|
38305
38333
|
const withoutPrevMention = mentionKeyRef.current ? prev.filter((p) => `${p.type}:${p.id}` !== mentionKeyRef.current) : prev;
|
|
38306
38334
|
const deduped = withoutPrevMention.filter(
|
|
@@ -38325,9 +38353,9 @@ function EmbeddableChatInner({
|
|
|
38325
38353
|
setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
|
|
38326
38354
|
if (mentionKeyRef.current === key) {
|
|
38327
38355
|
mentionKeyRef.current = null;
|
|
38328
|
-
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access',
|
|
38356
|
+
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1004 => _1004.current, 'optionalAccess', _1005 => _1005.getValue, 'call', _1006 => _1006()]), () => ( ""));
|
|
38329
38357
|
const next = cur.replace(`@${key}`, "").replace(/\s{2,}/g, " ").trimStart();
|
|
38330
|
-
_optionalChain([chatInputRef, 'access',
|
|
38358
|
+
_optionalChain([chatInputRef, 'access', _1007 => _1007.current, 'optionalAccess', _1008 => _1008.setValue, 'call', _1009 => _1009(next)]);
|
|
38331
38359
|
}
|
|
38332
38360
|
}, []);
|
|
38333
38361
|
const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
|
|
@@ -38344,7 +38372,7 @@ function EmbeddableChatInner({
|
|
|
38344
38372
|
}, []);
|
|
38345
38373
|
const closeContextPicker = _react.useCallback.call(void 0, () => {
|
|
38346
38374
|
if (mentionActiveRef.current) {
|
|
38347
|
-
_optionalChain([chatInputRef, 'access',
|
|
38375
|
+
_optionalChain([chatInputRef, 'access', _1010 => _1010.current, 'optionalAccess', _1011 => _1011.removeMentionTrigger, 'call', _1012 => _1012()]);
|
|
38348
38376
|
}
|
|
38349
38377
|
setContextPickerOpen(false);
|
|
38350
38378
|
setMentionQuery(null);
|
|
@@ -38353,7 +38381,7 @@ function EmbeddableChatInner({
|
|
|
38353
38381
|
setMentionQuery(query);
|
|
38354
38382
|
setContextPickerOpen(query !== null);
|
|
38355
38383
|
}, []);
|
|
38356
|
-
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
38384
|
+
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1013 => _1013.entityTypes]);
|
|
38357
38385
|
const resolveContextIcon = _react.useMemo.call(void 0, () => {
|
|
38358
38386
|
const byType = /* @__PURE__ */ new Map();
|
|
38359
38387
|
for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
|
|
@@ -38531,9 +38559,9 @@ function EmbeddableChatInner({
|
|
|
38531
38559
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
38532
38560
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
38533
38561
|
if (chatLoading) return void 0;
|
|
38534
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
38562
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1014 => _1014.sources]);
|
|
38535
38563
|
if (!sources || sources.length === 0) return void 0;
|
|
38536
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
38564
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1015 => _1015.content]) || "";
|
|
38537
38565
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
38538
38566
|
(m) => parseInt(m[1], 10)
|
|
38539
38567
|
);
|
|
@@ -38580,7 +38608,7 @@ function EmbeddableChatInner({
|
|
|
38580
38608
|
ChatPanelHeader,
|
|
38581
38609
|
{
|
|
38582
38610
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
38583
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
38611
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1016 => _1016.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
38584
38612
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
38585
38613
|
isArchivedView: isViewingArchived,
|
|
38586
38614
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -38686,7 +38714,7 @@ function EmbeddableChatInner({
|
|
|
38686
38714
|
subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
|
|
38687
38715
|
subtitleLoading: emptyStateLoading,
|
|
38688
38716
|
...guideWelcome,
|
|
38689
|
-
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess',
|
|
38717
|
+
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1017 => _1017.quickActions]), () => ( guideSuggestedActions)),
|
|
38690
38718
|
onQuickAction: (action) => {
|
|
38691
38719
|
handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
|
|
38692
38720
|
},
|
|
@@ -39434,4 +39462,4 @@ function EmbeddableChatInner({
|
|
|
39434
39462
|
|
|
39435
39463
|
|
|
39436
39464
|
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.Autocomplete = Autocomplete; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.ColorSwatch = ColorSwatch; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ONBOARDING_ICONS = ONBOARDING_ICONS; exports.resolveOnboardingIcon = resolveOnboardingIcon; exports.ONBOARDING_ICON_OPTIONS = ONBOARDING_ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.ChatMessageList = ChatMessageList; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.useChatCardItem = useChatCardItem; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
39437
|
-
//# sourceMappingURL=chunk-
|
|
39465
|
+
//# sourceMappingURL=chunk-VJ4ZWD5G.cjs.map
|