@flamingo-stack/openframe-frontend-core 0.0.553-1820.4835.1 → 0.0.553

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/{chunk-U6AQ5KII.js → chunk-25BXB4SH.js} +2 -2
  2. package/dist/{chunk-CI4VK4CU.js → chunk-3OBWO6N6.js} +2 -2
  3. package/dist/{chunk-GEQ2OM23.cjs → chunk-6WA3RI55.cjs} +11 -11
  4. package/dist/{chunk-GEQ2OM23.cjs.map → chunk-6WA3RI55.cjs.map} +1 -1
  5. package/dist/{chunk-HOIBS3NS.cjs → chunk-B5N2IG4Z.cjs} +7 -7
  6. package/dist/{chunk-HOIBS3NS.cjs.map → chunk-B5N2IG4Z.cjs.map} +1 -1
  7. package/dist/{chunk-TJZCZKQH.js → chunk-B7TI3RYG.js} +2 -2
  8. package/dist/{chunk-CYRRYCMZ.js → chunk-BUNDMGAD.js} +5 -5
  9. package/dist/{chunk-Q2OKHQVA.js → chunk-CGIZ4UGO.js} +2 -2
  10. package/dist/{chunk-EQ22DXJN.cjs → chunk-EGPI3SFI.cjs} +86 -86
  11. package/dist/{chunk-EQ22DXJN.cjs.map → chunk-EGPI3SFI.cjs.map} +1 -1
  12. package/dist/{chunk-EHVN3WZY.cjs → chunk-LL6EPMAD.cjs} +31 -31
  13. package/dist/{chunk-EHVN3WZY.cjs.map → chunk-LL6EPMAD.cjs.map} +1 -1
  14. package/dist/{chunk-Q24B44VL.js → chunk-LZGHXN2E.js} +4 -4
  15. package/dist/{chunk-37ZHOEZP.js → chunk-MSNTPZJ3.js} +2 -2
  16. package/dist/{chunk-D2QWCFVS.js → chunk-N22NG622.js} +2 -2
  17. package/dist/{chunk-2YAIHZG7.cjs → chunk-NFQEDT43.cjs} +20 -20
  18. package/dist/{chunk-2YAIHZG7.cjs.map → chunk-NFQEDT43.cjs.map} +1 -1
  19. package/dist/{chunk-4YVXX24Q.cjs → chunk-OI56TF4Y.cjs} +39 -39
  20. package/dist/{chunk-4YVXX24Q.cjs.map → chunk-OI56TF4Y.cjs.map} +1 -1
  21. package/dist/{chunk-ER5WVLXI.cjs → chunk-PWWMA3EJ.cjs} +26 -26
  22. package/dist/{chunk-ER5WVLXI.cjs.map → chunk-PWWMA3EJ.cjs.map} +1 -1
  23. package/dist/{chunk-464IOPA3.js → chunk-QOS27D5S.js} +2 -2
  24. package/dist/{chunk-UA2S6Q2Y.cjs → chunk-S7ATADRE.cjs} +14 -14
  25. package/dist/{chunk-UA2S6Q2Y.cjs.map → chunk-S7ATADRE.cjs.map} +1 -1
  26. package/dist/{chunk-CFI5Y2ZI.cjs → chunk-T7UUDSDW.cjs} +3 -3
  27. package/dist/{chunk-CFI5Y2ZI.cjs.map → chunk-T7UUDSDW.cjs.map} +1 -1
  28. package/dist/{chunk-RGEJNMQS.js → chunk-UVAB3XAB.js} +4 -4
  29. package/dist/{chunk-5UNKDNDF.cjs → chunk-V643QZFI.cjs} +4 -4
  30. package/dist/{chunk-5UNKDNDF.cjs.map → chunk-V643QZFI.cjs.map} +1 -1
  31. package/dist/{chunk-QZTUFT34.js → chunk-VYVOER73.js} +2 -2
  32. package/dist/{chunk-UQTIWINE.js → chunk-WLQER7GC.js} +6 -6
  33. package/dist/{chunk-IHH7L5JH.cjs → chunk-XBKBBKPR.cjs} +5 -5
  34. package/dist/{chunk-IHH7L5JH.cjs.map → chunk-XBKBBKPR.cjs.map} +1 -1
  35. package/dist/{chunk-5CVHZGJA.cjs → chunk-XPRFVYES.cjs} +9 -9
  36. package/dist/{chunk-5CVHZGJA.cjs.map → chunk-XPRFVYES.cjs.map} +1 -1
  37. package/dist/{chunk-NC7TI4ES.cjs → chunk-Y2WE2GOL.cjs} +62 -62
  38. package/dist/{chunk-NC7TI4ES.cjs.map → chunk-Y2WE2GOL.cjs.map} +1 -1
  39. package/dist/{chunk-4IQGMIMB.js → chunk-YI2735PG.js} +2 -2
  40. package/dist/{chunk-NBBQA443.cjs → chunk-ZGQZLUO6.cjs} +260 -258
  41. package/dist/chunk-ZGQZLUO6.cjs.map +1 -0
  42. package/dist/{chunk-W7GJZKH7.js → chunk-ZS7VC5SX.js} +3 -1
  43. package/dist/{chunk-W7GJZKH7.js.map → chunk-ZS7VC5SX.js.map} +1 -1
  44. package/dist/components/case-studies/index.cjs +8 -8
  45. package/dist/components/case-studies/index.js +2 -2
  46. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  47. package/dist/components/chat/index.cjs +2 -2
  48. package/dist/components/chat/index.js +1 -1
  49. package/dist/components/contact/index.cjs +3 -3
  50. package/dist/components/contact/index.js +2 -2
  51. package/dist/components/docs/index.cjs +5 -5
  52. package/dist/components/docs/index.js +4 -4
  53. package/dist/components/embeds/index.cjs +3 -3
  54. package/dist/components/embeds/index.js +2 -2
  55. package/dist/components/faq/index.cjs +3 -3
  56. package/dist/components/faq/index.js +2 -2
  57. package/dist/components/features/index.cjs +2 -2
  58. package/dist/components/features/index.js +1 -1
  59. package/dist/components/help-center-pages/index.cjs +22 -22
  60. package/dist/components/help-center-pages/index.js +13 -13
  61. package/dist/components/index.cjs +131 -131
  62. package/dist/components/index.js +11 -11
  63. package/dist/components/meeting-scheduler/index.cjs +28 -28
  64. package/dist/components/meeting-scheduler/index.js +3 -3
  65. package/dist/components/navigation/index.cjs +2 -2
  66. package/dist/components/navigation/index.js +1 -1
  67. package/dist/components/onboarding-guides/index.cjs +5 -5
  68. package/dist/components/onboarding-guides/index.js +4 -4
  69. package/dist/components/related-content/index.cjs +3 -3
  70. package/dist/components/related-content/index.js +2 -2
  71. package/dist/components/tickets/index.cjs +6 -6
  72. package/dist/components/tickets/index.js +5 -5
  73. package/dist/components/ui/index.cjs +2 -2
  74. package/dist/components/ui/index.js +1 -1
  75. package/dist/index.cjs +2 -2
  76. package/dist/index.js +1 -1
  77. package/package.json +1 -1
  78. package/src/components/chat/entity-cards/dispatch.tsx +2 -0
  79. package/dist/chunk-NBBQA443.cjs.map +0 -1
  80. /package/dist/{chunk-U6AQ5KII.js.map → chunk-25BXB4SH.js.map} +0 -0
  81. /package/dist/{chunk-CI4VK4CU.js.map → chunk-3OBWO6N6.js.map} +0 -0
  82. /package/dist/{chunk-TJZCZKQH.js.map → chunk-B7TI3RYG.js.map} +0 -0
  83. /package/dist/{chunk-CYRRYCMZ.js.map → chunk-BUNDMGAD.js.map} +0 -0
  84. /package/dist/{chunk-Q2OKHQVA.js.map → chunk-CGIZ4UGO.js.map} +0 -0
  85. /package/dist/{chunk-Q24B44VL.js.map → chunk-LZGHXN2E.js.map} +0 -0
  86. /package/dist/{chunk-37ZHOEZP.js.map → chunk-MSNTPZJ3.js.map} +0 -0
  87. /package/dist/{chunk-D2QWCFVS.js.map → chunk-N22NG622.js.map} +0 -0
  88. /package/dist/{chunk-464IOPA3.js.map → chunk-QOS27D5S.js.map} +0 -0
  89. /package/dist/{chunk-RGEJNMQS.js.map → chunk-UVAB3XAB.js.map} +0 -0
  90. /package/dist/{chunk-QZTUFT34.js.map → chunk-VYVOER73.js.map} +0 -0
  91. /package/dist/{chunk-UQTIWINE.js.map → chunk-WLQER7GC.js.map} +0 -0
  92. /package/dist/{chunk-4IQGMIMB.js.map → chunk-YI2735PG.js.map} +0 -0
@@ -52461,10 +52461,12 @@ function itemVideoMetadata(item) {
52461
52461
  _optionalChain([item, 'optionalAccess', _1275 => _1275.highlight_video_thumbnail]),
52462
52462
  _optionalChain([item, 'optionalAccess', _1276 => _1276.featured_image])
52463
52463
  );
52464
+ const highlightVideoPoster = pick(m.highlightVideoPoster, _optionalChain([item, 'optionalAccess', _1277 => _1277.highlight_video_thumbnail]));
52464
52465
  if (videoUrl) out.videoUrl = videoUrl;
52465
52466
  if (youtubeUrl) out.youtubeUrl = youtubeUrl;
52466
52467
  if (highlightVideoUrl) out.highlightVideoUrl = highlightVideoUrl;
52467
52468
  if (videoPoster) out.videoPoster = videoPoster;
52469
+ if (highlightVideoPoster) out.highlightVideoPoster = highlightVideoPoster;
52468
52470
  return out.videoUrl || out.youtubeUrl || out.highlightVideoUrl ? out : null;
52469
52471
  }
52470
52472
  function CardLoadFailure({
@@ -52493,15 +52495,15 @@ function fetchedItemDisplayRef(item, chatRef) {
52493
52495
  }
52494
52496
  function fetchedFaqDisplayRef(item, chatRef) {
52495
52497
  const it = item;
52496
- const answer = typeof _optionalChain([it, 'optionalAccess', _1277 => _1277.answer]) === "string" && it.answer.trim().length > 0 ? it.answer.trim() : null;
52498
+ const answer = typeof _optionalChain([it, 'optionalAccess', _1278 => _1278.answer]) === "string" && it.answer.trim().length > 0 ? it.answer.trim() : null;
52497
52499
  return {
52498
52500
  type: "faq",
52499
52501
  id: chatRef.id,
52500
52502
  sourceRepo: chatRef.sourceRepo,
52501
- title: typeof _optionalChain([it, 'optionalAccess', _1278 => _1278.question]) === "string" && it.question ? it.question : chatRef.id,
52503
+ title: typeof _optionalChain([it, 'optionalAccess', _1279 => _1279.question]) === "string" && it.question ? it.question : chatRef.id,
52502
52504
  url: _nullishCoalesce(chatRef.url, () => ( null)),
52503
52505
  ...answer ? { preview: answer.length > 400 ? `${answer.slice(0, 397)}\u2026` : answer } : {},
52504
- metadata: typeof _optionalChain([it, 'optionalAccess', _1279 => _1279.section]) === "string" && it.section ? { section: it.section } : {}
52506
+ metadata: typeof _optionalChain([it, 'optionalAccess', _1280 => _1280.section]) === "string" && it.section ? { section: it.section } : {}
52505
52507
  };
52506
52508
  }
52507
52509
  function HubspotTicketChatCard({
@@ -52509,8 +52511,8 @@ function HubspotTicketChatCard({
52509
52511
  isNewTab,
52510
52512
  discuss
52511
52513
  }) {
52512
- const status = typeof _optionalChain([chatRef, 'access', _1280 => _1280.metadata, 'optionalAccess', _1281 => _1281.status]) === "string" ? chatRef.metadata.status : void 0;
52513
- const statusLabel = typeof _optionalChain([chatRef, 'access', _1282 => _1282.metadata, 'optionalAccess', _1283 => _1283.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
52514
+ const status = typeof _optionalChain([chatRef, 'access', _1281 => _1281.metadata, 'optionalAccess', _1282 => _1282.status]) === "string" ? chatRef.metadata.status : void 0;
52515
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _1283 => _1283.metadata, 'optionalAccess', _1284 => _1284.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
52514
52516
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
52515
52517
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52516
52518
  MingoInfoCard,
@@ -52533,7 +52535,7 @@ function FaqChatCard({
52533
52535
  isNewTab,
52534
52536
  discuss
52535
52537
  }) {
52536
- const section = typeof _optionalChain([chatRef, 'access', _1284 => _1284.metadata, 'optionalAccess', _1285 => _1285.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
52538
+ const section = typeof _optionalChain([chatRef, 'access', _1285 => _1285.metadata, 'optionalAccess', _1286 => _1286.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
52537
52539
  const statusLabel = section && section.length > 0 ? section : "FAQ";
52538
52540
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52539
52541
  MingoInfoCard,
@@ -52553,7 +52555,7 @@ function SlackChatCard({
52553
52555
  isNewTab,
52554
52556
  discuss
52555
52557
  }) {
52556
- const channelName = typeof _optionalChain([chatRef, 'access', _1286 => _1286.metadata, 'optionalAccess', _1287 => _1287.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
52558
+ const channelName = typeof _optionalChain([chatRef, 'access', _1287 => _1287.metadata, 'optionalAccess', _1288 => _1288.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
52557
52559
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
52558
52560
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
52559
52561
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -52593,7 +52595,7 @@ function GenericFinancialChatCard({
52593
52595
  isNewTab,
52594
52596
  discuss
52595
52597
  }) {
52596
- const subtitle = typeof _optionalChain([chatRef, 'access', _1288 => _1288.metadata, 'optionalAccess', _1289 => _1289.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
52598
+ const subtitle = typeof _optionalChain([chatRef, 'access', _1289 => _1289.metadata, 'optionalAccess', _1290 => _1290.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
52597
52599
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52598
52600
  MingoInfoCard,
52599
52601
  {
@@ -52662,12 +52664,12 @@ function ProductReleaseChatCard({
52662
52664
  discuss
52663
52665
  }) {
52664
52666
  const releaseProps = buildProps(item);
52665
- const status = _optionalChain([item, 'optionalAccess', _1290 => _1290.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
52667
+ const status = _optionalChain([item, 'optionalAccess', _1291 => _1291.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
52666
52668
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52667
52669
  EntityMingoCard,
52668
52670
  {
52669
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1291 => _1291.title]), () => ( "")),
52670
- description: _optionalChain([item, 'optionalAccess', _1292 => _1292.summary]) || releaseProps.formattedDate || void 0,
52671
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1292 => _1292.title]), () => ( "")),
52672
+ description: _optionalChain([item, 'optionalAccess', _1293 => _1293.summary]) || releaseProps.formattedDate || void 0,
52671
52673
  cover: releaseProps.coverImage || void 0,
52672
52674
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Rocket02Icon, { size: 24 }),
52673
52675
  status,
@@ -52684,17 +52686,17 @@ function CampaignChatCard({
52684
52686
  isNewTab,
52685
52687
  discuss
52686
52688
  }) {
52687
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1293 => _1293.goals])) ? item.goals.length : 0;
52689
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1294 => _1294.goals])) ? item.goals.length : 0;
52688
52690
  const meta = [
52689
- _optionalChain([item, 'optionalAccess', _1294 => _1294.start_date]) ? formatDateShort(item.start_date) : null,
52691
+ _optionalChain([item, 'optionalAccess', _1295 => _1295.start_date]) ? formatDateShort(item.start_date) : null,
52690
52692
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
52691
52693
  "Marketing campaign"
52692
52694
  ].filter(Boolean).join(" \xB7 ");
52693
52695
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52694
52696
  EntityMingoCard,
52695
52697
  {
52696
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1295 => _1295.name]), () => ( "")),
52697
- description: meta || _optionalChain([item, 'optionalAccess', _1296 => _1296.description]) || void 0,
52698
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1296 => _1296.name]), () => ( "")),
52699
+ description: meta || _optionalChain([item, 'optionalAccess', _1297 => _1297.description]) || void 0,
52698
52700
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Megaphone01Icon, { size: 24 }),
52699
52701
  chatRef,
52700
52702
  isNewTab,
@@ -52749,14 +52751,14 @@ function BlogChatCard({
52749
52751
  hasEmbeddedVideo,
52750
52752
  discuss
52751
52753
  }) {
52752
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1297 => _1297.categories])) ? _optionalChain([item, 'access', _1298 => _1298.categories, 'access', _1299 => _1299.find, 'call', _1300 => _1300((c) => c && c.name), 'optionalAccess', _1301 => _1301.name]) : void 0;
52754
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1298 => _1298.categories])) ? _optionalChain([item, 'access', _1299 => _1299.categories, 'access', _1300 => _1300.find, 'call', _1301 => _1301((c) => c && c.name), 'optionalAccess', _1302 => _1302.name]) : void 0;
52753
52755
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
52754
52756
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52755
52757
  EntityMingoCard,
52756
52758
  {
52757
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1302 => _1302.title]), () => ( "")),
52758
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1303 => _1303.summary]), () => ( void 0)),
52759
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1304 => _1304.featured_image]), ogPlaceholder),
52759
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1303 => _1303.title]), () => ( "")),
52760
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1304 => _1304.summary]), () => ( void 0)),
52761
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1305 => _1305.featured_image]), ogPlaceholder),
52760
52762
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.NewspaperIcon, { size: 24 }),
52761
52763
  status,
52762
52764
  chatRef,
@@ -52773,13 +52775,13 @@ function CaseStudyChatCard({
52773
52775
  ogPlaceholder,
52774
52776
  discuss
52775
52777
  }) {
52776
- const meta = [_optionalChain([item, 'optionalAccess', _1305 => _1305.msp, 'optionalAccess', _1306 => _1306.name]), _optionalChain([item, 'optionalAccess', _1307 => _1307.user, 'optionalAccess', _1308 => _1308.full_name])].filter(Boolean).join(" \xB7 ");
52778
+ const meta = [_optionalChain([item, 'optionalAccess', _1306 => _1306.msp, 'optionalAccess', _1307 => _1307.name]), _optionalChain([item, 'optionalAccess', _1308 => _1308.user, 'optionalAccess', _1309 => _1309.full_name])].filter(Boolean).join(" \xB7 ");
52777
52779
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52778
52780
  EntityMingoCard,
52779
52781
  {
52780
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1309 => _1309.title]), () => ( "")),
52781
- description: _optionalChain([item, 'optionalAccess', _1310 => _1310.summary]) || meta || void 0,
52782
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1311 => _1311.featured_image]), ogPlaceholder),
52782
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1310 => _1310.title]), () => ( "")),
52783
+ description: _optionalChain([item, 'optionalAccess', _1311 => _1311.summary]) || meta || void 0,
52784
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1312 => _1312.featured_image]), ogPlaceholder),
52783
52785
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TrophyIcon, { size: 24 }),
52784
52786
  status: { label: "Case study", variant: "grey" },
52785
52787
  chatRef,
@@ -52796,13 +52798,13 @@ function CustomerInterviewChatCard({
52796
52798
  ogPlaceholder,
52797
52799
  discuss
52798
52800
  }) {
52799
- const meta = [_optionalChain([item, 'optionalAccess', _1312 => _1312.user, 'optionalAccess', _1313 => _1313.full_name]), _optionalChain([item, 'optionalAccess', _1314 => _1314.msp, 'optionalAccess', _1315 => _1315.name])].filter(Boolean).join(" \xB7 ");
52801
+ const meta = [_optionalChain([item, 'optionalAccess', _1313 => _1313.user, 'optionalAccess', _1314 => _1314.full_name]), _optionalChain([item, 'optionalAccess', _1315 => _1315.msp, 'optionalAccess', _1316 => _1316.name])].filter(Boolean).join(" \xB7 ");
52800
52802
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52801
52803
  EntityMingoCard,
52802
52804
  {
52803
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1316 => _1316.title]), () => ( "")),
52804
- description: _optionalChain([item, 'optionalAccess', _1317 => _1317.video_summary]) || meta || void 0,
52805
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1318 => _1318.featured_image]), ogPlaceholder),
52805
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1317 => _1317.title]), () => ( "")),
52806
+ description: _optionalChain([item, 'optionalAccess', _1318 => _1318.video_summary]) || meta || void 0,
52807
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1319 => _1319.featured_image]), ogPlaceholder),
52806
52808
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MicrophoneIcon, { size: 24 }),
52807
52809
  status: { label: "Interview", variant: "grey" },
52808
52810
  chatRef,
@@ -52819,13 +52821,13 @@ function InvestorUpdateChatCard({
52819
52821
  ogPlaceholder,
52820
52822
  discuss
52821
52823
  }) {
52822
- const title = _optionalChain([item, 'optionalAccess', _1319 => _1319.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1320 => _1320.update_number]), () => ( "?"))}`;
52824
+ const title = _optionalChain([item, 'optionalAccess', _1320 => _1320.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1321 => _1321.update_number]), () => ( "?"))}`;
52823
52825
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52824
52826
  EntityMingoCard,
52825
52827
  {
52826
52828
  title,
52827
- description: _optionalChain([item, 'optionalAccess', _1321 => _1321.strategic_update]) || _optionalChain([item, 'optionalAccess', _1322 => _1322.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1323 => _1323.period_start]), _optionalChain([item, 'optionalAccess', _1324 => _1324.period_end])) || void 0,
52828
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1325 => _1325.featured_image]), ogPlaceholder),
52829
+ description: _optionalChain([item, 'optionalAccess', _1322 => _1322.strategic_update]) || _optionalChain([item, 'optionalAccess', _1323 => _1323.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1324 => _1324.period_start]), _optionalChain([item, 'optionalAccess', _1325 => _1325.period_end])) || void 0,
52830
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1326 => _1326.featured_image]), ogPlaceholder),
52829
52831
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.PresentationLineIcon, { size: 24 }),
52830
52832
  status: { label: "Investor update", variant: "grey" },
52831
52833
  chatRef,
@@ -52842,12 +52844,12 @@ function OnboardingGuideChatCard({
52842
52844
  ogPlaceholder,
52843
52845
  discuss
52844
52846
  }) {
52845
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1326 => _1326.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1327 => _1327.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1328 => _1328.og_image_url]), ogPlaceholder)));
52847
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1327 => _1327.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1328 => _1328.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1329 => _1329.og_image_url]), ogPlaceholder)));
52846
52848
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52847
52849
  EntityMingoCard,
52848
52850
  {
52849
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1329 => _1329.title]), () => ( "")),
52850
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1330 => _1330.summary]), () => ( _optionalChain([item, 'optionalAccess', _1331 => _1331.description]))), () => ( void 0)),
52851
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1330 => _1330.title]), () => ( "")),
52852
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1331 => _1331.summary]), () => ( _optionalChain([item, 'optionalAccess', _1332 => _1332.description]))), () => ( void 0)),
52851
52853
  cover,
52852
52854
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CompassIcon, { size: 24 }),
52853
52855
  status: { label: "Guide", variant: "grey" },
@@ -52868,25 +52870,25 @@ function ProgramChatCard({
52868
52870
  discuss
52869
52871
  }) {
52870
52872
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MicrophoneIcon, { size: 24 });
52871
- const isScheduled = _optionalChain([item, 'optionalAccess', _1332 => _1332.status]) === "scheduled";
52873
+ const isScheduled = _optionalChain([item, 'optionalAccess', _1333 => _1333.status]) === "scheduled";
52872
52874
  let typeMeta;
52873
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1333 => _1333.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
52875
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1334 => _1334.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
52874
52876
  typeMeta = formatDurationCompact(item.duration_seconds);
52875
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1334 => _1334.location_name]) === "string" && item.location_name.trim().length > 0) {
52877
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1335 => _1335.location_name]) === "string" && item.location_name.trim().length > 0) {
52876
52878
  typeMeta = item.location_name;
52877
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1335 => _1335.start_at])) {
52879
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1336 => _1336.start_at])) {
52878
52880
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
52879
52881
  const dur = formatDurationFromRange(item.start_at, item.end_at);
52880
52882
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
52881
52883
  }
52882
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1336 => _1336.date]), () => ( null)), { fallback: "", timezone: "local" });
52884
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1337 => _1337.date]), () => ( null)), { fallback: "", timezone: "local" });
52883
52885
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
52884
52886
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52885
52887
  EntityMingoCard,
52886
52888
  {
52887
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1337 => _1337.title]), () => ( "")),
52888
- description: meta || _optionalChain([item, 'optionalAccess', _1338 => _1338.description]) || void 0,
52889
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1339 => _1339.cover_url]), ogPlaceholder),
52889
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1338 => _1338.title]), () => ( "")),
52890
+ description: meta || _optionalChain([item, 'optionalAccess', _1339 => _1339.description]) || void 0,
52891
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1340 => _1340.cover_url]), ogPlaceholder),
52890
52892
  fallbackIcon: icon,
52891
52893
  status: { label, variant: "grey" },
52892
52894
  chatRef,
@@ -52903,10 +52905,10 @@ function RoadmapChatCard({
52903
52905
  cardType,
52904
52906
  discuss
52905
52907
  }) {
52906
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1340 => _1340.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
52907
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1341 => _1341.customItemId]) != null;
52908
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1341 => _1341.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
52909
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1342 => _1342.customItemId]) != null;
52908
52910
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MapIcon, { size: 24 });
52909
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1342 => _1342.customItemId]), className: "size-6" }) : logoUrl ? (
52911
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1343 => _1343.customItemId]), className: "size-6" }) : logoUrl ? (
52910
52912
  // Contained (not full-bleed) so the integration logo keeps its aspect
52911
52913
  // ratio inside the bordered icon box — matches RoadmapCard.
52912
52914
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -52917,10 +52919,10 @@ function RoadmapChatCard({
52917
52919
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52918
52920
  EntityMingoCard,
52919
52921
  {
52920
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1343 => _1343.title]), () => ( "")),
52921
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1344 => _1344.description]), () => ( void 0)),
52922
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1344 => _1344.title]), () => ( "")),
52923
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1345 => _1345.description]), () => ( void 0)),
52922
52924
  fallbackIcon: icon,
52923
- status: statusPill(_optionalChain([item, 'optionalAccess', _1345 => _1345.status])),
52925
+ status: statusPill(_optionalChain([item, 'optionalAccess', _1346 => _1346.status])),
52924
52926
  chatRef,
52925
52927
  isNewTab,
52926
52928
  discuss,
@@ -52936,7 +52938,7 @@ function refHydratedEntry(docType, label, renderRef) {
52936
52938
  bareInline: true,
52937
52939
  contentRefType: docType,
52938
52940
  noComposedHref: true,
52939
- fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1346 => _1346.url]), () => ( null)),
52941
+ fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1347 => _1347.url]), () => ( null)),
52940
52942
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
52941
52943
  render: (item, chatRef, opts) => renderRef(fetchedItemDisplayRef(item, chatRef), opts)
52942
52944
  };
@@ -53009,7 +53011,7 @@ function programRegistryEntries() {
53009
53011
  discuss: opts.discuss,
53010
53012
  configKey: cfg.configKey,
53011
53013
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
53012
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1347 => _1347.extras, 'optionalAccess', _1348 => _1348.buildOgPlaceholderUrl, 'optionalCall', _1349 => _1349(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1350 => _1350.title]), () => ( "")))]), () => ( null))
53014
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1348 => _1348.extras, 'optionalAccess', _1349 => _1349.buildOgPlaceholderUrl, 'optionalCall', _1350 => _1350(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1351 => _1351.title]), () => ( "")))]), () => ( null))
53013
53015
  }
53014
53016
  )
53015
53017
  }));
@@ -53030,7 +53032,7 @@ var ROADMAP_CARD_CONFIGS = {
53030
53032
  // The card's destination IS the ClickUp deep link, derived from the
53031
53033
  // task id post-fetch (the refs frame used to carry it).
53032
53034
  noComposedHref: true,
53033
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1351 => _1351.id]) != null ? clickupTaskUrl(String(item.id)) : null
53035
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1352 => _1352.id]) != null ? clickupTaskUrl(String(item.id)) : null
53034
53036
  }
53035
53037
  };
53036
53038
  function roadmapRegistryEntries() {
@@ -53072,8 +53074,8 @@ var CHAT_CARD_REGISTRY = {
53072
53074
  DeletedDataCard,
53073
53075
  {
53074
53076
  title: chatRef.title && chatRef.title !== chatRef.id ? chatRef.title : null,
53075
- entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _1352 => _1352.metadata, 'optionalAccess', _1353 => _1353.entity_label]), () => ( null)),
53076
- recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _1354 => _1354.metadata, 'optionalAccess', _1355 => _1355.recovery_note]), () => ( null))
53077
+ entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _1353 => _1353.metadata, 'optionalAccess', _1354 => _1354.entity_label]), () => ( null)),
53078
+ recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _1355 => _1355.metadata, 'optionalAccess', _1356 => _1356.recovery_note]), () => ( null))
53077
53079
  }
53078
53080
  )
53079
53081
  },
@@ -53087,7 +53089,7 @@ var CHAT_CARD_REGISTRY = {
53087
53089
  bareInline: true,
53088
53090
  contentRefType: "faq",
53089
53091
  noComposedHref: true,
53090
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1356 => _1356.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
53092
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1357 => _1357.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
53091
53093
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
53092
53094
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53093
53095
  FaqChatCard,
@@ -53171,8 +53173,8 @@ var CHAT_CARD_REGISTRY = {
53171
53173
  chatRef,
53172
53174
  isNewTab: opts.isNewTab,
53173
53175
  discuss: opts.discuss,
53174
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1357 => _1357.extras, 'optionalAccess', _1358 => _1358.buildOgPlaceholderUrl, 'optionalCall', _1359 => _1359(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1360 => _1360.title]), () => ( "")))]), () => ( null)),
53175
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1361 => _1361.metadata, 'optionalAccess', _1362 => _1362.hasEmbeddedVideo]) === true
53176
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1358 => _1358.extras, 'optionalAccess', _1359 => _1359.buildOgPlaceholderUrl, 'optionalCall', _1360 => _1360(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1361 => _1361.title]), () => ( "")))]), () => ( null)),
53177
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1362 => _1362.metadata, 'optionalAccess', _1363 => _1363.hasEmbeddedVideo]) === true
53176
53178
  }
53177
53179
  )
53178
53180
  },
@@ -53188,7 +53190,7 @@ var CHAT_CARD_REGISTRY = {
53188
53190
  chatRef,
53189
53191
  isNewTab: opts.isNewTab,
53190
53192
  discuss: opts.discuss,
53191
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1363 => _1363.extras, 'optionalAccess', _1364 => _1364.buildOgPlaceholderUrl, 'optionalCall', _1365 => _1365(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1366 => _1366.title]), () => ( "")))]), () => ( null))
53193
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1364 => _1364.extras, 'optionalAccess', _1365 => _1365.buildOgPlaceholderUrl, 'optionalCall', _1366 => _1366(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1367 => _1367.title]), () => ( "")))]), () => ( null))
53192
53194
  }
53193
53195
  )
53194
53196
  },
@@ -53204,7 +53206,7 @@ var CHAT_CARD_REGISTRY = {
53204
53206
  chatRef,
53205
53207
  isNewTab: opts.isNewTab,
53206
53208
  discuss: opts.discuss,
53207
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1367 => _1367.extras, 'optionalAccess', _1368 => _1368.buildOgPlaceholderUrl, 'optionalCall', _1369 => _1369(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1370 => _1370.title]), () => ( "")))]), () => ( null))
53209
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1368 => _1368.extras, 'optionalAccess', _1369 => _1369.buildOgPlaceholderUrl, 'optionalCall', _1370 => _1370(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1371 => _1371.title]), () => ( "")))]), () => ( null))
53208
53210
  }
53209
53211
  )
53210
53212
  },
@@ -53214,7 +53216,7 @@ var CHAT_CARD_REGISTRY = {
53214
53216
  bareInline: true,
53215
53217
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
53216
53218
  render: (item, chatRef, opts) => {
53217
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1371 => _1371.extras, 'optionalAccess', _1372 => _1372.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
53219
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1372 => _1372.extras, 'optionalAccess', _1373 => _1373.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
53218
53220
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53219
53221
  ProductReleaseChatCard,
53220
53222
  {
@@ -53240,7 +53242,7 @@ var CHAT_CARD_REGISTRY = {
53240
53242
  chatRef,
53241
53243
  isNewTab: opts.isNewTab,
53242
53244
  discuss: opts.discuss,
53243
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1373 => _1373.extras, 'optionalAccess', _1374 => _1374.buildOgPlaceholderUrl, 'optionalCall', _1375 => _1375(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1376 => _1376.title]), () => ( "")))]), () => ( null))
53245
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1374 => _1374.extras, 'optionalAccess', _1375 => _1375.buildOgPlaceholderUrl, 'optionalCall', _1376 => _1376(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1377 => _1377.title]), () => ( "")))]), () => ( null))
53244
53246
  }
53245
53247
  )
53246
53248
  },
@@ -53258,7 +53260,7 @@ var CHAT_CARD_REGISTRY = {
53258
53260
  chatRef,
53259
53261
  isNewTab: opts.isNewTab,
53260
53262
  discuss: opts.discuss,
53261
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1377 => _1377.extras, 'optionalAccess', _1378 => _1378.buildOgPlaceholderUrl, 'optionalCall', _1379 => _1379(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1380 => _1380.title]), () => ( "")))]), () => ( null))
53263
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1378 => _1378.extras, 'optionalAccess', _1379 => _1379.buildOgPlaceholderUrl, 'optionalCall', _1380 => _1380(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1381 => _1381.title]), () => ( "")))]), () => ( null))
53262
53264
  }
53263
53265
  )
53264
53266
  },
@@ -53269,7 +53271,7 @@ var CHAT_CARD_REGISTRY = {
53269
53271
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
53270
53272
  // No public viewer — synthesize the hub-internal admin URL post-fetch
53271
53273
  // so the wrapper + isNewTab computation see the actual destination.
53272
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1381 => _1381.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
53274
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1382 => _1382.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
53273
53275
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53274
53276
  CampaignChatCard,
53275
53277
  {
@@ -53296,13 +53298,13 @@ function ChatCardNavWrap({
53296
53298
  if (!href) return;
53297
53299
  const targetEl = e.target;
53298
53300
  const host = e.currentTarget;
53299
- if (!_optionalChain([host, 'optionalAccess', _1382 => _1382.contains, 'call', _1383 => _1383(targetEl)])) return;
53300
- if (_optionalChain([targetEl, 'optionalAccess', _1384 => _1384.closest, 'optionalCall', _1385 => _1385("button")])) return;
53301
- if (!_optionalChain([targetEl, 'optionalAccess', _1386 => _1386.closest, 'optionalCall', _1387 => _1387("a")])) return;
53301
+ if (!_optionalChain([host, 'optionalAccess', _1383 => _1383.contains, 'call', _1384 => _1384(targetEl)])) return;
53302
+ if (_optionalChain([targetEl, 'optionalAccess', _1385 => _1385.closest, 'optionalCall', _1386 => _1386("button")])) return;
53303
+ if (!_optionalChain([targetEl, 'optionalAccess', _1387 => _1387.closest, 'optionalCall', _1388 => _1388("a")])) return;
53302
53304
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
53303
53305
  if (!handled) return;
53304
53306
  e.stopPropagation();
53305
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1388 => _1388.closeChat])) panel.closeChat();
53307
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1389 => _1389.closeChat])) panel.closeChat();
53306
53308
  };
53307
53309
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
53308
53310
  }
@@ -53324,7 +53326,7 @@ function ChatCardLoader({
53324
53326
  title: chatRef.title,
53325
53327
  externalUrl: chatRef.url,
53326
53328
  targetPlatform: chatRef.targetPlatform,
53327
- path: typeof _optionalChain([chatRef, 'access', _1389 => _1389.metadata, 'optionalAccess', _1390 => _1390.path]) === "string" ? chatRef.metadata.path : null
53329
+ path: typeof _optionalChain([chatRef, 'access', _1390 => _1390.metadata, 'optionalAccess', _1391 => _1391.path]) === "string" ? chatRef.metadata.path : null
53328
53330
  },
53329
53331
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
53330
53332
  );
@@ -53338,11 +53340,11 @@ function ChatCardLoader({
53338
53340
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
53339
53341
  const fetchEntry = entry && entry.contentRefType ? entry : null;
53340
53342
  const { item, isLoading, isError, isFetched } = useChatCardItem(
53341
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1391 => _1391.contentRefType]), () => ( "")),
53343
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1392 => _1392.contentRefType]), () => ( "")),
53342
53344
  fetchEntry ? resolvedChatRef.id : ""
53343
53345
  );
53344
53346
  if (!entry) return null;
53345
- const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _1392 => _1392.contentRefType]) && !resolvedChatRef.url && item && !fetchEntry.fallbackHref && !fetchEntry.noComposedHref ? resolveFetchedCardHref({
53347
+ const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _1393 => _1393.contentRefType]) && !resolvedChatRef.url && item && !fetchEntry.fallbackHref && !fetchEntry.noComposedHref ? resolveFetchedCardHref({
53346
53348
  contentRefType: fetchEntry.contentRefType,
53347
53349
  id: resolvedChatRef.id,
53348
53350
  item,
@@ -53381,7 +53383,7 @@ function ChatCardLoader({
53381
53383
  isNewTab,
53382
53384
  discuss
53383
53385
  };
53384
- const path = typeof _optionalChain([finalChatRef, 'access', _1393 => _1393.metadata, 'optionalAccess', _1394 => _1394.path]) === "string" ? finalChatRef.metadata.path : null;
53386
+ const path = typeof _optionalChain([finalChatRef, 'access', _1394 => _1394.metadata, 'optionalAccess', _1395 => _1395.path]) === "string" ? finalChatRef.metadata.path : null;
53385
53387
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53386
53388
  ChatCardNavWrap,
53387
53389
  {
@@ -53405,7 +53407,7 @@ function ChatCardLoader({
53405
53407
  if (!fetchEntry) {
53406
53408
  return finish(entry.render(void 0, finalChatRef, renderOpts));
53407
53409
  }
53408
- if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _1395 => _1395.skeleton, 'optionalCall', _1396 => _1396()]), () => ( null)) });
53410
+ if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _1396 => _1396.skeleton, 'optionalCall', _1397 => _1397()]), () => ( null)) });
53409
53411
  if (!item) {
53410
53412
  if (isError) {
53411
53413
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardLoadFailure, { label: entry.label, id: finalChatRef.id, detail: "Failed to load" });
@@ -53668,7 +53670,7 @@ function useChunkCatchup({
53668
53670
  console.error("Error during chunk catchup:", error);
53669
53671
  } finally {
53670
53672
  if (dialogId2 !== dialogIdRef.current) {
53671
- if (_optionalChain([pendingCatchupRef, 'access', _1397 => _1397.current, 'optionalAccess', _1398 => _1398.dialogId]) === dialogId2) {
53673
+ if (_optionalChain([pendingCatchupRef, 'access', _1398 => _1398.current, 'optionalAccess', _1399 => _1399.dialogId]) === dialogId2) {
53672
53674
  pendingCatchupRef.current = null;
53673
53675
  }
53674
53676
  } else {
@@ -53681,7 +53683,7 @@ function useChunkCatchup({
53681
53683
  lastFetchParams.current = null;
53682
53684
  bufferUntilInitialCatchupComplete.current = true;
53683
53685
  try {
53684
- await _optionalChain([catchUpChunksRef, 'access', _1399 => _1399.current, 'optionalCall', _1400 => _1400(pending.fromSequenceId)]);
53686
+ await _optionalChain([catchUpChunksRef, 'access', _1400 => _1400.current, 'optionalCall', _1401 => _1401(pending.fromSequenceId)]);
53685
53687
  } catch (rerunError) {
53686
53688
  console.error("Queued catch-up re-run failed:", rerunError);
53687
53689
  }
@@ -53745,7 +53747,7 @@ function useChunkCatchup({
53745
53747
 
53746
53748
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
53747
53749
  function prefersReducedMotion() {
53748
- return typeof window !== "undefined" && _optionalChain([window, 'access', _1401 => _1401.matchMedia, 'optionalCall', _1402 => _1402("(prefers-reduced-motion: reduce)"), 'access', _1403 => _1403.matches]) === true;
53750
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _1402 => _1402.matchMedia, 'optionalCall', _1403 => _1403("(prefers-reduced-motion: reduce)"), 'access', _1404 => _1404.matches]) === true;
53749
53751
  }
53750
53752
  function useScriptedStream(frames, resetKey, enabled = true) {
53751
53753
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -53757,7 +53759,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
53757
53759
  }
53758
53760
  _react.useEffect.call(void 0, () => {
53759
53761
  setReducedMotion(prefersReducedMotion());
53760
- const mq = _optionalChain([window, 'access', _1404 => _1404.matchMedia, 'optionalCall', _1405 => _1405("(prefers-reduced-motion: reduce)")]);
53762
+ const mq = _optionalChain([window, 'access', _1405 => _1405.matchMedia, 'optionalCall', _1406 => _1406("(prefers-reduced-motion: reduce)")]);
53761
53763
  if (!mq) return;
53762
53764
  const onChange = () => setReducedMotion(mq.matches);
53763
53765
  mq.addEventListener("change", onChange);
@@ -53893,7 +53895,7 @@ function useJetStreamDialogSubscription({
53893
53895
  const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
53894
53896
  conn: sharedConn,
53895
53897
  wsUrl,
53896
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1406 => _1406.current, 'optionalCall', _1407 => _1407()]),
53898
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1407 => _1407.current, 'optionalCall', _1408 => _1408()]),
53897
53899
  backoff: reconnectionBackoffRef.current,
53898
53900
  getFreshUrl: () => getNatsWsUrlRef.current(),
53899
53901
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -53908,7 +53910,7 @@ function useJetStreamDialogSubscription({
53908
53910
  setReconnectionCount((c) => c + 1);
53909
53911
  }
53910
53912
  hadConnectionBeforeRef.current = true;
53911
- _optionalChain([onConnectRef, 'access', _1408 => _1408.current, 'optionalCall', _1409 => _1409()]);
53913
+ _optionalChain([onConnectRef, 'access', _1409 => _1409.current, 'optionalCall', _1410 => _1410()]);
53912
53914
  }
53913
53915
  if (status === "error") {
53914
53916
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -53918,7 +53920,7 @@ function useJetStreamDialogSubscription({
53918
53920
  setIsConnected(false);
53919
53921
  setIsSubscribed(false);
53920
53922
  tearDownSubscription();
53921
- _optionalChain([onDisconnectRef, 'access', _1410 => _1410.current, 'optionalCall', _1411 => _1411()]);
53923
+ _optionalChain([onDisconnectRef, 'access', _1411 => _1411.current, 'optionalCall', _1412 => _1412()]);
53922
53924
  }
53923
53925
  }
53924
53926
  });
@@ -54047,7 +54049,7 @@ function useJetStreamDialogSubscription({
54047
54049
  }
54048
54050
  subscriptionRef.current = handle;
54049
54051
  setIsSubscribed(true);
54050
- _optionalChain([onSubscribedRef, 'access', _1412 => _1412.current, 'optionalCall', _1413 => _1413()]);
54052
+ _optionalChain([onSubscribedRef, 'access', _1413 => _1413.current, 'optionalCall', _1414 => _1414()]);
54051
54053
  } catch (e90) {
54052
54054
  if (!cancelled) {
54053
54055
  setIsSubscribed(false);
@@ -54161,20 +54163,20 @@ function useNatsDialogSubscription({
54161
54163
  const tearDownSubscriptions = () => {
54162
54164
  subscriptionRefs.current.forEach((sub) => {
54163
54165
  try {
54164
- _optionalChain([sub, 'optionalAccess', _1414 => _1414.unsubscribe, 'call', _1415 => _1415()]);
54166
+ _optionalChain([sub, 'optionalAccess', _1415 => _1415.unsubscribe, 'call', _1416 => _1416()]);
54165
54167
  } catch (e92) {
54166
54168
  }
54167
54169
  });
54168
54170
  subscriptionRefs.current.clear();
54169
54171
  lastSubscribedDialogIdRef.current = null;
54170
- _optionalChain([abortControllerRef, 'access', _1416 => _1416.current, 'optionalAccess', _1417 => _1417.abort, 'call', _1418 => _1418()]);
54172
+ _optionalChain([abortControllerRef, 'access', _1417 => _1417.current, 'optionalAccess', _1418 => _1418.abort, 'call', _1419 => _1419()]);
54171
54173
  abortControllerRef.current = null;
54172
54174
  };
54173
54175
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
54174
54176
  const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
54175
54177
  conn: sharedConn,
54176
54178
  wsUrl,
54177
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1419 => _1419.current, 'optionalCall', _1420 => _1420()]),
54179
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1420 => _1420.current, 'optionalCall', _1421 => _1421()]),
54178
54180
  backoff: reconnectionBackoffRef.current,
54179
54181
  getFreshUrl: () => getNatsWsUrlRef.current(),
54180
54182
  shouldRetryOn: isDisconnectStatus,
@@ -54185,7 +54187,7 @@ function useNatsDialogSubscription({
54185
54187
  setReconnectionCount((c) => c + 1);
54186
54188
  }
54187
54189
  hadConnectionBeforeRef.current = true;
54188
- _optionalChain([onConnectRef, 'access', _1421 => _1421.current, 'optionalCall', _1422 => _1422()]);
54190
+ _optionalChain([onConnectRef, 'access', _1422 => _1422.current, 'optionalCall', _1423 => _1423()]);
54189
54191
  }
54190
54192
  if (status === "error") {
54191
54193
  console.warn("[NATS] protocol error:", evt.data);
@@ -54195,7 +54197,7 @@ function useNatsDialogSubscription({
54195
54197
  setIsConnected(false);
54196
54198
  setIsSubscribed(false);
54197
54199
  tearDownSubscriptions();
54198
- _optionalChain([onDisconnectRef, 'access', _1423 => _1423.current, 'optionalCall', _1424 => _1424()]);
54200
+ _optionalChain([onDisconnectRef, 'access', _1424 => _1424.current, 'optionalCall', _1425 => _1425()]);
54199
54201
  }
54200
54202
  }
54201
54203
  });
@@ -54228,13 +54230,13 @@ function useNatsDialogSubscription({
54228
54230
  setIsSubscribed(false);
54229
54231
  subscriptionRefs.current.forEach((sub) => {
54230
54232
  try {
54231
- _optionalChain([sub, 'optionalAccess', _1425 => _1425.unsubscribe, 'call', _1426 => _1426()]);
54233
+ _optionalChain([sub, 'optionalAccess', _1426 => _1426.unsubscribe, 'call', _1427 => _1427()]);
54232
54234
  } catch (e93) {
54233
54235
  }
54234
54236
  });
54235
54237
  subscriptionRefs.current.clear();
54236
54238
  lastSubscribedDialogIdRef.current = null;
54237
- _optionalChain([abortControllerRef, 'access', _1427 => _1427.current, 'optionalAccess', _1428 => _1428.abort, 'call', _1429 => _1429()]);
54239
+ _optionalChain([abortControllerRef, 'access', _1428 => _1428.current, 'optionalAccess', _1429 => _1429.abort, 'call', _1430 => _1430()]);
54238
54240
  abortControllerRef.current = null;
54239
54241
  }
54240
54242
  return;
@@ -54246,12 +54248,12 @@ function useNatsDialogSubscription({
54246
54248
  if (subscriptionRefs.current.size > 0) {
54247
54249
  subscriptionRefs.current.forEach((sub) => {
54248
54250
  try {
54249
- _optionalChain([sub, 'optionalAccess', _1430 => _1430.unsubscribe, 'call', _1431 => _1431()]);
54251
+ _optionalChain([sub, 'optionalAccess', _1431 => _1431.unsubscribe, 'call', _1432 => _1432()]);
54250
54252
  } catch (e94) {
54251
54253
  }
54252
54254
  });
54253
54255
  subscriptionRefs.current.clear();
54254
- _optionalChain([abortControllerRef, 'access', _1432 => _1432.current, 'optionalAccess', _1433 => _1433.abort, 'call', _1434 => _1434()]);
54256
+ _optionalChain([abortControllerRef, 'access', _1433 => _1433.current, 'optionalAccess', _1434 => _1434.abort, 'call', _1435 => _1435()]);
54255
54257
  }
54256
54258
  abortControllerRef.current = new AbortController();
54257
54259
  const abort = abortControllerRef.current;
@@ -54283,7 +54285,7 @@ function useNatsDialogSubscription({
54283
54285
  });
54284
54286
  lastSubscribedDialogIdRef.current = dialogId;
54285
54287
  setIsSubscribed(true);
54286
- _optionalChain([onSubscribedRef, 'access', _1435 => _1435.current, 'optionalCall', _1436 => _1436()]);
54288
+ _optionalChain([onSubscribedRef, 'access', _1436 => _1436.current, 'optionalCall', _1437 => _1437()]);
54287
54289
  };
54288
54290
  if (isConnectedRef.current) {
54289
54291
  createSubscriptions();
@@ -54293,7 +54295,7 @@ function useNatsDialogSubscription({
54293
54295
  abort.abort();
54294
54296
  subscriptionRefs.current.forEach((sub) => {
54295
54297
  try {
54296
- _optionalChain([sub, 'optionalAccess', _1437 => _1437.unsubscribe, 'call', _1438 => _1438()]);
54298
+ _optionalChain([sub, 'optionalAccess', _1438 => _1438.unsubscribe, 'call', _1439 => _1439()]);
54297
54299
  } catch (e96) {
54298
54300
  }
54299
54301
  });
@@ -54334,7 +54336,7 @@ function useNatsDialogSubscription({
54334
54336
  });
54335
54337
  lastSubscribedDialogIdRef.current = dialogId2;
54336
54338
  setIsSubscribed(true);
54337
- _optionalChain([onSubscribedRef, 'access', _1439 => _1439.current, 'optionalCall', _1440 => _1440()]);
54339
+ _optionalChain([onSubscribedRef, 'access', _1440 => _1440.current, 'optionalCall', _1441 => _1441()]);
54338
54340
  } else if (subscriptionRefs.current.size > 0) {
54339
54341
  setIsSubscribed(true);
54340
54342
  }
@@ -54342,10 +54344,10 @@ function useNatsDialogSubscription({
54342
54344
  return { isConnected, isSubscribed, reconnectionCount };
54343
54345
  }
54344
54346
  function buildNatsWsUrl(apiBaseUrl, options) {
54345
- const path = _optionalChain([options, 'optionalAccess', _1441 => _1441.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
54347
+ const path = _optionalChain([options, 'optionalAccess', _1442 => _1442.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
54346
54348
  const u = new URL(path, apiBaseUrl);
54347
54349
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
54348
- if (_optionalChain([options, 'optionalAccess', _1442 => _1442.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1443 => _1443.token])) {
54350
+ if (_optionalChain([options, 'optionalAccess', _1443 => _1443.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1444 => _1444.token])) {
54349
54351
  u.searchParams.set("authorization", options.token);
54350
54352
  }
54351
54353
  return u.toString();
@@ -54363,7 +54365,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
54363
54365
  const data = await res.json();
54364
54366
  return _nullishCoalesce(data.commands, () => ( []));
54365
54367
  } catch (err) {
54366
- if (_optionalChain([err, 'optionalAccess', _1444 => _1444.name]) === "AbortError") throw err;
54368
+ if (_optionalChain([err, 'optionalAccess', _1445 => _1445.name]) === "AbortError") throw err;
54367
54369
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
54368
54370
  return [];
54369
54371
  }
@@ -54384,7 +54386,7 @@ function useSlashCommands(prefix, commandsUrl) {
54384
54386
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
54385
54387
  if (!cancelled) setCommands(next);
54386
54388
  } catch (err) {
54387
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1445 => _1445.name]) !== "AbortError") {
54389
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1446 => _1446.name]) !== "AbortError") {
54388
54390
  console.warn("[use-slash-commands] fetch failed:", err);
54389
54391
  }
54390
54392
  } finally {
@@ -54403,7 +54405,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
54403
54405
  const query = _reactquery.useQuery.call(void 0, {
54404
54406
  queryKey: ["chat-slash-commands", commandsUrl],
54405
54407
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
54406
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1446 => _1446.enabled]), () => ( true)),
54408
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1447 => _1447.enabled]), () => ( true)),
54407
54409
  staleTime: Infinity,
54408
54410
  gcTime: Infinity,
54409
54411
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -54442,21 +54444,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
54442
54444
  }
54443
54445
  const data = await res.json();
54444
54446
  return {
54445
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1447 => _1447.name]), () => ( null)),
54446
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1448 => _1448.icon]), () => ( null)),
54447
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1449 => _1449.greeting]), () => ( null)),
54448
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1450 => _1450.enabledRagTableIds]), () => ( [])),
54449
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1451 => _1451.quickActions]), () => ( [])),
54450
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1452 => _1452.suggestedQueries]), () => ( []))
54447
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1448 => _1448.name]), () => ( null)),
54448
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1449 => _1449.icon]), () => ( null)),
54449
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1450 => _1450.greeting]), () => ( null)),
54450
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1451 => _1451.enabledRagTableIds]), () => ( [])),
54451
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1452 => _1452.quickActions]), () => ( [])),
54452
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1453 => _1453.suggestedQueries]), () => ( []))
54451
54453
  };
54452
54454
  } catch (err) {
54453
- if (_optionalChain([err, 'optionalAccess', _1453 => _1453.name]) === "AbortError") throw err;
54455
+ if (_optionalChain([err, 'optionalAccess', _1454 => _1454.name]) === "AbortError") throw err;
54454
54456
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
54455
54457
  return EMPTY_STATE_FALLBACK;
54456
54458
  }
54457
54459
  }
54458
54460
  function useEmptyStateConfig(emptyStateUrl, options) {
54459
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1454 => _1454.enabled]), () => ( true))) && !!emptyStateUrl;
54461
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1455 => _1455.enabled]), () => ( true))) && !!emptyStateUrl;
54460
54462
  const query = _reactquery.useQuery.call(void 0, {
54461
54463
  queryKey: ["chat-empty-state", emptyStateUrl],
54462
54464
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -54485,7 +54487,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
54485
54487
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
54486
54488
  function uploadWithProgress(url, file, token, onProgress, signal) {
54487
54489
  return new Promise((resolve, reject) => {
54488
- if (_optionalChain([signal, 'optionalAccess', _1455 => _1455.aborted])) {
54490
+ if (_optionalChain([signal, 'optionalAccess', _1456 => _1456.aborted])) {
54489
54491
  reject(new Error("Upload cancelled"));
54490
54492
  return;
54491
54493
  }
@@ -54499,7 +54501,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
54499
54501
  xhr.removeEventListener("error", handleError);
54500
54502
  xhr.removeEventListener("abort", handleAbort);
54501
54503
  xhr.removeEventListener("timeout", handleTimeout);
54502
- _optionalChain([signal, 'optionalAccess', _1456 => _1456.removeEventListener, 'call', _1457 => _1457("abort", handleSignalAbort)]);
54504
+ _optionalChain([signal, 'optionalAccess', _1457 => _1457.removeEventListener, 'call', _1458 => _1458("abort", handleSignalAbort)]);
54503
54505
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
54504
54506
  };
54505
54507
  const handleProgress = (event) => {
@@ -54535,7 +54537,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
54535
54537
  const handleSignalAbort = () => {
54536
54538
  xhr.abort();
54537
54539
  };
54538
- _optionalChain([signal, 'optionalAccess', _1458 => _1458.addEventListener, 'call', _1459 => _1459("abort", handleSignalAbort, { once: true })]);
54540
+ _optionalChain([signal, 'optionalAccess', _1459 => _1459.addEventListener, 'call', _1460 => _1460("abort", handleSignalAbort, { once: true })]);
54539
54541
  xhr.upload.addEventListener("progress", handleProgress);
54540
54542
  xhr.addEventListener("load", handleLoad);
54541
54543
  xhr.addEventListener("error", handleError);
@@ -54579,12 +54581,12 @@ function useChatAttachments() {
54579
54581
  try {
54580
54582
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
54581
54583
  } catch (err) {
54582
- if (_optionalChain([ctrl, 'optionalAccess', _1460 => _1460.signal, 'access', _1461 => _1461.aborted])) return;
54584
+ if (_optionalChain([ctrl, 'optionalAccess', _1461 => _1461.signal, 'access', _1462 => _1462.aborted])) return;
54583
54585
  throw new Error(
54584
54586
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
54585
54587
  );
54586
54588
  }
54587
- if (_optionalChain([ctrl, 'optionalAccess', _1462 => _1462.signal, 'access', _1463 => _1463.aborted])) return;
54589
+ if (_optionalChain([ctrl, 'optionalAccess', _1463 => _1463.signal, 'access', _1464 => _1464.aborted])) return;
54588
54590
  if (!sniffed) {
54589
54591
  throw new Error("Unrecognized file format");
54590
54592
  }
@@ -54598,7 +54600,7 @@ function useChatAttachments() {
54598
54600
  const urlResp = await _chunkQTO3WYB2cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
54599
54601
  method: "POST",
54600
54602
  headers: { "Content-Type": "application/json" },
54601
- signal: _optionalChain([ctrl, 'optionalAccess', _1464 => _1464.signal]),
54603
+ signal: _optionalChain([ctrl, 'optionalAccess', _1465 => _1465.signal]),
54602
54604
  body: JSON.stringify({
54603
54605
  fileName: att.file.name,
54604
54606
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -54624,9 +54626,9 @@ function useChatAttachments() {
54624
54626
  (pct) => {
54625
54627
  updateOne(att.id, { progress: pct });
54626
54628
  },
54627
- _optionalChain([ctrl, 'optionalAccess', _1465 => _1465.signal])
54629
+ _optionalChain([ctrl, 'optionalAccess', _1466 => _1466.signal])
54628
54630
  );
54629
- if (_optionalChain([ctrl, 'optionalAccess', _1466 => _1466.signal, 'access', _1467 => _1467.aborted])) return;
54631
+ if (_optionalChain([ctrl, 'optionalAccess', _1467 => _1467.signal, 'access', _1468 => _1468.aborted])) return;
54630
54632
  updateOne(att.id, {
54631
54633
  status: "ready",
54632
54634
  progress: 100,
@@ -54634,7 +54636,7 @@ function useChatAttachments() {
54634
54636
  viewToken: mintData.viewToken
54635
54637
  });
54636
54638
  } catch (err) {
54637
- if (_optionalChain([ctrl, 'optionalAccess', _1468 => _1468.signal, 'access', _1469 => _1469.aborted])) return;
54639
+ if (_optionalChain([ctrl, 'optionalAccess', _1469 => _1469.signal, 'access', _1470 => _1470.aborted])) return;
54638
54640
  const message2 = err instanceof Error ? err.message : String(err);
54639
54641
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
54640
54642
  } finally {
@@ -54821,7 +54823,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
54821
54823
  yield chunk;
54822
54824
  }
54823
54825
  } catch (err) {
54824
- if (_optionalChain([err, 'optionalAccess', _1470 => _1470.name]) === "AbortError" || ctrl.signal.aborted) {
54826
+ if (_optionalChain([err, 'optionalAccess', _1471 => _1471.name]) === "AbortError" || ctrl.signal.aborted) {
54825
54827
  return;
54826
54828
  }
54827
54829
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -54872,7 +54874,7 @@ function useChat({
54872
54874
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
54873
54875
  onMessagesChangeRef.current = onMessagesChange;
54874
54876
  _react.useEffect.call(void 0, () => {
54875
- _optionalChain([onMessagesChangeRef, 'access', _1471 => _1471.current, 'optionalCall', _1472 => _1472(messages)]);
54877
+ _optionalChain([onMessagesChangeRef, 'access', _1472 => _1472.current, 'optionalCall', _1473 => _1473(messages)]);
54876
54878
  }, [messages]);
54877
54879
  const {
54878
54880
  streamMessage,
@@ -54909,7 +54911,7 @@ function useChat({
54909
54911
  name: "You",
54910
54912
  content: text,
54911
54913
  timestamp: /* @__PURE__ */ new Date(),
54912
- ..._optionalChain([options, 'optionalAccess', _1473 => _1473.hidden]) ? { hidden: true } : {}
54914
+ ..._optionalChain([options, 'optionalAccess', _1474 => _1474.hidden]) ? { hidden: true } : {}
54913
54915
  };
54914
54916
  addMessage(userMessage);
54915
54917
  setIsTyping(true);
@@ -54971,7 +54973,7 @@ function useChat({
54971
54973
  currentTextSegment = "";
54972
54974
  }
54973
54975
  const seg = segment;
54974
- const proposalId = _optionalChain([seg, 'access', _1474 => _1474.data, 'optionalAccess', _1475 => _1475.requestId]);
54976
+ const proposalId = _optionalChain([seg, 'access', _1475 => _1475.data, 'optionalAccess', _1476 => _1476.requestId]);
54975
54977
  const updateApprovalMessage = (transform) => {
54976
54978
  setMessages((prev) => {
54977
54979
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -54980,7 +54982,7 @@ function useChat({
54980
54982
  if (!Array.isArray(m.content)) continue;
54981
54983
  const segments = m.content;
54982
54984
  const hasMatch = segments.some(
54983
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1476 => _1476.data, 'optionalAccess', _1477 => _1477.requestId]) === proposalId
54985
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1477 => _1477.data, 'optionalAccess', _1478 => _1478.requestId]) === proposalId
54984
54986
  );
54985
54987
  if (!hasMatch) continue;
54986
54988
  const next = [...prev];
@@ -55022,11 +55024,11 @@ function useChat({
55022
55024
  if (!Array.isArray(m.content)) continue;
55023
55025
  const segments = m.content;
55024
55026
  const hasMatch = segments.some(
55025
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1478 => _1478.data, 'optionalAccess', _1479 => _1479.requestId]) === decision.proposalId
55027
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1479 => _1479.data, 'optionalAccess', _1480 => _1480.requestId]) === decision.proposalId
55026
55028
  );
55027
55029
  if (!hasMatch) continue;
55028
55030
  const flipped = segments.map(
55029
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1480 => _1480.data, 'optionalAccess', _1481 => _1481.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
55031
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1481 => _1481.data, 'optionalAccess', _1482 => _1482.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
55030
55032
  );
55031
55033
  const next = [...prev];
55032
55034
  next[i] = { ...m, content: flipped };
@@ -55154,7 +55156,7 @@ function buildConfirmToolBody(request) {
55154
55156
  async function readServerErrorMessage(response) {
55155
55157
  try {
55156
55158
  const body = await response.json();
55157
- if (typeof _optionalChain([body, 'optionalAccess', _1482 => _1482.error]) === "string" && body.error.length > 0) return body.error;
55159
+ if (typeof _optionalChain([body, 'optionalAccess', _1483 => _1483.error]) === "string" && body.error.length > 0) return body.error;
55158
55160
  } catch (e98) {
55159
55161
  }
55160
55162
  return null;
@@ -55375,7 +55377,7 @@ var STORAGE_KEY2 = "conversation";
55375
55377
  var namespaceFor = (source) => {
55376
55378
  const base = `mingo-chat-${source}`;
55377
55379
  const auth = _chunkQTO3WYB2cjs.getEmbedProxyAuth.call(void 0, );
55378
- return _optionalChain([auth, 'optionalAccess', _1483 => _1483.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
55380
+ return _optionalChain([auth, 'optionalAccess', _1484 => _1484.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
55379
55381
  };
55380
55382
  function createChatConversationStorage(source) {
55381
55383
  return _chunkQTO3WYB2cjs.createLocalStorageAdapter.call(void 0, {
@@ -55437,8 +55439,8 @@ function useChatHistoryHydration({
55437
55439
  );
55438
55440
  if (!res.ok) return;
55439
55441
  const payload = await res.json().catch(() => null);
55440
- const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess', _1484 => _1484.data]), () => ( payload));
55441
- const rows = Array.isArray(_optionalChain([body, 'optionalAccess', _1485 => _1485.messages])) ? body.messages : [];
55442
+ const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess', _1485 => _1485.data]), () => ( payload));
55443
+ const rows = Array.isArray(_optionalChain([body, 'optionalAccess', _1486 => _1486.messages])) ? body.messages : [];
55442
55444
  if (cancelled || rows.length === 0) return;
55443
55445
  const hydrated = [];
55444
55446
  const sourcesSeed = /* @__PURE__ */ new Map();
@@ -55545,11 +55547,11 @@ function appendToTrailingAssistant(prev, segments) {
55545
55547
  for (const seg of segments) {
55546
55548
  const tail = merged[merged.length - 1];
55547
55549
  const key = upsertKey(seg);
55548
- if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1486 => _1486.type]) === "text") {
55550
+ if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1487 => _1487.type]) === "text") {
55549
55551
  merged[merged.length - 1] = { type: "text", text: tail.text + seg.text };
55550
- } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1487 => _1487.type]) === "thinking") {
55552
+ } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1488 => _1488.type]) === "thinking") {
55551
55553
  merged[merged.length - 1] = { type: "thinking", text: tail.text + seg.text };
55552
- } else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess', _1488 => _1488.type]) === "guide") {
55554
+ } else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess', _1489 => _1489.type]) === "guide") {
55553
55555
  merged[merged.length - 1] = { type: "guide", text: tail.text + seg.text };
55554
55556
  } else if (key) {
55555
55557
  const idx = merged.findIndex((m) => upsertKey(m) === key);
@@ -55589,7 +55591,7 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
55589
55591
  }
55590
55592
  if (s.type !== "approval_batch") return s;
55591
55593
  const isAnchor = s.data.approvalRequestId === requestId;
55592
- const hasRow = _optionalChain([s, 'access', _1489 => _1489.data, 'access', _1490 => _1490.toolCalls, 'optionalAccess', _1491 => _1491.some, 'call', _1492 => _1492((c) => c.toolExecutionRequestId === requestId)]);
55594
+ const hasRow = _optionalChain([s, 'access', _1490 => _1490.data, 'access', _1491 => _1491.toolCalls, 'optionalAccess', _1492 => _1492.some, 'call', _1493 => _1493((c) => c.toolExecutionRequestId === requestId)]);
55593
55595
  if (!isAnchor && !hasRow) return s;
55594
55596
  const nextResolvedBy = _nullishCoalesce(resolvedByName, () => ( s.resolvedByName));
55595
55597
  const nextExecutions = hasRow ? {
@@ -55611,8 +55613,8 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
55611
55613
  };
55612
55614
  }
55613
55615
  function nextBatchExecution(prevExec, toolData) {
55614
- if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1493 => _1493.status]) === "done") return null;
55615
- return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1494 => _1494.result]), success: _optionalChain([prevExec, 'optionalAccess', _1495 => _1495.success]) };
55616
+ if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1494 => _1494.status]) === "done") return null;
55617
+ return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1495 => _1495.result]), success: _optionalChain([prevExec, 'optionalAccess', _1496 => _1496.success]) };
55616
55618
  }
55617
55619
  function withBatchExecution(seg, execId, state) {
55618
55620
  return {
@@ -55629,11 +55631,11 @@ function projectBatchStatusToMessages(prev, anchorId, status) {
55629
55631
  }
55630
55632
  function projectBatchRowFailureToMessages(prev, rowRequestId) {
55631
55633
  return mapSegments(prev, (s) => {
55632
- if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _1496 => _1496.data, 'access', _1497 => _1497.toolCalls, 'optionalAccess', _1498 => _1498.some, 'call', _1499 => _1499((c) => c.toolExecutionRequestId === rowRequestId)])) {
55634
+ if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _1497 => _1497.data, 'access', _1498 => _1498.toolCalls, 'optionalAccess', _1499 => _1499.some, 'call', _1500 => _1500((c) => c.toolExecutionRequestId === rowRequestId)])) {
55633
55635
  return s;
55634
55636
  }
55635
- const existing = _optionalChain([s, 'access', _1500 => _1500.data, 'access', _1501 => _1501.executions, 'optionalAccess', _1502 => _1502[rowRequestId]]);
55636
- if (_optionalChain([existing, 'optionalAccess', _1503 => _1503.status]) === "done") return s;
55637
+ const existing = _optionalChain([s, 'access', _1501 => _1501.data, 'access', _1502 => _1502.executions, 'optionalAccess', _1503 => _1503[rowRequestId]]);
55638
+ if (_optionalChain([existing, 'optionalAccess', _1504 => _1504.status]) === "done") return s;
55637
55639
  return withBatchExecution(s, rowRequestId, { status: "done", success: false });
55638
55640
  });
55639
55641
  }
@@ -55672,7 +55674,7 @@ function mergeToolExecutionIfPresent(prev, segment) {
55672
55674
  for (let j = message2.segments.length - 1; j >= 0; j--) {
55673
55675
  const seg = message2.segments[j];
55674
55676
  if (execId && seg.type === "approval_batch" && seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId)) {
55675
- const prevExec = _optionalChain([seg, 'access', _1504 => _1504.data, 'access', _1505 => _1505.executions, 'optionalAccess', _1506 => _1506[execId]]);
55677
+ const prevExec = _optionalChain([seg, 'access', _1505 => _1505.data, 'access', _1506 => _1506.executions, 'optionalAccess', _1507 => _1507[execId]]);
55676
55678
  const nextExec = nextBatchExecution(prevExec, toolData);
55677
55679
  if (nextExec === null) return prev;
55678
55680
  if (sameExecutionState(prevExec, nextExec)) return prev;
@@ -55861,9 +55863,9 @@ var MessageSegmentAccumulator = class {
55861
55863
  type: "tool_execution",
55862
55864
  data: {
55863
55865
  ...toolData,
55864
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1507 => _1507.data, 'access', _1508 => _1508.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1509 => _1509.toolTitle]))),
55865
- toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1510 => _1510.data, 'access', _1511 => _1511.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1512 => _1512.toolExplanation]))),
55866
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1513 => _1513.parameters])
55866
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1508 => _1508.data, 'access', _1509 => _1509.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1510 => _1510.toolTitle]))),
55867
+ toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1511 => _1511.data, 'access', _1512 => _1512.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1513 => _1513.toolExplanation]))),
55868
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1514 => _1514.parameters])
55867
55869
  }
55868
55870
  };
55869
55871
  if (existingIndex !== -1) {
@@ -55887,7 +55889,7 @@ var MessageSegmentAccumulator = class {
55887
55889
  if (seg.type !== "approval_batch") return seg;
55888
55890
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
55889
55891
  if (!hasCall) return seg;
55890
- const prev = _optionalChain([seg, 'access', _1514 => _1514.data, 'access', _1515 => _1515.executions, 'optionalAccess', _1516 => _1516[execId]]);
55892
+ const prev = _optionalChain([seg, 'access', _1515 => _1515.data, 'access', _1516 => _1516.executions, 'optionalAccess', _1517 => _1517[execId]]);
55891
55893
  const next = nextBatchExecution(prev, toolData);
55892
55894
  matched = true;
55893
55895
  if (next === null) return seg;
@@ -56029,8 +56031,8 @@ var MessageSegmentAccumulator = class {
56029
56031
  requestId,
56030
56032
  {
56031
56033
  ...pendingApproval,
56032
- command: _optionalChain([pendingApproval, 'optionalAccess', _1517 => _1517.command]) || "",
56033
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1518 => _1518.approvalType]) || approvalType
56034
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1518 => _1518.command]) || "",
56035
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1519 => _1519.approvalType]) || approvalType
56034
56036
  },
56035
56037
  status
56036
56038
  );
@@ -56055,9 +56057,9 @@ var MessageSegmentAccumulator = class {
56055
56057
  type: "escalation_offer",
56056
56058
  // The resolved chunk carries no text/origin — a redelivered offer must
56057
56059
  // not blank the card the PENDING chunk already painted.
56058
- data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _1519 => _1519.data, 'access', _1520 => _1520.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _1521 => _1521.data, 'access', _1522 => _1522.origin]))) },
56060
+ data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _1520 => _1520.data, 'access', _1521 => _1521.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _1522 => _1522.data, 'access', _1523 => _1523.origin]))) },
56059
56061
  status,
56060
- resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _1523 => _1523.resolvedByName]))),
56062
+ resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _1524 => _1524.resolvedByName]))),
56061
56063
  onApprove: this.callbacks.onEscalationApprove,
56062
56064
  onReject: this.callbacks.onEscalationReject
56063
56065
  };
@@ -56273,7 +56275,7 @@ function createMessageSegmentAccumulator(callbacks) {
56273
56275
  // src/chat-protocol/events.ts
56274
56276
  var GUIDE_ORIGIN = "guide";
56275
56277
  function isGuideOrigin(source) {
56276
- return _optionalChain([source, 'optionalAccess', _1524 => _1524.origin]) === GUIDE_ORIGIN;
56278
+ return _optionalChain([source, 'optionalAccess', _1525 => _1525.origin]) === GUIDE_ORIGIN;
56277
56279
  }
56278
56280
  var ESCALATION_STATE = {
56279
56281
  PENDING: "PENDING",
@@ -56396,7 +56398,7 @@ function createChatStreamReducer(options = {}) {
56396
56398
  let stateCache = null;
56397
56399
  function invalidate() {
56398
56400
  stateCache = null;
56399
- _optionalChain([onChange, 'optionalCall', _1525 => _1525()]);
56401
+ _optionalChain([onChange, 'optionalCall', _1526 => _1526()]);
56400
56402
  }
56401
56403
  function getState() {
56402
56404
  if (!stateCache) {
@@ -56413,7 +56415,7 @@ function createChatStreamReducer(options = {}) {
56413
56415
  return stateCache;
56414
56416
  }
56415
56417
  function emit(name, ...args) {
56416
- _optionalChain([onEffect, 'optionalCall', _1526 => _1526({ name, args })]);
56418
+ _optionalChain([onEffect, 'optionalCall', _1527 => _1527({ name, args })]);
56417
56419
  }
56418
56420
  function setMessagesInternal(next) {
56419
56421
  if (next !== messages) {
@@ -56444,12 +56446,12 @@ function createChatStreamReducer(options = {}) {
56444
56446
  return [...next.slice(0, -1), { ...last, streamSeq: seq }];
56445
56447
  }
56446
56448
  function applySegmentsToState(segments, meta) {
56447
- const seq = _optionalChain([meta, 'optionalAccess', _1527 => _1527.streamSeq]);
56448
- if (_optionalChain([meta, 'optionalAccess', _1528 => _1528.append]) && meta.isCompacting) {
56449
+ const seq = _optionalChain([meta, 'optionalAccess', _1528 => _1528.streamSeq]);
56450
+ if (_optionalChain([meta, 'optionalAccess', _1529 => _1529.append]) && meta.isCompacting) {
56449
56451
  setMessagesInternal(stampTrailingAssistantSeq(upsertTrailingCompaction(messages, segments), seq));
56450
56452
  return;
56451
56453
  }
56452
- if (_optionalChain([meta, 'optionalAccess', _1529 => _1529.append])) {
56454
+ if (_optionalChain([meta, 'optionalAccess', _1530 => _1530.append])) {
56453
56455
  setMessagesInternal(stampTrailingAssistantSeq(appendToTrailingAssistant(messages, segments), seq));
56454
56456
  return;
56455
56457
  }
@@ -56461,7 +56463,7 @@ function createChatStreamReducer(options = {}) {
56461
56463
  adoptTrailingAssistant = false;
56462
56464
  const last = messages[messages.length - 1];
56463
56465
  if (!last || last.role !== "assistant" || adoptTail) return;
56464
- const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access', _1530 => _1530.segments, 'optionalAccess', _1531 => _1531.length]), () => ( 0))) > 0 || last.content !== "";
56466
+ const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access', _1531 => _1531.segments, 'optionalAccess', _1532 => _1532.length]), () => ( 0))) > 0 || last.content !== "";
56465
56467
  if (!hasContent2) return;
56466
56468
  setMessagesInternal([
56467
56469
  ...messages,
@@ -56689,13 +56691,13 @@ function createChatStreamReducer(options = {}) {
56689
56691
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
56690
56692
  pendingEscalated.set(requestId, {
56691
56693
  command: summary,
56692
- explanation: _optionalChain([required, 'optionalAccess', _1532 => _1532.toolExplanation]),
56694
+ explanation: _optionalChain([required, 'optionalAccess', _1533 => _1533.toolExplanation]),
56693
56695
  approvalType,
56694
56696
  toolCalls
56695
56697
  });
56696
56698
  emit("onEscalatedApproval", requestId, {
56697
56699
  command: summary,
56698
- explanation: _optionalChain([required, 'optionalAccess', _1533 => _1533.toolExplanation]),
56700
+ explanation: _optionalChain([required, 'optionalAccess', _1534 => _1534.toolExplanation]),
56699
56701
  approvalType
56700
56702
  });
56701
56703
  break;
@@ -56885,7 +56887,7 @@ function createChatStreamReducer(options = {}) {
56885
56887
  let message2;
56886
56888
  if (event.details) {
56887
56889
  try {
56888
- message2 = _optionalChain([JSON, 'access', _1534 => _1534.parse, 'call', _1535 => _1535(event.details), 'optionalAccess', _1536 => _1536.error, 'optionalAccess', _1537 => _1537.message]);
56890
+ message2 = _optionalChain([JSON, 'access', _1535 => _1535.parse, 'call', _1536 => _1536(event.details), 'optionalAccess', _1537 => _1537.error, 'optionalAccess', _1538 => _1538.message]);
56889
56891
  } catch (e103) {
56890
56892
  message2 = event.details;
56891
56893
  }
@@ -57102,7 +57104,7 @@ function createChatStreamReducer(options = {}) {
57102
57104
  const resolveBatch = (status, confirm) => async () => {
57103
57105
  setMessagesInternal(projectBatchStatusToMessages(messages, anchorId, status));
57104
57106
  for (const id of ids) {
57105
- const ok = await _optionalChain([confirm, 'optionalCall', _1538 => _1538(id)]);
57107
+ const ok = await _optionalChain([confirm, 'optionalCall', _1539 => _1539(id)]);
57106
57108
  if (ok === false) {
57107
57109
  setMessagesInternal(projectBatchRowFailureToMessages(messages, id));
57108
57110
  }
@@ -57245,8 +57247,8 @@ function createChatStreamReducer(options = {}) {
57245
57247
  }
57246
57248
  }
57247
57249
  }
57248
- hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _1539 => _1539.resumed]), () => ( messages.length > 0)));
57249
- if (_optionalChain([extras, 'optionalAccess', _1540 => _1540.agentBusy])) agentBusyState();
57250
+ hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _1540 => _1540.resumed]), () => ( messages.length > 0)));
57251
+ if (_optionalChain([extras, 'optionalAccess', _1541 => _1541.agentBusy])) agentBusyState();
57250
57252
  invalidate();
57251
57253
  }
57252
57254
  return {
@@ -57331,7 +57333,7 @@ function createChatStreamReducer(options = {}) {
57331
57333
  },
57332
57334
  endSseTurn() {
57333
57335
  const last = messages[messages.length - 1];
57334
- if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _1541 => _1541.segments, 'optionalAccess', _1542 => _1542.length]), () => ( 0))) === 0 && last.content === "") {
57336
+ if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _1542 => _1542.segments, 'optionalAccess', _1543 => _1543.length]), () => ( 0))) === 0 && last.content === "") {
57335
57337
  messages = messages.slice(0, -1);
57336
57338
  }
57337
57339
  sseCurrentText = "";
@@ -57485,10 +57487,10 @@ function createChatDialogStore(options = {}) {
57485
57487
  if (onEvict) {
57486
57488
  const sep = key.indexOf(KEY_SEP);
57487
57489
  onEvict(key.slice(0, sep), key.slice(sep + 1), {
57488
- messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1543 => _1543.state, 'access', _1544 => _1544.messages]), () => ( EMPTY_STATE.messages)),
57489
- approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1545 => _1545.state, 'access', _1546 => _1546.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
57490
- lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1547 => _1547.getLastAppliedSeq, 'call', _1548 => _1548()]), () => ( Number.NEGATIVE_INFINITY)),
57491
- pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1549 => _1549.getPendingEchoes, 'call', _1550 => _1550()]), () => ( EMPTY_PENDING_ECHOES))
57490
+ messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1544 => _1544.state, 'access', _1545 => _1545.messages]), () => ( EMPTY_STATE.messages)),
57491
+ approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1546 => _1546.state, 'access', _1547 => _1547.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
57492
+ lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1548 => _1548.getLastAppliedSeq, 'call', _1549 => _1549()]), () => ( Number.NEGATIVE_INFINITY)),
57493
+ pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1550 => _1550.getPendingEchoes, 'call', _1551 => _1551()]), () => ( EMPTY_PENDING_ECHOES))
57492
57494
  });
57493
57495
  }
57494
57496
  }
@@ -57498,12 +57500,12 @@ function createChatDialogStore(options = {}) {
57498
57500
  const key = keyOf(dialogId, side);
57499
57501
  let reducer2 = reducers.get(key);
57500
57502
  if (!reducer2) {
57501
- const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _1551 => _1551(dialogId, side)]), () => ( {}));
57503
+ const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _1552 => _1552(dialogId, side)]), () => ( {}));
57502
57504
  const userOnChange = base.onChange;
57503
57505
  reducer2 = createChatStreamReducer({
57504
57506
  ...base,
57505
57507
  onChange: () => {
57506
- _optionalChain([userOnChange, 'optionalCall', _1552 => _1552()]);
57508
+ _optionalChain([userOnChange, 'optionalCall', _1553 => _1553()]);
57507
57509
  notify();
57508
57510
  }
57509
57511
  });
@@ -57548,7 +57550,7 @@ function createChatDialogStore(options = {}) {
57548
57550
  };
57549
57551
  }
57550
57552
  function getSnapshot(dialogId, side = DEFAULT_DIALOG_SIDE) {
57551
- return _nullishCoalesce(_optionalChain([reducers, 'access', _1553 => _1553.get, 'call', _1554 => _1554(keyOf(dialogId, side)), 'optionalAccess', _1555 => _1555.state]), () => ( EMPTY_STATE));
57553
+ return _nullishCoalesce(_optionalChain([reducers, 'access', _1554 => _1554.get, 'call', _1555 => _1555(keyOf(dialogId, side)), 'optionalAccess', _1556 => _1556.state]), () => ( EMPTY_STATE));
57552
57554
  }
57553
57555
  function getServerSnapshot() {
57554
57556
  return EMPTY_STATE;
@@ -57640,7 +57642,7 @@ function createDeltaBatcher({
57640
57642
  pending = [];
57641
57643
  const key = pendingKey;
57642
57644
  for (const delta of batch) applyOne(delta, key);
57643
- _optionalChain([onFlushed, 'optionalCall', _1556 => _1556(batch.length)]);
57645
+ _optionalChain([onFlushed, 'optionalCall', _1557 => _1557(batch.length)]);
57644
57646
  }
57645
57647
  function schedule() {
57646
57648
  if (raf !== null || timer !== null) return;
@@ -57664,7 +57666,7 @@ function createDeltaBatcher({
57664
57666
  }
57665
57667
  if (!isDeltaEvent(event)) return false;
57666
57668
  const tail = pending[pending.length - 1];
57667
- const seqAdvances = _optionalChain([tail, 'optionalAccess', _1557 => _1557.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
57669
+ const seqAdvances = _optionalChain([tail, 'optionalAccess', _1558 => _1558.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
57668
57670
  if (tail && seqAdvances && tail.type === event.type && (tail.type !== "text-delta" || tail.leading === event.leading)) {
57669
57671
  pending[pending.length - 1] = {
57670
57672
  ...tail,
@@ -57697,7 +57699,7 @@ function useChatStreamReducer({
57697
57699
  }) {
57698
57700
  const optionsRef = _react.useRef.call(void 0, createReducerOptions);
57699
57701
  optionsRef.current = createReducerOptions;
57700
- const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1558 => _1558.current, 'optionalCall', _1559 => _1559()]), () => ( {})));
57702
+ const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1559 => _1559.current, 'optionalCall', _1560 => _1560()]), () => ( {})));
57701
57703
  const getSnapshot = _react.useCallback.call(void 0, () => store.getSnapshot(dialogId, side), [store, dialogId, side]);
57702
57704
  const getServerSnapshot = _react.useCallback.call(void 0, () => store.getServerSnapshot(), [store]);
57703
57705
  const subscribe = _react.useCallback.call(void 0, (listener) => store.subscribe(listener), [store]);
@@ -57757,7 +57759,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57757
57759
  const { active = true } = runtimeOptions;
57758
57760
  const runtime = _chunkCEAAOVCVcjs.useRequiredChatRuntime.call(void 0, );
57759
57761
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
57760
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1560 => _1560.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57762
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1561 => _1561.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57761
57763
  const sendMessageRef = _react.useRef.call(void 0, async () => true);
57762
57764
  const cardResolve = _react.useCallback.call(void 0,
57763
57765
  (action) => (reqId) => {
@@ -57792,7 +57794,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57792
57794
  if (!restoredConversationRef.current) {
57793
57795
  restoredConversationRef.current = true;
57794
57796
  pruneStaleChatConversationStorage(source);
57795
- conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1561 => _1561.load, 'call', _1562 => _1562(), 'optionalAccess', _1563 => _1563.conversationId]), () => ( null));
57797
+ conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1562 => _1562.load, 'call', _1563 => _1563(), 'optionalAccess', _1564 => _1564.conversationId]), () => ( null));
57796
57798
  }
57797
57799
  const commandsUrl = runtime.endpoints.commandsUrl;
57798
57800
  const { commands: slashCommands } = useSlashCommandRegistry(commandsUrl, {
@@ -57899,7 +57901,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57899
57901
  const serverMessage = await readServerErrorMessage(response);
57900
57902
  throw new Error(_nullishCoalesce(serverMessage, () => ( `Chat request failed: ${response.status}`)));
57901
57903
  }
57902
- const reader = _optionalChain([response, 'access', _1564 => _1564.body, 'optionalAccess', _1565 => _1565.getReader, 'call', _1566 => _1566()]);
57904
+ const reader = _optionalChain([response, 'access', _1565 => _1565.body, 'optionalAccess', _1566 => _1566.getReader, 'call', _1567 => _1567()]);
57903
57905
  if (!reader) throw new Error("No response body");
57904
57906
  const frameDecoder = createSseFrameDecoder();
57905
57907
  let finished = false;
@@ -57922,7 +57924,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57922
57924
  }
57923
57925
  return true;
57924
57926
  } catch (err) {
57925
- if (_optionalChain([err, 'optionalAccess', _1567 => _1567.name]) === "AbortError" || ctrl.signal.aborted) {
57927
+ if (_optionalChain([err, 'optionalAccess', _1568 => _1568.name]) === "AbortError" || ctrl.signal.aborted) {
57926
57928
  return true;
57927
57929
  }
57928
57930
  flushDeltas();
@@ -57944,7 +57946,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57944
57946
  );
57945
57947
  sendMessageRef.current = sendMessage;
57946
57948
  const stopMessage = _react.useCallback.call(void 0, () => {
57947
- _optionalChain([abortControllerRef, 'access', _1568 => _1568.current, 'optionalAccess', _1569 => _1569.abort, 'call', _1570 => _1570()]);
57949
+ _optionalChain([abortControllerRef, 'access', _1569 => _1569.current, 'optionalAccess', _1570 => _1570.abort, 'call', _1571 => _1571()]);
57948
57950
  flushDeltas();
57949
57951
  mutate((r) => r.setPhase("idle"));
57950
57952
  }, [mutate, flushDeltas]);
@@ -57960,7 +57962,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57960
57962
  let sendIdx = -1;
57961
57963
  return state.messages.map((m) => {
57962
57964
  const segments = m.segments;
57963
- const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1571 => _1571.filter, 'call', _1572 => _1572((s) => s.type === "text"), 'access', _1573 => _1573.map, 'call', _1574 => _1574((s) => s.text), 'access', _1575 => _1575.join, 'call', _1576 => _1576("")]), () => ( ""));
57965
+ const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1572 => _1572.filter, 'call', _1573 => _1573((s) => s.type === "text"), 'access', _1574 => _1574.map, 'call', _1575 => _1575((s) => s.text), 'access', _1576 => _1576.join, 'call', _1577 => _1577("")]), () => ( ""));
57964
57966
  let sources;
57965
57967
  let scrollAnchor;
57966
57968
  if (m.role === "user" && !m.hidden) {
@@ -57969,7 +57971,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57969
57971
  if (m.role === "assistant") {
57970
57972
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
57971
57973
  sources = sourcesMap.get(lookupIdx);
57972
- scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1577 => _1577.get, 'call', _1578 => _1578(lookupIdx), 'optionalAccess', _1579 => _1579.scrollAnchor]), () => ( void 0));
57974
+ scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1578 => _1578.get, 'call', _1579 => _1579(lookupIdx), 'optionalAccess', _1580 => _1580.scrollAnchor]), () => ( void 0));
57973
57975
  }
57974
57976
  return {
57975
57977
  id: m.id,
@@ -57998,7 +58000,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57998
58000
  );
57999
58001
  return;
58000
58002
  }
58001
- const refSlug = typeof _optionalChain([reference, 'access', _1580 => _1580.metadata, 'optionalAccess', _1581 => _1581.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
58003
+ const refSlug = typeof _optionalChain([reference, 'access', _1581 => _1581.metadata, 'optionalAccess', _1582 => _1582.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
58002
58004
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
58003
58005
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
58004
58006
  const text = `/${cmdId} display "${escaped}"`;
@@ -58048,18 +58050,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
58048
58050
  /** True while the mount-time rebuild from the server transcript runs. */
58049
58051
  isHydratingHistory,
58050
58052
  /** Provider key for the lib's `<ModelDisplay>` icon. */
58051
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1582 => _1582.provider]), () => ( null)),
58052
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1583 => _1583.modelLabel]), () => ( null)),
58053
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1584 => _1584.contextWindowMaxTokens]), () => ( null)),
58053
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1583 => _1583.provider]), () => ( null)),
58054
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1584 => _1584.modelLabel]), () => ( null)),
58055
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1585 => _1585.contextWindowMaxTokens]), () => ( null)),
58054
58056
  /** Input tokens (known after server's message_start frame; null until). */
58055
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1585 => _1585.inputTokens]), () => ( null)),
58057
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1586 => _1586.inputTokens]), () => ( null)),
58056
58058
  /** Output tokens (known only after server's trailing usage frame). */
58057
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1586 => _1586.outputTokens]), () => ( null)),
58059
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1587 => _1587.outputTokens]), () => ( null)),
58058
58060
  /** Cache hit % (read / total-input × 100). null during streaming. */
58059
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1587 => _1587.cacheHitRatePct]), () => ( null)),
58061
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1588 => _1588.cacheHitRatePct]), () => ( null)),
58060
58062
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
58061
58063
  * token counts). null until the trailing usage frame lands. */
58062
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1588 => _1588.breakdown]), () => ( null)),
58064
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1589 => _1589.breakdown]), () => ( null)),
58063
58065
  // ─── Dialog management — stubs for v1 ────────────────────────────────
58064
58066
  // Guide mode keeps ONE server-side conversation per stored id
58065
58067
  // (`chat_conversations`, hydrated on mount). Surfacing multiple threads
@@ -58354,7 +58356,7 @@ function decodeNatsChunk(chunk) {
58354
58356
  userId: typeof data.userId === "string" ? data.userId : void 0,
58355
58357
  // Wire shape carries no label; fall back to the id (parity with
58356
58358
  // the history path in `process-historical-messages.ts`).
58357
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1589 => _1589.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1590 => _1590.id]) === "string").map((it) => ({
58359
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1590 => _1590.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1591 => _1591.id]) === "string").map((it) => ({
58358
58360
  type: it.type,
58359
58361
  id: it.id,
58360
58362
  label: it.id
@@ -58406,15 +58408,15 @@ function decodeNatsChunk(chunk) {
58406
58408
 
58407
58409
  // src/components/chat/utils/process-historical-messages.ts
58408
58410
  function getOwnerDisplayName(owner) {
58409
- if (_optionalChain([owner, 'optionalAccess', _1591 => _1591.type]) === OWNER_TYPE.ADMIN && owner.user) {
58411
+ if (_optionalChain([owner, 'optionalAccess', _1592 => _1592.type]) === OWNER_TYPE.ADMIN && owner.user) {
58410
58412
  const { firstName, lastName } = owner.user;
58411
58413
  const name = [firstName, lastName].filter(Boolean).join(" ");
58412
58414
  if (name) return name;
58413
58415
  }
58414
- return _optionalChain([owner, 'optionalAccess', _1592 => _1592.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58416
+ return _optionalChain([owner, 'optionalAccess', _1593 => _1593.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58415
58417
  }
58416
58418
  function getOwnerAvatar(owner) {
58417
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1593 => _1593.user, 'optionalAccess', _1594 => _1594.image, 'optionalAccess', _1595 => _1595.imageUrl]), () => ( void 0));
58419
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1594 => _1594.user, 'optionalAccess', _1595 => _1595.image, 'optionalAccess', _1596 => _1596.imageUrl]), () => ( void 0));
58418
58420
  }
58419
58421
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
58420
58422
  messageDataArray.forEach((data) => {
@@ -58613,7 +58615,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58613
58615
  event.offerId,
58614
58616
  event.text,
58615
58617
  event.origin,
58616
- _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1596 => _1596[event.offerId]]), () => ( "pending"))
58618
+ _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1597 => _1597[event.offerId]]), () => ( "pending"))
58617
58619
  );
58618
58620
  break;
58619
58621
  case "ticket-escalated":
@@ -58639,7 +58641,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58639
58641
  });
58640
58642
  break;
58641
58643
  case "escalation-offer-resolved":
58642
- _optionalChain([offerResolutions, 'optionalAccess', _1597 => _1597.set, 'call', _1598 => _1598(event.offerId, {
58644
+ _optionalChain([offerResolutions, 'optionalAccess', _1598 => _1598.set, 'call', _1599 => _1599(event.offerId, {
58643
58645
  status: event.status,
58644
58646
  resolvedByName: event.resolvedByName
58645
58647
  })]);
@@ -58717,7 +58719,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58717
58719
  }
58718
58720
  }
58719
58721
  } else {
58720
- _optionalChain([escalatedApprovals, 'optionalAccess', _1599 => _1599.set, 'call', _1600 => _1600(event.requestId, {
58722
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1600 => _1600.set, 'call', _1601 => _1601(event.requestId, {
58721
58723
  command: event.command || "",
58722
58724
  explanation: event.explanation,
58723
58725
  approvalType,
@@ -58732,8 +58734,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58732
58734
  const existingStatus = approvalStatuses[requestId];
58733
58735
  const status = existingStatus || event.status;
58734
58736
  const resolvedByName = event.resolvedByName;
58735
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1601 => _1601.get, 'call', _1602 => _1602(requestId)]);
58736
- if (_optionalChain([escalatedData, 'optionalAccess', _1603 => _1603.toolCalls]) && escalatedData.toolCalls.length > 0) {
58737
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1602 => _1602.get, 'call', _1603 => _1603(requestId)]);
58738
+ if (_optionalChain([escalatedData, 'optionalAccess', _1604 => _1604.toolCalls]) && escalatedData.toolCalls.length > 0) {
58737
58739
  if (batchApprovalsEnabled) {
58738
58740
  accumulator.addApprovalBatch(
58739
58741
  requestId,
@@ -58755,7 +58757,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58755
58757
  );
58756
58758
  }
58757
58759
  }
58758
- _optionalChain([escalatedApprovals, 'optionalAccess', _1604 => _1604.delete, 'call', _1605 => _1605(requestId)]);
58760
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1605 => _1605.delete, 'call', _1606 => _1606(requestId)]);
58759
58761
  break;
58760
58762
  }
58761
58763
  if (escalatedData) {
@@ -58764,7 +58766,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58764
58766
  explanation: escalatedData.explanation,
58765
58767
  approvalType: escalatedData.approvalType
58766
58768
  });
58767
- _optionalChain([escalatedApprovals, 'optionalAccess', _1606 => _1606.delete, 'call', _1607 => _1607(requestId)]);
58769
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1607 => _1607.delete, 'call', _1608 => _1608(requestId)]);
58768
58770
  }
58769
58771
  const before = accumulator.getSegments();
58770
58772
  const after = accumulator.updateApprovalStatus(requestId, status, resolvedByName);
@@ -58781,7 +58783,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58781
58783
  let message2;
58782
58784
  if (event.details) {
58783
58785
  try {
58784
- message2 = _optionalChain([JSON, 'access', _1608 => _1608.parse, 'call', _1609 => _1609(event.details), 'optionalAccess', _1610 => _1610.error, 'optionalAccess', _1611 => _1611.message]);
58786
+ message2 = _optionalChain([JSON, 'access', _1609 => _1609.parse, 'call', _1610 => _1610(event.details), 'optionalAccess', _1611 => _1611.error, 'optionalAccess', _1612 => _1612.message]);
58785
58787
  } catch (e104) {
58786
58788
  message2 = event.details;
58787
58789
  }
@@ -58867,14 +58869,14 @@ function processHistoricalMessages(messages, options = {}) {
58867
58869
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
58868
58870
  return;
58869
58871
  }
58870
- const isUserMessage = _optionalChain([msg, 'access', _1612 => _1612.owner, 'optionalAccess', _1613 => _1613.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1614 => _1614.owner, 'optionalAccess', _1615 => _1615.type]) === OWNER_TYPE.ADMIN;
58872
+ const isUserMessage = _optionalChain([msg, 'access', _1613 => _1613.owner, 'optionalAccess', _1614 => _1614.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1615 => _1615.owner, 'optionalAccess', _1616 => _1616.type]) === OWNER_TYPE.ADMIN;
58871
58873
  if (isUserMessage) {
58872
58874
  flushAssistantMessage();
58873
- const userAuthorType = _optionalChain([msg, 'access', _1616 => _1616.owner, 'optionalAccess', _1617 => _1617.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58875
+ const userAuthorType = _optionalChain([msg, 'access', _1617 => _1617.owner, 'optionalAccess', _1618 => _1618.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58874
58876
  messageDataArray.forEach((data) => {
58875
58877
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
58876
58878
  const rawContext = data.contextItems;
58877
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1618 => _1618.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1619 => _1619.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58879
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1619 => _1619.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1620 => _1620.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58878
58880
  processedMessages.push({
58879
58881
  id: msg.id,
58880
58882
  role: "user",
@@ -58911,7 +58913,7 @@ function processHistoricalMessages(messages, options = {}) {
58911
58913
  });
58912
58914
  const nextMsg = messages[index + 1];
58913
58915
  const isLastMessage = index === messages.length - 1;
58914
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1620 => _1620.owner, 'optionalAccess', _1621 => _1621.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1622 => _1622.owner, 'optionalAccess', _1623 => _1623.type]) === OWNER_TYPE.ADMIN);
58916
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1621 => _1621.owner, 'optionalAccess', _1622 => _1622.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1623 => _1623.owner, 'optionalAccess', _1624 => _1624.type]) === OWNER_TYPE.ADMIN);
58915
58917
  if (isLastMessage || nextIsFromUser) {
58916
58918
  flushAssistantMessage();
58917
58919
  }
@@ -59023,7 +59025,7 @@ function extractIncompleteMessageState(lastMessage) {
59023
59025
  break;
59024
59026
  case "approval_batch": {
59025
59027
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
59026
- (c) => _optionalChain([segment, 'access', _1624 => _1624.data, 'access', _1625 => _1625.executions, 'optionalAccess', _1626 => _1626[c.toolExecutionRequestId], 'optionalAccess', _1627 => _1627.status]) === "done"
59028
+ (c) => _optionalChain([segment, 'access', _1625 => _1625.data, 'access', _1626 => _1626.executions, 'optionalAccess', _1627 => _1627[c.toolExecutionRequestId], 'optionalAccess', _1628 => _1628.status]) === "done"
59027
59029
  );
59028
59030
  if (segment.status !== "rejected" && !allDone) {
59029
59031
  hasIncompleteState = true;
@@ -59059,11 +59061,11 @@ function extractIncompleteMessageState(lastMessage) {
59059
59061
  function extractIncompleteTailState(messages) {
59060
59062
  if (!messages || messages.length === 0) return void 0;
59061
59063
  let start = messages.length;
59062
- while (start > 0 && _optionalChain([messages, 'access', _1628 => _1628[start - 1], 'optionalAccess', _1629 => _1629.role]) === "assistant") start -= 1;
59064
+ while (start > 0 && _optionalChain([messages, 'access', _1629 => _1629[start - 1], 'optionalAccess', _1630 => _1630.role]) === "assistant") start -= 1;
59063
59065
  if (start === messages.length) return void 0;
59064
59066
  const segments = [];
59065
59067
  for (let i = start; i < messages.length; i += 1) {
59066
- const content = _optionalChain([messages, 'access', _1630 => _1630[i], 'optionalAccess', _1631 => _1631.content]);
59068
+ const content = _optionalChain([messages, 'access', _1631 => _1631[i], 'optionalAccess', _1632 => _1632.content]);
59067
59069
  if (Array.isArray(content)) segments.push(...content);
59068
59070
  }
59069
59071
  if (segments.length === 0) return void 0;
@@ -59417,7 +59419,7 @@ function useNatsChatAdapter(config, options = {}) {
59417
59419
  }, [active, fetchDialogs, loadDialogsPage]);
59418
59420
  const sendMessage = _react.useCallback.call(void 0,
59419
59421
  async (text, sendOptions) => {
59420
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1632 => _1632.hidden]), () => ( false));
59422
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1633 => _1633.hidden]), () => ( false));
59421
59423
  mutate((r) => r.pushOptimisticSend(text, hidden));
59422
59424
  await publishUserMessage(text, { hidden, dialogId });
59423
59425
  },
@@ -59573,11 +59575,11 @@ function useNatsChatAdapter(config, options = {}) {
59573
59575
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
59574
59576
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
59575
59577
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
59576
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1633 => _1633.provider]), () => ( modelProvider)), () => ( null)),
59577
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1634 => _1634.modelLabel]), () => ( modelLabel)), () => ( null)),
59578
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1635 => _1635.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1636 => _1636.contextWindowMaxTokens]))), () => ( null)),
59579
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1637 => _1637.inputTokensSize]), () => ( null)),
59580
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1638 => _1638.outputTokensSize]), () => ( null)),
59578
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1634 => _1634.provider]), () => ( modelProvider)), () => ( null)),
59579
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1635 => _1635.modelLabel]), () => ( modelLabel)), () => ( null)),
59580
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1636 => _1636.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1637 => _1637.contextWindowMaxTokens]))), () => ( null)),
59581
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1638 => _1638.inputTokensSize]), () => ( null)),
59582
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1639 => _1639.outputTokensSize]), () => ( null)),
59581
59583
  currentCacheHitRatePct: null,
59582
59584
  currentUsageBreakdown: null,
59583
59585
  // Dialog management
@@ -59714,7 +59716,7 @@ function useUnifiedChat(options) {
59714
59716
  []
59715
59717
  );
59716
59718
  const setDialogScope = _react.useCallback.call(void 0,
59717
- (scope) => _optionalChain([activeStateRef, 'access', _1639 => _1639.current, 'access', _1640 => _1640.setDialogScope, 'optionalCall', _1641 => _1641(scope)]),
59719
+ (scope) => _optionalChain([activeStateRef, 'access', _1640 => _1640.current, 'access', _1641 => _1641.setDialogScope, 'optionalCall', _1642 => _1642(scope)]),
59718
59720
  []
59719
59721
  );
59720
59722
  const reloadDialogs = _react.useCallback.call(void 0,
@@ -59818,19 +59820,19 @@ function turnRequestKeys(content) {
59818
59820
  if (!Array.isArray(content)) return keys;
59819
59821
  for (const seg of content) {
59820
59822
  if (seg.type === "tool_execution") {
59821
- const id = _optionalChain([seg, 'access', _1642 => _1642.data, 'optionalAccess', _1643 => _1643.toolExecutionRequestId]);
59823
+ const id = _optionalChain([seg, 'access', _1643 => _1643.data, 'optionalAccess', _1644 => _1644.toolExecutionRequestId]);
59822
59824
  if (id) keys.add(id);
59823
59825
  } else if (seg.type === "approval_request") {
59824
- const id = _optionalChain([seg, 'access', _1644 => _1644.data, 'optionalAccess', _1645 => _1645.requestId]);
59826
+ const id = _optionalChain([seg, 'access', _1645 => _1645.data, 'optionalAccess', _1646 => _1646.requestId]);
59825
59827
  if (id) keys.add(id);
59826
59828
  } else if (seg.type === "escalation_offer") {
59827
- const id = _optionalChain([seg, 'access', _1646 => _1646.data, 'optionalAccess', _1647 => _1647.offerId]);
59829
+ const id = _optionalChain([seg, 'access', _1647 => _1647.data, 'optionalAccess', _1648 => _1648.offerId]);
59828
59830
  if (id) keys.add(id);
59829
59831
  } else if (seg.type === "approval_batch") {
59830
59832
  const data = seg.data;
59831
- if (_optionalChain([data, 'optionalAccess', _1648 => _1648.approvalRequestId])) keys.add(data.approvalRequestId);
59832
- for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1649 => _1649.toolCalls]), () => ( []))) {
59833
- if (_optionalChain([call, 'optionalAccess', _1650 => _1650.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59833
+ if (_optionalChain([data, 'optionalAccess', _1649 => _1649.approvalRequestId])) keys.add(data.approvalRequestId);
59834
+ for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1650 => _1650.toolCalls]), () => ( []))) {
59835
+ if (_optionalChain([call, 'optionalAccess', _1651 => _1651.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59834
59836
  }
59835
59837
  }
59836
59838
  }
@@ -59882,20 +59884,20 @@ function mergeHistoryWithRealtime(input) {
59882
59884
  }
59883
59885
  }
59884
59886
  const trailing = processedHistory[processedHistory.length - 1];
59885
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1651 => _1651.role]) === "assistant" ? trailing : null;
59886
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1652 => _1652.content, 'access', _1653 => _1653.find, 'call', _1654 => _1654((s) => s.type === "approval_batch"), 'optionalAccess', _1655 => _1655.data, 'optionalAccess', _1656 => _1656.approvalRequestId]), () => ( null)) : null;
59887
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1652 => _1652.role]) === "assistant" ? trailing : null;
59888
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1653 => _1653.content, 'access', _1654 => _1654.find, 'call', _1655 => _1655((s) => s.type === "approval_batch"), 'optionalAccess', _1656 => _1656.data, 'optionalAccess', _1657 => _1657.approvalRequestId]), () => ( null)) : null;
59887
59889
  let processedToUse = processedHistory;
59888
59890
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
59889
59891
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
59890
59892
  if (historyBatchId) {
59891
59893
  const batchTwins = existingMessages.filter(
59892
59894
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
59893
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1657 => _1657.data, 'optionalAccess', _1658 => _1658.approvalRequestId]) === historyBatchId
59895
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1658 => _1658.data, 'optionalAccess', _1659 => _1659.approvalRequestId]) === historyBatchId
59894
59896
  )
59895
59897
  );
59896
59898
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
59897
59899
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
59898
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1659 => _1659.content])) ? historyTrailingAssistant.content.length : 0;
59900
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1660 => _1660.content])) ? historyTrailingAssistant.content.length : 0;
59899
59901
  const realtimeSize = existingWithSameBatch.content.length;
59900
59902
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
59901
59903
  processedToUse = processedHistory.slice(0, -1);
@@ -59937,9 +59939,9 @@ function mergeHistoryWithRealtime(input) {
59937
59939
  if (pinnedSyntheticIds.has(m.id)) return true;
59938
59940
  if (droppedSyntheticIds.has(m.id)) return false;
59939
59941
  if (processedIds.has(m.id)) return false;
59940
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1660 => _1660.has, 'call', _1661 => _1661(m.id)])) return false;
59942
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1661 => _1661.has, 'call', _1662 => _1662(m.id)])) return false;
59941
59943
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
59942
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1662 => _1662.timestamp, 'optionalAccess', _1663 => _1663.getTime, 'call', _1664 => _1664()]), () => ( 0))) <= historyFetchedAt;
59944
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1663 => _1663.timestamp, 'optionalAccess', _1664 => _1664.getTime, 'call', _1665 => _1665()]), () => ( 0))) <= historyFetchedAt;
59943
59945
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
59944
59946
  }
59945
59947
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
@@ -59963,7 +59965,7 @@ function mergeHistoryWithRealtime(input) {
59963
59965
  } else if (typeof m.streamSeq === "number") {
59964
59966
  covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
59965
59967
  } else {
59966
- covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1665 => _1665.timestamp, 'optionalAccess', _1666 => _1666.getTime, 'call', _1667 => _1667()]), () => ( 0))) <= historyFetchedAt;
59968
+ covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1666 => _1666.timestamp, 'optionalAccess', _1667 => _1667.getTime, 'call', _1668 => _1668()]), () => ( 0))) <= historyFetchedAt;
59967
59969
  }
59968
59970
  if (covered) return false;
59969
59971
  }
@@ -60019,7 +60021,7 @@ function normalizeHistoricalMessageData(md) {
60019
60021
  function isHistoricalUserTurn(m) {
60020
60022
  return !!m.owner;
60021
60023
  }
60022
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1668 => _1668.type]) === "TEXT" && typeof d.text === "string";
60024
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1669 => _1669.type]) === "TEXT" && typeof d.text === "string";
60023
60025
  var THINK_MS = 550;
60024
60026
  var TOKEN_MS = 55;
60025
60027
  var USER_MS = 480;
@@ -60266,7 +60268,7 @@ function useChatDialogManager({
60266
60268
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
60267
60269
  if (restoreTarget) {
60268
60270
  try {
60269
- await _optionalChain([unarchiveDialog, 'optionalCall', _1669 => _1669(restoreTarget.id)]);
60271
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1670 => _1670(restoreTarget.id)]);
60270
60272
  } catch (err) {
60271
60273
  console.error("[useChatDialogManager] unarchive failed:", err);
60272
60274
  return;
@@ -60748,7 +60750,7 @@ function EmbeddableChatInner({
60748
60750
  }),
60749
60751
  [commandsUrl]
60750
60752
  );
60751
- const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1670 => _1670.name, 'optionalAccess', _1671 => _1671.trim, 'call', _1672 => _1672()]) || [_optionalChain([identityUser, 'optionalAccess', _1673 => _1673.firstName]), _optionalChain([identityUser, 'optionalAccess', _1674 => _1674.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1675 => _1675.trim, 'call', _1676 => _1676()]) || void 0;
60753
+ const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1671 => _1671.name, 'optionalAccess', _1672 => _1672.trim, 'call', _1673 => _1673()]) || [_optionalChain([identityUser, 'optionalAccess', _1674 => _1674.firstName]), _optionalChain([identityUser, 'optionalAccess', _1675 => _1675.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1676 => _1676.trim, 'call', _1677 => _1677()]) || void 0;
60752
60754
  const effectiveModes = _react.useMemo.call(void 0, () => {
60753
60755
  if (modes) return modes;
60754
60756
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -60757,19 +60759,19 @@ function EmbeddableChatInner({
60757
60759
  const mingoCaps = _react.useMemo.call(void 0, () => {
60758
60760
  if (mingoState) {
60759
60761
  return {
60760
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1677 => _1677.canRename]), () => ( false)),
60761
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1678 => _1678.canArchive]), () => ( false)),
60762
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1679 => _1679.fetchArchivedDialogs]),
60763
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1680 => _1680.unarchiveDialog]),
60764
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1681 => _1681.searchQuery]),
60765
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1682 => _1682.onSearchChange])
60762
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1678 => _1678.canRename]), () => ( false)),
60763
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1679 => _1679.canArchive]), () => ( false)),
60764
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1680 => _1680.fetchArchivedDialogs]),
60765
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1681 => _1681.unarchiveDialog]),
60766
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1682 => _1682.searchQuery]),
60767
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1683 => _1683.onSearchChange])
60766
60768
  };
60767
60769
  }
60768
60770
  return {
60769
- canRename: !!_optionalChain([effectiveModes, 'access', _1683 => _1683.mingo, 'optionalAccess', _1684 => _1684.renameDialog]),
60770
- canArchive: !!_optionalChain([effectiveModes, 'access', _1685 => _1685.mingo, 'optionalAccess', _1686 => _1686.archiveDialog]),
60771
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1687 => _1687.mingo, 'optionalAccess', _1688 => _1688.fetchArchivedDialogs]),
60772
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1689 => _1689.mingo, 'optionalAccess', _1690 => _1690.unarchiveDialog]),
60771
+ canRename: !!_optionalChain([effectiveModes, 'access', _1684 => _1684.mingo, 'optionalAccess', _1685 => _1685.renameDialog]),
60772
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1686 => _1686.mingo, 'optionalAccess', _1687 => _1687.archiveDialog]),
60773
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1688 => _1688.mingo, 'optionalAccess', _1689 => _1689.fetchArchivedDialogs]),
60774
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1690 => _1690.mingo, 'optionalAccess', _1691 => _1691.unarchiveDialog]),
60773
60775
  searchQuery: void 0,
60774
60776
  onSearchChange: void 0
60775
60777
  };
@@ -60783,7 +60785,7 @@ function EmbeddableChatInner({
60783
60785
  if (controlledActiveMode === void 0) {
60784
60786
  setUncontrolledActiveMode(next);
60785
60787
  }
60786
- _optionalChain([onActiveModeChange, 'optionalCall', _1691 => _1691(next)]);
60788
+ _optionalChain([onActiveModeChange, 'optionalCall', _1692 => _1692(next)]);
60787
60789
  },
60788
60790
  [controlledActiveMode, onActiveModeChange]
60789
60791
  );
@@ -60805,7 +60807,7 @@ function EmbeddableChatInner({
60805
60807
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
60806
60808
  const effectiveAssistantName = emptyStateConfig.name;
60807
60809
  const effectiveAssistantIcon = emptyStateConfig.icon;
60808
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1692 => _1692.title]) === "string" ? guideWelcome.title : null)));
60810
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1693 => _1693.title]) === "string" ? guideWelcome.title : null)));
60809
60811
  const {
60810
60812
  messages: rawMessages,
60811
60813
  isLoading: chatLoading,
@@ -60847,7 +60849,7 @@ function EmbeddableChatInner({
60847
60849
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
60848
60850
  guidePromptSentRef.current = true;
60849
60851
  void sendMessage(guidePendingPrompt);
60850
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1693 => _1693()]);
60852
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1694 => _1694()]);
60851
60853
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
60852
60854
  const {
60853
60855
  attachments: stagedAttachments,
@@ -60858,7 +60860,7 @@ function EmbeddableChatInner({
60858
60860
  clear: clearAttachments
60859
60861
  } = useChatAttachments();
60860
60862
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
60861
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1694 => _1694.maxItems]), () => ( 10));
60863
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1695 => _1695.maxItems]), () => ( 10));
60862
60864
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
60863
60865
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
60864
60866
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -60875,10 +60877,10 @@ function EmbeddableChatInner({
60875
60877
  }, [activeDialogId, activeMode]);
60876
60878
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
60877
60879
  const m = /* @__PURE__ */ new Map();
60878
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1695 => _1695.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60880
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1696 => _1696.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60879
60881
  return m;
60880
- }, [_optionalChain([contextPicker, 'optionalAccess', _1696 => _1696.entityTypes])]);
60881
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1697 => _1697.entityTypes]);
60882
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1697 => _1697.entityTypes])]);
60883
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1698 => _1698.entityTypes]);
60882
60884
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
60883
60885
  const byType = /* @__PURE__ */ new Map();
60884
60886
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -60890,7 +60892,7 @@ function EmbeddableChatInner({
60890
60892
  if (mentionActiveRef.current) {
60891
60893
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
60892
60894
  if (contextItems.length >= contextMaxItems) return;
60893
- _optionalChain([chatInputRef, 'access', _1698 => _1698.current, 'optionalAccess', _1699 => _1699.commitMention, 'call', _1700 => _1700(mentionTokenOf(key, mentionMarkerByType), {
60895
+ _optionalChain([chatInputRef, 'access', _1699 => _1699.current, 'optionalAccess', _1700 => _1700.commitMention, 'call', _1701 => _1701(mentionTokenOf(key, mentionMarkerByType), {
60894
60896
  label: item.label,
60895
60897
  icon: resolveContextIcon(item)
60896
60898
  })]);
@@ -60912,9 +60914,9 @@ function EmbeddableChatInner({
60912
60914
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
60913
60915
  if (mentionKeysRef.current.has(key)) {
60914
60916
  mentionKeysRef.current.delete(key);
60915
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1701 => _1701.current, 'optionalAccess', _1702 => _1702.getValue, 'call', _1703 => _1703()]), () => ( ""));
60917
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1702 => _1702.current, 'optionalAccess', _1703 => _1703.getValue, 'call', _1704 => _1704()]), () => ( ""));
60916
60918
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
60917
- _optionalChain([chatInputRef, 'access', _1704 => _1704.current, 'optionalAccess', _1705 => _1705.setValue, 'call', _1706 => _1706(next)]);
60919
+ _optionalChain([chatInputRef, 'access', _1705 => _1705.current, 'optionalAccess', _1706 => _1706.setValue, 'call', _1707 => _1707(next)]);
60918
60920
  }
60919
60921
  }, [mentionMarkerByType]);
60920
60922
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -60931,7 +60933,7 @@ function EmbeddableChatInner({
60931
60933
  }, []);
60932
60934
  const closeContextPicker = _react.useCallback.call(void 0, () => {
60933
60935
  if (mentionActiveRef.current) {
60934
- _optionalChain([chatInputRef, 'access', _1707 => _1707.current, 'optionalAccess', _1708 => _1708.removeMentionTrigger, 'call', _1709 => _1709()]);
60936
+ _optionalChain([chatInputRef, 'access', _1708 => _1708.current, 'optionalAccess', _1709 => _1709.removeMentionTrigger, 'call', _1710 => _1710()]);
60935
60937
  }
60936
60938
  setContextPickerOpen(false);
60937
60939
  setMentionQuery(null);
@@ -60965,8 +60967,8 @@ function EmbeddableChatInner({
60965
60967
  [effectiveAssistantIcon]
60966
60968
  );
60967
60969
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
60968
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1710 => _1710.firstName]), _optionalChain([identityUser, 'optionalAccess', _1711 => _1711.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1712 => _1712.name, 'optionalAccess', _1713 => _1713.trim, 'call', _1714 => _1714()]) || void 0 : void 0;
60969
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1715 => _1715.avatarUrl, 'optionalAccess', _1716 => _1716.trim, 'call', _1717 => _1717()]) || void 0 : void 0;
60970
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1711 => _1711.firstName]), _optionalChain([identityUser, 'optionalAccess', _1712 => _1712.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1713 => _1713.name, 'optionalAccess', _1714 => _1714.trim, 'call', _1715 => _1715()]) || void 0 : void 0;
60971
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1716 => _1716.avatarUrl, 'optionalAccess', _1717 => _1717.trim, 'call', _1718 => _1718()]) || void 0 : void 0;
60970
60972
  const messages = _react.useMemo.call(void 0, () => {
60971
60973
  const cache = timestampCacheRef.current;
60972
60974
  const seenIds = /* @__PURE__ */ new Set();
@@ -61157,9 +61159,9 @@ function EmbeddableChatInner({
61157
61159
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
61158
61160
  const lastSources = _react.useMemo.call(void 0, () => {
61159
61161
  if (chatLoading) return void 0;
61160
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1718 => _1718.sources]);
61162
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1719 => _1719.sources]);
61161
61163
  if (!sources || sources.length === 0) return void 0;
61162
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1719 => _1719.content]) || "";
61164
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1720 => _1720.content]) || "";
61163
61165
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
61164
61166
  (m) => parseInt(m[1], 10)
61165
61167
  );
@@ -61179,7 +61181,7 @@ function EmbeddableChatInner({
61179
61181
  const el = panelMeasureRef.current;
61180
61182
  if (!el || typeof ResizeObserver === "undefined") return;
61181
61183
  const ro = new ResizeObserver((entries) => {
61182
- const w = _optionalChain([entries, 'access', _1720 => _1720[0], 'optionalAccess', _1721 => _1721.contentRect, 'optionalAccess', _1722 => _1722.width]);
61184
+ const w = _optionalChain([entries, 'access', _1721 => _1721[0], 'optionalAccess', _1722 => _1722.contentRect, 'optionalAccess', _1723 => _1723.width]);
61183
61185
  if (typeof w === "number") setPanelWidth(w);
61184
61186
  });
61185
61187
  ro.observe(el);
@@ -61222,16 +61224,16 @@ function EmbeddableChatInner({
61222
61224
  const isMingoMode = activeMode === "mingo";
61223
61225
  const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
61224
61226
  const headerShowBack = hasConversation || guideCanReturnToMingo;
61225
- const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1723 => _1723.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
61227
+ const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1724 => _1724.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
61226
61228
  const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
61227
61229
  const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
61228
61230
  const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
61229
61231
  const headerOnRename = activeDialogId && activeDialog && mingoCaps.canRename ? () => setRenameTarget(activeDialog) : void 0;
61230
61232
  const headerOnArchive = activeDialogId && activeDialog && mingoCaps.canArchive ? () => setArchiveTarget(activeDialog) : void 0;
61231
61233
  const headerOnOpenArchive = fetchArchivedDialogs ? openArchive : void 0;
61232
- const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1724 => _1724.owner]) : void 0;
61233
- const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1725 => _1725.name, 'optionalAccess', _1726 => _1726.trim, 'call', _1727 => _1727()]) || headerUserName;
61234
- const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1728 => _1728.avatarUrl, 'optionalAccess', _1729 => _1729.trim, 'call', _1730 => _1730()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1731 => _1731.avatarUrl, 'optionalAccess', _1732 => _1732.trim, 'call', _1733 => _1733()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1734 => _1734.trim, 'call', _1735 => _1735()]) || void 0;
61234
+ const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1725 => _1725.owner]) : void 0;
61235
+ const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1726 => _1726.name, 'optionalAccess', _1727 => _1727.trim, 'call', _1728 => _1728()]) || headerUserName;
61236
+ const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1729 => _1729.avatarUrl, 'optionalAccess', _1730 => _1730.trim, 'call', _1731 => _1731()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1732 => _1732.avatarUrl, 'optionalAccess', _1733 => _1733.trim, 'call', _1734 => _1734()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1735 => _1735.trim, 'call', _1736 => _1736()]) || void 0;
61235
61237
  const headerAvatar = headerPersonName || headerPersonAvatarUrl ? { name: headerPersonName, avatarUrl: headerPersonAvatarUrl } : void 0;
61236
61238
  const handleNewChat = _react.useCallback.call(void 0, () => {
61237
61239
  resetToNewChat();
@@ -61592,9 +61594,9 @@ function EmbeddableChatInner({
61592
61594
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
61593
61595
  subtitleLoading: emptyStateLoading,
61594
61596
  ...guideWelcome,
61595
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1736 => _1736.title]))),
61596
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1737 => _1737.icon]))),
61597
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1738 => _1738.quickActions]), () => ( guideSuggestedActions)),
61597
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1737 => _1737.title]))),
61598
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1738 => _1738.icon]))),
61599
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1739 => _1739.quickActions]), () => ( guideSuggestedActions)),
61598
61600
  onQuickAction: (action) => {
61599
61601
  setQuickActionPreview(null);
61600
61602
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -61674,8 +61676,8 @@ function EmbeddableChatInner({
61674
61676
  selectedContextItems: contextItems,
61675
61677
  onToggleContextItem: toggleContextItem,
61676
61678
  onRemoveContextItem: removeContextItem,
61677
- contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1739 => _1739.items]),
61678
- onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1740 => _1740.onRemove]),
61679
+ contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1740 => _1740.items]),
61680
+ onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1741 => _1741.onRemove]),
61679
61681
  contextPickerOpen,
61680
61682
  onOpenContextPicker: openContextPicker,
61681
61683
  onCloseContextPicker: closeContextPicker,
@@ -62886,4 +62888,4 @@ function EmbeddableChatInner({
62886
62888
 
62887
62889
 
62888
62890
  exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.FloatingTooltip = FloatingTooltip; exports.TruncateText = TruncateText; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; 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.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.formatDate = formatDate2; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.titleCaseFromSlug = titleCaseFromSlug; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; 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.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; 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.ModalTwoColumn = ModalTwoColumn; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormModal = AdminFormModal; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.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.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.MermaidDiagram = MermaidDiagram; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.AiAssistantInfo = AiAssistantInfo; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.TICKET_EVENT_KIND = TICKET_EVENT_KIND; exports.TicketEventMessage = TicketEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.GuideDisplay = GuideDisplay; exports.AskDisplay = AskDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; 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.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.ChatContextMemoryBar = ChatContextMemoryBar; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.EmployeeEntryBadge = EmployeeEntryBadge; exports.EmployeeEntryCard = EmployeeEntryCard; exports.EmployeeEntryCardSkeleton = EmployeeEntryCardSkeleton; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.HowIWorkCard = HowIWorkCard; exports.HowIWorkCardSkeleton = HowIWorkCardSkeleton; exports.getCaptionsUrl = getCaptionsUrl; exports.rebaseCaptionsUrl = rebaseCaptionsUrl; exports.buildCaptionsUrl = buildCaptionsUrl; exports.getEntityCaptionUrls = getEntityCaptionUrls; exports.getEntityCaptionUrlsById = getEntityCaptionUrlsById; exports.captionsEntityTypeForDocType = captionsEntityTypeForDocType; exports.useCaptions = useCaptions; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.CardHitLayer = CardHitLayer; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; 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.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.AvatarStack = AvatarStack; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; 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.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.clickupTaskUrl = clickupTaskUrl; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.isGuideApproval = isGuideApproval; exports.guideApprovalOrigin = guideApprovalOrigin; exports.approvalDisplaysInline = approvalDisplaysInline; exports.isGuideApprovalSegment = isGuideApprovalSegment; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.useSseChatAdapter = useSseChatAdapter; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.BackButton = BackButton; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; 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 = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; 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.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; 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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; 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.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; 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.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.SubtitlesEditor = SubtitlesEditor; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.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.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; 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.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; 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.SearchInput = SearchInput; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.FilterPillRow = FilterPillRow; exports.MingoAiButton = MingoAiButton; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.useOptionalTicketLive = useOptionalTicketLive; exports.useTicketLive = useTicketLive; exports.TicketLiveProvider = TicketLiveProvider; exports.isOptimistic = isOptimistic; exports.TICKET_TEXT_MAX_CHARS = TICKET_TEXT_MAX_CHARS; exports.TICKET_MARK_READ_DEBOUNCE_MS = TICKET_MARK_READ_DEBOUNCE_MS; exports.TOAST_COPY = TOAST_COPY; exports.TicketAlertsButton = TicketAlertsButton; exports.TopNavigation = TopNavigation; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NAVIGATION_SIDEBAR_WIDTH_VAR = NAVIGATION_SIDEBAR_WIDTH_VAR; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; 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;
62889
- //# sourceMappingURL=chunk-NBBQA443.cjs.map
62891
+ //# sourceMappingURL=chunk-ZGQZLUO6.cjs.map