@flamingo-stack/openframe-frontend-core 0.0.542 → 0.0.543-1802.4770.1

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 (149) hide show
  1. package/dist/{chunk-2GRFWONP.js → chunk-3L5L67V3.js} +2 -2
  2. package/dist/{chunk-4JDQXYFI.cjs → chunk-6NY7TKLY.cjs} +14 -14
  3. package/dist/{chunk-4JDQXYFI.cjs.map → chunk-6NY7TKLY.cjs.map} +1 -1
  4. package/dist/{chunk-FLSI72M2.cjs → chunk-6R4JGGT5.cjs} +3 -3
  5. package/dist/{chunk-FLSI72M2.cjs.map → chunk-6R4JGGT5.cjs.map} +1 -1
  6. package/dist/{chunk-LOSJMXB7.cjs → chunk-A33QVXOY.cjs} +9 -9
  7. package/dist/{chunk-LOSJMXB7.cjs.map → chunk-A33QVXOY.cjs.map} +1 -1
  8. package/dist/{chunk-J2Z53KRG.js → chunk-BBPVOSGN.js} +2 -2
  9. package/dist/{chunk-WNNZFBMS.js → chunk-F2TXZCTG.js} +6 -4
  10. package/dist/{chunk-WNNZFBMS.js.map → chunk-F2TXZCTG.js.map} +1 -1
  11. package/dist/{chunk-DMYAVVD7.cjs → chunk-FPBFFSJA.cjs} +7 -7
  12. package/dist/{chunk-DMYAVVD7.cjs.map → chunk-FPBFFSJA.cjs.map} +1 -1
  13. package/dist/{chunk-JIAZRPQG.cjs → chunk-G6C56Z3W.cjs} +11 -11
  14. package/dist/{chunk-JIAZRPQG.cjs.map → chunk-G6C56Z3W.cjs.map} +1 -1
  15. package/dist/{chunk-FMH3YY4H.js → chunk-HCRASVSB.js} +2 -2
  16. package/dist/{chunk-QW36SYRQ.js → chunk-HGB574AT.js} +2 -2
  17. package/dist/{chunk-Y22S7NE3.js → chunk-HRRA45HV.js} +9 -7
  18. package/dist/chunk-HRRA45HV.js.map +1 -0
  19. package/dist/{chunk-4IOPSFHF.cjs → chunk-JQUUI5CU.cjs} +37 -37
  20. package/dist/{chunk-4IOPSFHF.cjs.map → chunk-JQUUI5CU.cjs.map} +1 -1
  21. package/dist/{chunk-DVBUNH46.cjs → chunk-K47OETPN.cjs} +5 -5
  22. package/dist/{chunk-DVBUNH46.cjs.map → chunk-K47OETPN.cjs.map} +1 -1
  23. package/dist/{chunk-BETH6QZC.cjs → chunk-MAEVGBN2.cjs} +75 -73
  24. package/dist/chunk-MAEVGBN2.cjs.map +1 -0
  25. package/dist/{chunk-VP4ZY2RA.js → chunk-NAZXVYFV.js} +2169 -2158
  26. package/dist/chunk-NAZXVYFV.js.map +1 -0
  27. package/dist/{chunk-PZGOK2OC.js → chunk-NKX7NWLJ.js} +2 -2
  28. package/dist/{chunk-OLUROGWG.cjs → chunk-PDIV4BY6.cjs} +31 -31
  29. package/dist/{chunk-OLUROGWG.cjs.map → chunk-PDIV4BY6.cjs.map} +1 -1
  30. package/dist/{chunk-AKZY45LV.js → chunk-PPRV3CSO.js} +2 -2
  31. package/dist/{chunk-FT5PZQVK.js → chunk-QY77HY3A.js} +5 -5
  32. package/dist/{chunk-UL5EGPMV.js → chunk-R4YDVJMY.js} +4 -4
  33. package/dist/{chunk-F3GGE6DI.cjs → chunk-RBHKEA2G.cjs} +87 -87
  34. package/dist/{chunk-F3GGE6DI.cjs.map → chunk-RBHKEA2G.cjs.map} +1 -1
  35. package/dist/{chunk-SEAKHM72.js → chunk-RHIN6A3M.js} +2 -2
  36. package/dist/{chunk-QDO7Y54S.js → chunk-RHNEWFVD.js} +2 -2
  37. package/dist/{chunk-CE2GROZZ.cjs → chunk-TTFBD45B.cjs} +641 -630
  38. package/dist/chunk-TTFBD45B.cjs.map +1 -0
  39. package/dist/{chunk-QEXFM2QX.js → chunk-VLSRNHHN.js} +2 -2
  40. package/dist/{chunk-T4O3AEKV.cjs → chunk-YEU5XUMC.cjs} +26 -26
  41. package/dist/{chunk-T4O3AEKV.cjs.map → chunk-YEU5XUMC.cjs.map} +1 -1
  42. package/dist/{chunk-WFG72MKN.cjs → chunk-YNBYIMZB.cjs} +28 -26
  43. package/dist/chunk-YNBYIMZB.cjs.map +1 -0
  44. package/dist/{chunk-IRZHAWRW.cjs → chunk-YV5LPROO.cjs} +4 -4
  45. package/dist/{chunk-IRZHAWRW.cjs.map → chunk-YV5LPROO.cjs.map} +1 -1
  46. package/dist/components/case-studies/index.cjs +8 -8
  47. package/dist/components/case-studies/index.js +2 -2
  48. package/dist/components/chat/index.cjs +2 -2
  49. package/dist/components/chat/index.js +1 -1
  50. package/dist/components/chat/types/entities/onboarding-guide.d.ts +1 -0
  51. package/dist/components/chat/types/entities/onboarding-guide.d.ts.map +1 -1
  52. package/dist/components/contact/index.cjs +3 -3
  53. package/dist/components/contact/index.js +2 -2
  54. package/dist/components/docs/index.cjs +5 -5
  55. package/dist/components/docs/index.js +4 -4
  56. package/dist/components/embeds/index.cjs +3 -3
  57. package/dist/components/embeds/index.js +2 -2
  58. package/dist/components/faq/index.cjs +3 -3
  59. package/dist/components/faq/index.js +2 -2
  60. package/dist/components/features/captions-url.cjs +3 -2
  61. package/dist/components/features/captions-url.cjs.map +1 -1
  62. package/dist/components/features/captions-url.d.ts +8 -1
  63. package/dist/components/features/captions-url.d.ts.map +1 -1
  64. package/dist/components/features/captions-url.js +3 -2
  65. package/dist/components/features/captions-url.js.map +1 -1
  66. package/dist/components/features/entity-video-section.d.ts +7 -1
  67. package/dist/components/features/entity-video-section.d.ts.map +1 -1
  68. package/dist/components/features/highlight-config-section.d.ts +4 -6
  69. package/dist/components/features/highlight-config-section.d.ts.map +1 -1
  70. package/dist/components/features/highlight-video-combined-section.d.ts +7 -5
  71. package/dist/components/features/highlight-video-combined-section.d.ts.map +1 -1
  72. package/dist/components/features/highlight-video-section.d.ts +1 -5
  73. package/dist/components/features/highlight-video-section.d.ts.map +1 -1
  74. package/dist/components/features/index.cjs +4 -2
  75. package/dist/components/features/index.cjs.map +1 -1
  76. package/dist/components/features/index.d.ts +1 -0
  77. package/dist/components/features/index.d.ts.map +1 -1
  78. package/dist/components/features/index.js +3 -1
  79. package/dist/components/features/subtitles-editor.d.ts +35 -0
  80. package/dist/components/features/subtitles-editor.d.ts.map +1 -0
  81. package/dist/components/features/transcript-summary-editor.d.ts.map +1 -1
  82. package/dist/components/help-center-pages/index.cjs +22 -22
  83. package/dist/components/help-center-pages/index.js +13 -13
  84. package/dist/components/index.cjs +134 -132
  85. package/dist/components/index.cjs.map +1 -1
  86. package/dist/components/index.js +13 -11
  87. package/dist/components/index.js.map +1 -1
  88. package/dist/components/meeting-scheduler/index.cjs +34 -34
  89. package/dist/components/meeting-scheduler/index.js +3 -3
  90. package/dist/components/navigation/index.cjs +2 -2
  91. package/dist/components/navigation/index.js +1 -1
  92. package/dist/components/onboarding-guides/index.cjs +5 -5
  93. package/dist/components/onboarding-guides/index.js +4 -4
  94. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts.map +1 -1
  95. package/dist/components/related-content/index.cjs +3 -3
  96. package/dist/components/related-content/index.js +2 -2
  97. package/dist/components/shared/product-release/release-detail-page.d.ts +2 -0
  98. package/dist/components/shared/product-release/release-detail-page.d.ts.map +1 -1
  99. package/dist/components/tickets/index.cjs +6 -6
  100. package/dist/components/tickets/index.js +5 -5
  101. package/dist/components/ui/index.cjs +2 -2
  102. package/dist/components/ui/index.js +1 -1
  103. package/dist/index.cjs +4 -2
  104. package/dist/index.cjs.map +1 -1
  105. package/dist/index.js +3 -1
  106. package/dist/types/case-study.d.ts +2 -0
  107. package/dist/types/case-study.d.ts.map +1 -1
  108. package/dist/types/customer-interview.d.ts +2 -2
  109. package/dist/types/customer-interview.d.ts.map +1 -1
  110. package/dist/types/index.cjs.map +1 -1
  111. package/dist/types/index.js.map +1 -1
  112. package/dist/types/product-release.d.ts +2 -0
  113. package/dist/types/product-release.d.ts.map +1 -1
  114. package/dist/types/supabase.d.ts +3 -0
  115. package/dist/types/supabase.d.ts.map +1 -1
  116. package/dist/utils/index.cjs.map +1 -1
  117. package/dist/utils/index.js.map +1 -1
  118. package/package.json +1 -1
  119. package/src/components/chat/types/entities/onboarding-guide.ts +1 -0
  120. package/src/components/features/captions-url.ts +10 -1
  121. package/src/components/features/entity-video-section.tsx +9 -0
  122. package/src/components/features/highlight-config-section.tsx +3 -20
  123. package/src/components/features/highlight-video-combined-section.tsx +25 -8
  124. package/src/components/features/highlight-video-section.tsx +0 -19
  125. package/src/components/features/index.ts +1 -0
  126. package/src/components/features/subtitles-editor.tsx +87 -0
  127. package/src/components/features/transcript-summary-editor.tsx +14 -33
  128. package/src/components/onboarding-guides/onboarding-guide-detail-view.tsx +2 -0
  129. package/src/components/shared/product-release/release-detail-page.tsx +4 -0
  130. package/src/types/case-study.ts +2 -0
  131. package/src/types/customer-interview.ts +2 -2
  132. package/src/types/product-release.ts +2 -0
  133. package/src/types/supabase.ts +3 -0
  134. package/dist/chunk-BETH6QZC.cjs.map +0 -1
  135. package/dist/chunk-CE2GROZZ.cjs.map +0 -1
  136. package/dist/chunk-VP4ZY2RA.js.map +0 -1
  137. package/dist/chunk-WFG72MKN.cjs.map +0 -1
  138. package/dist/chunk-Y22S7NE3.js.map +0 -1
  139. /package/dist/{chunk-2GRFWONP.js.map → chunk-3L5L67V3.js.map} +0 -0
  140. /package/dist/{chunk-J2Z53KRG.js.map → chunk-BBPVOSGN.js.map} +0 -0
  141. /package/dist/{chunk-FMH3YY4H.js.map → chunk-HCRASVSB.js.map} +0 -0
  142. /package/dist/{chunk-QW36SYRQ.js.map → chunk-HGB574AT.js.map} +0 -0
  143. /package/dist/{chunk-PZGOK2OC.js.map → chunk-NKX7NWLJ.js.map} +0 -0
  144. /package/dist/{chunk-AKZY45LV.js.map → chunk-PPRV3CSO.js.map} +0 -0
  145. /package/dist/{chunk-FT5PZQVK.js.map → chunk-QY77HY3A.js.map} +0 -0
  146. /package/dist/{chunk-UL5EGPMV.js.map → chunk-R4YDVJMY.js.map} +0 -0
  147. /package/dist/{chunk-SEAKHM72.js.map → chunk-RHIN6A3M.js.map} +0 -0
  148. /package/dist/{chunk-QDO7Y54S.js.map → chunk-RHNEWFVD.js.map} +0 -0
  149. /package/dist/{chunk-QEXFM2QX.js.map → chunk-VLSRNHHN.js.map} +0 -0
@@ -15339,6 +15339,7 @@ function EntityVideoSection({
15339
15339
  MarkdownRenderer,
15340
15340
  srtContent,
15341
15341
  captionsUrl,
15342
+ highlightCaptionsUrl,
15342
15343
  priority = false
15343
15344
  }) {
15344
15345
  const hasFullVideo = !!(youtubeUrl || mainVideoUrl);
@@ -15387,6 +15388,7 @@ function EntityVideoSection({
15387
15388
  {
15388
15389
  url: highlightVideoUrl,
15389
15390
  poster: highlightVideoThumbnail,
15391
+ captionsUrl: highlightCaptionsUrl,
15390
15392
  layout: "centered"
15391
15393
  }
15392
15394
  ) })
@@ -15407,6 +15409,7 @@ function EntityVideoSection({
15407
15409
  {
15408
15410
  url: highlightVideoUrl,
15409
15411
  poster: highlightVideoThumbnail,
15412
+ captionsUrl: highlightCaptionsUrl,
15410
15413
  layout: "centered",
15411
15414
  priority
15412
15415
  }
@@ -35298,10 +35301,11 @@ function useWalkthroughVideo(opts) {
35298
35301
  }
35299
35302
 
35300
35303
  // src/components/features/captions-url.ts
35301
- function getCaptionsUrl(entityType, entityId, srtContent) {
35304
+ function getCaptionsUrl(entityType, entityId, srtContent, options) {
35302
35305
  if (!srtContent) return void 0;
35303
35306
  const hash = `${srtContent.length}-${srtContent.slice(0, 8).replace(/\s/g, "")}`;
35304
- return `/api/captions/${entityType}/${entityId}?v=${hash}`;
35307
+ const variant = _optionalChain([options, 'optionalAccess', _786 => _786.variant]) ? `&variant=${options.variant}` : "";
35308
+ return `/api/captions/${entityType}/${entityId}?v=${hash}${variant}`;
35305
35309
  }
35306
35310
 
35307
35311
  // src/components/features/video-source-selector.tsx
@@ -35341,7 +35345,7 @@ function VideoSourceSelector({
35341
35345
  input.accept = "video/*";
35342
35346
  input.onchange = async (e) => {
35343
35347
  const target = e.target;
35344
- const file = _optionalChain([target, 'access', _786 => _786.files, 'optionalAccess', _787 => _787[0]]);
35348
+ const file = _optionalChain([target, 'access', _787 => _787.files, 'optionalAccess', _788 => _788[0]]);
35345
35349
  if (!file) return;
35346
35350
  setIsUploading(true);
35347
35351
  setUploadProgress(0);
@@ -35537,6 +35541,54 @@ var ConfidenceBadge = ({
35537
35541
  );
35538
35542
  };
35539
35543
 
35544
+ // src/components/features/subtitles-editor.tsx
35545
+
35546
+ function SubtitlesEditor({
35547
+ subtitles,
35548
+ onSubtitlesChange,
35549
+ label = "Subtitles (SRT)",
35550
+ helperText = "SRT subtitle content generated from transcription. Editable for fine-tuning.",
35551
+ placeholder = "1\n00:00:00,000 --> 00:00:02,500\nHello, welcome to...",
35552
+ minHeight = 200,
35553
+ isAIGenerated = false,
35554
+ disabled = false,
35555
+ id = "subtitles",
35556
+ className = ""
35557
+ }) {
35558
+ if (!subtitles && !onSubtitlesChange) return null;
35559
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className, children: [
35560
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-2", children: [
35561
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
35562
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { htmlFor: id, children: label }),
35563
+ isAIGenerated && subtitles && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Badge, { variant: "secondary", className: "flex items-center gap-1", children: [
35564
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.StandardCcIcon, { size: 12 }),
35565
+ "AI Generated"
35566
+ ] })
35567
+ ] }),
35568
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary mt-1", children: helperText })
35569
+ ] }),
35570
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35571
+ "div",
35572
+ {
35573
+ className: "rounded-lg border border-ods-border bg-ods-card overflow-hidden",
35574
+ style: { minHeight: `${minHeight}px` },
35575
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35576
+ Textarea,
35577
+ {
35578
+ id,
35579
+ value: subtitles || "",
35580
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _789 => _789(e.target.value)]),
35581
+ placeholder,
35582
+ disabled: disabled || !onSubtitlesChange,
35583
+ className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 text-code",
35584
+ style: { minHeight: `${minHeight}px`, lineHeight: "1.6" }
35585
+ }
35586
+ )
35587
+ }
35588
+ )
35589
+ ] });
35590
+ }
35591
+
35540
35592
  // src/components/features/transcript-summary-editor.tsx
35541
35593
 
35542
35594
  function TranscriptSummaryEditor({
@@ -35639,37 +35691,20 @@ function TranscriptSummaryEditor({
35639
35691
  }
35640
35692
  )
35641
35693
  ] }),
35642
- (subtitles || onSubtitlesChange) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
35643
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-2", children: [
35644
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
35645
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { htmlFor: "subtitles", children: subtitlesLabel }),
35646
- isAIGenerated && subtitles && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Badge, { variant: "secondary", className: "flex items-center gap-1", children: [
35647
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.StandardCcIcon, { size: 12 }),
35648
- "AI Generated"
35649
- ] })
35650
- ] }),
35651
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary mt-1", children: subtitlesHelperText })
35652
- ] }),
35653
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35654
- "div",
35655
- {
35656
- className: "rounded-lg border border-ods-border bg-ods-card overflow-hidden",
35657
- style: { minHeight: `${subtitlesMinHeight}px` },
35658
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35659
- Textarea,
35660
- {
35661
- id: "subtitles",
35662
- value: subtitles || "",
35663
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _788 => _788(e.target.value)]),
35664
- placeholder: subtitlesPlaceholder,
35665
- disabled: disabled || !onSubtitlesChange,
35666
- className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 text-code",
35667
- style: { minHeight: `${subtitlesMinHeight}px`, lineHeight: "1.6" }
35668
- }
35669
- )
35670
- }
35671
- )
35672
- ] })
35694
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35695
+ SubtitlesEditor,
35696
+ {
35697
+ id: "subtitles",
35698
+ subtitles,
35699
+ onSubtitlesChange,
35700
+ label: subtitlesLabel,
35701
+ helperText: subtitlesHelperText,
35702
+ placeholder: subtitlesPlaceholder,
35703
+ minHeight: subtitlesMinHeight,
35704
+ isAIGenerated,
35705
+ disabled
35706
+ }
35707
+ )
35673
35708
  ] });
35674
35709
  }
35675
35710
 
@@ -35813,7 +35848,7 @@ var AIEnrichSection = ({
35813
35848
  }) => {
35814
35849
  const hasResults = status === "success" || status === "error";
35815
35850
  const shouldDisable = disabled || !canEnrich;
35816
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _789 => _789.filter, 'call', _790 => _790((f) => !f.isFilled)]) || [];
35851
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _790 => _790.filter, 'call', _791 => _791((f) => !f.isFilled)]) || [];
35817
35852
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35818
35853
  "div",
35819
35854
  {
@@ -35851,7 +35886,7 @@ var AIEnrichSection = ({
35851
35886
  {
35852
35887
  id: "ai-enrich-custom-instructions",
35853
35888
  value: _nullishCoalesce(customInstructions, () => ( "")),
35854
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _791 => _791(e.target.value)]),
35889
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _792 => _792(e.target.value)]),
35855
35890
  placeholder: customInstructionsPlaceholder,
35856
35891
  disabled: loading,
35857
35892
  maxLength: customInstructionsMaxLength,
@@ -35953,8 +35988,6 @@ function HighlightVideoSection({
35953
35988
  highlightVideoSource,
35954
35989
  targetDurationSeconds,
35955
35990
  onTargetDurationChange,
35956
- skipSubtitleBurning,
35957
- onSkipSubtitleBurningChange,
35958
35991
  onGenerateHighlight,
35959
35992
  isGenerating = false,
35960
35993
  generationProgress,
@@ -35980,7 +36013,7 @@ function HighlightVideoSection({
35980
36013
  input.accept = "video/*";
35981
36014
  input.onchange = async (e) => {
35982
36015
  const target = e.target;
35983
- const file = _optionalChain([target, 'access', _792 => _792.files, 'optionalAccess', _793 => _793[0]]);
36016
+ const file = _optionalChain([target, 'access', _793 => _793.files, 'optionalAccess', _794 => _794[0]]);
35984
36017
  if (!file) return;
35985
36018
  setUploadError(null);
35986
36019
  try {
@@ -35997,43 +36030,27 @@ function HighlightVideoSection({
35997
36030
  return `${minutes}:${String(seconds).padStart(2, "0")}`;
35998
36031
  };
35999
36032
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
36000
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 p-4 bg-ods-card rounded-lg border border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4", children: [
36001
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
36002
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-h6", children: "Target Duration" }),
36003
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36004
- Select,
36005
- {
36006
- value: targetDurationSeconds.toString(),
36007
- onValueChange: (value) => onTargetDurationChange(parseInt(value)),
36008
- disabled,
36009
- children: [
36010
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "bg-ods-bg-surface mt-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, {}) }),
36011
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SelectContent, { className: "bg-ods-card", children: [
36012
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "60", children: "1 minute" }),
36013
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "120", children: "2 minutes" }),
36014
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
36015
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "240", children: "4 minutes" }),
36016
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "300", children: "5 minutes" })
36017
- ] })
36018
- ]
36019
- }
36020
- )
36021
- ] }),
36022
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 pt-5", children: [
36023
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36024
- "input",
36025
- {
36026
- type: "checkbox",
36027
- id: "skipSubtitleBurning",
36028
- checked: skipSubtitleBurning,
36029
- onChange: (e) => onSkipSubtitleBurningChange(e.target.checked),
36030
- disabled,
36031
- className: "h-4 w-4 rounded border-ods-border bg-ods-bg-surface text-ods-accent focus:ring-ods-accent"
36032
- }
36033
- ),
36034
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { htmlFor: "skipSubtitleBurning", className: "text-h6 cursor-pointer", children: "Skip subtitle burning" })
36035
- ] })
36036
- ] }) }),
36033
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 p-4 bg-ods-card rounded-lg border border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
36034
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-h6", children: "Target Duration" }),
36035
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36036
+ Select,
36037
+ {
36038
+ value: targetDurationSeconds.toString(),
36039
+ onValueChange: (value) => onTargetDurationChange(parseInt(value)),
36040
+ disabled,
36041
+ children: [
36042
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "bg-ods-bg-surface mt-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, {}) }),
36043
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SelectContent, { className: "bg-ods-card", children: [
36044
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "60", children: "1 minute" }),
36045
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "120", children: "2 minutes" }),
36046
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
36047
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "240", children: "4 minutes" }),
36048
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "300", children: "5 minutes" })
36049
+ ] })
36050
+ ]
36051
+ }
36052
+ )
36053
+ ] }) }) }),
36037
36054
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36038
36055
  AIEnrichSection,
36039
36056
  {
@@ -36117,48 +36134,30 @@ function HighlightVideoSection({
36117
36134
  function HighlightConfigSection({
36118
36135
  targetDurationSeconds,
36119
36136
  onTargetDurationChange,
36120
- skipSubtitleBurning,
36121
- onSkipSubtitleBurningChange,
36122
36137
  disabled = false,
36123
36138
  className = ""
36124
36139
  }) {
36125
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 p-4 bg-ods-card rounded-lg border border-ods-border ${className}`, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4", children: [
36126
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
36127
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-h6", children: "Target Duration" }),
36128
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36129
- Select,
36130
- {
36131
- value: targetDurationSeconds.toString(),
36132
- onValueChange: (value) => onTargetDurationChange(parseInt(value)),
36133
- disabled,
36134
- children: [
36135
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "bg-ods-bg mt-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, {}) }),
36136
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SelectContent, { className: "bg-ods-card", children: [
36137
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "60", children: "1 minute" }),
36138
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "120", children: "2 minutes" }),
36139
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
36140
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "240", children: "4 minutes" }),
36141
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "300", children: "5 minutes" })
36142
- ] })
36143
- ]
36144
- }
36145
- )
36146
- ] }),
36147
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 pt-5", children: [
36148
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36149
- "input",
36150
- {
36151
- type: "checkbox",
36152
- id: "skipSubtitleBurning",
36153
- checked: skipSubtitleBurning,
36154
- onChange: (e) => onSkipSubtitleBurningChange(e.target.checked),
36155
- disabled,
36156
- className: "h-4 w-4 rounded border-ods-border bg-ods-bg text-ods-accent focus:ring-ods-accent"
36157
- }
36158
- ),
36159
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { htmlFor: "skipSubtitleBurning", className: "text-h6 cursor-pointer", children: "Skip subtitle burning" })
36160
- ] })
36161
- ] }) });
36140
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 p-4 bg-ods-card rounded-lg border border-ods-border ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
36141
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { className: "text-h6", children: "Target Duration" }),
36142
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36143
+ Select,
36144
+ {
36145
+ value: targetDurationSeconds.toString(),
36146
+ onValueChange: (value) => onTargetDurationChange(parseInt(value)),
36147
+ disabled,
36148
+ children: [
36149
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "bg-ods-bg mt-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, {}) }),
36150
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SelectContent, { className: "bg-ods-card", children: [
36151
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "60", children: "1 minute" }),
36152
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "120", children: "2 minutes" }),
36153
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
36154
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "240", children: "4 minutes" }),
36155
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: "300", children: "5 minutes" })
36156
+ ] })
36157
+ ]
36158
+ }
36159
+ )
36160
+ ] }) }) });
36162
36161
  }
36163
36162
 
36164
36163
  // src/components/features/entity-summary-editor.tsx
@@ -36475,7 +36474,7 @@ function HighlightVideoPreview({
36475
36474
  input.accept = "video/*";
36476
36475
  input.onchange = async (e) => {
36477
36476
  const target = e.target;
36478
- const file = _optionalChain([target, 'access', _794 => _794.files, 'optionalAccess', _795 => _795[0]]);
36477
+ const file = _optionalChain([target, 'access', _795 => _795.files, 'optionalAccess', _796 => _796[0]]);
36479
36478
  if (!file) return;
36480
36479
  await onUpload(file);
36481
36480
  };
@@ -36612,8 +36611,6 @@ function HighlightVideoCombinedSection({
36612
36611
  // Config props
36613
36612
  targetDurationSeconds,
36614
36613
  onTargetDurationChange,
36615
- skipSubtitleBurning,
36616
- onSkipSubtitleBurningChange,
36617
36614
  configDisabled = false,
36618
36615
  // Generation props
36619
36616
  onGenerateHighlight,
@@ -36642,6 +36639,10 @@ function HighlightVideoCombinedSection({
36642
36639
  previewLabel = "Highlight Video",
36643
36640
  emptyMessage = "No highlight video yet. Use AI generation above or upload manually.",
36644
36641
  uploadProgressComponent,
36642
+ // Highlight subtitles props
36643
+ subtitles,
36644
+ onSubtitlesChange,
36645
+ isSubtitlesAIGenerated = false,
36645
36646
  renderVideoPreview,
36646
36647
  // Common
36647
36648
  className = ""
@@ -36659,7 +36660,7 @@ function HighlightVideoCombinedSection({
36659
36660
  input.accept = "video/*";
36660
36661
  input.onchange = async (e) => {
36661
36662
  const target = e.target;
36662
- const file = _optionalChain([target, 'access', _796 => _796.files, 'optionalAccess', _797 => _797[0]]);
36663
+ const file = _optionalChain([target, 'access', _797 => _797.files, 'optionalAccess', _798 => _798[0]]);
36663
36664
  if (!file) return;
36664
36665
  await onUpload(file);
36665
36666
  };
@@ -36671,8 +36672,6 @@ function HighlightVideoCombinedSection({
36671
36672
  {
36672
36673
  targetDurationSeconds,
36673
36674
  onTargetDurationChange,
36674
- skipSubtitleBurning,
36675
- onSkipSubtitleBurningChange,
36676
36675
  disabled: configDisabled
36677
36676
  }
36678
36677
  ),
@@ -36723,7 +36722,18 @@ function HighlightVideoCombinedSection({
36723
36722
  thumbnailUrl: highlightVideoThumbnail || void 0,
36724
36723
  onDelete
36725
36724
  }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary italic", children: emptyMessage })
36726
- ] })
36725
+ ] }),
36726
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36727
+ SubtitlesEditor,
36728
+ {
36729
+ id: "highlight-subtitles",
36730
+ subtitles,
36731
+ onSubtitlesChange,
36732
+ label: "Highlight Subtitles (SRT)",
36733
+ helperText: "SRT captions transcribed from the highlight reel (AssemblyAI). Served as a selectable text track on the highlight player. Editable for fine-tuning.",
36734
+ isAIGenerated: isSubtitlesAIGenerated
36735
+ }
36736
+ )
36727
36737
  ] });
36728
36738
  }
36729
36739
 
@@ -37045,12 +37055,12 @@ function PhoneInput({
37045
37055
  const runValidation = _react.useCallback.call(void 0, (phone) => {
37046
37056
  if (!phone || digitCount(phone) === 0) {
37047
37057
  setIsInvalid(false);
37048
- _optionalChain([onValidationChange, 'optionalCall', _798 => _798(false)]);
37058
+ _optionalChain([onValidationChange, 'optionalCall', _799 => _799(false)]);
37049
37059
  return;
37050
37060
  }
37051
37061
  const invalid = !validatePhoneNumber(phone, countryCode);
37052
37062
  setIsInvalid(invalid);
37053
- _optionalChain([onValidationChange, 'optionalCall', _799 => _799(invalid)]);
37063
+ _optionalChain([onValidationChange, 'optionalCall', _800 => _800(invalid)]);
37054
37064
  }, [countryCode, digitCount, onValidationChange]);
37055
37065
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
37056
37066
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -37099,7 +37109,7 @@ function PhoneInput({
37099
37109
  debouncedValidation(val);
37100
37110
  } else if (digitCount(val) === 0) {
37101
37111
  setIsInvalid(false);
37102
- _optionalChain([onValidationChange, 'optionalCall', _800 => _800(false)]);
37112
+ _optionalChain([onValidationChange, 'optionalCall', _801 => _801(false)]);
37103
37113
  }
37104
37114
  }
37105
37115
  },
@@ -37440,19 +37450,19 @@ function NotificationsProvider({
37440
37450
  }, []);
37441
37451
  const markRead = React107.useCallback((id) => {
37442
37452
  dispatch({ type: "markRead", id });
37443
- void _optionalChain([actionsRef, 'access', _801 => _801.current, 'optionalAccess', _802 => _802.onMarkRead, 'optionalCall', _803 => _803(id)]);
37453
+ void _optionalChain([actionsRef, 'access', _802 => _802.current, 'optionalAccess', _803 => _803.onMarkRead, 'optionalCall', _804 => _804(id)]);
37444
37454
  }, []);
37445
37455
  const markAllRead = React107.useCallback(() => {
37446
37456
  dispatch({ type: "markAllRead" });
37447
- void _optionalChain([actionsRef, 'access', _804 => _804.current, 'optionalAccess', _805 => _805.onMarkAllRead, 'optionalCall', _806 => _806()]);
37457
+ void _optionalChain([actionsRef, 'access', _805 => _805.current, 'optionalAccess', _806 => _806.onMarkAllRead, 'optionalCall', _807 => _807()]);
37448
37458
  }, []);
37449
37459
  const markSettled = React107.useCallback((id) => {
37450
37460
  dispatch({ type: "markSettled", id });
37451
- void _optionalChain([actionsRef, 'access', _807 => _807.current, 'optionalAccess', _808 => _808.onMarkSettled, 'optionalCall', _809 => _809(id)]);
37461
+ void _optionalChain([actionsRef, 'access', _808 => _808.current, 'optionalAccess', _809 => _809.onMarkSettled, 'optionalCall', _810 => _810(id)]);
37452
37462
  }, []);
37453
37463
  const remove = React107.useCallback((id) => {
37454
37464
  dispatch({ type: "remove", id });
37455
- void _optionalChain([actionsRef, 'access', _810 => _810.current, 'optionalAccess', _811 => _811.onRemove, 'optionalCall', _812 => _812(id)]);
37465
+ void _optionalChain([actionsRef, 'access', _811 => _811.current, 'optionalAccess', _812 => _812.onRemove, 'optionalCall', _813 => _813(id)]);
37456
37466
  }, []);
37457
37467
  const clear = React107.useCallback(() => dispatch({ type: "clear" }), []);
37458
37468
  const open = React107.useCallback(() => setIsOpen(true), []);
@@ -37461,14 +37471,14 @@ function NotificationsProvider({
37461
37471
  const setShowPopups = React107.useCallback(
37462
37472
  (value2) => {
37463
37473
  setShowPopupsState(value2);
37464
- _optionalChain([onShowPopupsChange, 'optionalCall', _813 => _813(value2)]);
37474
+ _optionalChain([onShowPopupsChange, 'optionalCall', _814 => _814(value2)]);
37465
37475
  },
37466
37476
  [onShowPopupsChange]
37467
37477
  );
37468
37478
  const setShowDesktopPopups = React107.useCallback(
37469
37479
  (value2) => {
37470
37480
  setShowDesktopPopupsState(value2);
37471
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _814 => _814(value2)]);
37481
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _815 => _815(value2)]);
37472
37482
  },
37473
37483
  [onShowDesktopPopupsChange]
37474
37484
  );
@@ -37580,7 +37590,7 @@ var AppLayoutDrawerRoot = ({
37580
37590
  const handleOpenChange = React108.useCallback(
37581
37591
  (next) => {
37582
37592
  if (!isControlled) setInternalOpen(next);
37583
- _optionalChain([onOpenChange, 'optionalCall', _815 => _815(next)]);
37593
+ _optionalChain([onOpenChange, 'optionalCall', _816 => _816(next)]);
37584
37594
  },
37585
37595
  [isControlled, onOpenChange]
37586
37596
  );
@@ -37598,11 +37608,11 @@ var AppLayoutDrawerRoot = ({
37598
37608
  };
37599
37609
  }
37600
37610
  React108.useEffect(() => {
37601
- if (open) _optionalChain([coordination, 'optionalAccess', _816 => _816.notifyDrawerDidOpen, 'call', _817 => _817(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
37611
+ if (open) _optionalChain([coordination, 'optionalAccess', _817 => _817.notifyDrawerDidOpen, 'call', _818 => _818(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
37602
37612
  }, [open, coordination]);
37603
37613
  React108.useEffect(() => {
37604
37614
  if (!selfHandleRef.current) return;
37605
- return _optionalChain([coordination, 'optionalAccess', _818 => _818.registerDrawer, 'call', _819 => _819(selfHandleRef.current)]);
37615
+ return _optionalChain([coordination, 'optionalAccess', _819 => _819.registerDrawer, 'call', _820 => _820(selfHandleRef.current)]);
37606
37616
  }, [coordination]);
37607
37617
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37608
37618
  DialogPrimitive4.Root,
@@ -37982,10 +37992,10 @@ var AppLayoutDrawerContent = React108.forwardRef(
37982
37992
  ),
37983
37993
  style,
37984
37994
  onInteractOutside: (event) => {
37985
- _optionalChain([onInteractOutside, 'optionalCall', _820 => _820(event)]);
37995
+ _optionalChain([onInteractOutside, 'optionalCall', _821 => _821(event)]);
37986
37996
  if (event.defaultPrevented) return;
37987
37997
  const target = event.target;
37988
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _821 => _821.contains, 'call', _822 => _822(target)]);
37998
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _822 => _822.contains, 'call', _823 => _823(target)]);
37989
37999
  if (!isInsideContainer) {
37990
38000
  event.preventDefault();
37991
38001
  return;
@@ -38093,7 +38103,7 @@ function NotificationTile({
38093
38103
  if (!counting) return;
38094
38104
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
38095
38105
  const timer = window.setTimeout(() => {
38096
- _optionalChain([onSettle, 'optionalCall', _823 => _823(id)]);
38106
+ _optionalChain([onSettle, 'optionalCall', _824 => _824(id)]);
38097
38107
  }, remaining);
38098
38108
  return () => window.clearTimeout(timer);
38099
38109
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -38149,7 +38159,7 @@ function NotificationTile({
38149
38159
  }
38150
38160
  ) : null,
38151
38161
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
38152
- { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _824 => _824(id)]) },
38162
+ { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _825 => _825(id)]) },
38153
38163
  { active: !isLive, label: "Mark notification complete", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CheckCircleIcon, { size: 16 }), onClick: () => onComplete(id) }
38154
38164
  ].map(({ active, label, icon: icon2, onClick }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38155
38165
  "button",
@@ -38325,7 +38335,7 @@ function DrawerScrollList({
38325
38335
  if (!sentinel || !root) return;
38326
38336
  const observer = new IntersectionObserver(
38327
38337
  (entries) => {
38328
- if (_optionalChain([entries, 'access', _825 => _825[0], 'optionalAccess', _826 => _826.isIntersecting])) _optionalChain([loadMoreRef, 'access', _827 => _827.current, 'optionalCall', _828 => _828()]);
38338
+ if (_optionalChain([entries, 'access', _826 => _826[0], 'optionalAccess', _827 => _827.isIntersecting])) _optionalChain([loadMoreRef, 'access', _828 => _828.current, 'optionalCall', _829 => _829()]);
38329
38339
  },
38330
38340
  { root, rootMargin: loadMoreRootMargin }
38331
38341
  );
@@ -38340,7 +38350,7 @@ function DrawerScrollList({
38340
38350
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
38341
38351
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
38342
38352
  unreadNotifications.map((n) => {
38343
- const custom = _optionalChain([renderTile, 'optionalCall', _829 => _829(n, { onComplete, onSettle, liveDurationMs })]);
38353
+ const custom = _optionalChain([renderTile, 'optionalCall', _830 => _830(n, { onComplete, onSettle, liveDurationMs })]);
38344
38354
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
38345
38355
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38346
38356
  NotificationTile,
@@ -38504,7 +38514,7 @@ function NotificationPopups({
38504
38514
  className
38505
38515
  ),
38506
38516
  children: live.map((n) => {
38507
- const custom = _optionalChain([renderTile, 'optionalCall', _830 => _830(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
38517
+ const custom = _optionalChain([renderTile, 'optionalCall', _831 => _831(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
38508
38518
  if (custom) {
38509
38519
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
38510
38520
  }
@@ -38614,7 +38624,7 @@ function programItemToStripProfile(item) {
38614
38624
  const fromAuthor = toStripProfile(item.author);
38615
38625
  if (fromAuthor) return fromAuthor;
38616
38626
  const host = Array.isArray(item.hosts) ? item.hosts[0] : null;
38617
- if (!_optionalChain([host, 'optionalAccess', _831 => _831.name])) return null;
38627
+ if (!_optionalChain([host, 'optionalAccess', _832 => _832.name])) return null;
38618
38628
  return toStripProfile({ full_name: host.name, avatar_url: _nullishCoalesce(host.avatar_url, () => ( null)) });
38619
38629
  }
38620
38630
  function transformEventToProgram(event) {
@@ -38692,21 +38702,21 @@ function transformWebinarToProgram(webinar) {
38692
38702
  // src/components/features/notifications/types.ts
38693
38703
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
38694
38704
  function isApprovalNotification(notification) {
38695
- return _optionalChain([notification, 'access', _832 => _832.meta, 'optionalAccess', _833 => _833.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
38705
+ return _optionalChain([notification, 'access', _833 => _833.meta, 'optionalAccess', _834 => _834.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
38696
38706
  }
38697
38707
  function getApprovalMeta(notification) {
38698
38708
  if (!isApprovalNotification(notification)) return null;
38699
38709
  const meta = notification.meta;
38700
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _834 => _834.approvalRequestId]);
38701
- const toolCalls = _optionalChain([meta, 'optionalAccess', _835 => _835.toolCalls]);
38710
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _835 => _835.approvalRequestId]);
38711
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _836 => _836.toolCalls]);
38702
38712
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
38703
38713
  return {
38704
38714
  approvalRequestId,
38705
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _836 => _836.dialogId]), () => ( null)),
38706
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _837 => _837.ticketId]), () => ( null)),
38707
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _838 => _838.approvalType]), () => ( null)),
38708
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _839 => _839.resolution]), () => ( null)),
38709
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _840 => _840.resolvedByName]), () => ( null)),
38715
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _837 => _837.dialogId]), () => ( null)),
38716
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _838 => _838.ticketId]), () => ( null)),
38717
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _839 => _839.approvalType]), () => ( null)),
38718
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _840 => _840.resolution]), () => ( null)),
38719
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _841 => _841.resolvedByName]), () => ( null)),
38710
38720
  toolCalls
38711
38721
  };
38712
38722
  }
@@ -38756,7 +38766,7 @@ function ApprovalRequestNotificationTile({
38756
38766
  const [processing, setProcessing] = _react.useState.call(void 0, false);
38757
38767
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
38758
38768
  const approval = getApprovalMeta(notification);
38759
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _841 => _841.resolution]));
38769
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _842 => _842.resolution]));
38760
38770
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
38761
38771
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
38762
38772
  const { innerRef, containerStyle } = useCollapsible({ expanded });
@@ -39060,7 +39070,7 @@ function TimeTrackerPanel({
39060
39070
  error: showFieldError ? "Required if no notes added" : void 0,
39061
39071
  disableClientFilter: !!onTicketSearch,
39062
39072
  onInputChange: (value, reason) => {
39063
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _842 => _842(value)]);
39073
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _843 => _843(value)]);
39064
39074
  }
39065
39075
  }
39066
39076
  ),
@@ -39075,7 +39085,7 @@ function TimeTrackerPanel({
39075
39085
  disabled: customerLocked,
39076
39086
  disableClientFilter: !!onCustomerSearch,
39077
39087
  onInputChange: (value, reason) => {
39078
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _843 => _843(value)]);
39088
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _844 => _844(value)]);
39079
39089
  },
39080
39090
  startAdornment: customerStartAdornment,
39081
39091
  renderOption: renderCustomerOption
@@ -39169,7 +39179,7 @@ function LastEntryRow({ entry, onClick }) {
39169
39179
  {
39170
39180
  variant: "outline",
39171
39181
  size: "icon",
39172
- onClick: () => _optionalChain([onClick, 'optionalCall', _844 => _844(entry)]),
39182
+ onClick: () => _optionalChain([onClick, 'optionalCall', _845 => _845(entry)]),
39173
39183
  disabled: !onClick,
39174
39184
  "aria-label": `Open entry: ${entry.title}`,
39175
39185
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -39258,31 +39268,31 @@ function HeaderButton({
39258
39268
  function TimeTrackerHeaderButton({ className, disabled }) {
39259
39269
  const ctx = useOptionalTimeTracker();
39260
39270
  const elapsedLabel = useTrackerClock({
39261
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _845 => _845.status]), () => ( "ready")),
39262
- runningSince: _optionalChain([ctx, 'optionalAccess', _846 => _846.runningSince]),
39263
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _847 => _847.accumulatedMs])
39271
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _846 => _846.status]), () => ( "ready")),
39272
+ runningSince: _optionalChain([ctx, 'optionalAccess', _847 => _847.runningSince]),
39273
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _848 => _848.accumulatedMs])
39264
39274
  });
39265
39275
  const layoutContainer = useAppLayoutDrawerContainer();
39266
39276
  const coordination = useAppLayoutDrawerCoordination();
39267
- const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _848 => _848.isOpen]), () => ( false));
39277
+ const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _849 => _849.isOpen]), () => ( false));
39268
39278
  const isOpenRef = _react.useRef.call(void 0, isOpen);
39269
39279
  isOpenRef.current = isOpen;
39270
- const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _849 => _849.close]));
39271
- closeRef.current = _optionalChain([ctx, 'optionalAccess', _850 => _850.close]);
39280
+ const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _850 => _850.close]));
39281
+ closeRef.current = _optionalChain([ctx, 'optionalAccess', _851 => _851.close]);
39272
39282
  const selfHandleRef = _react.useRef.call(void 0, null);
39273
39283
  if (!selfHandleRef.current) {
39274
39284
  selfHandleRef.current = {
39275
39285
  close: () => {
39276
- if (isOpenRef.current) _optionalChain([closeRef, 'access', _851 => _851.current, 'optionalCall', _852 => _852()]);
39286
+ if (isOpenRef.current) _optionalChain([closeRef, 'access', _852 => _852.current, 'optionalCall', _853 => _853()]);
39277
39287
  }
39278
39288
  };
39279
39289
  }
39280
39290
  _react.useEffect.call(void 0, () => {
39281
- if (isOpen) _optionalChain([coordination, 'optionalAccess', _853 => _853.notifyDrawerDidOpen, 'call', _854 => _854(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
39291
+ if (isOpen) _optionalChain([coordination, 'optionalAccess', _854 => _854.notifyDrawerDidOpen, 'call', _855 => _855(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
39282
39292
  }, [isOpen, coordination]);
39283
39293
  _react.useEffect.call(void 0, () => {
39284
39294
  if (!selfHandleRef.current) return;
39285
- return _optionalChain([coordination, 'optionalAccess', _855 => _855.registerDrawer, 'call', _856 => _856(selfHandleRef.current)]);
39295
+ return _optionalChain([coordination, 'optionalAccess', _856 => _856.registerDrawer, 'call', _857 => _857(selfHandleRef.current)]);
39286
39296
  }, [coordination]);
39287
39297
  if (!ctx) return null;
39288
39298
  const { open, close, status } = ctx;
@@ -39564,9 +39574,9 @@ var TICKET_CARD_SHELL = "relative flex flex-col gap-[var(--spacing-system-sf)] r
39564
39574
  function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
39565
39575
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
39566
39576
  const newMessageTextColor = columnColor ? getReadableTextColor(columnColor) : void 0;
39567
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _857 => _857.deviceHostnames, 'optionalAccess', _858 => _858.length]) || ticket.organizationName);
39568
- const deviceText = [_optionalChain([ticket, 'access', _859 => _859.deviceHostnames, 'optionalAccess', _860 => _860.join, 'call', _861 => _861(", ")]), ticket.organizationName].filter(Boolean).join(", ");
39569
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _862 => _862.assignees, 'optionalAccess', _863 => _863.length]) || renderAssignSlot);
39577
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _858 => _858.deviceHostnames, 'optionalAccess', _859 => _859.length]) || ticket.organizationName);
39578
+ const deviceText = [_optionalChain([ticket, 'access', _860 => _860.deviceHostnames, 'optionalAccess', _861 => _861.join, 'call', _862 => _862(", ")]), ticket.organizationName].filter(Boolean).join(", ");
39579
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _863 => _863.assignees, 'optionalAccess', _864 => _864.length]) || renderAssignSlot);
39570
39580
  const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
39571
39581
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39572
39582
  _chunkUTVOBFXRcjs.Flag02Icon,
@@ -39575,7 +39585,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
39575
39585
  "aria-label": `Priority: ${ticket.priority}`
39576
39586
  }
39577
39587
  ),
39578
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _864 => _864.assignees, 'optionalAccess', _865 => _865.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
39588
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _865 => _865.assignees, 'optionalAccess', _866 => _866.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
39579
39589
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map(
39580
39590
  (a) => a.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${_nullishCoalesce(_nullishCoalesce(a.name, () => ( a.initials)), () => ( a.id))}` }, a.id) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39581
39591
  SquareAvatar,
@@ -39608,7 +39618,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
39608
39618
  ] }),
39609
39619
  rightSection
39610
39620
  ] }),
39611
- _optionalChain([ticket, 'access', _866 => _866.tags, 'optionalAccess', _867 => _867.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
39621
+ _optionalChain([ticket, 'access', _867 => _867.tags, 'optionalAccess', _868 => _868.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
39612
39622
  timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
39613
39623
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto text-h6 truncate text-ods-text-secondary", children: timestampLabel }) }),
39614
39624
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
@@ -39863,7 +39873,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
39863
39873
  const observer = new IntersectionObserver(
39864
39874
  (entries) => {
39865
39875
  if (entries.some((e) => e.isIntersecting)) {
39866
- _optionalChain([loadMoreRef, 'access', _868 => _868.current, 'optionalCall', _869 => _869(columnIdRef.current)]);
39876
+ _optionalChain([loadMoreRef, 'access', _869 => _869.current, 'optionalCall', _870 => _870(columnIdRef.current)]);
39867
39877
  }
39868
39878
  },
39869
39879
  { root, rootMargin: loadMoreRootMargin }
@@ -39893,7 +39903,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
39893
39903
  ticket: t,
39894
39904
  columnId: column.id,
39895
39905
  columnColor: column.color,
39896
- href: _optionalChain([getTicketHref, 'optionalCall', _870 => _870(t.id)]),
39906
+ href: _optionalChain([getTicketHref, 'optionalCall', _871 => _871(t.id)]),
39897
39907
  renderAssignSlot,
39898
39908
  onApprove,
39899
39909
  onReject,
@@ -39993,17 +40003,17 @@ function Board({
39993
40003
  const pointer = _core.pointerWithin.call(void 0, args);
39994
40004
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
39995
40005
  const ticketHit = intersections.find(
39996
- (c) => _optionalChain([c, 'access', _871 => _871.data, 'optionalAccess', _872 => _872.droppableContainer, 'optionalAccess', _873 => _873.data, 'optionalAccess', _874 => _874.current, 'optionalAccess', _875 => _875.type]) === "ticket"
40006
+ (c) => _optionalChain([c, 'access', _872 => _872.data, 'optionalAccess', _873 => _873.droppableContainer, 'optionalAccess', _874 => _874.data, 'optionalAccess', _875 => _875.current, 'optionalAccess', _876 => _876.type]) === "ticket"
39997
40007
  );
39998
40008
  if (ticketHit) return [ticketHit];
39999
40009
  const columnHit = intersections.find(
40000
- (c) => _optionalChain([c, 'access', _876 => _876.data, 'optionalAccess', _877 => _877.droppableContainer, 'optionalAccess', _878 => _878.data, 'optionalAccess', _879 => _879.current, 'optionalAccess', _880 => _880.type]) === "column"
40010
+ (c) => _optionalChain([c, 'access', _877 => _877.data, 'optionalAccess', _878 => _878.droppableContainer, 'optionalAccess', _879 => _879.data, 'optionalAccess', _880 => _880.current, 'optionalAccess', _881 => _881.type]) === "column"
40001
40011
  );
40002
40012
  if (columnHit) {
40003
- const columnId = _optionalChain([columnHit, 'access', _881 => _881.data, 'optionalAccess', _882 => _882.droppableContainer, 'optionalAccess', _883 => _883.data, 'optionalAccess', _884 => _884.current, 'optionalAccess', _885 => _885.columnId]);
40013
+ const columnId = _optionalChain([columnHit, 'access', _882 => _882.data, 'optionalAccess', _883 => _883.droppableContainer, 'optionalAccess', _884 => _884.data, 'optionalAccess', _885 => _885.current, 'optionalAccess', _886 => _886.columnId]);
40004
40014
  const ticketsInColumn = args.droppableContainers.filter((c) => {
40005
40015
  const d = c.data.current;
40006
- return _optionalChain([d, 'optionalAccess', _886 => _886.type]) === "ticket" && d.columnId === columnId;
40016
+ return _optionalChain([d, 'optionalAccess', _887 => _887.type]) === "ticket" && d.columnId === columnId;
40007
40017
  });
40008
40018
  if (ticketsInColumn.length > 0) {
40009
40019
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -40028,20 +40038,20 @@ function Board({
40028
40038
  const overId = String(over.id);
40029
40039
  if (activeId === overId) return;
40030
40040
  const overData = over.data.current;
40031
- const fromColumnId = _optionalChain([locate, 'call', _887 => _887(items, activeId), 'optionalAccess', _888 => _888.columnId]);
40032
- const toColumnId = _optionalChain([overData, 'optionalAccess', _889 => _889.columnId]);
40041
+ const fromColumnId = _optionalChain([locate, 'call', _888 => _888(items, activeId), 'optionalAccess', _889 => _889.columnId]);
40042
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _890 => _890.columnId]);
40033
40043
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
40034
40044
  const origin = dragOriginRef.current;
40035
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _890 => _890.fromColumnId]) === toColumnId;
40045
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _891 => _891.fromColumnId]) === toColumnId;
40036
40046
  const targetCol = items.find((c) => c.id === toColumnId);
40037
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _891 => _891.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
40038
- if (_optionalChain([targetCol, 'optionalAccess', _892 => _892.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
40047
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _892 => _892.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
40048
+ if (_optionalChain([targetCol, 'optionalAccess', _893 => _893.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
40039
40049
  setItems((prev) => {
40040
40050
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
40041
40051
  const toCol = prev.find((c) => c.id === toColumnId);
40042
40052
  if (fromIndex < 0 || !toCol) return prev;
40043
40053
  let toIndex;
40044
- if (_optionalChain([overData, 'optionalAccess', _893 => _893.type]) === "column") {
40054
+ if (_optionalChain([overData, 'optionalAccess', _894 => _894.type]) === "column") {
40045
40055
  toIndex = toCol.tickets.length;
40046
40056
  } else {
40047
40057
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -40083,14 +40093,14 @@ function Board({
40083
40093
  const toColumnId = located.columnId;
40084
40094
  const isCrossColumn = origin.fromColumnId !== toColumnId;
40085
40095
  const targetCol = items.find((c) => c.id === toColumnId);
40086
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _894 => _894.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _895 => _895.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
40096
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _895 => _895.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _896 => _896.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
40087
40097
  setItems(columns);
40088
40098
  return;
40089
40099
  }
40090
40100
  let finalIndex = located.index;
40091
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _896 => _896.find, 'call', _897 => _897((c) => c.id === toColumnId), 'optionalAccess', _898 => _898.tickets]), () => ( []));
40101
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _897 => _897.find, 'call', _898 => _898((c) => c.id === toColumnId), 'optionalAccess', _899 => _899.tickets]), () => ( []));
40092
40102
  const overData = over.data.current;
40093
- if (_optionalChain([overData, 'optionalAccess', _899 => _899.type]) === "ticket") {
40103
+ if (_optionalChain([overData, 'optionalAccess', _900 => _900.type]) === "ticket") {
40094
40104
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
40095
40105
  if (overIndex >= 0 && overIndex !== located.index) {
40096
40106
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -40110,8 +40120,8 @@ function Board({
40110
40120
  ticketId: origin.ticketId,
40111
40121
  fromColumnId: origin.fromColumnId,
40112
40122
  toColumnId,
40113
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _900 => _900[finalIndex - 1], 'optionalAccess', _901 => _901.id]), () => ( null)),
40114
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _902 => _902[finalIndex + 1], 'optionalAccess', _903 => _903.id]), () => ( null))
40123
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _901 => _901[finalIndex - 1], 'optionalAccess', _902 => _902.id]), () => ( null)),
40124
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _903 => _903[finalIndex + 1], 'optionalAccess', _904 => _904.id]), () => ( null))
40115
40125
  });
40116
40126
  };
40117
40127
  const handleDragCancel = () => {
@@ -40140,8 +40150,8 @@ function Board({
40140
40150
  children: items.map((column, i) => {
40141
40151
  const prev = items[i - 1];
40142
40152
  const next = items[i + 1];
40143
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _904 => _904.system]));
40144
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _905 => _905.system]));
40153
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _905 => _905.system]));
40154
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _906 => _906.system]));
40145
40155
  const showGap = i > 0 && !joinLeft;
40146
40156
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React114.Fragment, { children: [
40147
40157
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -40194,7 +40204,7 @@ function Board({
40194
40204
  {
40195
40205
  ticket: activeTicket.ticket,
40196
40206
  columnId: activeTicket.columnId,
40197
- columnColor: _optionalChain([items, 'access', _906 => _906.find, 'call', _907 => _907((c) => c.id === activeTicket.columnId), 'optionalAccess', _908 => _908.color]),
40207
+ columnColor: _optionalChain([items, 'access', _907 => _907.find, 'call', _908 => _908((c) => c.id === activeTicket.columnId), 'optionalAccess', _909 => _909.color]),
40198
40208
  isOverlay: true
40199
40209
  }
40200
40210
  ) : null })
@@ -40210,7 +40220,7 @@ function locate(cols, ticketId) {
40210
40220
  return null;
40211
40221
  }
40212
40222
  function findIndexInColumn(cols, columnId, ticketId) {
40213
- return _nullishCoalesce(_optionalChain([cols, 'access', _909 => _909.find, 'call', _910 => _910((c) => c.id === columnId), 'optionalAccess', _911 => _911.tickets, 'access', _912 => _912.findIndex, 'call', _913 => _913((t) => t.id === ticketId)]), () => ( -1));
40223
+ return _nullishCoalesce(_optionalChain([cols, 'access', _910 => _910.find, 'call', _911 => _911((c) => c.id === columnId), 'optionalAccess', _912 => _912.tickets, 'access', _913 => _913.findIndex, 'call', _914 => _914((t) => t.id === ticketId)]), () => ( -1));
40214
40224
  }
40215
40225
 
40216
40226
  // src/components/features/board/types.ts
@@ -40341,7 +40351,7 @@ function MingoAiButton({ source, icon, label = "Mingo AI", className, onClick, .
40341
40351
  "aria-label": label,
40342
40352
  onClick: (e) => {
40343
40353
  window.dispatchEvent(new CustomEvent("ask-ai:open", { detail: { source: _nullishCoalesce(source, () => ( "")) } }));
40344
- _optionalChain([onClick, 'optionalCall', _914 => _914(e)]);
40354
+ _optionalChain([onClick, 'optionalCall', _915 => _915(e)]);
40345
40355
  },
40346
40356
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
40347
40357
  // Unified ODS top-navigation cell (Figma 2797-6808 desktop /
@@ -40400,7 +40410,7 @@ function MobileNavPanel({ isOpen, config }) {
40400
40410
  if (item.onClick) {
40401
40411
  item.onClick();
40402
40412
  }
40403
- _optionalChain([config, 'access', _915 => _915.onClose, 'optionalCall', _916 => _916()]);
40413
+ _optionalChain([config, 'access', _916 => _916.onClose, 'optionalCall', _917 => _917()]);
40404
40414
  };
40405
40415
  if (item.href) {
40406
40416
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -40517,7 +40527,7 @@ var ANON_DEFAULTS = {
40517
40527
  function useResolveChatIdentity(enabled) {
40518
40528
  const runtime = _chunk7OPWSWEJcjs.useRequiredChatRuntime.call(void 0, );
40519
40529
  const url = runtime.endpoints.identityUrl;
40520
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _917 => _917.email]), () => ( null));
40530
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _918 => _918.email]), () => ( null));
40521
40531
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
40522
40532
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
40523
40533
  _react.useEffect.call(void 0, () => {
@@ -40593,9 +40603,9 @@ function TicketLiveProvider({ children }) {
40593
40603
  const runtime = _chunk7OPWSWEJcjs.useChatRuntime.call(void 0, );
40594
40604
  const identity = useChatIdentity();
40595
40605
  const queryClient = _reactquery.useQueryClient.call(void 0, );
40596
- const streamUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _918 => _918.endpoints, 'access', _919 => _919.ticketStreamUrl]), () => ( TICKET_STREAM_ENDPOINT));
40597
- const readUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _920 => _920.endpoints, 'access', _921 => _921.ticketReadUrl]), () => ( TICKET_READ_ENDPOINT));
40598
- const authed = identity.authTier !== "anon" && !!_optionalChain([identity, 'access', _922 => _922.user, 'optionalAccess', _923 => _923.email]);
40606
+ const streamUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _919 => _919.endpoints, 'access', _920 => _920.ticketStreamUrl]), () => ( TICKET_STREAM_ENDPOINT));
40607
+ const readUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _921 => _921.endpoints, 'access', _922 => _922.ticketReadUrl]), () => ( TICKET_READ_ENDPOINT));
40608
+ const authed = identity.authTier !== "anon" && !!_optionalChain([identity, 'access', _923 => _923.user, 'optionalAccess', _924 => _924.email]);
40599
40609
  const [connected, setConnected] = React130.default.useState(false);
40600
40610
  const [summary, setSummary] = React130.default.useState(EMPTY_SUMMARY);
40601
40611
  const [openTicketIdState, setOpenTicketIdState] = React130.default.useState(null);
@@ -40662,7 +40672,7 @@ function TicketLiveProvider({ children }) {
40662
40672
  handlersRef.current.onEvent = (eventName, data) => {
40663
40673
  if (eventName === "ticket-summary") {
40664
40674
  const frame = data;
40665
- if (isSummaryData(_optionalChain([frame, 'optionalAccess', _924 => _924.data]))) {
40675
+ if (isSummaryData(_optionalChain([frame, 'optionalAccess', _925 => _925.data]))) {
40666
40676
  setSummary({
40667
40677
  totalUnread: frame.data.totalUnread,
40668
40678
  tickets: _nullishCoalesce(frame.data.tickets, () => ( {})),
@@ -40677,13 +40687,13 @@ function TicketLiveProvider({ children }) {
40677
40687
  }
40678
40688
  if (eventName === "ticket-status") {
40679
40689
  const frame = data;
40680
- const ticketId = _optionalChain([frame, 'optionalAccess', _925 => _925.data, 'optionalAccess', _926 => _926.ticket_external_id]);
40690
+ const ticketId = _optionalChain([frame, 'optionalAccess', _926 => _926.data, 'optionalAccess', _927 => _927.ticket_external_id]);
40681
40691
  scheduleInvalidation(ticketId);
40682
40692
  return;
40683
40693
  }
40684
40694
  if (eventName === "ticket-message") {
40685
40695
  const frame = data;
40686
- const payload = _optionalChain([frame, 'optionalAccess', _927 => _927.data]);
40696
+ const payload = _optionalChain([frame, 'optionalAccess', _928 => _928.data]);
40687
40697
  if (!isTicketMessageData(payload)) {
40688
40698
  scheduleInvalidation();
40689
40699
  return;
@@ -40714,7 +40724,7 @@ function TicketLiveProvider({ children }) {
40714
40724
  const retryIfIdle = () => {
40715
40725
  if (noStreamRef.current) {
40716
40726
  noStreamRef.current = false;
40717
- _optionalChain([subscriptionRef, 'access', _928 => _928.current, 'optionalAccess', _929 => _929.reconnectNow, 'call', _930 => _930()]);
40727
+ _optionalChain([subscriptionRef, 'access', _929 => _929.current, 'optionalAccess', _930 => _930.reconnectNow, 'call', _931 => _931()]);
40718
40728
  }
40719
40729
  };
40720
40730
  window.addEventListener("focus", retryIfIdle);
@@ -40724,7 +40734,7 @@ function TicketLiveProvider({ children }) {
40724
40734
  clearTimeout(invalidateTimerRef.current);
40725
40735
  invalidateTimerRef.current = null;
40726
40736
  }
40727
- _optionalChain([subscriptionRef, 'access', _931 => _931.current, 'optionalAccess', _932 => _932.close, 'call', _933 => _933()]);
40737
+ _optionalChain([subscriptionRef, 'access', _932 => _932.current, 'optionalAccess', _933 => _933.close, 'call', _934 => _934()]);
40728
40738
  subscriptionRef.current = null;
40729
40739
  setConnected(false);
40730
40740
  setSummary(EMPTY_SUMMARY);
@@ -40740,7 +40750,7 @@ function TicketLiveProvider({ children }) {
40740
40750
  if (!response.ok) return;
40741
40751
  zeroUnread(ticketExternalId);
40742
40752
  const body = await response.json().catch(() => null);
40743
- if (isSummaryData(_optionalChain([body, 'optionalAccess', _934 => _934.summary]))) {
40753
+ if (isSummaryData(_optionalChain([body, 'optionalAccess', _935 => _935.summary]))) {
40744
40754
  setSummary({
40745
40755
  totalUnread: body.summary.totalUnread,
40746
40756
  tickets: _nullishCoalesce(body.summary.tickets, () => ( {})),
@@ -40758,7 +40768,7 @@ function TicketLiveProvider({ children }) {
40758
40768
  }, []);
40759
40769
  const notifyTicketCreated = React130.default.useCallback(() => {
40760
40770
  noStreamRef.current = false;
40761
- _optionalChain([subscriptionRef, 'access', _935 => _935.current, 'optionalAccess', _936 => _936.reconnectNow, 'call', _937 => _937()]);
40771
+ _optionalChain([subscriptionRef, 'access', _936 => _936.current, 'optionalAccess', _937 => _937.reconnectNow, 'call', _938 => _938()]);
40762
40772
  }, []);
40763
40773
  const value = React130.default.useMemo(() => {
40764
40774
  let unreadByTicket = summary.tickets;
@@ -41069,7 +41079,7 @@ function Header2({ config, platform }) {
41069
41079
  // explicit font-medium beats small-legacy's font-bold via
41070
41080
  // tailwind-merge instead of stylesheet order.
41071
41081
  "text-h6 font-medium",
41072
- index < (_nullishCoalesce(_optionalChain([item, 'access', _938 => _938.children, 'optionalAccess', _939 => _939.length]), () => ( 0))) - 1 && "mb-1",
41082
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _939 => _939.children, 'optionalAccess', _940 => _940.length]), () => ( 0))) - 1 && "mb-1",
41073
41083
  "text-ods-text-primary",
41074
41084
  // All dropdown items use primary text color
41075
41085
  child.isActive && "bg-ods-bg-hover"
@@ -41141,7 +41151,7 @@ function Header2({ config, platform }) {
41141
41151
  );
41142
41152
  };
41143
41153
  const hasNav = !!config.navigation && config.navigation.items.length > 0;
41144
- const hasCta = !!_optionalChain([config, 'access', _940 => _940.actions, 'optionalAccess', _941 => _941.right, 'optionalAccess', _942 => _942.length]) || !!(_optionalChain([config, 'access', _943 => _943.actions, 'optionalAccess', _944 => _944.persistent]) && config.actions.persistent.length > 0);
41154
+ const hasCta = !!_optionalChain([config, 'access', _941 => _941.actions, 'optionalAccess', _942 => _942.right, 'optionalAccess', _943 => _943.length]) || !!(_optionalChain([config, 'access', _944 => _944.actions, 'optionalAccess', _945 => _945.persistent]) && config.actions.persistent.length > 0);
41145
41155
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41146
41156
  "div",
41147
41157
  {
@@ -41158,19 +41168,19 @@ function Header2({ config, platform }) {
41158
41168
  centerBreakpoint: "lg",
41159
41169
  size: "big",
41160
41170
  leading: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
41161
- !!_optionalChain([config, 'access', _945 => _945.actions, 'optionalAccess', _946 => _946.left, 'optionalAccess', _947 => _947.length]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-full items-center border-r border-ods-border", children: config.actions.left }),
41162
- _optionalChain([config, 'access', _948 => _948.mobile, 'optionalAccess', _949 => _949.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41171
+ !!_optionalChain([config, 'access', _946 => _946.actions, 'optionalAccess', _947 => _947.left, 'optionalAccess', _948 => _948.length]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-full items-center border-r border-ods-border", children: config.actions.left }),
41172
+ _optionalChain([config, 'access', _949 => _949.mobile, 'optionalAccess', _950 => _950.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41163
41173
  HeaderButton,
41164
41174
  {
41165
41175
  className: "lg:hidden border-r border-ods-border",
41166
41176
  onClick: () => {
41167
- _optionalChain([config, 'access', _950 => _950.mobile, 'optionalAccess', _951 => _951.onToggle, 'optionalCall', _952 => _952()]);
41177
+ _optionalChain([config, 'access', _951 => _951.mobile, 'optionalAccess', _952 => _952.onToggle, 'optionalCall', _953 => _953()]);
41168
41178
  },
41169
- isActive: _nullishCoalesce(_optionalChain([config, 'access', _953 => _953.mobile, 'optionalAccess', _954 => _954.isOpen]), () => ( false)),
41170
- "aria-label": _optionalChain([config, 'access', _955 => _955.mobile, 'optionalAccess', _956 => _956.isOpen]) ? "Close menu" : "Open menu",
41171
- "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _957 => _957.mobile, 'optionalAccess', _958 => _958.isOpen]), () => ( false)),
41172
- "aria-controls": _optionalChain([config, 'access', _959 => _959.mobile, 'optionalAccess', _960 => _960.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
41173
- icon: _optionalChain([config, 'access', _961 => _961.mobile, 'optionalAccess', _962 => _962.isOpen]) ? _optionalChain([config, 'access', _963 => _963.mobile, 'optionalAccess', _964 => _964.closeIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.XmarkIcon, { className: "w-6 h-6" }) : _optionalChain([config, 'access', _965 => _965.mobile, 'optionalAccess', _966 => _966.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Menu01Icon, { className: "w-6 h-6" })
41179
+ isActive: _nullishCoalesce(_optionalChain([config, 'access', _954 => _954.mobile, 'optionalAccess', _955 => _955.isOpen]), () => ( false)),
41180
+ "aria-label": _optionalChain([config, 'access', _956 => _956.mobile, 'optionalAccess', _957 => _957.isOpen]) ? "Close menu" : "Open menu",
41181
+ "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _958 => _958.mobile, 'optionalAccess', _959 => _959.isOpen]), () => ( false)),
41182
+ "aria-controls": _optionalChain([config, 'access', _960 => _960.mobile, 'optionalAccess', _961 => _961.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
41183
+ icon: _optionalChain([config, 'access', _962 => _962.mobile, 'optionalAccess', _963 => _963.isOpen]) ? _optionalChain([config, 'access', _964 => _964.mobile, 'optionalAccess', _965 => _965.closeIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.XmarkIcon, { className: "w-6 h-6" }) : _optionalChain([config, 'access', _966 => _966.mobile, 'optionalAccess', _967 => _967.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Menu01Icon, { className: "w-6 h-6" })
41174
41184
  }
41175
41185
  )
41176
41186
  ] }),
@@ -41183,23 +41193,23 @@ function Header2({ config, platform }) {
41183
41193
  "flex items-center gap-2",
41184
41194
  // True centering relative to the bar (not the leftover flex
41185
41195
  // space) — same treatment the pre-unification header had.
41186
- _optionalChain([config, 'access', _967 => _967.navigation, 'optionalAccess', _968 => _968.position]) === "center" && "absolute left-1/2 -translate-x-1/2"
41196
+ _optionalChain([config, 'access', _968 => _968.navigation, 'optionalAccess', _969 => _969.position]) === "center" && "absolute left-1/2 -translate-x-1/2"
41187
41197
  ),
41188
41198
  role: "navigation",
41189
41199
  "aria-label": "Main navigation",
41190
- children: _optionalChain([config, 'access', _969 => _969.navigation, 'optionalAccess', _970 => _970.items, 'access', _971 => _971.map, 'call', _972 => _972(renderNavigationItem)])
41200
+ children: _optionalChain([config, 'access', _970 => _970.navigation, 'optionalAccess', _971 => _971.items, 'access', _972 => _972.map, 'call', _973 => _973(renderNavigationItem)])
41191
41201
  }
41192
41202
  ) : void 0,
41193
41203
  centerClassName: _chunkKI4EGKNVcjs.cn.call(void 0,
41194
- _optionalChain([config, 'access', _973 => _973.navigation, 'optionalAccess', _974 => _974.position]) === "left" && "justify-start",
41195
- _optionalChain([config, 'access', _975 => _975.navigation, 'optionalAccess', _976 => _976.position]) === "right" && "justify-end pr-[var(--spacing-system-m)]"
41204
+ _optionalChain([config, 'access', _974 => _974.navigation, 'optionalAccess', _975 => _975.position]) === "left" && "justify-start",
41205
+ _optionalChain([config, 'access', _976 => _976.navigation, 'optionalAccess', _977 => _977.position]) === "right" && "justify-end pr-[var(--spacing-system-m)]"
41196
41206
  ),
41197
41207
  cta: hasCta ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
41198
- !!_optionalChain([config, 'access', _977 => _977.actions, 'optionalAccess', _978 => _978.right, 'optionalAccess', _979 => _979.length]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
41199
- _optionalChain([config, 'access', _980 => _980.actions, 'optionalAccess', _981 => _981.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent })
41208
+ !!_optionalChain([config, 'access', _978 => _978.actions, 'optionalAccess', _979 => _979.right, 'optionalAccess', _980 => _980.length]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
41209
+ _optionalChain([config, 'access', _981 => _981.actions, 'optionalAccess', _982 => _982.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent })
41200
41210
  ] }) : void 0,
41201
41211
  ctaClassName: "gap-3",
41202
- sideActions: config.tickets || _optionalChain([config, 'access', _982 => _982.mingo, 'optionalAccess', _983 => _983.enabled]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
41212
+ sideActions: config.tickets || _optionalChain([config, 'access', _983 => _983.mingo, 'optionalAccess', _984 => _984.enabled]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
41203
41213
  config.tickets && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41204
41214
  TicketAlertsButton,
41205
41215
  {
@@ -41208,7 +41218,7 @@ function Header2({ config, platform }) {
41208
41218
  className: "border-l border-ods-border"
41209
41219
  }
41210
41220
  ),
41211
- _optionalChain([config, 'access', _984 => _984.mingo, 'optionalAccess', _985 => _985.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41221
+ _optionalChain([config, 'access', _985 => _985.mingo, 'optionalAccess', _986 => _986.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41212
41222
  MingoAiButton,
41213
41223
  {
41214
41224
  source: config.mingo.source,
@@ -41230,17 +41240,17 @@ function Header2({ config, platform }) {
41230
41240
  // src/components/navigation/header-skeleton.tsx
41231
41241
 
41232
41242
  function HeaderSkeleton({ config }) {
41233
- const showNavigation = _optionalChain([config, 'optionalAccess', _986 => _986.navigation]) && config.navigation.items.length > 0;
41234
- const showActions = _optionalChain([config, 'optionalAccess', _987 => _987.actions, 'optionalAccess', _988 => _988.right]) && config.actions.right.length > 0;
41235
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _989 => _989.mobile, 'optionalAccess', _990 => _990.enabled]);
41236
- const showLeftActions = !!_optionalChain([config, 'optionalAccess', _991 => _991.actions, 'optionalAccess', _992 => _992.left]);
41243
+ const showNavigation = _optionalChain([config, 'optionalAccess', _987 => _987.navigation]) && config.navigation.items.length > 0;
41244
+ const showActions = _optionalChain([config, 'optionalAccess', _988 => _988.actions, 'optionalAccess', _989 => _989.right]) && config.actions.right.length > 0;
41245
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _990 => _990.mobile, 'optionalAccess', _991 => _991.enabled]);
41246
+ const showLeftActions = !!_optionalChain([config, 'optionalAccess', _992 => _992.actions, 'optionalAccess', _993 => _993.left]);
41237
41247
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-[50] w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
41238
41248
  "header",
41239
41249
  {
41240
41250
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
41241
41251
  "flex h-[72px] w-full items-center border-b border-t border-ods-border md:border-t-0",
41242
- _optionalChain([config, 'optionalAccess', _993 => _993.backgroundColor]) || "bg-ods-card",
41243
- _optionalChain([config, 'optionalAccess', _994 => _994.className])
41252
+ _optionalChain([config, 'optionalAccess', _994 => _994.backgroundColor]) || "bg-ods-card",
41253
+ _optionalChain([config, 'optionalAccess', _995 => _995.className])
41244
41254
  ),
41245
41255
  children: [
41246
41256
  showLeftActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-full w-[72px] items-center justify-center border-r border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-6 animate-pulse rounded bg-ods-border" }) }),
@@ -41255,7 +41265,7 @@ function HeaderSkeleton({ config }) {
41255
41265
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-24 animate-pulse rounded bg-ods-border" })
41256
41266
  ] }) }),
41257
41267
  showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden h-full items-center px-[var(--spacing-system-m)] lg:flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-24 animate-pulse rounded bg-ods-border" }) }),
41258
- _optionalChain([config, 'optionalAccess', _995 => _995.mingo, 'optionalAccess', _996 => _996.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-full items-center border-l border-ods-border px-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 animate-pulse rounded bg-ods-border md:w-28" }) })
41268
+ _optionalChain([config, 'optionalAccess', _996 => _996.mingo, 'optionalAccess', _997 => _997.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-full items-center border-l border-ods-border px-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 animate-pulse rounded bg-ods-border md:w-28" }) })
41259
41269
  ]
41260
41270
  }
41261
41271
  ) });
@@ -41362,7 +41372,7 @@ function SlidingSidebar({ config }) {
41362
41372
  variant: "transparent",
41363
41373
  size: "default",
41364
41374
  onClick: () => {
41365
- _optionalChain([item, 'access', _997 => _997.onClick, 'optionalCall', _998 => _998()]);
41375
+ _optionalChain([item, 'access', _998 => _998.onClick, 'optionalCall', _999 => _999()]);
41366
41376
  config.onClose();
41367
41377
  },
41368
41378
  leftIcon: item.icon,
@@ -41385,7 +41395,7 @@ function SlidingSidebar({ config }) {
41385
41395
  variant: "transparent",
41386
41396
  size: "default",
41387
41397
  onClick: () => {
41388
- _optionalChain([item, 'access', _999 => _999.onClick, 'optionalCall', _1000 => _1000()]);
41398
+ _optionalChain([item, 'access', _1000 => _1000.onClick, 'optionalCall', _1001 => _1001()]);
41389
41399
  config.onClose();
41390
41400
  },
41391
41401
  leftIcon: item.icon,
@@ -41517,7 +41527,7 @@ function StickySectionNav({
41517
41527
  ] });
41518
41528
  }
41519
41529
  function useSectionNavigation(sections, options) {
41520
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _1001 => _1001[0], 'optionalAccess', _1002 => _1002.id]) || "");
41530
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _1002 => _1002[0], 'optionalAccess', _1003 => _1003.id]) || "");
41521
41531
  const isScrollingFromClick = _react.useRef.call(void 0, false);
41522
41532
  const { offset: offset2 = 100 } = options || {};
41523
41533
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -41541,7 +41551,7 @@ function useSectionNavigation(sections, options) {
41541
41551
  const handleScroll = () => {
41542
41552
  if (isScrollingFromClick.current) return;
41543
41553
  const scrollPosition = window.scrollY + offset2 + 50;
41544
- let currentSection = _optionalChain([sections, 'access', _1003 => _1003[0], 'optionalAccess', _1004 => _1004.id]) || "";
41554
+ let currentSection = _optionalChain([sections, 'access', _1004 => _1004[0], 'optionalAccess', _1005 => _1005.id]) || "";
41545
41555
  for (let i = sections.length - 1; i >= 0; i--) {
41546
41556
  const element = document.getElementById(sections[i].id);
41547
41557
  if (element && scrollPosition >= element.offsetTop) {
@@ -41757,7 +41767,7 @@ function NavigationSidebar({ config, disabled = false }) {
41757
41767
  } else {
41758
41768
  setDesktopMinimized((prev) => !prev);
41759
41769
  }
41760
- _optionalChain([config, 'access', _1005 => _1005.onToggleMinimized, 'optionalCall', _1006 => _1006()]);
41770
+ _optionalChain([config, 'access', _1006 => _1006.onToggleMinimized, 'optionalCall', _1007 => _1007()]);
41761
41771
  }, [isTablet, setDesktopMinimized, config]);
41762
41772
  const closeOverlay = _react.useCallback.call(void 0, () => {
41763
41773
  setTabletMinimized(true);
@@ -41772,14 +41782,14 @@ function NavigationSidebar({ config, disabled = false }) {
41772
41782
  }, [isOverlayOpen, closeOverlay]);
41773
41783
  const [pendingItemId, setPendingItemId] = _react.useState.call(void 0, null);
41774
41784
  const committedActiveId = _react.useMemo.call(void 0,
41775
- () => _nullishCoalesce(_optionalChain([config, 'access', _1007 => _1007.items, 'access', _1008 => _1008.find, 'call', _1009 => _1009((item) => item.isActive), 'optionalAccess', _1010 => _1010.id]), () => ( null)),
41785
+ () => _nullishCoalesce(_optionalChain([config, 'access', _1008 => _1008.items, 'access', _1009 => _1009.find, 'call', _1010 => _1010((item) => item.isActive), 'optionalAccess', _1011 => _1011.id]), () => ( null)),
41776
41786
  [config.items]
41777
41787
  );
41778
41788
  _react.useEffect.call(void 0, () => {
41779
41789
  setPendingItemId(null);
41780
41790
  }, [committedActiveId]);
41781
41791
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
41782
- _optionalChain([event, 'optionalAccess', _1011 => _1011.stopPropagation, 'call', _1012 => _1012()]);
41792
+ _optionalChain([event, 'optionalAccess', _1012 => _1012.stopPropagation, 'call', _1013 => _1013()]);
41783
41793
  if (item.onClick) {
41784
41794
  item.onClick();
41785
41795
  if (isTablet) setTabletMinimized(true);
@@ -41788,7 +41798,7 @@ function NavigationSidebar({ config, disabled = false }) {
41788
41798
  if (!item.path) return;
41789
41799
  if (isModifiedClick(event)) return;
41790
41800
  if (config.onNavigate) {
41791
- _optionalChain([event, 'optionalAccess', _1013 => _1013.preventDefault, 'call', _1014 => _1014()]);
41801
+ _optionalChain([event, 'optionalAccess', _1014 => _1014.preventDefault, 'call', _1015 => _1015()]);
41792
41802
  if (item.id !== committedActiveId) setPendingItemId(item.id);
41793
41803
  config.onNavigate(item.path);
41794
41804
  }
@@ -41800,13 +41810,13 @@ function NavigationSidebar({ config, disabled = false }) {
41800
41810
  }), [config.items]);
41801
41811
  const loadingRows = _react.useMemo.call(void 0, () => {
41802
41812
  if (!config.loading) return null;
41803
- const primary = _nullishCoalesce(_optionalChain([config, 'access', _1015 => _1015.loadingRows, 'optionalAccess', _1016 => _1016.primary]), () => ( 7));
41804
- const secondary = _nullishCoalesce(_optionalChain([config, 'access', _1017 => _1017.loadingRows, 'optionalAccess', _1018 => _1018.secondary]), () => ( 2));
41813
+ const primary = _nullishCoalesce(_optionalChain([config, 'access', _1016 => _1016.loadingRows, 'optionalAccess', _1017 => _1017.primary]), () => ( 7));
41814
+ const secondary = _nullishCoalesce(_optionalChain([config, 'access', _1018 => _1018.loadingRows, 'optionalAccess', _1019 => _1019.secondary]), () => ( 2));
41805
41815
  return {
41806
41816
  primary: Array.from({ length: Math.max(0, primary) }, (_, i) => `primary-${i}`),
41807
41817
  secondary: Array.from({ length: Math.max(0, secondary) }, (_, i) => `secondary-${i}`)
41808
41818
  };
41809
- }, [config.loading, _optionalChain([config, 'access', _1019 => _1019.loadingRows, 'optionalAccess', _1020 => _1020.primary]), _optionalChain([config, 'access', _1021 => _1021.loadingRows, 'optionalAccess', _1022 => _1022.secondary])]);
41819
+ }, [config.loading, _optionalChain([config, 'access', _1020 => _1020.loadingRows, 'optionalAccess', _1021 => _1021.primary]), _optionalChain([config, 'access', _1022 => _1022.loadingRows, 'optionalAccess', _1023 => _1023.secondary])]);
41810
41820
  const sidebarWidth = _react.useMemo.call(void 0,
41811
41821
  () => minimized ? `${MINIMIZED_WIDTH}px` : `${EXPANDED_WIDTH}px`,
41812
41822
  [minimized]
@@ -41857,7 +41867,7 @@ function NavigationSidebar({ config, disabled = false }) {
41857
41867
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NavigationSidebarHeader, { minimized }),
41858
41868
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 flex flex-col justify-between py-4 overflow-y-auto", children: [
41859
41869
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
41860
- _optionalChain([config, 'access', _1023 => _1023.topSlot, 'optionalCall', _1024 => _1024({ minimized })]),
41870
+ _optionalChain([config, 'access', _1024 => _1024.topSlot, 'optionalCall', _1025 => _1025({ minimized })]),
41861
41871
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { className: "flex flex-col", "aria-label": "Primary navigation", "aria-busy": !!loadingRows, children: loadingRows ? loadingRows.primary.map((key) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NavigationSidebarItemSkeleton, { showLabel }, key)) : primaryItems.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41862
41872
  NavigationSidebarItemButton,
41863
41873
  {
@@ -41925,11 +41935,11 @@ function HeaderGlobalSearch({
41925
41935
  };
41926
41936
  const handleSubmit = (e) => {
41927
41937
  e.preventDefault();
41928
- _optionalChain([onSubmit, 'optionalCall', _1025 => _1025(currentValue)]);
41938
+ _optionalChain([onSubmit, 'optionalCall', _1026 => _1026(currentValue)]);
41929
41939
  };
41930
41940
  const handleKeyDown = (e) => {
41931
41941
  if (e.key === "Enter") {
41932
- _optionalChain([onSubmit, 'optionalCall', _1026 => _1026(currentValue)]);
41942
+ _optionalChain([onSubmit, 'optionalCall', _1027 => _1027(currentValue)]);
41933
41943
  }
41934
41944
  };
41935
41945
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -42032,8 +42042,8 @@ function HeaderOrganizationFilter({
42032
42042
  className
42033
42043
  }) {
42034
42044
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
42035
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _1027 => _1027.name]) || "All Organizations";
42036
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _1028 => _1028.deviceCount]), () => ( totalDeviceCount));
42045
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _1028 => _1028.name]) || "All Organizations";
42046
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _1029 => _1029.deviceCount]), () => ( totalDeviceCount));
42037
42047
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3NECEXDFcjs.DropdownMenu, { children: [
42038
42048
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3NECEXDFcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
42039
42049
  "button",
@@ -42059,11 +42069,11 @@ function HeaderOrganizationFilter({
42059
42069
  }
42060
42070
  ) }),
42061
42071
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3NECEXDFcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
42062
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3NECEXDFcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _1029 => _1029("")]), children: "All Organizations" }),
42072
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3NECEXDFcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _1030 => _1030("")]), children: "All Organizations" }),
42063
42073
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42064
42074
  _chunk3NECEXDFcjs.DropdownMenuItem,
42065
42075
  {
42066
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _1030 => _1030(org.id)]),
42076
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _1031 => _1031(org.id)]),
42067
42077
  children: org.name
42068
42078
  },
42069
42079
  org.id
@@ -42284,9 +42294,9 @@ var AppHeader = React130.default.memo(function AppHeader2({
42284
42294
  });
42285
42295
  function NotificationsHeaderButton({ fallbackUnreadCount, disabled, dimmedClass }) {
42286
42296
  const ctx = useOptionalNotifications();
42287
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _1031 => _1031.unreadCount]), () => ( fallbackUnreadCount))) > 0;
42288
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _1032 => _1032.isOpen]), () => ( false));
42289
- const onClick = _optionalChain([ctx, 'optionalAccess', _1033 => _1033.toggle]);
42297
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _1032 => _1032.unreadCount]), () => ( fallbackUnreadCount))) > 0;
42298
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _1033 => _1033.isOpen]), () => ( false));
42299
+ const onClick = _optionalChain([ctx, 'optionalAccess', _1034 => _1034.toggle]);
42290
42300
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42291
42301
  HeaderButton,
42292
42302
  {
@@ -42380,7 +42390,7 @@ var MobileBurgerMenu = React130.default.memo(function MobileBurgerMenu2({
42380
42390
  if (item.onClick) {
42381
42391
  item.onClick();
42382
42392
  } else if (item.path) {
42383
- _optionalChain([config, 'access', _1034 => _1034.onNavigate, 'optionalCall', _1035 => _1035(item.path)]);
42393
+ _optionalChain([config, 'access', _1035 => _1035.onNavigate, 'optionalCall', _1036 => _1036(item.path)]);
42384
42394
  }
42385
42395
  onClose();
42386
42396
  }, [config, onClose]);
@@ -42510,7 +42520,7 @@ var MobileBurgerMenu = React130.default.memo(function MobileBurgerMenu2({
42510
42520
  ]
42511
42521
  }
42512
42522
  ),
42513
- _optionalChain([config, 'access', _1036 => _1036.topSlot, 'optionalCall', _1037 => _1037({ minimized: false })]),
42523
+ _optionalChain([config, 'access', _1037 => _1037.topSlot, 'optionalCall', _1038 => _1038({ minimized: false })]),
42514
42524
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Primary navigation", children: renderNavigationGrid(primaryItems) }),
42515
42525
  secondaryItems.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Secondary navigation", className: "flex flex-col gap-3", children: secondaryItems.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React130.default.Fragment, { children: renderNavigationItem(item, false) }, item.id)) }),
42516
42526
  onLogout && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -42978,7 +42988,7 @@ var ShellTypeBadge = ({
42978
42988
  className,
42979
42989
  iconClassName
42980
42990
  }) => {
42981
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _1038 => _1038.toUpperCase, 'call', _1039 => _1039()]);
42991
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _1039 => _1039.toUpperCase, 'call', _1040 => _1040()]);
42982
42992
  const label = getShellLabel(normalizedType);
42983
42993
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
42984
42994
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -43365,12 +43375,12 @@ function OnboardingWalkthrough({
43365
43375
  }
43366
43376
  }, [state.completedSteps, markComplete]);
43367
43377
  const handleStepSkip = (step) => {
43368
- _optionalChain([step, 'access', _1040 => _1040.onSkip, 'optionalCall', _1041 => _1041()]);
43378
+ _optionalChain([step, 'access', _1041 => _1041.onSkip, 'optionalCall', _1042 => _1042()]);
43369
43379
  markSkipped(step.id);
43370
43380
  };
43371
43381
  const handleDismiss = () => {
43372
43382
  dismissOnboarding();
43373
- _optionalChain([onDismiss, 'optionalCall', _1042 => _1042()]);
43383
+ _optionalChain([onDismiss, 'optionalCall', _1043 => _1043()]);
43374
43384
  };
43375
43385
  if (state.dismissed) {
43376
43386
  return null;
@@ -43500,7 +43510,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
43500
43510
  onKeyDown: (e) => {
43501
43511
  if (e.key === "Enter" || e.key === " ") {
43502
43512
  e.preventDefault();
43503
- _optionalChain([onClick, 'optionalCall', _1043 => _1043()]);
43513
+ _optionalChain([onClick, 'optionalCall', _1044 => _1044()]);
43504
43514
  }
43505
43515
  },
43506
43516
  children: [
@@ -43601,7 +43611,7 @@ var LogsList = React127.forwardRef(({
43601
43611
  log,
43602
43612
  isLast: index === logs.length - 1,
43603
43613
  showConnector,
43604
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _1044 => _1044(log)])
43614
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _1045 => _1045(log)])
43605
43615
  },
43606
43616
  log.id
43607
43617
  ))
@@ -43713,7 +43723,7 @@ var Slider = React129.forwardRef(
43713
43723
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
43714
43724
  const handleChange = (e) => {
43715
43725
  const newValue = [Number(e.target.value)];
43716
- _optionalChain([onValueChange, 'optionalCall', _1045 => _1045(newValue)]);
43726
+ _optionalChain([onValueChange, 'optionalCall', _1046 => _1046(newValue)]);
43717
43727
  };
43718
43728
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43719
43729
  "input",
@@ -44100,7 +44110,7 @@ function CursorPaginationSimple({
44100
44110
  {
44101
44111
  variant: "transparent",
44102
44112
  size: "icon",
44103
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _1046 => _1046("")]),
44113
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _1047 => _1047("")]),
44104
44114
  disabled: !hasPreviousPage || loading,
44105
44115
  className: "h-8 w-8",
44106
44116
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -44112,7 +44122,7 @@ function CursorPaginationSimple({
44112
44122
  {
44113
44123
  variant: "transparent",
44114
44124
  size: "icon",
44115
- onClick: () => _optionalChain([onNext, 'optionalCall', _1047 => _1047("")]),
44125
+ onClick: () => _optionalChain([onNext, 'optionalCall', _1048 => _1048("")]),
44116
44126
  disabled: !hasNextPage || loading,
44117
44127
  className: "h-8 w-8",
44118
44128
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -44132,8 +44142,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
44132
44142
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
44133
44143
  title: _nullishCoalesce(message2, () => ( "No results found")),
44134
44144
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
44135
- buttonLabel: _optionalChain([action, 'optionalAccess', _1048 => _1048.label]),
44136
- onButtonClick: _optionalChain([action, 'optionalAccess', _1049 => _1049.onClick]),
44145
+ buttonLabel: _optionalChain([action, 'optionalAccess', _1049 => _1049.label]),
44146
+ onButtonClick: _optionalChain([action, 'optionalAccess', _1050 => _1050.onClick]),
44137
44147
  className: _chunkKI4EGKNVcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
44138
44148
  }
44139
44149
  );
@@ -44154,7 +44164,7 @@ function TableColumnFilterDropdown({
44154
44164
  placement = "bottom-start",
44155
44165
  dropdownClassName = "min-w-[240px]"
44156
44166
  }) {
44157
- const activeCount = _optionalChain([filters, 'optionalAccess', _1050 => _1050[columnKey], 'optionalAccess', _1051 => _1051.length]) || 0;
44167
+ const activeCount = _optionalChain([filters, 'optionalAccess', _1051 => _1051[columnKey], 'optionalAccess', _1052 => _1052.length]) || 0;
44158
44168
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44159
44169
  FiltersDropdown,
44160
44170
  {
@@ -44197,7 +44207,7 @@ function TableColumnFilterDropdown({
44197
44207
  delete newFilters[columnKey];
44198
44208
  onFilterChange(newFilters);
44199
44209
  },
44200
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _1052 => _1052[columnKey]]) || [] },
44210
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _1053 => _1053[columnKey]]) || [] },
44201
44211
  placement,
44202
44212
  dropdownClassName
44203
44213
  }
@@ -44407,7 +44417,7 @@ function TableCardSkeleton({
44407
44417
  className,
44408
44418
  rowClassName
44409
44419
  }) {
44410
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _1053 => _1053.key]);
44420
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _1054 => _1054.key]);
44411
44421
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
44412
44422
  "div",
44413
44423
  {
@@ -44500,7 +44510,7 @@ function TableRow({
44500
44510
  const keys = column.key.split(".");
44501
44511
  let value = item;
44502
44512
  for (const key of keys) {
44503
- value = _optionalChain([value, 'optionalAccess', _1054 => _1054[key]]);
44513
+ value = _optionalChain([value, 'optionalAccess', _1055 => _1055[key]]);
44504
44514
  }
44505
44515
  if (value === null || value === void 0) {
44506
44516
  return "-";
@@ -44589,7 +44599,7 @@ function useTableMotion(enabled) {
44589
44599
  // src/components/ui/table/table.tsx
44590
44600
 
44591
44601
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
44592
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _1055 => _1055.length])) || Boolean(renderRowActions);
44602
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _1056 => _1056.length])) || Boolean(renderRowActions);
44593
44603
  const result = [...columns];
44594
44604
  if (hasActions) {
44595
44605
  const actionsColumn = {
@@ -44685,7 +44695,7 @@ function Table({
44685
44695
  return rowKey(item);
44686
44696
  }
44687
44697
  const key = item[rowKey];
44688
- return _optionalChain([key, 'optionalAccess', _1056 => _1056.toString, 'call', _1057 => _1057()]) || index.toString();
44698
+ return _optionalChain([key, 'optionalAccess', _1057 => _1057.toString, 'call', _1058 => _1058()]) || index.toString();
44689
44699
  };
44690
44700
  const getRowClassName = (item, index) => {
44691
44701
  if (typeof rowClassName === "function") {
@@ -44719,23 +44729,23 @@ function Table({
44719
44729
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
44720
44730
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
44721
44731
  const sentinelRef = _react.useRef.call(void 0, null);
44722
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _1058 => _1058.onLoadMore]));
44723
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _1059 => _1059.onLoadMore]);
44732
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _1059 => _1059.onLoadMore]));
44733
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _1060 => _1060.onLoadMore]);
44724
44734
  _react.useEffect.call(void 0, () => {
44725
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _1060 => _1060.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
44735
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _1061 => _1061.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
44726
44736
  const sentinel = sentinelRef.current;
44727
44737
  if (!sentinel) return;
44728
44738
  const observer = new IntersectionObserver(
44729
44739
  (entries) => {
44730
- if (_optionalChain([entries, 'access', _1061 => _1061[0], 'optionalAccess', _1062 => _1062.isIntersecting])) {
44731
- _optionalChain([onLoadMoreRef, 'access', _1063 => _1063.current, 'optionalCall', _1064 => _1064()]);
44740
+ if (_optionalChain([entries, 'access', _1062 => _1062[0], 'optionalAccess', _1063 => _1063.isIntersecting])) {
44741
+ _optionalChain([onLoadMoreRef, 'access', _1064 => _1064.current, 'optionalCall', _1065 => _1065()]);
44732
44742
  }
44733
44743
  },
44734
44744
  { rootMargin: "200px" }
44735
44745
  );
44736
44746
  observer.observe(sentinel);
44737
44747
  return () => observer.disconnect();
44738
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _1065 => _1065.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _1066 => _1066.isFetchingNextPage])]);
44748
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _1066 => _1066.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _1067 => _1067.isFetchingNextPage])]);
44739
44749
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
44740
44750
  showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
44741
44751
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: [
@@ -44805,14 +44815,14 @@ function Table({
44805
44815
  selected: isRowSelected(item),
44806
44816
  onSelect: handleSelectRow,
44807
44817
  animateRowReorder,
44808
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _1067 => _1067.motionDiv])
44818
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _1068 => _1068.motionDiv])
44809
44819
  },
44810
44820
  getRowKey(item, index)
44811
44821
  ));
44812
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _1068 => _1068.LayoutGroup]);
44822
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _1069 => _1069.LayoutGroup]);
44813
44823
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
44814
44824
  })(),
44815
- _optionalChain([infiniteScroll, 'optionalAccess', _1069 => _1069.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44825
+ _optionalChain([infiniteScroll, 'optionalAccess', _1070 => _1070.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44816
44826
  TableCardSkeleton,
44817
44827
  {
44818
44828
  columns,
@@ -44821,7 +44831,7 @@ function Table({
44821
44831
  hasChevron: Boolean(rowHref)
44822
44832
  }
44823
44833
  ),
44824
- _optionalChain([infiniteScroll, 'optionalAccess', _1070 => _1070.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
44834
+ _optionalChain([infiniteScroll, 'optionalAccess', _1071 => _1071.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
44825
44835
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
44826
44836
  "div",
44827
44837
  {
@@ -45179,7 +45189,7 @@ function QueryReportTable({
45179
45189
  );
45180
45190
  const handleExport = () => {
45181
45191
  exportToCSV(data, columns, exportFilename);
45182
- _optionalChain([onExport, 'optionalCall', _1071 => _1071()]);
45192
+ _optionalChain([onExport, 'optionalCall', _1072 => _1072()]);
45183
45193
  };
45184
45194
  const tableMinWidth = columns.length * (columnWidth + 16);
45185
45195
  const {
@@ -45371,7 +45381,7 @@ function DataTableColumnFilter({
45371
45381
  pending = false
45372
45382
  }) {
45373
45383
  const currentValue = column.getFilterValue();
45374
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _1072 => _1072.length]), () => ( 0));
45384
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _1073 => _1073.length]), () => ( 0));
45375
45385
  const sections = _react.useMemo.call(void 0,
45376
45386
  () => [
45377
45387
  {
@@ -45506,7 +45516,7 @@ function DataTableHeader({
45506
45516
  );
45507
45517
  }
45508
45518
  function keepsCellOnTablet(meta) {
45509
- return Boolean(_optionalChain([meta, 'optionalAccess', _1073 => _1073.filter])) || _optionalChain([meta, 'optionalAccess', _1074 => _1074.alwaysShowHeader]) === true;
45519
+ return Boolean(_optionalChain([meta, 'optionalAccess', _1074 => _1074.filter])) || _optionalChain([meta, 'optionalAccess', _1075 => _1075.alwaysShowHeader]) === true;
45510
45520
  }
45511
45521
  var SHOW_FROM = {
45512
45522
  md: "md:flex",
@@ -45544,11 +45554,11 @@ function HeaderCell({ header, sort, onSortChange }) {
45544
45554
  if (header.isPlaceholder) return null;
45545
45555
  const column = header.column;
45546
45556
  const meta = column.columnDef.meta;
45547
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _1075 => _1075.filter]));
45557
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _1076 => _1076.filter]));
45548
45558
  const keepOnTablet = keepsCellOnTablet(meta);
45549
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _1076 => _1076.align]), () => ( "left"));
45550
- const canSort = _optionalChain([meta, 'optionalAccess', _1077 => _1077.sortable]) === true;
45551
- const sortDir = _optionalChain([sort, 'optionalAccess', _1078 => _1078.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
45559
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _1077 => _1077.align]), () => ( "left"));
45560
+ const canSort = _optionalChain([meta, 'optionalAccess', _1078 => _1078.sortable]) === true;
45561
+ const sortDir = _optionalChain([sort, 'optionalAccess', _1079 => _1079.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
45552
45562
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45553
45563
  "div",
45554
45564
  {
@@ -45556,7 +45566,7 @@ function HeaderCell({ header, sort, onSortChange }) {
45556
45566
  "items-stretch",
45557
45567
  // Cells are hidden rather than dropped from the tree, so which columns
45558
45568
  // exist never depends on when an effect ran.
45559
- getCellVisibilityClasses(keepOnTablet, _optionalChain([meta, 'optionalAccess', _1079 => _1079.hideAt])),
45569
+ getCellVisibilityClasses(keepOnTablet, _optionalChain([meta, 'optionalAccess', _1080 => _1080.hideAt])),
45560
45570
  // Width applies from lg only. Stated as "always, neutralized below lg"
45561
45571
  // because `meta.width` is an opaque consumer string that cannot be
45562
45572
  // prefixed. Only `keepOnTablet` cells need the override — the rest are
@@ -45574,9 +45584,9 @@ function HeaderCell({ header, sort, onSortChange }) {
45574
45584
  // Specificity rather than `!important`: it stays a normal declaration, so a
45575
45585
  // consumer that genuinely needs a tablet width can still take it back with a
45576
45586
  // more specific rule — `!important` could only be answered with another one.
45577
- _optionalChain([meta, 'optionalAccess', _1080 => _1080.width]) || "flex-1 min-w-0",
45587
+ _optionalChain([meta, 'optionalAccess', _1081 => _1081.width]) || "flex-1 min-w-0",
45578
45588
  keepOnTablet && "max-lg:[&&]:w-auto max-lg:[&&]:flex-none max-lg:[&&]:basis-auto",
45579
- _optionalChain([meta, 'optionalAccess', _1081 => _1081.headerClassName])
45589
+ _optionalChain([meta, 'optionalAccess', _1082 => _1082.headerClassName])
45580
45590
  ),
45581
45591
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45582
45592
  DataTableColumnFilter,
@@ -45600,7 +45610,7 @@ function HeaderCell({ header, sort, onSortChange }) {
45600
45610
  keepOnTablet && "max-lg:justify-start",
45601
45611
  canSort && "group cursor-pointer"
45602
45612
  ),
45603
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _1082 => _1082(column.id)]) : void 0,
45613
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _1083 => _1083(column.id)]) : void 0,
45604
45614
  children: [
45605
45615
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
45606
45616
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -45666,7 +45676,7 @@ function DataTableSkeleton({
45666
45676
  }) {
45667
45677
  const table = useDataTableContext();
45668
45678
  const columns = table.getVisibleFlatColumns();
45669
- const firstColumnId = _optionalChain([columns, 'access', _1083 => _1083[0], 'optionalAccess', _1084 => _1084.id]);
45679
+ const firstColumnId = _optionalChain([columns, 'access', _1084 => _1084[0], 'optionalAccess', _1085 => _1085.id]);
45670
45680
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
45671
45681
  "div",
45672
45682
  {
@@ -45691,13 +45701,13 @@ function DataTableSkeleton({
45691
45701
  {
45692
45702
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
45693
45703
  "flex flex-col justify-center shrink-0",
45694
- _optionalChain([meta, 'optionalAccess', _1085 => _1085.width]) || "flex-1",
45704
+ _optionalChain([meta, 'optionalAccess', _1086 => _1086.width]) || "flex-1",
45695
45705
  // Same responsive hiding the real header and row apply.
45696
45706
  // Without it a `hideAt` column was drawn in the skeleton and
45697
45707
  // absent from the loaded table, so below that breakpoint the
45698
45708
  // remaining columns were sized against a different total and
45699
45709
  // the whole row re-laid-out the moment data arrived.
45700
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _1086 => _1086.hideAt]))
45710
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _1087 => _1087.hideAt]))
45701
45711
  ),
45702
45712
  children: [
45703
45713
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -45748,7 +45758,7 @@ function DataTableRowImpl({
45748
45758
  const handleClick = _react.useCallback.call(void 0,
45749
45759
  (e) => {
45750
45760
  const target = e.target;
45751
- if (!_optionalChain([containerRef, 'access', _1087 => _1087.current, 'optionalAccess', _1088 => _1088.contains, 'call', _1089 => _1089(target)])) {
45761
+ if (!_optionalChain([containerRef, 'access', _1088 => _1088.current, 'optionalAccess', _1089 => _1089.contains, 'call', _1090 => _1090(target)])) {
45752
45762
  if (isLinkMode) e.preventDefault();
45753
45763
  return;
45754
45764
  }
@@ -45756,7 +45766,7 @@ function DataTableRowImpl({
45756
45766
  if (isLinkMode) e.preventDefault();
45757
45767
  return;
45758
45768
  }
45759
- _optionalChain([onClick, 'optionalCall', _1090 => _1090(row.original)]);
45769
+ _optionalChain([onClick, 'optionalCall', _1091 => _1091(row.original)]);
45760
45770
  },
45761
45771
  [onClick, row.original, isLinkMode]
45762
45772
  );
@@ -45782,10 +45792,10 @@ function DataTableRowImpl({
45782
45792
  {
45783
45793
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
45784
45794
  "flex flex-col overflow-hidden",
45785
- alignJustify(_optionalChain([meta, 'optionalAccess', _1091 => _1091.align])),
45786
- _optionalChain([meta, 'optionalAccess', _1092 => _1092.width]) || "flex-1 min-w-0",
45787
- _optionalChain([meta, 'optionalAccess', _1093 => _1093.cellClassName]),
45788
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _1094 => _1094.hideAt]))
45795
+ alignJustify(_optionalChain([meta, 'optionalAccess', _1092 => _1092.align])),
45796
+ _optionalChain([meta, 'optionalAccess', _1093 => _1093.width]) || "flex-1 min-w-0",
45797
+ _optionalChain([meta, 'optionalAccess', _1094 => _1094.cellClassName]),
45798
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _1095 => _1095.hideAt]))
45789
45799
  ),
45790
45800
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
45791
45801
  },
@@ -45865,7 +45875,7 @@ function DataTableBody({
45865
45875
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
45866
45876
  rows.map((row, index) => {
45867
45877
  const item = row.original;
45868
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _1095 => _1095(item)]), () => ( void 0));
45878
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _1096 => _1096(item)]), () => ( void 0));
45869
45879
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
45870
45880
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45871
45881
  DataTableRow,
@@ -45876,7 +45886,7 @@ function DataTableBody({
45876
45886
  compact,
45877
45887
  autoHeight,
45878
45888
  className: cls,
45879
- subRow: _optionalChain([renderSubRow, 'optionalCall', _1096 => _1096(item)])
45889
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _1097 => _1097(item)])
45880
45890
  },
45881
45891
  row.id
45882
45892
  );
@@ -45933,7 +45943,7 @@ function DataTableInfiniteFooter({
45933
45943
  if (!sentinel) return;
45934
45944
  const observer = new IntersectionObserver(
45935
45945
  (entries) => {
45936
- if (_optionalChain([entries, 'access', _1097 => _1097[0], 'optionalAccess', _1098 => _1098.isIntersecting])) onLoadMoreRef.current();
45946
+ if (_optionalChain([entries, 'access', _1098 => _1098[0], 'optionalAccess', _1099 => _1099.isIntersecting])) onLoadMoreRef.current();
45937
45947
  },
45938
45948
  { rootMargin }
45939
45949
  );
@@ -45981,7 +45991,7 @@ function DataTableRowCount({
45981
45991
  const table = useDataTableContext();
45982
45992
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
45983
45993
  if (hideWhenEmpty && count === 0) return null;
45984
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _1099 => _1099(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
45994
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _1100 => _1100(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
45985
45995
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
45986
45996
  "span",
45987
45997
  {
@@ -46142,7 +46152,7 @@ function SearchInput({
46142
46152
  if (!showHiddenTags) return;
46143
46153
  const handleClick = (e) => {
46144
46154
  const target = e.target;
46145
- if (!_optionalChain([hiddenTagsRef, 'access', _1100 => _1100.current, 'optionalAccess', _1101 => _1101.contains, 'call', _1102 => _1102(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _1103 => _1103.current, 'optionalAccess', _1104 => _1104.contains, 'call', _1105 => _1105(target)])) {
46155
+ if (!_optionalChain([hiddenTagsRef, 'access', _1101 => _1101.current, 'optionalAccess', _1102 => _1102.contains, 'call', _1103 => _1103(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _1104 => _1104.current, 'optionalAccess', _1105 => _1105.contains, 'call', _1106 => _1106(target)])) {
46146
46156
  setShowHiddenTags(false);
46147
46157
  }
46148
46158
  };
@@ -46190,10 +46200,10 @@ function SearchInput({
46190
46200
  } else {
46191
46201
  setInternalValue("");
46192
46202
  }
46193
- _optionalChain([inputRef, 'access', _1106 => _1106.current, 'optionalAccess', _1107 => _1107.focus, 'call', _1108 => _1108()]);
46203
+ _optionalChain([inputRef, 'access', _1107 => _1107.current, 'optionalAccess', _1108 => _1108.focus, 'call', _1109 => _1109()]);
46194
46204
  };
46195
46205
  const handleResultClick = (result, e) => {
46196
- _optionalChain([onResultSelect, 'optionalCall', _1109 => _1109(
46206
+ _optionalChain([onResultSelect, 'optionalCall', _1110 => _1110(
46197
46207
  result,
46198
46208
  e ? {
46199
46209
  metaKey: e.metaKey,
@@ -46225,7 +46235,7 @@ function SearchInput({
46225
46235
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
46226
46236
  handleResultClick(flatResults[highlightedIndex]);
46227
46237
  } else {
46228
- _optionalChain([onSubmit, 'optionalCall', _1110 => _1110(currentValue)]);
46238
+ _optionalChain([onSubmit, 'optionalCall', _1111 => _1111(currentValue)]);
46229
46239
  }
46230
46240
  break;
46231
46241
  case "Escape":
@@ -46303,7 +46313,7 @@ function SearchInput({
46303
46313
  dropdownVisible && "!border-ods-accent"
46304
46314
  ),
46305
46315
  onClick: () => {
46306
- _optionalChain([inputRef, 'access', _1111 => _1111.current, 'optionalAccess', _1112 => _1112.focus, 'call', _1113 => _1113()]);
46316
+ _optionalChain([inputRef, 'access', _1112 => _1112.current, 'optionalAccess', _1113 => _1113.focus, 'call', _1114 => _1114()]);
46307
46317
  setIsOpen(true);
46308
46318
  },
46309
46319
  children: [
@@ -46389,10 +46399,10 @@ function SearchInput({
46389
46399
  collisionPadding: { bottom: keyboardPadding },
46390
46400
  onOpenAutoFocus: (e) => {
46391
46401
  e.preventDefault();
46392
- _optionalChain([inputRef, 'access', _1114 => _1114.current, 'optionalAccess', _1115 => _1115.focus, 'call', _1116 => _1116()]);
46402
+ _optionalChain([inputRef, 'access', _1115 => _1115.current, 'optionalAccess', _1116 => _1116.focus, 'call', _1117 => _1117()]);
46393
46403
  },
46394
46404
  onInteractOutside: (e) => {
46395
- if (_optionalChain([containerRef, 'access', _1117 => _1117.current, 'optionalAccess', _1118 => _1118.contains, 'call', _1119 => _1119(e.target)])) {
46405
+ if (_optionalChain([containerRef, 'access', _1118 => _1118.current, 'optionalAccess', _1119 => _1119.contains, 'call', _1120 => _1120(e.target)])) {
46396
46406
  e.preventDefault();
46397
46407
  }
46398
46408
  },
@@ -46409,10 +46419,10 @@ function SearchInput({
46409
46419
  ref: hiddenTagsPopupRef,
46410
46420
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
46411
46421
  style: {
46412
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _1120 => _1120.current, 'optionalAccess', _1121 => _1121.getBoundingClientRect, 'call', _1122 => _1122(), 'access', _1123 => _1123.left]), () => ( 0))) : 0
46422
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _1121 => _1121.current, 'optionalAccess', _1122 => _1122.getBoundingClientRect, 'call', _1123 => _1123(), 'access', _1124 => _1124.left]), () => ( 0))) : 0
46413
46423
  },
46414
46424
  onRemove: (value2) => {
46415
- _optionalChain([onFilterRemove, 'optionalCall', _1124 => _1124(value2)]);
46425
+ _optionalChain([onFilterRemove, 'optionalCall', _1125 => _1125(value2)]);
46416
46426
  if (hiddenCount <= 1) setShowHiddenTags(false);
46417
46427
  }
46418
46428
  }
@@ -46463,7 +46473,7 @@ function FilterListItem({
46463
46473
  }) {
46464
46474
  const handleToggle = () => {
46465
46475
  if (disabled) return;
46466
- _optionalChain([onToggle, 'optionalCall', _1125 => _1125(!selected)]);
46476
+ _optionalChain([onToggle, 'optionalCall', _1126 => _1126(!selected)]);
46467
46477
  };
46468
46478
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
46469
46479
  "div",
@@ -46510,7 +46520,7 @@ function FilterListItem({
46510
46520
  CheckboxPrimitive4.Root,
46511
46521
  {
46512
46522
  checked: selected,
46513
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _1126 => _1126(c === true)]),
46523
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _1127 => _1127(c === true)]),
46514
46524
  onClick: (e) => e.stopPropagation(),
46515
46525
  disabled,
46516
46526
  "aria-label": title,
@@ -46609,7 +46619,7 @@ function TagSearchInput({
46609
46619
  if (!showHiddenTags) return;
46610
46620
  const handleClick = (e) => {
46611
46621
  const target = e.target;
46612
- if (!_optionalChain([hiddenTagsRef, 'access', _1127 => _1127.current, 'optionalAccess', _1128 => _1128.contains, 'call', _1129 => _1129(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _1130 => _1130.current, 'optionalAccess', _1131 => _1131.contains, 'call', _1132 => _1132(target)])) {
46622
+ if (!_optionalChain([hiddenTagsRef, 'access', _1128 => _1128.current, 'optionalAccess', _1129 => _1129.contains, 'call', _1130 => _1130(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _1131 => _1131.current, 'optionalAccess', _1132 => _1132.contains, 'call', _1133 => _1133(target)])) {
46613
46623
  setShowHiddenTags(false);
46614
46624
  }
46615
46625
  };
@@ -46625,13 +46635,13 @@ function TagSearchInput({
46625
46635
  e.preventDefault();
46626
46636
  onSubmit(searchValue);
46627
46637
  }
46628
- _optionalChain([onKeyDown, 'optionalCall', _1133 => _1133(e)]);
46638
+ _optionalChain([onKeyDown, 'optionalCall', _1134 => _1134(e)]);
46629
46639
  };
46630
46640
  const handleClearAll = (e) => {
46631
46641
  e.stopPropagation();
46632
46642
  e.preventDefault();
46633
- _optionalChain([onClearAll, 'optionalCall', _1134 => _1134()]);
46634
- _optionalChain([inputRef, 'access', _1135 => _1135.current, 'optionalAccess', _1136 => _1136.focus, 'call', _1137 => _1137()]);
46643
+ _optionalChain([onClearAll, 'optionalCall', _1135 => _1135()]);
46644
+ _optionalChain([inputRef, 'access', _1136 => _1136.current, 'optionalAccess', _1137 => _1137.focus, 'call', _1138 => _1138()]);
46635
46645
  };
46636
46646
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
46637
46647
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -46654,7 +46664,7 @@ function TagSearchInput({
46654
46664
  className
46655
46665
  ),
46656
46666
  onClick: () => {
46657
- if (!disabled) _optionalChain([inputRef, 'access', _1138 => _1138.current, 'optionalAccess', _1139 => _1139.focus, 'call', _1140 => _1140()]);
46667
+ if (!disabled) _optionalChain([inputRef, 'access', _1139 => _1139.current, 'optionalAccess', _1140 => _1140.focus, 'call', _1141 => _1141()]);
46658
46668
  },
46659
46669
  children: [
46660
46670
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
@@ -46727,7 +46737,7 @@ function TagSearchInput({
46727
46737
  items: hiddenTags,
46728
46738
  disabled,
46729
46739
  style: {
46730
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _1141 => _1141.current, 'optionalAccess', _1142 => _1142.getBoundingClientRect, 'call', _1143 => _1143(), 'access', _1144 => _1144.left]), () => ( 0))) : 0
46740
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _1142 => _1142.current, 'optionalAccess', _1143 => _1143.getBoundingClientRect, 'call', _1144 => _1144(), 'access', _1145 => _1145.left]), () => ( 0))) : 0
46731
46741
  },
46732
46742
  onRemove: (value) => {
46733
46743
  onTagRemove(value);
@@ -46828,7 +46838,7 @@ function MarkdownEditor({
46828
46838
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
46829
46839
  _react.useEffect.call(void 0, () => {
46830
46840
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
46831
- if (_optionalChain([mod, 'access', _1145 => _1145.commands, 'optionalAccess', _1146 => _1146.getExtraCommands])) {
46841
+ if (_optionalChain([mod, 'access', _1146 => _1146.commands, 'optionalAccess', _1147 => _1147.getExtraCommands])) {
46832
46842
  setDefaultExtraCommands(mod.commands.getExtraCommands());
46833
46843
  }
46834
46844
  });
@@ -46862,7 +46872,7 @@ function MarkdownEditor({
46862
46872
  const isImage = file.type.startsWith("image/");
46863
46873
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
46864
46874
  insertTextAtCursor(markdown);
46865
- _optionalChain([onFileUploaded, 'optionalCall', _1147 => _1147(url, file.name)]);
46875
+ _optionalChain([onFileUploaded, 'optionalCall', _1148 => _1148(url, file.name)]);
46866
46876
  } catch (error) {
46867
46877
  console.error("File upload failed:", error);
46868
46878
  setUploadProgress("Upload failed. Please try again.");
@@ -46875,7 +46885,7 @@ function MarkdownEditor({
46875
46885
  );
46876
46886
  const handleFileInputChange = _react.useCallback.call(void 0,
46877
46887
  (e) => {
46878
- const file = _optionalChain([e, 'access', _1148 => _1148.target, 'access', _1149 => _1149.files, 'optionalAccess', _1150 => _1150[0]]);
46888
+ const file = _optionalChain([e, 'access', _1149 => _1149.target, 'access', _1150 => _1150.files, 'optionalAccess', _1151 => _1151[0]]);
46879
46889
  if (file) {
46880
46890
  handleFileUpload(file);
46881
46891
  e.target.value = "";
@@ -46886,7 +46896,7 @@ function MarkdownEditor({
46886
46896
  const handlePaste = _react.useCallback.call(void 0,
46887
46897
  (e) => {
46888
46898
  if (!onUploadFile) return;
46889
- const items = _optionalChain([e, 'access', _1151 => _1151.clipboardData, 'optionalAccess', _1152 => _1152.items]);
46899
+ const items = _optionalChain([e, 'access', _1152 => _1152.clipboardData, 'optionalAccess', _1153 => _1153.items]);
46890
46900
  if (!items) return;
46891
46901
  for (const item of items) {
46892
46902
  if (item.type.startsWith("image/")) {
@@ -46911,7 +46921,7 @@ function MarkdownEditor({
46911
46921
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
46912
46922
  icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
46913
46923
  execute: () => {
46914
- _optionalChain([fileInputRef, 'access', _1153 => _1153.current, 'optionalAccess', _1154 => _1154.click, 'call', _1155 => _1155()]);
46924
+ _optionalChain([fileInputRef, 'access', _1154 => _1154.current, 'optionalAccess', _1155 => _1155.click, 'call', _1156 => _1156()]);
46915
46925
  }
46916
46926
  } : null;
46917
46927
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -46923,7 +46933,7 @@ function MarkdownEditor({
46923
46933
  const EDGE_ZONE = 60;
46924
46934
  const MAX_SCROLL_SPEED = 15;
46925
46935
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
46926
- let node = _optionalChain([el, 'optionalAccess', _1156 => _1156.parentElement]);
46936
+ let node = _optionalChain([el, 'optionalAccess', _1157 => _1157.parentElement]);
46927
46937
  while (node && node !== document.documentElement) {
46928
46938
  const { overflowY } = window.getComputedStyle(node);
46929
46939
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -47066,7 +47076,7 @@ function matchesAccept(file, accept) {
47066
47076
  });
47067
47077
  }
47068
47078
  function dragHasFiles(e) {
47069
- const types = _optionalChain([e, 'access', _1157 => _1157.dataTransfer, 'optionalAccess', _1158 => _1158.types]);
47079
+ const types = _optionalChain([e, 'access', _1158 => _1158.dataTransfer, 'optionalAccess', _1159 => _1159.types]);
47070
47080
  if (!types) return false;
47071
47081
  for (let i = 0; i < types.length; i++) {
47072
47082
  if (types[i] === "Files") return true;
@@ -47163,7 +47173,7 @@ function FileUpload({
47163
47173
  e.stopPropagation();
47164
47174
  setDragActive(false);
47165
47175
  if (disabled) return;
47166
- if (_optionalChain([e, 'access', _1159 => _1159.dataTransfer, 'access', _1160 => _1160.files, 'optionalAccess', _1161 => _1161.length])) {
47176
+ if (_optionalChain([e, 'access', _1160 => _1160.dataTransfer, 'access', _1161 => _1161.files, 'optionalAccess', _1162 => _1162.length])) {
47167
47177
  handleFiles(e.dataTransfer.files);
47168
47178
  }
47169
47179
  };
@@ -47191,7 +47201,7 @@ function FileUpload({
47191
47201
  e.preventDefault();
47192
47202
  dragCounter = 0;
47193
47203
  setDragActive(false);
47194
- if (_optionalChain([e, 'access', _1162 => _1162.dataTransfer, 'optionalAccess', _1163 => _1163.files, 'optionalAccess', _1164 => _1164.length])) {
47204
+ if (_optionalChain([e, 'access', _1163 => _1163.dataTransfer, 'optionalAccess', _1164 => _1164.files, 'optionalAccess', _1165 => _1165.length])) {
47195
47205
  handleFilesRef.current(e.dataTransfer.files);
47196
47206
  }
47197
47207
  };
@@ -47213,7 +47223,7 @@ function FileUpload({
47213
47223
  };
47214
47224
  }, [acceptWindowDrops, disabled]);
47215
47225
  const handleFileSelect = (e) => {
47216
- if (_optionalChain([e, 'access', _1165 => _1165.target, 'access', _1166 => _1166.files, 'optionalAccess', _1167 => _1167.length])) {
47226
+ if (_optionalChain([e, 'access', _1166 => _1166.target, 'access', _1167 => _1167.files, 'optionalAccess', _1168 => _1168.length])) {
47217
47227
  handleFiles(e.target.files);
47218
47228
  }
47219
47229
  };
@@ -47231,7 +47241,7 @@ function FileUpload({
47231
47241
  const openDialog = async () => {
47232
47242
  if (disabled) return;
47233
47243
  if (!pickFiles) {
47234
- _optionalChain([fileInputRef, 'access', _1168 => _1168.current, 'optionalAccess', _1169 => _1169.click, 'call', _1170 => _1170()]);
47244
+ _optionalChain([fileInputRef, 'access', _1169 => _1169.current, 'optionalAccess', _1170 => _1170.click, 'call', _1171 => _1171()]);
47235
47245
  return;
47236
47246
  }
47237
47247
  try {
@@ -47301,7 +47311,7 @@ function FileUpload({
47301
47311
  "button",
47302
47312
  {
47303
47313
  type: "button",
47304
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _1171 => _1171(entry.id)]),
47314
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _1172 => _1172(entry.id)]),
47305
47315
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
47306
47316
  "aria-label": `Remove ${entry.fileName}`,
47307
47317
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TrashIcon, { className: "size-6" })
@@ -47433,7 +47443,7 @@ function ImageUploader({
47433
47443
  onChange(file);
47434
47444
  };
47435
47445
  const handleFileSelect = (e) => {
47436
- validateAndEmit(_optionalChain([e, 'access', _1172 => _1172.target, 'access', _1173 => _1173.files, 'optionalAccess', _1174 => _1174[0]]));
47446
+ validateAndEmit(_optionalChain([e, 'access', _1173 => _1173.target, 'access', _1174 => _1174.files, 'optionalAccess', _1175 => _1175[0]]));
47437
47447
  if (inputRef.current) inputRef.current.value = "";
47438
47448
  };
47439
47449
  const handleDrag = (e) => {
@@ -47448,11 +47458,11 @@ function ImageUploader({
47448
47458
  e.stopPropagation();
47449
47459
  setDragActive(false);
47450
47460
  if (!interactive) return;
47451
- validateAndEmit(_optionalChain([e, 'access', _1175 => _1175.dataTransfer, 'access', _1176 => _1176.files, 'optionalAccess', _1177 => _1177[0]]));
47461
+ validateAndEmit(_optionalChain([e, 'access', _1176 => _1176.dataTransfer, 'access', _1177 => _1177.files, 'optionalAccess', _1178 => _1178[0]]));
47452
47462
  };
47453
47463
  const openDialog = () => {
47454
47464
  if (!interactive) return;
47455
- _optionalChain([inputRef, 'access', _1178 => _1178.current, 'optionalAccess', _1179 => _1179.click, 'call', _1180 => _1180()]);
47465
+ _optionalChain([inputRef, 'access', _1179 => _1179.current, 'optionalAccess', _1180 => _1180.click, 'call', _1181 => _1181()]);
47456
47466
  };
47457
47467
  const handleRootKeyDown = (e) => {
47458
47468
  if (hasImage || !interactive) return;
@@ -47647,8 +47657,8 @@ function ColorPresetSelect({
47647
47657
  }) {
47648
47658
  const selectedPreset = presets.find((p) => p.key === presetKey);
47649
47659
  const isCustom = !selectedPreset;
47650
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _1181 => _1181.label]), () => ( "Custom"));
47651
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _1182 => _1182.color]), () => ( value));
47660
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _1182 => _1182.label]), () => ( "Custom"));
47661
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _1183 => _1183.color]), () => ( value));
47652
47662
  const groups = [
47653
47663
  {
47654
47664
  items: [
@@ -47938,7 +47948,7 @@ function TicketStatusConfigRow({
47938
47948
  _chunk3NECEXDFcjs.Input,
47939
47949
  {
47940
47950
  value: name,
47941
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _1183 => _1183(e.target.value)]),
47951
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _1184 => _1184(e.target.value)]),
47942
47952
  disabled: isSystem,
47943
47953
  readOnly: isSystem,
47944
47954
  "aria-label": "Status name",
@@ -48491,14 +48501,14 @@ function TicketInfoSection({
48491
48501
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
48492
48502
  SquareAvatar,
48493
48503
  {
48494
- src: _optionalChain([organization, 'optionalAccess', _1184 => _1184.imageSrc]),
48495
- alt: _optionalChain([organization, 'optionalAccess', _1185 => _1185.name]),
48496
- fallback: _optionalChain([organization, 'optionalAccess', _1186 => _1186.name]) || "Org",
48504
+ src: _optionalChain([organization, 'optionalAccess', _1185 => _1185.imageSrc]),
48505
+ alt: _optionalChain([organization, 'optionalAccess', _1186 => _1186.name]),
48506
+ fallback: _optionalChain([organization, 'optionalAccess', _1187 => _1187.name]) || "Org",
48497
48507
  size: "md",
48498
48508
  className: "shrink-0"
48499
48509
  }
48500
48510
  ),
48501
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _1187 => _1187.name]) || "Unassigned", label: "Organization" })
48511
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _1188 => _1188.name]) || "Unassigned", label: "Organization" })
48502
48512
  ] }),
48503
48513
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
48504
48514
  AssigneeDropdown,
@@ -48519,10 +48529,10 @@ function TicketInfoSection({
48519
48529
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
48520
48530
  InfoCell2,
48521
48531
  {
48522
- value: _optionalChain([device, 'optionalAccess', _1188 => _1188.name]) || "Unassigned",
48532
+ value: _optionalChain([device, 'optionalAccess', _1189 => _1189.name]) || "Unassigned",
48523
48533
  label: "Device",
48524
- icon: _optionalChain([device, 'optionalAccess', _1189 => _1189.icon]),
48525
- onClick: _optionalChain([device, 'optionalAccess', _1190 => _1190.onClick])
48534
+ icon: _optionalChain([device, 'optionalAccess', _1190 => _1190.icon]),
48535
+ onClick: _optionalChain([device, 'optionalAccess', _1191 => _1191.onClick])
48526
48536
  }
48527
48537
  ),
48528
48538
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -48627,7 +48637,7 @@ function TakeOverTicketModal({
48627
48637
  setStatusId(_nullishCoalesce(initialStatusId, () => ( null)));
48628
48638
  setAssigneeId(_nullishCoalesce(initialAssigneeId, () => ( null)));
48629
48639
  }, [isOpen, initialStatusId, initialAssigneeId]);
48630
- const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _1191 => _1191[0], 'optionalAccess', _1192 => _1192.value]))), () => ( null));
48640
+ const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _1192 => _1192[0], 'optionalAccess', _1193 => _1193.value]))), () => ( null));
48631
48641
  const selectedStatus = statusOptions.find((o) => o.value === selectedStatusId);
48632
48642
  const selectedAssignee = assigneeOptions.find((o) => o.value === assigneeId);
48633
48643
  const handleConfirm = () => {
@@ -48723,7 +48733,7 @@ function ReopenTicketModal({
48723
48733
  setAssigneeId(_nullishCoalesce(initialAssigneeId, () => ( null)));
48724
48734
  setReason("");
48725
48735
  }, [isOpen, initialStatusId, initialAssigneeId]);
48726
- const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _1193 => _1193[0], 'optionalAccess', _1194 => _1194.value]))), () => ( null));
48736
+ const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _1194 => _1194[0], 'optionalAccess', _1195 => _1195.value]))), () => ( null));
48727
48737
  const selectedStatus = statusOptions.find((o) => o.value === selectedStatusId);
48728
48738
  const selectedAssignee = assigneeOptions.find((o) => o.value === assigneeId);
48729
48739
  const handleConfirm = () => {
@@ -49148,7 +49158,7 @@ function RoadmapCard({
49148
49158
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
49149
49159
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
49150
49160
  const hasFigma = !!item.figmaUrl;
49151
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _1195 => _1195.screenshots, 'optionalAccess', _1196 => _1196.length]), () => ( 0))) > 0;
49161
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _1196 => _1196.screenshots, 'optionalAccess', _1197 => _1197.length]), () => ( 0))) > 0;
49152
49162
  const typeLabel = getTaskTypeLabel(item.customItemId);
49153
49163
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
49154
49164
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -49167,7 +49177,7 @@ function RoadmapCard({
49167
49177
  unoptimized: true,
49168
49178
  className: "h-8 w-8 object-contain"
49169
49179
  }
49170
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1197 => _1197.title, 'optionalAccess', _1198 => _1198.substring, 'call', _1199 => _1199(0, 2)]) || "??" })
49180
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1198 => _1198.title, 'optionalAccess', _1199 => _1199.substring, 'call', _1200 => _1200(0, 2)]) || "??" })
49171
49181
  }
49172
49182
  ),
49173
49183
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -49243,7 +49253,7 @@ function RoadmapCard({
49243
49253
  unoptimized: true,
49244
49254
  className: "object-contain p-1"
49245
49255
  }
49246
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1200 => _1200.title, 'optionalAccess', _1201 => _1201.substring, 'call', _1202 => _1202(0, 2)]) || "??" }) }),
49256
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1201 => _1201.title, 'optionalAccess', _1202 => _1202.substring, 'call', _1203 => _1203(0, 2)]) || "??" }) }),
49247
49257
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
49248
49258
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary flex-1 line-clamp-2", children: item.title }) }),
49249
49259
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary truncate", children: [
@@ -49754,7 +49764,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
49754
49764
  ] }) : null,
49755
49765
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-h6 text-ods-text-secondary", children: item.preview }) }) : null
49756
49766
  ] }),
49757
- _optionalChain([anchorProps, 'optionalAccess', _1203 => _1203.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
49767
+ _optionalChain([anchorProps, 'optionalAccess', _1204 => _1204.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
49758
49768
  ] });
49759
49769
  if (!anchorProps) {
49760
49770
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -49824,7 +49834,7 @@ function getDefaultOptions() {
49824
49834
  // node_modules/date-fns/startOfWeek.mjs
49825
49835
  function startOfWeek(date, options) {
49826
49836
  const defaultOptions2 = getDefaultOptions();
49827
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1204 => _1204.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1205 => _1205.locale, 'optionalAccess', _1206 => _1206.options, 'optionalAccess', _1207 => _1207.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1208 => _1208.locale, 'optionalAccess', _1209 => _1209.options, 'optionalAccess', _1210 => _1210.weekStartsOn]))), () => ( 0));
49837
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1205 => _1205.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1206 => _1206.locale, 'optionalAccess', _1207 => _1207.options, 'optionalAccess', _1208 => _1208.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1209 => _1209.locale, 'optionalAccess', _1210 => _1210.options, 'optionalAccess', _1211 => _1211.weekStartsOn]))), () => ( 0));
49828
49838
  const _date = toDate2(date);
49829
49839
  const day = _date.getDay();
49830
49840
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -49999,7 +50009,7 @@ var formatDistance = (token, count, options) => {
49999
50009
  } else {
50000
50010
  result = tokenValue.other.replace("{{count}}", count.toString());
50001
50011
  }
50002
- if (_optionalChain([options, 'optionalAccess', _1211 => _1211.addSuffix])) {
50012
+ if (_optionalChain([options, 'optionalAccess', _1212 => _1212.addSuffix])) {
50003
50013
  if (options.comparison && options.comparison > 0) {
50004
50014
  return "in " + result;
50005
50015
  } else {
@@ -50066,15 +50076,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
50066
50076
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
50067
50077
  function buildLocalizeFn(args) {
50068
50078
  return (value, options) => {
50069
- const context = _optionalChain([options, 'optionalAccess', _1212 => _1212.context]) ? String(options.context) : "standalone";
50079
+ const context = _optionalChain([options, 'optionalAccess', _1213 => _1213.context]) ? String(options.context) : "standalone";
50070
50080
  let valuesArray;
50071
50081
  if (context === "formatting" && args.formattingValues) {
50072
50082
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
50073
- const width = _optionalChain([options, 'optionalAccess', _1213 => _1213.width]) ? String(options.width) : defaultWidth;
50083
+ const width = _optionalChain([options, 'optionalAccess', _1214 => _1214.width]) ? String(options.width) : defaultWidth;
50074
50084
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
50075
50085
  } else {
50076
50086
  const defaultWidth = args.defaultWidth;
50077
- const width = _optionalChain([options, 'optionalAccess', _1214 => _1214.width]) ? String(options.width) : args.defaultWidth;
50087
+ const width = _optionalChain([options, 'optionalAccess', _1215 => _1215.width]) ? String(options.width) : args.defaultWidth;
50078
50088
  valuesArray = args.values[width] || args.values[defaultWidth];
50079
50089
  }
50080
50090
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -50454,7 +50464,7 @@ function getWeekYear(date, options) {
50454
50464
  const _date = toDate2(date);
50455
50465
  const year = _date.getFullYear();
50456
50466
  const defaultOptions2 = getDefaultOptions();
50457
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1215 => _1215.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1216 => _1216.locale, 'optionalAccess', _1217 => _1217.options, 'optionalAccess', _1218 => _1218.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1219 => _1219.locale, 'optionalAccess', _1220 => _1220.options, 'optionalAccess', _1221 => _1221.firstWeekContainsDate]))), () => ( 1));
50467
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1216 => _1216.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1217 => _1217.locale, 'optionalAccess', _1218 => _1218.options, 'optionalAccess', _1219 => _1219.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1220 => _1220.locale, 'optionalAccess', _1221 => _1221.options, 'optionalAccess', _1222 => _1222.firstWeekContainsDate]))), () => ( 1));
50458
50468
  const firstWeekOfNextYear = constructFrom(date, 0);
50459
50469
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
50460
50470
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -50475,7 +50485,7 @@ function getWeekYear(date, options) {
50475
50485
  // node_modules/date-fns/startOfWeekYear.mjs
50476
50486
  function startOfWeekYear(date, options) {
50477
50487
  const defaultOptions2 = getDefaultOptions();
50478
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1222 => _1222.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1223 => _1223.locale, 'optionalAccess', _1224 => _1224.options, 'optionalAccess', _1225 => _1225.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1226 => _1226.locale, 'optionalAccess', _1227 => _1227.options, 'optionalAccess', _1228 => _1228.firstWeekContainsDate]))), () => ( 1));
50488
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1223 => _1223.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1224 => _1224.locale, 'optionalAccess', _1225 => _1225.options, 'optionalAccess', _1226 => _1226.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1227 => _1227.locale, 'optionalAccess', _1228 => _1228.options, 'optionalAccess', _1229 => _1229.firstWeekContainsDate]))), () => ( 1));
50479
50489
  const year = getWeekYear(date, options);
50480
50490
  const firstWeek = constructFrom(date, 0);
50481
50491
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -51290,9 +51300,9 @@ var doubleQuoteRegExp = /''/g;
51290
51300
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
51291
51301
  function format2(date, formatStr, options) {
51292
51302
  const defaultOptions2 = getDefaultOptions();
51293
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1229 => _1229.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
51294
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1230 => _1230.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1231 => _1231.locale, 'optionalAccess', _1232 => _1232.options, 'optionalAccess', _1233 => _1233.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1234 => _1234.locale, 'optionalAccess', _1235 => _1235.options, 'optionalAccess', _1236 => _1236.firstWeekContainsDate]))), () => ( 1));
51295
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1237 => _1237.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1238 => _1238.locale, 'optionalAccess', _1239 => _1239.options, 'optionalAccess', _1240 => _1240.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1241 => _1241.locale, 'optionalAccess', _1242 => _1242.options, 'optionalAccess', _1243 => _1243.weekStartsOn]))), () => ( 0));
51303
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1230 => _1230.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
51304
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1231 => _1231.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1232 => _1232.locale, 'optionalAccess', _1233 => _1233.options, 'optionalAccess', _1234 => _1234.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1235 => _1235.locale, 'optionalAccess', _1236 => _1236.options, 'optionalAccess', _1237 => _1237.firstWeekContainsDate]))), () => ( 1));
51305
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1238 => _1238.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1239 => _1239.locale, 'optionalAccess', _1240 => _1240.options, 'optionalAccess', _1241 => _1241.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1242 => _1242.locale, 'optionalAccess', _1243 => _1243.options, 'optionalAccess', _1244 => _1244.weekStartsOn]))), () => ( 0));
51296
51306
  const originalDate = toDate2(date);
51297
51307
  if (!isValid(originalDate)) {
51298
51308
  throw new RangeError("Invalid time value");
@@ -51333,7 +51343,7 @@ function format2(date, formatStr, options) {
51333
51343
  return parts.map((part) => {
51334
51344
  if (!part.isToken) return part.value;
51335
51345
  const token = part.value;
51336
- if (!_optionalChain([options, 'optionalAccess', _1244 => _1244.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _1245 => _1245.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
51346
+ if (!_optionalChain([options, 'optionalAccess', _1245 => _1245.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _1246 => _1246.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
51337
51347
  warnOrThrowProtectedError(token, formatStr, String(date));
51338
51348
  }
51339
51349
  const formatter = formatters[token[0]];
@@ -51539,7 +51549,7 @@ function ProgramCard({
51539
51549
  const itemDate2 = compactDate;
51540
51550
  const compactCover = coverImage || placeholderUrl || null;
51541
51551
  const typeMeta = compactTypeMeta();
51542
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _1246 => _1246.labels, 'optionalAccess', _1247 => _1247.singular])].filter(
51552
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _1247 => _1247.labels, 'optionalAccess', _1248 => _1248.singular])].filter(
51543
51553
  (s) => typeof s === "string" && s.length > 0
51544
51554
  );
51545
51555
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkKI4EGKNVcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -51696,7 +51706,7 @@ function ProgramCard({
51696
51706
 
51697
51707
 
51698
51708
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
51699
- const goalsCount = _optionalChain([campaign, 'access', _1248 => _1248.goals, 'optionalAccess', _1249 => _1249.length]) || 0;
51709
+ const goalsCount = _optionalChain([campaign, 'access', _1249 => _1249.goals, 'optionalAccess', _1250 => _1250.length]) || 0;
51700
51710
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
51701
51711
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
51702
51712
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -51864,7 +51874,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
51864
51874
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
51865
51875
  const safePath = sanitizePath(row.path);
51866
51876
  if (safePath) {
51867
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1250 => _1250.docPlatformTargets, 'optionalAccess', _1251 => _1251[row.documentType]]) : void 0;
51877
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1251 => _1251.docPlatformTargets, 'optionalAccess', _1252 => _1252[row.documentType]]) : void 0;
51868
51878
  if (docTarget) {
51869
51879
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
51870
51880
  const base = `${_chunkKI4EGKNVcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -52163,8 +52173,8 @@ function cardMenuGroups(href, discuss, openDetails, externalLink) {
52163
52173
  if (href) {
52164
52174
  items.push({
52165
52175
  id: "open-details",
52166
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1252 => _1252.label]), () => ( "Open Details")),
52167
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1253 => _1253.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.EyeIcon, { size: 20 }))),
52176
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1253 => _1253.label]), () => ( "Open Details")),
52177
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1254 => _1254.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.EyeIcon, { size: 20 }))),
52168
52178
  // Main row → open the entity (same tab, soft Link nav).
52169
52179
  href,
52170
52180
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -52224,16 +52234,16 @@ function itemVideoMetadata(item) {
52224
52234
  for (const v of vals) if (typeof v === "string" && v.length > 0) return v;
52225
52235
  return void 0;
52226
52236
  };
52227
- const m = _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1254 => _1254.metadata]), () => ( {}));
52237
+ const m = _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1255 => _1255.metadata]), () => ( {}));
52228
52238
  const out = {};
52229
- const videoUrl = pick(m.videoUrl, _optionalChain([item, 'optionalAccess', _1255 => _1255.custom_video_url]), _optionalChain([item, 'optionalAccess', _1256 => _1256.main_video_url]));
52230
- const youtubeUrl = pick(m.youtubeUrl, _optionalChain([item, 'optionalAccess', _1257 => _1257.youtube_url]), _optionalChain([item, 'optionalAccess', _1258 => _1258.testimonial_video_url]));
52231
- const highlightVideoUrl = pick(m.highlightVideoUrl, _optionalChain([item, 'optionalAccess', _1259 => _1259.highlight_video_url]));
52239
+ const videoUrl = pick(m.videoUrl, _optionalChain([item, 'optionalAccess', _1256 => _1256.custom_video_url]), _optionalChain([item, 'optionalAccess', _1257 => _1257.main_video_url]));
52240
+ const youtubeUrl = pick(m.youtubeUrl, _optionalChain([item, 'optionalAccess', _1258 => _1258.youtube_url]), _optionalChain([item, 'optionalAccess', _1259 => _1259.testimonial_video_url]));
52241
+ const highlightVideoUrl = pick(m.highlightVideoUrl, _optionalChain([item, 'optionalAccess', _1260 => _1260.highlight_video_url]));
52232
52242
  const videoPoster = pick(
52233
52243
  m.videoPoster,
52234
- _optionalChain([item, 'optionalAccess', _1260 => _1260.main_video_thumbnail]),
52235
- _optionalChain([item, 'optionalAccess', _1261 => _1261.highlight_video_thumbnail]),
52236
- _optionalChain([item, 'optionalAccess', _1262 => _1262.featured_image])
52244
+ _optionalChain([item, 'optionalAccess', _1261 => _1261.main_video_thumbnail]),
52245
+ _optionalChain([item, 'optionalAccess', _1262 => _1262.highlight_video_thumbnail]),
52246
+ _optionalChain([item, 'optionalAccess', _1263 => _1263.featured_image])
52237
52247
  );
52238
52248
  if (videoUrl) out.videoUrl = videoUrl;
52239
52249
  if (youtubeUrl) out.youtubeUrl = youtubeUrl;
@@ -52267,15 +52277,15 @@ function fetchedItemDisplayRef(item, chatRef) {
52267
52277
  }
52268
52278
  function fetchedFaqDisplayRef(item, chatRef) {
52269
52279
  const it = item;
52270
- const answer = typeof _optionalChain([it, 'optionalAccess', _1263 => _1263.answer]) === "string" && it.answer.trim().length > 0 ? it.answer.trim() : null;
52280
+ const answer = typeof _optionalChain([it, 'optionalAccess', _1264 => _1264.answer]) === "string" && it.answer.trim().length > 0 ? it.answer.trim() : null;
52271
52281
  return {
52272
52282
  type: "faq",
52273
52283
  id: chatRef.id,
52274
52284
  sourceRepo: chatRef.sourceRepo,
52275
- title: typeof _optionalChain([it, 'optionalAccess', _1264 => _1264.question]) === "string" && it.question ? it.question : chatRef.id,
52285
+ title: typeof _optionalChain([it, 'optionalAccess', _1265 => _1265.question]) === "string" && it.question ? it.question : chatRef.id,
52276
52286
  url: _nullishCoalesce(chatRef.url, () => ( null)),
52277
52287
  ...answer ? { preview: answer.length > 400 ? `${answer.slice(0, 397)}\u2026` : answer } : {},
52278
- metadata: typeof _optionalChain([it, 'optionalAccess', _1265 => _1265.section]) === "string" && it.section ? { section: it.section } : {}
52288
+ metadata: typeof _optionalChain([it, 'optionalAccess', _1266 => _1266.section]) === "string" && it.section ? { section: it.section } : {}
52279
52289
  };
52280
52290
  }
52281
52291
  function HubspotTicketChatCard({
@@ -52283,8 +52293,8 @@ function HubspotTicketChatCard({
52283
52293
  isNewTab,
52284
52294
  discuss
52285
52295
  }) {
52286
- const status = typeof _optionalChain([chatRef, 'access', _1266 => _1266.metadata, 'optionalAccess', _1267 => _1267.status]) === "string" ? chatRef.metadata.status : void 0;
52287
- const statusLabel = typeof _optionalChain([chatRef, 'access', _1268 => _1268.metadata, 'optionalAccess', _1269 => _1269.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
52296
+ const status = typeof _optionalChain([chatRef, 'access', _1267 => _1267.metadata, 'optionalAccess', _1268 => _1268.status]) === "string" ? chatRef.metadata.status : void 0;
52297
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _1269 => _1269.metadata, 'optionalAccess', _1270 => _1270.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
52288
52298
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
52289
52299
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52290
52300
  MingoInfoCard,
@@ -52307,7 +52317,7 @@ function FaqChatCard({
52307
52317
  isNewTab,
52308
52318
  discuss
52309
52319
  }) {
52310
- const section = typeof _optionalChain([chatRef, 'access', _1270 => _1270.metadata, 'optionalAccess', _1271 => _1271.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
52320
+ const section = typeof _optionalChain([chatRef, 'access', _1271 => _1271.metadata, 'optionalAccess', _1272 => _1272.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
52311
52321
  const statusLabel = section && section.length > 0 ? section : "FAQ";
52312
52322
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52313
52323
  MingoInfoCard,
@@ -52327,7 +52337,7 @@ function SlackChatCard({
52327
52337
  isNewTab,
52328
52338
  discuss
52329
52339
  }) {
52330
- const channelName = typeof _optionalChain([chatRef, 'access', _1272 => _1272.metadata, 'optionalAccess', _1273 => _1273.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
52340
+ const channelName = typeof _optionalChain([chatRef, 'access', _1273 => _1273.metadata, 'optionalAccess', _1274 => _1274.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
52331
52341
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
52332
52342
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
52333
52343
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -52367,7 +52377,7 @@ function GenericFinancialChatCard({
52367
52377
  isNewTab,
52368
52378
  discuss
52369
52379
  }) {
52370
- const subtitle = typeof _optionalChain([chatRef, 'access', _1274 => _1274.metadata, 'optionalAccess', _1275 => _1275.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
52380
+ const subtitle = typeof _optionalChain([chatRef, 'access', _1275 => _1275.metadata, 'optionalAccess', _1276 => _1276.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
52371
52381
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52372
52382
  MingoInfoCard,
52373
52383
  {
@@ -52436,12 +52446,12 @@ function ProductReleaseChatCard({
52436
52446
  discuss
52437
52447
  }) {
52438
52448
  const releaseProps = buildProps(item);
52439
- const status = _optionalChain([item, 'optionalAccess', _1276 => _1276.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
52449
+ const status = _optionalChain([item, 'optionalAccess', _1277 => _1277.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
52440
52450
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52441
52451
  EntityMingoCard,
52442
52452
  {
52443
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1277 => _1277.title]), () => ( "")),
52444
- description: _optionalChain([item, 'optionalAccess', _1278 => _1278.summary]) || releaseProps.formattedDate || void 0,
52453
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1278 => _1278.title]), () => ( "")),
52454
+ description: _optionalChain([item, 'optionalAccess', _1279 => _1279.summary]) || releaseProps.formattedDate || void 0,
52445
52455
  cover: releaseProps.coverImage || void 0,
52446
52456
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Rocket02Icon, { size: 24 }),
52447
52457
  status,
@@ -52458,17 +52468,17 @@ function CampaignChatCard({
52458
52468
  isNewTab,
52459
52469
  discuss
52460
52470
  }) {
52461
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1279 => _1279.goals])) ? item.goals.length : 0;
52471
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1280 => _1280.goals])) ? item.goals.length : 0;
52462
52472
  const meta = [
52463
- _optionalChain([item, 'optionalAccess', _1280 => _1280.start_date]) ? formatDateShort(item.start_date) : null,
52473
+ _optionalChain([item, 'optionalAccess', _1281 => _1281.start_date]) ? formatDateShort(item.start_date) : null,
52464
52474
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
52465
52475
  "Marketing campaign"
52466
52476
  ].filter(Boolean).join(" \xB7 ");
52467
52477
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52468
52478
  EntityMingoCard,
52469
52479
  {
52470
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1281 => _1281.name]), () => ( "")),
52471
- description: meta || _optionalChain([item, 'optionalAccess', _1282 => _1282.description]) || void 0,
52480
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1282 => _1282.name]), () => ( "")),
52481
+ description: meta || _optionalChain([item, 'optionalAccess', _1283 => _1283.description]) || void 0,
52472
52482
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Megaphone01Icon, { size: 24 }),
52473
52483
  chatRef,
52474
52484
  isNewTab,
@@ -52523,14 +52533,14 @@ function BlogChatCard({
52523
52533
  hasEmbeddedVideo,
52524
52534
  discuss
52525
52535
  }) {
52526
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1283 => _1283.categories])) ? _optionalChain([item, 'access', _1284 => _1284.categories, 'access', _1285 => _1285.find, 'call', _1286 => _1286((c) => c && c.name), 'optionalAccess', _1287 => _1287.name]) : void 0;
52536
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1284 => _1284.categories])) ? _optionalChain([item, 'access', _1285 => _1285.categories, 'access', _1286 => _1286.find, 'call', _1287 => _1287((c) => c && c.name), 'optionalAccess', _1288 => _1288.name]) : void 0;
52527
52537
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
52528
52538
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52529
52539
  EntityMingoCard,
52530
52540
  {
52531
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1288 => _1288.title]), () => ( "")),
52532
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1289 => _1289.summary]), () => ( void 0)),
52533
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1290 => _1290.featured_image]), ogPlaceholder),
52541
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1289 => _1289.title]), () => ( "")),
52542
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1290 => _1290.summary]), () => ( void 0)),
52543
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1291 => _1291.featured_image]), ogPlaceholder),
52534
52544
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.NewspaperIcon, { size: 24 }),
52535
52545
  status,
52536
52546
  chatRef,
@@ -52547,13 +52557,13 @@ function CaseStudyChatCard({
52547
52557
  ogPlaceholder,
52548
52558
  discuss
52549
52559
  }) {
52550
- const meta = [_optionalChain([item, 'optionalAccess', _1291 => _1291.msp, 'optionalAccess', _1292 => _1292.name]), _optionalChain([item, 'optionalAccess', _1293 => _1293.user, 'optionalAccess', _1294 => _1294.full_name])].filter(Boolean).join(" \xB7 ");
52560
+ const meta = [_optionalChain([item, 'optionalAccess', _1292 => _1292.msp, 'optionalAccess', _1293 => _1293.name]), _optionalChain([item, 'optionalAccess', _1294 => _1294.user, 'optionalAccess', _1295 => _1295.full_name])].filter(Boolean).join(" \xB7 ");
52551
52561
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52552
52562
  EntityMingoCard,
52553
52563
  {
52554
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1295 => _1295.title]), () => ( "")),
52555
- description: _optionalChain([item, 'optionalAccess', _1296 => _1296.summary]) || meta || void 0,
52556
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1297 => _1297.featured_image]), ogPlaceholder),
52564
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1296 => _1296.title]), () => ( "")),
52565
+ description: _optionalChain([item, 'optionalAccess', _1297 => _1297.summary]) || meta || void 0,
52566
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1298 => _1298.featured_image]), ogPlaceholder),
52557
52567
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TrophyIcon, { size: 24 }),
52558
52568
  status: { label: "Case study", variant: "grey" },
52559
52569
  chatRef,
@@ -52570,13 +52580,13 @@ function CustomerInterviewChatCard({
52570
52580
  ogPlaceholder,
52571
52581
  discuss
52572
52582
  }) {
52573
- const meta = [_optionalChain([item, 'optionalAccess', _1298 => _1298.user, 'optionalAccess', _1299 => _1299.full_name]), _optionalChain([item, 'optionalAccess', _1300 => _1300.msp, 'optionalAccess', _1301 => _1301.name])].filter(Boolean).join(" \xB7 ");
52583
+ const meta = [_optionalChain([item, 'optionalAccess', _1299 => _1299.user, 'optionalAccess', _1300 => _1300.full_name]), _optionalChain([item, 'optionalAccess', _1301 => _1301.msp, 'optionalAccess', _1302 => _1302.name])].filter(Boolean).join(" \xB7 ");
52574
52584
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52575
52585
  EntityMingoCard,
52576
52586
  {
52577
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1302 => _1302.title]), () => ( "")),
52578
- description: _optionalChain([item, 'optionalAccess', _1303 => _1303.video_summary]) || meta || void 0,
52579
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1304 => _1304.featured_image]), ogPlaceholder),
52587
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1303 => _1303.title]), () => ( "")),
52588
+ description: _optionalChain([item, 'optionalAccess', _1304 => _1304.video_summary]) || meta || void 0,
52589
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1305 => _1305.featured_image]), ogPlaceholder),
52580
52590
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MicrophoneIcon, { size: 24 }),
52581
52591
  status: { label: "Interview", variant: "grey" },
52582
52592
  chatRef,
@@ -52593,13 +52603,13 @@ function InvestorUpdateChatCard({
52593
52603
  ogPlaceholder,
52594
52604
  discuss
52595
52605
  }) {
52596
- const title = _optionalChain([item, 'optionalAccess', _1305 => _1305.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1306 => _1306.update_number]), () => ( "?"))}`;
52606
+ const title = _optionalChain([item, 'optionalAccess', _1306 => _1306.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1307 => _1307.update_number]), () => ( "?"))}`;
52597
52607
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52598
52608
  EntityMingoCard,
52599
52609
  {
52600
52610
  title,
52601
- description: _optionalChain([item, 'optionalAccess', _1307 => _1307.strategic_update]) || _optionalChain([item, 'optionalAccess', _1308 => _1308.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1309 => _1309.period_start]), _optionalChain([item, 'optionalAccess', _1310 => _1310.period_end])) || void 0,
52602
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1311 => _1311.featured_image]), ogPlaceholder),
52611
+ description: _optionalChain([item, 'optionalAccess', _1308 => _1308.strategic_update]) || _optionalChain([item, 'optionalAccess', _1309 => _1309.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1310 => _1310.period_start]), _optionalChain([item, 'optionalAccess', _1311 => _1311.period_end])) || void 0,
52612
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1312 => _1312.featured_image]), ogPlaceholder),
52603
52613
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.PresentationLineIcon, { size: 24 }),
52604
52614
  status: { label: "Investor update", variant: "grey" },
52605
52615
  chatRef,
@@ -52616,12 +52626,12 @@ function OnboardingGuideChatCard({
52616
52626
  ogPlaceholder,
52617
52627
  discuss
52618
52628
  }) {
52619
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1312 => _1312.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1313 => _1313.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1314 => _1314.og_image_url]), ogPlaceholder)));
52629
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1313 => _1313.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1314 => _1314.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1315 => _1315.og_image_url]), ogPlaceholder)));
52620
52630
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52621
52631
  EntityMingoCard,
52622
52632
  {
52623
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1315 => _1315.title]), () => ( "")),
52624
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1316 => _1316.summary]), () => ( _optionalChain([item, 'optionalAccess', _1317 => _1317.description]))), () => ( void 0)),
52633
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1316 => _1316.title]), () => ( "")),
52634
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1317 => _1317.summary]), () => ( _optionalChain([item, 'optionalAccess', _1318 => _1318.description]))), () => ( void 0)),
52625
52635
  cover,
52626
52636
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CompassIcon, { size: 24 }),
52627
52637
  status: { label: "Guide", variant: "grey" },
@@ -52642,25 +52652,25 @@ function ProgramChatCard({
52642
52652
  discuss
52643
52653
  }) {
52644
52654
  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 });
52645
- const isScheduled = _optionalChain([item, 'optionalAccess', _1318 => _1318.status]) === "scheduled";
52655
+ const isScheduled = _optionalChain([item, 'optionalAccess', _1319 => _1319.status]) === "scheduled";
52646
52656
  let typeMeta;
52647
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1319 => _1319.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
52657
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1320 => _1320.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
52648
52658
  typeMeta = formatDurationCompact(item.duration_seconds);
52649
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1320 => _1320.location_name]) === "string" && item.location_name.trim().length > 0) {
52659
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1321 => _1321.location_name]) === "string" && item.location_name.trim().length > 0) {
52650
52660
  typeMeta = item.location_name;
52651
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1321 => _1321.start_at])) {
52661
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1322 => _1322.start_at])) {
52652
52662
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
52653
52663
  const dur = formatDurationFromRange(item.start_at, item.end_at);
52654
52664
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
52655
52665
  }
52656
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1322 => _1322.date]), () => ( null)), { fallback: "", timezone: "local" });
52666
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1323 => _1323.date]), () => ( null)), { fallback: "", timezone: "local" });
52657
52667
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
52658
52668
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52659
52669
  EntityMingoCard,
52660
52670
  {
52661
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1323 => _1323.title]), () => ( "")),
52662
- description: meta || _optionalChain([item, 'optionalAccess', _1324 => _1324.description]) || void 0,
52663
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1325 => _1325.cover_url]), ogPlaceholder),
52671
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1324 => _1324.title]), () => ( "")),
52672
+ description: meta || _optionalChain([item, 'optionalAccess', _1325 => _1325.description]) || void 0,
52673
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1326 => _1326.cover_url]), ogPlaceholder),
52664
52674
  fallbackIcon: icon,
52665
52675
  status: { label, variant: "grey" },
52666
52676
  chatRef,
@@ -52677,10 +52687,10 @@ function RoadmapChatCard({
52677
52687
  cardType,
52678
52688
  discuss
52679
52689
  }) {
52680
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1326 => _1326.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
52681
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1327 => _1327.customItemId]) != null;
52690
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1327 => _1327.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
52691
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1328 => _1328.customItemId]) != null;
52682
52692
  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 });
52683
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1328 => _1328.customItemId]), className: "size-6" }) : logoUrl ? (
52693
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1329 => _1329.customItemId]), className: "size-6" }) : logoUrl ? (
52684
52694
  // Contained (not full-bleed) so the integration logo keeps its aspect
52685
52695
  // ratio inside the bordered icon box — matches RoadmapCard.
52686
52696
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -52691,10 +52701,10 @@ function RoadmapChatCard({
52691
52701
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52692
52702
  EntityMingoCard,
52693
52703
  {
52694
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1329 => _1329.title]), () => ( "")),
52695
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1330 => _1330.description]), () => ( void 0)),
52704
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1330 => _1330.title]), () => ( "")),
52705
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1331 => _1331.description]), () => ( void 0)),
52696
52706
  fallbackIcon: icon,
52697
- status: statusPill(_optionalChain([item, 'optionalAccess', _1331 => _1331.status])),
52707
+ status: statusPill(_optionalChain([item, 'optionalAccess', _1332 => _1332.status])),
52698
52708
  chatRef,
52699
52709
  isNewTab,
52700
52710
  discuss,
@@ -52710,7 +52720,7 @@ function refHydratedEntry(docType, label, renderRef) {
52710
52720
  bareInline: true,
52711
52721
  contentRefType: docType,
52712
52722
  noComposedHref: true,
52713
- fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1332 => _1332.url]), () => ( null)),
52723
+ fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1333 => _1333.url]), () => ( null)),
52714
52724
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
52715
52725
  render: (item, chatRef, opts) => renderRef(fetchedItemDisplayRef(item, chatRef), opts)
52716
52726
  };
@@ -52783,7 +52793,7 @@ function programRegistryEntries() {
52783
52793
  discuss: opts.discuss,
52784
52794
  configKey: cfg.configKey,
52785
52795
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
52786
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1333 => _1333.extras, 'optionalAccess', _1334 => _1334.buildOgPlaceholderUrl, 'optionalCall', _1335 => _1335(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1336 => _1336.title]), () => ( "")))]), () => ( null))
52796
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1334 => _1334.extras, 'optionalAccess', _1335 => _1335.buildOgPlaceholderUrl, 'optionalCall', _1336 => _1336(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1337 => _1337.title]), () => ( "")))]), () => ( null))
52787
52797
  }
52788
52798
  )
52789
52799
  }));
@@ -52804,7 +52814,7 @@ var ROADMAP_CARD_CONFIGS = {
52804
52814
  // The card's destination IS the ClickUp deep link, derived from the
52805
52815
  // task id post-fetch (the refs frame used to carry it).
52806
52816
  noComposedHref: true,
52807
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1337 => _1337.id]) != null ? clickupTaskUrl(String(item.id)) : null
52817
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1338 => _1338.id]) != null ? clickupTaskUrl(String(item.id)) : null
52808
52818
  }
52809
52819
  };
52810
52820
  function roadmapRegistryEntries() {
@@ -52846,8 +52856,8 @@ var CHAT_CARD_REGISTRY = {
52846
52856
  DeletedDataCard,
52847
52857
  {
52848
52858
  title: chatRef.title && chatRef.title !== chatRef.id ? chatRef.title : null,
52849
- entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _1338 => _1338.metadata, 'optionalAccess', _1339 => _1339.entity_label]), () => ( null)),
52850
- recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _1340 => _1340.metadata, 'optionalAccess', _1341 => _1341.recovery_note]), () => ( null))
52859
+ entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _1339 => _1339.metadata, 'optionalAccess', _1340 => _1340.entity_label]), () => ( null)),
52860
+ recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _1341 => _1341.metadata, 'optionalAccess', _1342 => _1342.recovery_note]), () => ( null))
52851
52861
  }
52852
52862
  )
52853
52863
  },
@@ -52861,7 +52871,7 @@ var CHAT_CARD_REGISTRY = {
52861
52871
  bareInline: true,
52862
52872
  contentRefType: "faq",
52863
52873
  noComposedHref: true,
52864
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1342 => _1342.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
52874
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1343 => _1343.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
52865
52875
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
52866
52876
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52867
52877
  FaqChatCard,
@@ -52945,8 +52955,8 @@ var CHAT_CARD_REGISTRY = {
52945
52955
  chatRef,
52946
52956
  isNewTab: opts.isNewTab,
52947
52957
  discuss: opts.discuss,
52948
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1343 => _1343.extras, 'optionalAccess', _1344 => _1344.buildOgPlaceholderUrl, 'optionalCall', _1345 => _1345(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1346 => _1346.title]), () => ( "")))]), () => ( null)),
52949
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1347 => _1347.metadata, 'optionalAccess', _1348 => _1348.hasEmbeddedVideo]) === true
52958
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1344 => _1344.extras, 'optionalAccess', _1345 => _1345.buildOgPlaceholderUrl, 'optionalCall', _1346 => _1346(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1347 => _1347.title]), () => ( "")))]), () => ( null)),
52959
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1348 => _1348.metadata, 'optionalAccess', _1349 => _1349.hasEmbeddedVideo]) === true
52950
52960
  }
52951
52961
  )
52952
52962
  },
@@ -52962,7 +52972,7 @@ var CHAT_CARD_REGISTRY = {
52962
52972
  chatRef,
52963
52973
  isNewTab: opts.isNewTab,
52964
52974
  discuss: opts.discuss,
52965
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1349 => _1349.extras, 'optionalAccess', _1350 => _1350.buildOgPlaceholderUrl, 'optionalCall', _1351 => _1351(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1352 => _1352.title]), () => ( "")))]), () => ( null))
52975
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1350 => _1350.extras, 'optionalAccess', _1351 => _1351.buildOgPlaceholderUrl, 'optionalCall', _1352 => _1352(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1353 => _1353.title]), () => ( "")))]), () => ( null))
52966
52976
  }
52967
52977
  )
52968
52978
  },
@@ -52978,7 +52988,7 @@ var CHAT_CARD_REGISTRY = {
52978
52988
  chatRef,
52979
52989
  isNewTab: opts.isNewTab,
52980
52990
  discuss: opts.discuss,
52981
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1353 => _1353.extras, 'optionalAccess', _1354 => _1354.buildOgPlaceholderUrl, 'optionalCall', _1355 => _1355(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1356 => _1356.title]), () => ( "")))]), () => ( null))
52991
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1354 => _1354.extras, 'optionalAccess', _1355 => _1355.buildOgPlaceholderUrl, 'optionalCall', _1356 => _1356(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1357 => _1357.title]), () => ( "")))]), () => ( null))
52982
52992
  }
52983
52993
  )
52984
52994
  },
@@ -52988,7 +52998,7 @@ var CHAT_CARD_REGISTRY = {
52988
52998
  bareInline: true,
52989
52999
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
52990
53000
  render: (item, chatRef, opts) => {
52991
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1357 => _1357.extras, 'optionalAccess', _1358 => _1358.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
53001
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1358 => _1358.extras, 'optionalAccess', _1359 => _1359.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
52992
53002
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
52993
53003
  ProductReleaseChatCard,
52994
53004
  {
@@ -53014,7 +53024,7 @@ var CHAT_CARD_REGISTRY = {
53014
53024
  chatRef,
53015
53025
  isNewTab: opts.isNewTab,
53016
53026
  discuss: opts.discuss,
53017
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1359 => _1359.extras, 'optionalAccess', _1360 => _1360.buildOgPlaceholderUrl, 'optionalCall', _1361 => _1361(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1362 => _1362.title]), () => ( "")))]), () => ( null))
53027
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1360 => _1360.extras, 'optionalAccess', _1361 => _1361.buildOgPlaceholderUrl, 'optionalCall', _1362 => _1362(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1363 => _1363.title]), () => ( "")))]), () => ( null))
53018
53028
  }
53019
53029
  )
53020
53030
  },
@@ -53032,7 +53042,7 @@ var CHAT_CARD_REGISTRY = {
53032
53042
  chatRef,
53033
53043
  isNewTab: opts.isNewTab,
53034
53044
  discuss: opts.discuss,
53035
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1363 => _1363.extras, 'optionalAccess', _1364 => _1364.buildOgPlaceholderUrl, 'optionalCall', _1365 => _1365(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1366 => _1366.title]), () => ( "")))]), () => ( null))
53045
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1364 => _1364.extras, 'optionalAccess', _1365 => _1365.buildOgPlaceholderUrl, 'optionalCall', _1366 => _1366(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1367 => _1367.title]), () => ( "")))]), () => ( null))
53036
53046
  }
53037
53047
  )
53038
53048
  },
@@ -53043,7 +53053,7 @@ var CHAT_CARD_REGISTRY = {
53043
53053
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
53044
53054
  // No public viewer — synthesize the hub-internal admin URL post-fetch
53045
53055
  // so the wrapper + isNewTab computation see the actual destination.
53046
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1367 => _1367.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
53056
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1368 => _1368.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
53047
53057
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53048
53058
  CampaignChatCard,
53049
53059
  {
@@ -53070,13 +53080,13 @@ function ChatCardNavWrap({
53070
53080
  if (!href) return;
53071
53081
  const targetEl = e.target;
53072
53082
  const host = e.currentTarget;
53073
- if (!_optionalChain([host, 'optionalAccess', _1368 => _1368.contains, 'call', _1369 => _1369(targetEl)])) return;
53074
- if (_optionalChain([targetEl, 'optionalAccess', _1370 => _1370.closest, 'optionalCall', _1371 => _1371("button")])) return;
53075
- if (!_optionalChain([targetEl, 'optionalAccess', _1372 => _1372.closest, 'optionalCall', _1373 => _1373("a")])) return;
53083
+ if (!_optionalChain([host, 'optionalAccess', _1369 => _1369.contains, 'call', _1370 => _1370(targetEl)])) return;
53084
+ if (_optionalChain([targetEl, 'optionalAccess', _1371 => _1371.closest, 'optionalCall', _1372 => _1372("button")])) return;
53085
+ if (!_optionalChain([targetEl, 'optionalAccess', _1373 => _1373.closest, 'optionalCall', _1374 => _1374("a")])) return;
53076
53086
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
53077
53087
  if (!handled) return;
53078
53088
  e.stopPropagation();
53079
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1374 => _1374.closeChat])) panel.closeChat();
53089
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1375 => _1375.closeChat])) panel.closeChat();
53080
53090
  };
53081
53091
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
53082
53092
  }
@@ -53098,7 +53108,7 @@ function ChatCardLoader({
53098
53108
  title: chatRef.title,
53099
53109
  externalUrl: chatRef.url,
53100
53110
  targetPlatform: chatRef.targetPlatform,
53101
- path: typeof _optionalChain([chatRef, 'access', _1375 => _1375.metadata, 'optionalAccess', _1376 => _1376.path]) === "string" ? chatRef.metadata.path : null
53111
+ path: typeof _optionalChain([chatRef, 'access', _1376 => _1376.metadata, 'optionalAccess', _1377 => _1377.path]) === "string" ? chatRef.metadata.path : null
53102
53112
  },
53103
53113
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
53104
53114
  );
@@ -53112,11 +53122,11 @@ function ChatCardLoader({
53112
53122
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
53113
53123
  const fetchEntry = entry && entry.contentRefType ? entry : null;
53114
53124
  const { item, isLoading, isError, isFetched } = useChatCardItem(
53115
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1377 => _1377.contentRefType]), () => ( "")),
53125
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1378 => _1378.contentRefType]), () => ( "")),
53116
53126
  fetchEntry ? resolvedChatRef.id : ""
53117
53127
  );
53118
53128
  if (!entry) return null;
53119
- const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _1378 => _1378.contentRefType]) && !resolvedChatRef.url && item && !fetchEntry.fallbackHref && !fetchEntry.noComposedHref ? resolveFetchedCardHref({
53129
+ const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _1379 => _1379.contentRefType]) && !resolvedChatRef.url && item && !fetchEntry.fallbackHref && !fetchEntry.noComposedHref ? resolveFetchedCardHref({
53120
53130
  contentRefType: fetchEntry.contentRefType,
53121
53131
  id: resolvedChatRef.id,
53122
53132
  item,
@@ -53155,7 +53165,7 @@ function ChatCardLoader({
53155
53165
  isNewTab,
53156
53166
  discuss
53157
53167
  };
53158
- const path = typeof _optionalChain([finalChatRef, 'access', _1379 => _1379.metadata, 'optionalAccess', _1380 => _1380.path]) === "string" ? finalChatRef.metadata.path : null;
53168
+ const path = typeof _optionalChain([finalChatRef, 'access', _1380 => _1380.metadata, 'optionalAccess', _1381 => _1381.path]) === "string" ? finalChatRef.metadata.path : null;
53159
53169
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53160
53170
  ChatCardNavWrap,
53161
53171
  {
@@ -53179,7 +53189,7 @@ function ChatCardLoader({
53179
53189
  if (!fetchEntry) {
53180
53190
  return finish(entry.render(void 0, finalChatRef, renderOpts));
53181
53191
  }
53182
- if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _1381 => _1381.skeleton, 'optionalCall', _1382 => _1382()]), () => ( null)) });
53192
+ if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _1382 => _1382.skeleton, 'optionalCall', _1383 => _1383()]), () => ( null)) });
53183
53193
  if (!item) {
53184
53194
  if (isError) {
53185
53195
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardLoadFailure, { label: entry.label, id: finalChatRef.id, detail: "Failed to load" });
@@ -53442,7 +53452,7 @@ function useChunkCatchup({
53442
53452
  console.error("Error during chunk catchup:", error);
53443
53453
  } finally {
53444
53454
  if (dialogId2 !== dialogIdRef.current) {
53445
- if (_optionalChain([pendingCatchupRef, 'access', _1383 => _1383.current, 'optionalAccess', _1384 => _1384.dialogId]) === dialogId2) {
53455
+ if (_optionalChain([pendingCatchupRef, 'access', _1384 => _1384.current, 'optionalAccess', _1385 => _1385.dialogId]) === dialogId2) {
53446
53456
  pendingCatchupRef.current = null;
53447
53457
  }
53448
53458
  } else {
@@ -53455,7 +53465,7 @@ function useChunkCatchup({
53455
53465
  lastFetchParams.current = null;
53456
53466
  bufferUntilInitialCatchupComplete.current = true;
53457
53467
  try {
53458
- await _optionalChain([catchUpChunksRef, 'access', _1385 => _1385.current, 'optionalCall', _1386 => _1386(pending.fromSequenceId)]);
53468
+ await _optionalChain([catchUpChunksRef, 'access', _1386 => _1386.current, 'optionalCall', _1387 => _1387(pending.fromSequenceId)]);
53459
53469
  } catch (rerunError) {
53460
53470
  console.error("Queued catch-up re-run failed:", rerunError);
53461
53471
  }
@@ -53519,7 +53529,7 @@ function useChunkCatchup({
53519
53529
 
53520
53530
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
53521
53531
  function prefersReducedMotion() {
53522
- return typeof window !== "undefined" && _optionalChain([window, 'access', _1387 => _1387.matchMedia, 'optionalCall', _1388 => _1388("(prefers-reduced-motion: reduce)"), 'access', _1389 => _1389.matches]) === true;
53532
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _1388 => _1388.matchMedia, 'optionalCall', _1389 => _1389("(prefers-reduced-motion: reduce)"), 'access', _1390 => _1390.matches]) === true;
53523
53533
  }
53524
53534
  function useScriptedStream(frames, resetKey, enabled = true) {
53525
53535
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -53531,7 +53541,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
53531
53541
  }
53532
53542
  _react.useEffect.call(void 0, () => {
53533
53543
  setReducedMotion(prefersReducedMotion());
53534
- const mq = _optionalChain([window, 'access', _1390 => _1390.matchMedia, 'optionalCall', _1391 => _1391("(prefers-reduced-motion: reduce)")]);
53544
+ const mq = _optionalChain([window, 'access', _1391 => _1391.matchMedia, 'optionalCall', _1392 => _1392("(prefers-reduced-motion: reduce)")]);
53535
53545
  if (!mq) return;
53536
53546
  const onChange = () => setReducedMotion(mq.matches);
53537
53547
  mq.addEventListener("change", onChange);
@@ -53667,7 +53677,7 @@ function useJetStreamDialogSubscription({
53667
53677
  const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
53668
53678
  conn: sharedConn,
53669
53679
  wsUrl,
53670
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1392 => _1392.current, 'optionalCall', _1393 => _1393()]),
53680
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1393 => _1393.current, 'optionalCall', _1394 => _1394()]),
53671
53681
  backoff: reconnectionBackoffRef.current,
53672
53682
  getFreshUrl: () => getNatsWsUrlRef.current(),
53673
53683
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -53682,7 +53692,7 @@ function useJetStreamDialogSubscription({
53682
53692
  setReconnectionCount((c) => c + 1);
53683
53693
  }
53684
53694
  hadConnectionBeforeRef.current = true;
53685
- _optionalChain([onConnectRef, 'access', _1394 => _1394.current, 'optionalCall', _1395 => _1395()]);
53695
+ _optionalChain([onConnectRef, 'access', _1395 => _1395.current, 'optionalCall', _1396 => _1396()]);
53686
53696
  }
53687
53697
  if (status === "error") {
53688
53698
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -53692,7 +53702,7 @@ function useJetStreamDialogSubscription({
53692
53702
  setIsConnected(false);
53693
53703
  setIsSubscribed(false);
53694
53704
  tearDownSubscription();
53695
- _optionalChain([onDisconnectRef, 'access', _1396 => _1396.current, 'optionalCall', _1397 => _1397()]);
53705
+ _optionalChain([onDisconnectRef, 'access', _1397 => _1397.current, 'optionalCall', _1398 => _1398()]);
53696
53706
  }
53697
53707
  }
53698
53708
  });
@@ -53821,7 +53831,7 @@ function useJetStreamDialogSubscription({
53821
53831
  }
53822
53832
  subscriptionRef.current = handle;
53823
53833
  setIsSubscribed(true);
53824
- _optionalChain([onSubscribedRef, 'access', _1398 => _1398.current, 'optionalCall', _1399 => _1399()]);
53834
+ _optionalChain([onSubscribedRef, 'access', _1399 => _1399.current, 'optionalCall', _1400 => _1400()]);
53825
53835
  } catch (e90) {
53826
53836
  if (!cancelled) {
53827
53837
  setIsSubscribed(false);
@@ -53935,20 +53945,20 @@ function useNatsDialogSubscription({
53935
53945
  const tearDownSubscriptions = () => {
53936
53946
  subscriptionRefs.current.forEach((sub) => {
53937
53947
  try {
53938
- _optionalChain([sub, 'optionalAccess', _1400 => _1400.unsubscribe, 'call', _1401 => _1401()]);
53948
+ _optionalChain([sub, 'optionalAccess', _1401 => _1401.unsubscribe, 'call', _1402 => _1402()]);
53939
53949
  } catch (e92) {
53940
53950
  }
53941
53951
  });
53942
53952
  subscriptionRefs.current.clear();
53943
53953
  lastSubscribedDialogIdRef.current = null;
53944
- _optionalChain([abortControllerRef, 'access', _1402 => _1402.current, 'optionalAccess', _1403 => _1403.abort, 'call', _1404 => _1404()]);
53954
+ _optionalChain([abortControllerRef, 'access', _1403 => _1403.current, 'optionalAccess', _1404 => _1404.abort, 'call', _1405 => _1405()]);
53945
53955
  abortControllerRef.current = null;
53946
53956
  };
53947
53957
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
53948
53958
  const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
53949
53959
  conn: sharedConn,
53950
53960
  wsUrl,
53951
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1405 => _1405.current, 'optionalCall', _1406 => _1406()]),
53961
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1406 => _1406.current, 'optionalCall', _1407 => _1407()]),
53952
53962
  backoff: reconnectionBackoffRef.current,
53953
53963
  getFreshUrl: () => getNatsWsUrlRef.current(),
53954
53964
  shouldRetryOn: isDisconnectStatus,
@@ -53959,7 +53969,7 @@ function useNatsDialogSubscription({
53959
53969
  setReconnectionCount((c) => c + 1);
53960
53970
  }
53961
53971
  hadConnectionBeforeRef.current = true;
53962
- _optionalChain([onConnectRef, 'access', _1407 => _1407.current, 'optionalCall', _1408 => _1408()]);
53972
+ _optionalChain([onConnectRef, 'access', _1408 => _1408.current, 'optionalCall', _1409 => _1409()]);
53963
53973
  }
53964
53974
  if (status === "error") {
53965
53975
  console.warn("[NATS] protocol error:", evt.data);
@@ -53969,7 +53979,7 @@ function useNatsDialogSubscription({
53969
53979
  setIsConnected(false);
53970
53980
  setIsSubscribed(false);
53971
53981
  tearDownSubscriptions();
53972
- _optionalChain([onDisconnectRef, 'access', _1409 => _1409.current, 'optionalCall', _1410 => _1410()]);
53982
+ _optionalChain([onDisconnectRef, 'access', _1410 => _1410.current, 'optionalCall', _1411 => _1411()]);
53973
53983
  }
53974
53984
  }
53975
53985
  });
@@ -54002,13 +54012,13 @@ function useNatsDialogSubscription({
54002
54012
  setIsSubscribed(false);
54003
54013
  subscriptionRefs.current.forEach((sub) => {
54004
54014
  try {
54005
- _optionalChain([sub, 'optionalAccess', _1411 => _1411.unsubscribe, 'call', _1412 => _1412()]);
54015
+ _optionalChain([sub, 'optionalAccess', _1412 => _1412.unsubscribe, 'call', _1413 => _1413()]);
54006
54016
  } catch (e93) {
54007
54017
  }
54008
54018
  });
54009
54019
  subscriptionRefs.current.clear();
54010
54020
  lastSubscribedDialogIdRef.current = null;
54011
- _optionalChain([abortControllerRef, 'access', _1413 => _1413.current, 'optionalAccess', _1414 => _1414.abort, 'call', _1415 => _1415()]);
54021
+ _optionalChain([abortControllerRef, 'access', _1414 => _1414.current, 'optionalAccess', _1415 => _1415.abort, 'call', _1416 => _1416()]);
54012
54022
  abortControllerRef.current = null;
54013
54023
  }
54014
54024
  return;
@@ -54020,12 +54030,12 @@ function useNatsDialogSubscription({
54020
54030
  if (subscriptionRefs.current.size > 0) {
54021
54031
  subscriptionRefs.current.forEach((sub) => {
54022
54032
  try {
54023
- _optionalChain([sub, 'optionalAccess', _1416 => _1416.unsubscribe, 'call', _1417 => _1417()]);
54033
+ _optionalChain([sub, 'optionalAccess', _1417 => _1417.unsubscribe, 'call', _1418 => _1418()]);
54024
54034
  } catch (e94) {
54025
54035
  }
54026
54036
  });
54027
54037
  subscriptionRefs.current.clear();
54028
- _optionalChain([abortControllerRef, 'access', _1418 => _1418.current, 'optionalAccess', _1419 => _1419.abort, 'call', _1420 => _1420()]);
54038
+ _optionalChain([abortControllerRef, 'access', _1419 => _1419.current, 'optionalAccess', _1420 => _1420.abort, 'call', _1421 => _1421()]);
54029
54039
  }
54030
54040
  abortControllerRef.current = new AbortController();
54031
54041
  const abort = abortControllerRef.current;
@@ -54057,7 +54067,7 @@ function useNatsDialogSubscription({
54057
54067
  });
54058
54068
  lastSubscribedDialogIdRef.current = dialogId;
54059
54069
  setIsSubscribed(true);
54060
- _optionalChain([onSubscribedRef, 'access', _1421 => _1421.current, 'optionalCall', _1422 => _1422()]);
54070
+ _optionalChain([onSubscribedRef, 'access', _1422 => _1422.current, 'optionalCall', _1423 => _1423()]);
54061
54071
  };
54062
54072
  if (isConnectedRef.current) {
54063
54073
  createSubscriptions();
@@ -54067,7 +54077,7 @@ function useNatsDialogSubscription({
54067
54077
  abort.abort();
54068
54078
  subscriptionRefs.current.forEach((sub) => {
54069
54079
  try {
54070
- _optionalChain([sub, 'optionalAccess', _1423 => _1423.unsubscribe, 'call', _1424 => _1424()]);
54080
+ _optionalChain([sub, 'optionalAccess', _1424 => _1424.unsubscribe, 'call', _1425 => _1425()]);
54071
54081
  } catch (e96) {
54072
54082
  }
54073
54083
  });
@@ -54108,7 +54118,7 @@ function useNatsDialogSubscription({
54108
54118
  });
54109
54119
  lastSubscribedDialogIdRef.current = dialogId2;
54110
54120
  setIsSubscribed(true);
54111
- _optionalChain([onSubscribedRef, 'access', _1425 => _1425.current, 'optionalCall', _1426 => _1426()]);
54121
+ _optionalChain([onSubscribedRef, 'access', _1426 => _1426.current, 'optionalCall', _1427 => _1427()]);
54112
54122
  } else if (subscriptionRefs.current.size > 0) {
54113
54123
  setIsSubscribed(true);
54114
54124
  }
@@ -54116,10 +54126,10 @@ function useNatsDialogSubscription({
54116
54126
  return { isConnected, isSubscribed, reconnectionCount };
54117
54127
  }
54118
54128
  function buildNatsWsUrl(apiBaseUrl, options) {
54119
- const path = _optionalChain([options, 'optionalAccess', _1427 => _1427.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
54129
+ const path = _optionalChain([options, 'optionalAccess', _1428 => _1428.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
54120
54130
  const u = new URL(path, apiBaseUrl);
54121
54131
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
54122
- if (_optionalChain([options, 'optionalAccess', _1428 => _1428.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1429 => _1429.token])) {
54132
+ if (_optionalChain([options, 'optionalAccess', _1429 => _1429.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1430 => _1430.token])) {
54123
54133
  u.searchParams.set("authorization", options.token);
54124
54134
  }
54125
54135
  return u.toString();
@@ -54137,7 +54147,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
54137
54147
  const data = await res.json();
54138
54148
  return _nullishCoalesce(data.commands, () => ( []));
54139
54149
  } catch (err) {
54140
- if (_optionalChain([err, 'optionalAccess', _1430 => _1430.name]) === "AbortError") throw err;
54150
+ if (_optionalChain([err, 'optionalAccess', _1431 => _1431.name]) === "AbortError") throw err;
54141
54151
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
54142
54152
  return [];
54143
54153
  }
@@ -54158,7 +54168,7 @@ function useSlashCommands(prefix, commandsUrl) {
54158
54168
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
54159
54169
  if (!cancelled) setCommands(next);
54160
54170
  } catch (err) {
54161
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1431 => _1431.name]) !== "AbortError") {
54171
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1432 => _1432.name]) !== "AbortError") {
54162
54172
  console.warn("[use-slash-commands] fetch failed:", err);
54163
54173
  }
54164
54174
  } finally {
@@ -54177,7 +54187,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
54177
54187
  const query = _reactquery.useQuery.call(void 0, {
54178
54188
  queryKey: ["chat-slash-commands", commandsUrl],
54179
54189
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
54180
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1432 => _1432.enabled]), () => ( true)),
54190
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1433 => _1433.enabled]), () => ( true)),
54181
54191
  staleTime: Infinity,
54182
54192
  gcTime: Infinity,
54183
54193
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -54216,21 +54226,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
54216
54226
  }
54217
54227
  const data = await res.json();
54218
54228
  return {
54219
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1433 => _1433.name]), () => ( null)),
54220
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1434 => _1434.icon]), () => ( null)),
54221
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1435 => _1435.greeting]), () => ( null)),
54222
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1436 => _1436.enabledRagTableIds]), () => ( [])),
54223
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1437 => _1437.quickActions]), () => ( [])),
54224
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1438 => _1438.suggestedQueries]), () => ( []))
54229
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1434 => _1434.name]), () => ( null)),
54230
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1435 => _1435.icon]), () => ( null)),
54231
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1436 => _1436.greeting]), () => ( null)),
54232
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1437 => _1437.enabledRagTableIds]), () => ( [])),
54233
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1438 => _1438.quickActions]), () => ( [])),
54234
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1439 => _1439.suggestedQueries]), () => ( []))
54225
54235
  };
54226
54236
  } catch (err) {
54227
- if (_optionalChain([err, 'optionalAccess', _1439 => _1439.name]) === "AbortError") throw err;
54237
+ if (_optionalChain([err, 'optionalAccess', _1440 => _1440.name]) === "AbortError") throw err;
54228
54238
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
54229
54239
  return EMPTY_STATE_FALLBACK;
54230
54240
  }
54231
54241
  }
54232
54242
  function useEmptyStateConfig(emptyStateUrl, options) {
54233
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1440 => _1440.enabled]), () => ( true))) && !!emptyStateUrl;
54243
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1441 => _1441.enabled]), () => ( true))) && !!emptyStateUrl;
54234
54244
  const query = _reactquery.useQuery.call(void 0, {
54235
54245
  queryKey: ["chat-empty-state", emptyStateUrl],
54236
54246
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -54259,7 +54269,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
54259
54269
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
54260
54270
  function uploadWithProgress(url, file, token, onProgress, signal) {
54261
54271
  return new Promise((resolve, reject) => {
54262
- if (_optionalChain([signal, 'optionalAccess', _1441 => _1441.aborted])) {
54272
+ if (_optionalChain([signal, 'optionalAccess', _1442 => _1442.aborted])) {
54263
54273
  reject(new Error("Upload cancelled"));
54264
54274
  return;
54265
54275
  }
@@ -54273,7 +54283,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
54273
54283
  xhr.removeEventListener("error", handleError);
54274
54284
  xhr.removeEventListener("abort", handleAbort);
54275
54285
  xhr.removeEventListener("timeout", handleTimeout);
54276
- _optionalChain([signal, 'optionalAccess', _1442 => _1442.removeEventListener, 'call', _1443 => _1443("abort", handleSignalAbort)]);
54286
+ _optionalChain([signal, 'optionalAccess', _1443 => _1443.removeEventListener, 'call', _1444 => _1444("abort", handleSignalAbort)]);
54277
54287
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
54278
54288
  };
54279
54289
  const handleProgress = (event) => {
@@ -54309,7 +54319,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
54309
54319
  const handleSignalAbort = () => {
54310
54320
  xhr.abort();
54311
54321
  };
54312
- _optionalChain([signal, 'optionalAccess', _1444 => _1444.addEventListener, 'call', _1445 => _1445("abort", handleSignalAbort, { once: true })]);
54322
+ _optionalChain([signal, 'optionalAccess', _1445 => _1445.addEventListener, 'call', _1446 => _1446("abort", handleSignalAbort, { once: true })]);
54313
54323
  xhr.upload.addEventListener("progress", handleProgress);
54314
54324
  xhr.addEventListener("load", handleLoad);
54315
54325
  xhr.addEventListener("error", handleError);
@@ -54353,12 +54363,12 @@ function useChatAttachments() {
54353
54363
  try {
54354
54364
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
54355
54365
  } catch (err) {
54356
- if (_optionalChain([ctrl, 'optionalAccess', _1446 => _1446.signal, 'access', _1447 => _1447.aborted])) return;
54366
+ if (_optionalChain([ctrl, 'optionalAccess', _1447 => _1447.signal, 'access', _1448 => _1448.aborted])) return;
54357
54367
  throw new Error(
54358
54368
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
54359
54369
  );
54360
54370
  }
54361
- if (_optionalChain([ctrl, 'optionalAccess', _1448 => _1448.signal, 'access', _1449 => _1449.aborted])) return;
54371
+ if (_optionalChain([ctrl, 'optionalAccess', _1449 => _1449.signal, 'access', _1450 => _1450.aborted])) return;
54362
54372
  if (!sniffed) {
54363
54373
  throw new Error("Unrecognized file format");
54364
54374
  }
@@ -54372,7 +54382,7 @@ function useChatAttachments() {
54372
54382
  const urlResp = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
54373
54383
  method: "POST",
54374
54384
  headers: { "Content-Type": "application/json" },
54375
- signal: _optionalChain([ctrl, 'optionalAccess', _1450 => _1450.signal]),
54385
+ signal: _optionalChain([ctrl, 'optionalAccess', _1451 => _1451.signal]),
54376
54386
  body: JSON.stringify({
54377
54387
  fileName: att.file.name,
54378
54388
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -54398,9 +54408,9 @@ function useChatAttachments() {
54398
54408
  (pct) => {
54399
54409
  updateOne(att.id, { progress: pct });
54400
54410
  },
54401
- _optionalChain([ctrl, 'optionalAccess', _1451 => _1451.signal])
54411
+ _optionalChain([ctrl, 'optionalAccess', _1452 => _1452.signal])
54402
54412
  );
54403
- if (_optionalChain([ctrl, 'optionalAccess', _1452 => _1452.signal, 'access', _1453 => _1453.aborted])) return;
54413
+ if (_optionalChain([ctrl, 'optionalAccess', _1453 => _1453.signal, 'access', _1454 => _1454.aborted])) return;
54404
54414
  updateOne(att.id, {
54405
54415
  status: "ready",
54406
54416
  progress: 100,
@@ -54408,7 +54418,7 @@ function useChatAttachments() {
54408
54418
  viewToken: mintData.viewToken
54409
54419
  });
54410
54420
  } catch (err) {
54411
- if (_optionalChain([ctrl, 'optionalAccess', _1454 => _1454.signal, 'access', _1455 => _1455.aborted])) return;
54421
+ if (_optionalChain([ctrl, 'optionalAccess', _1455 => _1455.signal, 'access', _1456 => _1456.aborted])) return;
54412
54422
  const message2 = err instanceof Error ? err.message : String(err);
54413
54423
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
54414
54424
  } finally {
@@ -54595,7 +54605,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
54595
54605
  yield chunk;
54596
54606
  }
54597
54607
  } catch (err) {
54598
- if (_optionalChain([err, 'optionalAccess', _1456 => _1456.name]) === "AbortError" || ctrl.signal.aborted) {
54608
+ if (_optionalChain([err, 'optionalAccess', _1457 => _1457.name]) === "AbortError" || ctrl.signal.aborted) {
54599
54609
  return;
54600
54610
  }
54601
54611
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -54646,7 +54656,7 @@ function useChat({
54646
54656
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
54647
54657
  onMessagesChangeRef.current = onMessagesChange;
54648
54658
  _react.useEffect.call(void 0, () => {
54649
- _optionalChain([onMessagesChangeRef, 'access', _1457 => _1457.current, 'optionalCall', _1458 => _1458(messages)]);
54659
+ _optionalChain([onMessagesChangeRef, 'access', _1458 => _1458.current, 'optionalCall', _1459 => _1459(messages)]);
54650
54660
  }, [messages]);
54651
54661
  const {
54652
54662
  streamMessage,
@@ -54683,7 +54693,7 @@ function useChat({
54683
54693
  name: "You",
54684
54694
  content: text,
54685
54695
  timestamp: /* @__PURE__ */ new Date(),
54686
- ..._optionalChain([options, 'optionalAccess', _1459 => _1459.hidden]) ? { hidden: true } : {}
54696
+ ..._optionalChain([options, 'optionalAccess', _1460 => _1460.hidden]) ? { hidden: true } : {}
54687
54697
  };
54688
54698
  addMessage(userMessage);
54689
54699
  setIsTyping(true);
@@ -54745,7 +54755,7 @@ function useChat({
54745
54755
  currentTextSegment = "";
54746
54756
  }
54747
54757
  const seg = segment;
54748
- const proposalId = _optionalChain([seg, 'access', _1460 => _1460.data, 'optionalAccess', _1461 => _1461.requestId]);
54758
+ const proposalId = _optionalChain([seg, 'access', _1461 => _1461.data, 'optionalAccess', _1462 => _1462.requestId]);
54749
54759
  const updateApprovalMessage = (transform) => {
54750
54760
  setMessages((prev) => {
54751
54761
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -54754,7 +54764,7 @@ function useChat({
54754
54764
  if (!Array.isArray(m.content)) continue;
54755
54765
  const segments = m.content;
54756
54766
  const hasMatch = segments.some(
54757
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1462 => _1462.data, 'optionalAccess', _1463 => _1463.requestId]) === proposalId
54767
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1463 => _1463.data, 'optionalAccess', _1464 => _1464.requestId]) === proposalId
54758
54768
  );
54759
54769
  if (!hasMatch) continue;
54760
54770
  const next = [...prev];
@@ -54796,11 +54806,11 @@ function useChat({
54796
54806
  if (!Array.isArray(m.content)) continue;
54797
54807
  const segments = m.content;
54798
54808
  const hasMatch = segments.some(
54799
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1464 => _1464.data, 'optionalAccess', _1465 => _1465.requestId]) === decision.proposalId
54809
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1465 => _1465.data, 'optionalAccess', _1466 => _1466.requestId]) === decision.proposalId
54800
54810
  );
54801
54811
  if (!hasMatch) continue;
54802
54812
  const flipped = segments.map(
54803
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1466 => _1466.data, 'optionalAccess', _1467 => _1467.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
54813
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1467 => _1467.data, 'optionalAccess', _1468 => _1468.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
54804
54814
  );
54805
54815
  const next = [...prev];
54806
54816
  next[i] = { ...m, content: flipped };
@@ -54928,7 +54938,7 @@ function buildConfirmToolBody(request) {
54928
54938
  async function readServerErrorMessage(response) {
54929
54939
  try {
54930
54940
  const body = await response.json();
54931
- if (typeof _optionalChain([body, 'optionalAccess', _1468 => _1468.error]) === "string" && body.error.length > 0) return body.error;
54941
+ if (typeof _optionalChain([body, 'optionalAccess', _1469 => _1469.error]) === "string" && body.error.length > 0) return body.error;
54932
54942
  } catch (e98) {
54933
54943
  }
54934
54944
  return null;
@@ -55149,7 +55159,7 @@ var STORAGE_KEY2 = "conversation";
55149
55159
  var namespaceFor = (source) => {
55150
55160
  const base = `mingo-chat-${source}`;
55151
55161
  const auth = _chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, );
55152
- return _optionalChain([auth, 'optionalAccess', _1469 => _1469.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
55162
+ return _optionalChain([auth, 'optionalAccess', _1470 => _1470.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
55153
55163
  };
55154
55164
  function createChatConversationStorage(source) {
55155
55165
  return _chunk5RJUHUCIcjs.createLocalStorageAdapter.call(void 0, {
@@ -55211,8 +55221,8 @@ function useChatHistoryHydration({
55211
55221
  );
55212
55222
  if (!res.ok) return;
55213
55223
  const payload = await res.json().catch(() => null);
55214
- const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess', _1470 => _1470.data]), () => ( payload));
55215
- const rows = Array.isArray(_optionalChain([body, 'optionalAccess', _1471 => _1471.messages])) ? body.messages : [];
55224
+ const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess', _1471 => _1471.data]), () => ( payload));
55225
+ const rows = Array.isArray(_optionalChain([body, 'optionalAccess', _1472 => _1472.messages])) ? body.messages : [];
55216
55226
  if (cancelled || rows.length === 0) return;
55217
55227
  const hydrated = [];
55218
55228
  const sourcesSeed = /* @__PURE__ */ new Map();
@@ -55319,11 +55329,11 @@ function appendToTrailingAssistant(prev, segments) {
55319
55329
  for (const seg of segments) {
55320
55330
  const tail = merged[merged.length - 1];
55321
55331
  const key = upsertKey(seg);
55322
- if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1472 => _1472.type]) === "text") {
55332
+ if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1473 => _1473.type]) === "text") {
55323
55333
  merged[merged.length - 1] = { type: "text", text: tail.text + seg.text };
55324
- } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1473 => _1473.type]) === "thinking") {
55334
+ } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1474 => _1474.type]) === "thinking") {
55325
55335
  merged[merged.length - 1] = { type: "thinking", text: tail.text + seg.text };
55326
- } else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess', _1474 => _1474.type]) === "guide") {
55336
+ } else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess', _1475 => _1475.type]) === "guide") {
55327
55337
  merged[merged.length - 1] = { type: "guide", text: tail.text + seg.text };
55328
55338
  } else if (key) {
55329
55339
  const idx = merged.findIndex((m) => upsertKey(m) === key);
@@ -55363,7 +55373,7 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
55363
55373
  }
55364
55374
  if (s.type !== "approval_batch") return s;
55365
55375
  const isAnchor = s.data.approvalRequestId === requestId;
55366
- const hasRow = _optionalChain([s, 'access', _1475 => _1475.data, 'access', _1476 => _1476.toolCalls, 'optionalAccess', _1477 => _1477.some, 'call', _1478 => _1478((c) => c.toolExecutionRequestId === requestId)]);
55376
+ const hasRow = _optionalChain([s, 'access', _1476 => _1476.data, 'access', _1477 => _1477.toolCalls, 'optionalAccess', _1478 => _1478.some, 'call', _1479 => _1479((c) => c.toolExecutionRequestId === requestId)]);
55367
55377
  if (!isAnchor && !hasRow) return s;
55368
55378
  const nextResolvedBy = _nullishCoalesce(resolvedByName, () => ( s.resolvedByName));
55369
55379
  const nextExecutions = hasRow ? {
@@ -55385,8 +55395,8 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
55385
55395
  };
55386
55396
  }
55387
55397
  function nextBatchExecution(prevExec, toolData) {
55388
- if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1479 => _1479.status]) === "done") return null;
55389
- return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1480 => _1480.result]), success: _optionalChain([prevExec, 'optionalAccess', _1481 => _1481.success]) };
55398
+ if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1480 => _1480.status]) === "done") return null;
55399
+ return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1481 => _1481.result]), success: _optionalChain([prevExec, 'optionalAccess', _1482 => _1482.success]) };
55390
55400
  }
55391
55401
  function withBatchExecution(seg, execId, state) {
55392
55402
  return {
@@ -55403,11 +55413,11 @@ function projectBatchStatusToMessages(prev, anchorId, status) {
55403
55413
  }
55404
55414
  function projectBatchRowFailureToMessages(prev, rowRequestId) {
55405
55415
  return mapSegments(prev, (s) => {
55406
- if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _1482 => _1482.data, 'access', _1483 => _1483.toolCalls, 'optionalAccess', _1484 => _1484.some, 'call', _1485 => _1485((c) => c.toolExecutionRequestId === rowRequestId)])) {
55416
+ if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _1483 => _1483.data, 'access', _1484 => _1484.toolCalls, 'optionalAccess', _1485 => _1485.some, 'call', _1486 => _1486((c) => c.toolExecutionRequestId === rowRequestId)])) {
55407
55417
  return s;
55408
55418
  }
55409
- const existing = _optionalChain([s, 'access', _1486 => _1486.data, 'access', _1487 => _1487.executions, 'optionalAccess', _1488 => _1488[rowRequestId]]);
55410
- if (_optionalChain([existing, 'optionalAccess', _1489 => _1489.status]) === "done") return s;
55419
+ const existing = _optionalChain([s, 'access', _1487 => _1487.data, 'access', _1488 => _1488.executions, 'optionalAccess', _1489 => _1489[rowRequestId]]);
55420
+ if (_optionalChain([existing, 'optionalAccess', _1490 => _1490.status]) === "done") return s;
55411
55421
  return withBatchExecution(s, rowRequestId, { status: "done", success: false });
55412
55422
  });
55413
55423
  }
@@ -55446,7 +55456,7 @@ function mergeToolExecutionIfPresent(prev, segment) {
55446
55456
  for (let j = message2.segments.length - 1; j >= 0; j--) {
55447
55457
  const seg = message2.segments[j];
55448
55458
  if (execId && seg.type === "approval_batch" && seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId)) {
55449
- const prevExec = _optionalChain([seg, 'access', _1490 => _1490.data, 'access', _1491 => _1491.executions, 'optionalAccess', _1492 => _1492[execId]]);
55459
+ const prevExec = _optionalChain([seg, 'access', _1491 => _1491.data, 'access', _1492 => _1492.executions, 'optionalAccess', _1493 => _1493[execId]]);
55450
55460
  const nextExec = nextBatchExecution(prevExec, toolData);
55451
55461
  if (nextExec === null) return prev;
55452
55462
  if (sameExecutionState(prevExec, nextExec)) return prev;
@@ -55635,9 +55645,9 @@ var MessageSegmentAccumulator = class {
55635
55645
  type: "tool_execution",
55636
55646
  data: {
55637
55647
  ...toolData,
55638
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1493 => _1493.data, 'access', _1494 => _1494.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1495 => _1495.toolTitle]))),
55639
- toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1496 => _1496.data, 'access', _1497 => _1497.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1498 => _1498.toolExplanation]))),
55640
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1499 => _1499.parameters])
55648
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1494 => _1494.data, 'access', _1495 => _1495.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1496 => _1496.toolTitle]))),
55649
+ toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1497 => _1497.data, 'access', _1498 => _1498.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1499 => _1499.toolExplanation]))),
55650
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1500 => _1500.parameters])
55641
55651
  }
55642
55652
  };
55643
55653
  if (existingIndex !== -1) {
@@ -55661,7 +55671,7 @@ var MessageSegmentAccumulator = class {
55661
55671
  if (seg.type !== "approval_batch") return seg;
55662
55672
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
55663
55673
  if (!hasCall) return seg;
55664
- const prev = _optionalChain([seg, 'access', _1500 => _1500.data, 'access', _1501 => _1501.executions, 'optionalAccess', _1502 => _1502[execId]]);
55674
+ const prev = _optionalChain([seg, 'access', _1501 => _1501.data, 'access', _1502 => _1502.executions, 'optionalAccess', _1503 => _1503[execId]]);
55665
55675
  const next = nextBatchExecution(prev, toolData);
55666
55676
  matched = true;
55667
55677
  if (next === null) return seg;
@@ -55803,8 +55813,8 @@ var MessageSegmentAccumulator = class {
55803
55813
  requestId,
55804
55814
  {
55805
55815
  ...pendingApproval,
55806
- command: _optionalChain([pendingApproval, 'optionalAccess', _1503 => _1503.command]) || "",
55807
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1504 => _1504.approvalType]) || approvalType
55816
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1504 => _1504.command]) || "",
55817
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1505 => _1505.approvalType]) || approvalType
55808
55818
  },
55809
55819
  status
55810
55820
  );
@@ -55829,9 +55839,9 @@ var MessageSegmentAccumulator = class {
55829
55839
  type: "escalation_offer",
55830
55840
  // The resolved chunk carries no text/origin — a redelivered offer must
55831
55841
  // not blank the card the PENDING chunk already painted.
55832
- data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _1505 => _1505.data, 'access', _1506 => _1506.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _1507 => _1507.data, 'access', _1508 => _1508.origin]))) },
55842
+ data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _1506 => _1506.data, 'access', _1507 => _1507.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _1508 => _1508.data, 'access', _1509 => _1509.origin]))) },
55833
55843
  status,
55834
- resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _1509 => _1509.resolvedByName]))),
55844
+ resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _1510 => _1510.resolvedByName]))),
55835
55845
  onApprove: this.callbacks.onEscalationApprove,
55836
55846
  onReject: this.callbacks.onEscalationReject
55837
55847
  };
@@ -56047,7 +56057,7 @@ function createMessageSegmentAccumulator(callbacks) {
56047
56057
  // src/chat-protocol/events.ts
56048
56058
  var GUIDE_ORIGIN = "guide";
56049
56059
  function isGuideOrigin(source) {
56050
- return _optionalChain([source, 'optionalAccess', _1510 => _1510.origin]) === GUIDE_ORIGIN;
56060
+ return _optionalChain([source, 'optionalAccess', _1511 => _1511.origin]) === GUIDE_ORIGIN;
56051
56061
  }
56052
56062
  var ESCALATION_STATE = {
56053
56063
  PENDING: "PENDING",
@@ -56170,7 +56180,7 @@ function createChatStreamReducer(options = {}) {
56170
56180
  let stateCache = null;
56171
56181
  function invalidate() {
56172
56182
  stateCache = null;
56173
- _optionalChain([onChange, 'optionalCall', _1511 => _1511()]);
56183
+ _optionalChain([onChange, 'optionalCall', _1512 => _1512()]);
56174
56184
  }
56175
56185
  function getState() {
56176
56186
  if (!stateCache) {
@@ -56187,7 +56197,7 @@ function createChatStreamReducer(options = {}) {
56187
56197
  return stateCache;
56188
56198
  }
56189
56199
  function emit(name, ...args) {
56190
- _optionalChain([onEffect, 'optionalCall', _1512 => _1512({ name, args })]);
56200
+ _optionalChain([onEffect, 'optionalCall', _1513 => _1513({ name, args })]);
56191
56201
  }
56192
56202
  function setMessagesInternal(next) {
56193
56203
  if (next !== messages) {
@@ -56218,12 +56228,12 @@ function createChatStreamReducer(options = {}) {
56218
56228
  return [...next.slice(0, -1), { ...last, streamSeq: seq }];
56219
56229
  }
56220
56230
  function applySegmentsToState(segments, meta) {
56221
- const seq = _optionalChain([meta, 'optionalAccess', _1513 => _1513.streamSeq]);
56222
- if (_optionalChain([meta, 'optionalAccess', _1514 => _1514.append]) && meta.isCompacting) {
56231
+ const seq = _optionalChain([meta, 'optionalAccess', _1514 => _1514.streamSeq]);
56232
+ if (_optionalChain([meta, 'optionalAccess', _1515 => _1515.append]) && meta.isCompacting) {
56223
56233
  setMessagesInternal(stampTrailingAssistantSeq(upsertTrailingCompaction(messages, segments), seq));
56224
56234
  return;
56225
56235
  }
56226
- if (_optionalChain([meta, 'optionalAccess', _1515 => _1515.append])) {
56236
+ if (_optionalChain([meta, 'optionalAccess', _1516 => _1516.append])) {
56227
56237
  setMessagesInternal(stampTrailingAssistantSeq(appendToTrailingAssistant(messages, segments), seq));
56228
56238
  return;
56229
56239
  }
@@ -56235,7 +56245,7 @@ function createChatStreamReducer(options = {}) {
56235
56245
  adoptTrailingAssistant = false;
56236
56246
  const last = messages[messages.length - 1];
56237
56247
  if (!last || last.role !== "assistant" || adoptTail) return;
56238
- const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access', _1516 => _1516.segments, 'optionalAccess', _1517 => _1517.length]), () => ( 0))) > 0 || last.content !== "";
56248
+ const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access', _1517 => _1517.segments, 'optionalAccess', _1518 => _1518.length]), () => ( 0))) > 0 || last.content !== "";
56239
56249
  if (!hasContent2) return;
56240
56250
  setMessagesInternal([
56241
56251
  ...messages,
@@ -56463,13 +56473,13 @@ function createChatStreamReducer(options = {}) {
56463
56473
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
56464
56474
  pendingEscalated.set(requestId, {
56465
56475
  command: summary,
56466
- explanation: _optionalChain([required, 'optionalAccess', _1518 => _1518.toolExplanation]),
56476
+ explanation: _optionalChain([required, 'optionalAccess', _1519 => _1519.toolExplanation]),
56467
56477
  approvalType,
56468
56478
  toolCalls
56469
56479
  });
56470
56480
  emit("onEscalatedApproval", requestId, {
56471
56481
  command: summary,
56472
- explanation: _optionalChain([required, 'optionalAccess', _1519 => _1519.toolExplanation]),
56482
+ explanation: _optionalChain([required, 'optionalAccess', _1520 => _1520.toolExplanation]),
56473
56483
  approvalType
56474
56484
  });
56475
56485
  break;
@@ -56658,7 +56668,7 @@ function createChatStreamReducer(options = {}) {
56658
56668
  let message2;
56659
56669
  if (event.details) {
56660
56670
  try {
56661
- message2 = _optionalChain([JSON, 'access', _1520 => _1520.parse, 'call', _1521 => _1521(event.details), 'optionalAccess', _1522 => _1522.error, 'optionalAccess', _1523 => _1523.message]);
56671
+ message2 = _optionalChain([JSON, 'access', _1521 => _1521.parse, 'call', _1522 => _1522(event.details), 'optionalAccess', _1523 => _1523.error, 'optionalAccess', _1524 => _1524.message]);
56662
56672
  } catch (e103) {
56663
56673
  message2 = event.details;
56664
56674
  }
@@ -56875,7 +56885,7 @@ function createChatStreamReducer(options = {}) {
56875
56885
  const resolveBatch = (status, confirm) => async () => {
56876
56886
  setMessagesInternal(projectBatchStatusToMessages(messages, anchorId, status));
56877
56887
  for (const id of ids) {
56878
- const ok = await _optionalChain([confirm, 'optionalCall', _1524 => _1524(id)]);
56888
+ const ok = await _optionalChain([confirm, 'optionalCall', _1525 => _1525(id)]);
56879
56889
  if (ok === false) {
56880
56890
  setMessagesInternal(projectBatchRowFailureToMessages(messages, id));
56881
56891
  }
@@ -57018,8 +57028,8 @@ function createChatStreamReducer(options = {}) {
57018
57028
  }
57019
57029
  }
57020
57030
  }
57021
- hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _1525 => _1525.resumed]), () => ( messages.length > 0)));
57022
- if (_optionalChain([extras, 'optionalAccess', _1526 => _1526.agentBusy])) agentBusyState();
57031
+ hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _1526 => _1526.resumed]), () => ( messages.length > 0)));
57032
+ if (_optionalChain([extras, 'optionalAccess', _1527 => _1527.agentBusy])) agentBusyState();
57023
57033
  invalidate();
57024
57034
  }
57025
57035
  return {
@@ -57104,7 +57114,7 @@ function createChatStreamReducer(options = {}) {
57104
57114
  },
57105
57115
  endSseTurn() {
57106
57116
  const last = messages[messages.length - 1];
57107
- if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _1527 => _1527.segments, 'optionalAccess', _1528 => _1528.length]), () => ( 0))) === 0 && last.content === "") {
57117
+ if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _1528 => _1528.segments, 'optionalAccess', _1529 => _1529.length]), () => ( 0))) === 0 && last.content === "") {
57108
57118
  messages = messages.slice(0, -1);
57109
57119
  }
57110
57120
  sseCurrentText = "";
@@ -57258,10 +57268,10 @@ function createChatDialogStore(options = {}) {
57258
57268
  if (onEvict) {
57259
57269
  const sep = key.indexOf(KEY_SEP);
57260
57270
  onEvict(key.slice(0, sep), key.slice(sep + 1), {
57261
- messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1529 => _1529.state, 'access', _1530 => _1530.messages]), () => ( EMPTY_STATE.messages)),
57262
- approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1531 => _1531.state, 'access', _1532 => _1532.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
57263
- lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1533 => _1533.getLastAppliedSeq, 'call', _1534 => _1534()]), () => ( Number.NEGATIVE_INFINITY)),
57264
- pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1535 => _1535.getPendingEchoes, 'call', _1536 => _1536()]), () => ( EMPTY_PENDING_ECHOES))
57271
+ messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1530 => _1530.state, 'access', _1531 => _1531.messages]), () => ( EMPTY_STATE.messages)),
57272
+ approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1532 => _1532.state, 'access', _1533 => _1533.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
57273
+ lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1534 => _1534.getLastAppliedSeq, 'call', _1535 => _1535()]), () => ( Number.NEGATIVE_INFINITY)),
57274
+ pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1536 => _1536.getPendingEchoes, 'call', _1537 => _1537()]), () => ( EMPTY_PENDING_ECHOES))
57265
57275
  });
57266
57276
  }
57267
57277
  }
@@ -57271,12 +57281,12 @@ function createChatDialogStore(options = {}) {
57271
57281
  const key = keyOf(dialogId, side);
57272
57282
  let reducer2 = reducers.get(key);
57273
57283
  if (!reducer2) {
57274
- const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _1537 => _1537(dialogId, side)]), () => ( {}));
57284
+ const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _1538 => _1538(dialogId, side)]), () => ( {}));
57275
57285
  const userOnChange = base.onChange;
57276
57286
  reducer2 = createChatStreamReducer({
57277
57287
  ...base,
57278
57288
  onChange: () => {
57279
- _optionalChain([userOnChange, 'optionalCall', _1538 => _1538()]);
57289
+ _optionalChain([userOnChange, 'optionalCall', _1539 => _1539()]);
57280
57290
  notify();
57281
57291
  }
57282
57292
  });
@@ -57321,7 +57331,7 @@ function createChatDialogStore(options = {}) {
57321
57331
  };
57322
57332
  }
57323
57333
  function getSnapshot(dialogId, side = DEFAULT_DIALOG_SIDE) {
57324
- return _nullishCoalesce(_optionalChain([reducers, 'access', _1539 => _1539.get, 'call', _1540 => _1540(keyOf(dialogId, side)), 'optionalAccess', _1541 => _1541.state]), () => ( EMPTY_STATE));
57334
+ return _nullishCoalesce(_optionalChain([reducers, 'access', _1540 => _1540.get, 'call', _1541 => _1541(keyOf(dialogId, side)), 'optionalAccess', _1542 => _1542.state]), () => ( EMPTY_STATE));
57325
57335
  }
57326
57336
  function getServerSnapshot() {
57327
57337
  return EMPTY_STATE;
@@ -57413,7 +57423,7 @@ function createDeltaBatcher({
57413
57423
  pending = [];
57414
57424
  const key = pendingKey;
57415
57425
  for (const delta of batch) applyOne(delta, key);
57416
- _optionalChain([onFlushed, 'optionalCall', _1542 => _1542(batch.length)]);
57426
+ _optionalChain([onFlushed, 'optionalCall', _1543 => _1543(batch.length)]);
57417
57427
  }
57418
57428
  function schedule() {
57419
57429
  if (raf !== null || timer !== null) return;
@@ -57437,7 +57447,7 @@ function createDeltaBatcher({
57437
57447
  }
57438
57448
  if (!isDeltaEvent(event)) return false;
57439
57449
  const tail = pending[pending.length - 1];
57440
- const seqAdvances = _optionalChain([tail, 'optionalAccess', _1543 => _1543.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
57450
+ const seqAdvances = _optionalChain([tail, 'optionalAccess', _1544 => _1544.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
57441
57451
  if (tail && seqAdvances && tail.type === event.type && (tail.type !== "text-delta" || tail.leading === event.leading)) {
57442
57452
  pending[pending.length - 1] = {
57443
57453
  ...tail,
@@ -57470,7 +57480,7 @@ function useChatStreamReducer({
57470
57480
  }) {
57471
57481
  const optionsRef = _react.useRef.call(void 0, createReducerOptions);
57472
57482
  optionsRef.current = createReducerOptions;
57473
- const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1544 => _1544.current, 'optionalCall', _1545 => _1545()]), () => ( {})));
57483
+ const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1545 => _1545.current, 'optionalCall', _1546 => _1546()]), () => ( {})));
57474
57484
  const getSnapshot = _react.useCallback.call(void 0, () => store.getSnapshot(dialogId, side), [store, dialogId, side]);
57475
57485
  const getServerSnapshot = _react.useCallback.call(void 0, () => store.getServerSnapshot(), [store]);
57476
57486
  const subscribe = _react.useCallback.call(void 0, (listener) => store.subscribe(listener), [store]);
@@ -57530,7 +57540,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57530
57540
  const { active = true } = runtimeOptions;
57531
57541
  const runtime = _chunk7OPWSWEJcjs.useRequiredChatRuntime.call(void 0, );
57532
57542
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
57533
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1546 => _1546.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57543
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1547 => _1547.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57534
57544
  const sendMessageRef = _react.useRef.call(void 0, async () => true);
57535
57545
  const cardResolve = _react.useCallback.call(void 0,
57536
57546
  (action) => (reqId) => {
@@ -57565,7 +57575,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57565
57575
  if (!restoredConversationRef.current) {
57566
57576
  restoredConversationRef.current = true;
57567
57577
  pruneStaleChatConversationStorage(source);
57568
- conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1547 => _1547.load, 'call', _1548 => _1548(), 'optionalAccess', _1549 => _1549.conversationId]), () => ( null));
57578
+ conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1548 => _1548.load, 'call', _1549 => _1549(), 'optionalAccess', _1550 => _1550.conversationId]), () => ( null));
57569
57579
  }
57570
57580
  const commandsUrl = runtime.endpoints.commandsUrl;
57571
57581
  const { commands: slashCommands } = useSlashCommandRegistry(commandsUrl, {
@@ -57672,7 +57682,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57672
57682
  const serverMessage = await readServerErrorMessage(response);
57673
57683
  throw new Error(_nullishCoalesce(serverMessage, () => ( `Chat request failed: ${response.status}`)));
57674
57684
  }
57675
- const reader = _optionalChain([response, 'access', _1550 => _1550.body, 'optionalAccess', _1551 => _1551.getReader, 'call', _1552 => _1552()]);
57685
+ const reader = _optionalChain([response, 'access', _1551 => _1551.body, 'optionalAccess', _1552 => _1552.getReader, 'call', _1553 => _1553()]);
57676
57686
  if (!reader) throw new Error("No response body");
57677
57687
  const frameDecoder = createSseFrameDecoder();
57678
57688
  let finished = false;
@@ -57695,7 +57705,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57695
57705
  }
57696
57706
  return true;
57697
57707
  } catch (err) {
57698
- if (_optionalChain([err, 'optionalAccess', _1553 => _1553.name]) === "AbortError" || ctrl.signal.aborted) {
57708
+ if (_optionalChain([err, 'optionalAccess', _1554 => _1554.name]) === "AbortError" || ctrl.signal.aborted) {
57699
57709
  return true;
57700
57710
  }
57701
57711
  flushDeltas();
@@ -57717,7 +57727,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57717
57727
  );
57718
57728
  sendMessageRef.current = sendMessage;
57719
57729
  const stopMessage = _react.useCallback.call(void 0, () => {
57720
- _optionalChain([abortControllerRef, 'access', _1554 => _1554.current, 'optionalAccess', _1555 => _1555.abort, 'call', _1556 => _1556()]);
57730
+ _optionalChain([abortControllerRef, 'access', _1555 => _1555.current, 'optionalAccess', _1556 => _1556.abort, 'call', _1557 => _1557()]);
57721
57731
  flushDeltas();
57722
57732
  mutate((r) => r.setPhase("idle"));
57723
57733
  }, [mutate, flushDeltas]);
@@ -57733,7 +57743,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57733
57743
  let sendIdx = -1;
57734
57744
  return state.messages.map((m) => {
57735
57745
  const segments = m.segments;
57736
- const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1557 => _1557.filter, 'call', _1558 => _1558((s) => s.type === "text"), 'access', _1559 => _1559.map, 'call', _1560 => _1560((s) => s.text), 'access', _1561 => _1561.join, 'call', _1562 => _1562("")]), () => ( ""));
57746
+ const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1558 => _1558.filter, 'call', _1559 => _1559((s) => s.type === "text"), 'access', _1560 => _1560.map, 'call', _1561 => _1561((s) => s.text), 'access', _1562 => _1562.join, 'call', _1563 => _1563("")]), () => ( ""));
57737
57747
  let sources;
57738
57748
  let scrollAnchor;
57739
57749
  if (m.role === "user" && !m.hidden) {
@@ -57742,7 +57752,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57742
57752
  if (m.role === "assistant") {
57743
57753
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
57744
57754
  sources = sourcesMap.get(lookupIdx);
57745
- scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1563 => _1563.get, 'call', _1564 => _1564(lookupIdx), 'optionalAccess', _1565 => _1565.scrollAnchor]), () => ( void 0));
57755
+ scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1564 => _1564.get, 'call', _1565 => _1565(lookupIdx), 'optionalAccess', _1566 => _1566.scrollAnchor]), () => ( void 0));
57746
57756
  }
57747
57757
  return {
57748
57758
  id: m.id,
@@ -57771,7 +57781,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57771
57781
  );
57772
57782
  return;
57773
57783
  }
57774
- const refSlug = typeof _optionalChain([reference, 'access', _1566 => _1566.metadata, 'optionalAccess', _1567 => _1567.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
57784
+ const refSlug = typeof _optionalChain([reference, 'access', _1567 => _1567.metadata, 'optionalAccess', _1568 => _1568.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
57775
57785
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
57776
57786
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
57777
57787
  const text = `/${cmdId} display "${escaped}"`;
@@ -57821,18 +57831,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57821
57831
  /** True while the mount-time rebuild from the server transcript runs. */
57822
57832
  isHydratingHistory,
57823
57833
  /** Provider key for the lib's `<ModelDisplay>` icon. */
57824
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1568 => _1568.provider]), () => ( null)),
57825
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1569 => _1569.modelLabel]), () => ( null)),
57826
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1570 => _1570.contextWindowMaxTokens]), () => ( null)),
57834
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1569 => _1569.provider]), () => ( null)),
57835
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1570 => _1570.modelLabel]), () => ( null)),
57836
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1571 => _1571.contextWindowMaxTokens]), () => ( null)),
57827
57837
  /** Input tokens (known after server's message_start frame; null until). */
57828
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1571 => _1571.inputTokens]), () => ( null)),
57838
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1572 => _1572.inputTokens]), () => ( null)),
57829
57839
  /** Output tokens (known only after server's trailing usage frame). */
57830
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1572 => _1572.outputTokens]), () => ( null)),
57840
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1573 => _1573.outputTokens]), () => ( null)),
57831
57841
  /** Cache hit % (read / total-input × 100). null during streaming. */
57832
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1573 => _1573.cacheHitRatePct]), () => ( null)),
57842
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1574 => _1574.cacheHitRatePct]), () => ( null)),
57833
57843
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
57834
57844
  * token counts). null until the trailing usage frame lands. */
57835
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1574 => _1574.breakdown]), () => ( null)),
57845
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1575 => _1575.breakdown]), () => ( null)),
57836
57846
  // ─── Dialog management — stubs for v1 ────────────────────────────────
57837
57847
  // Guide mode keeps ONE server-side conversation per stored id
57838
57848
  // (`chat_conversations`, hydrated on mount). Surfacing multiple threads
@@ -58126,7 +58136,7 @@ function decodeNatsChunk(chunk) {
58126
58136
  userId: typeof data.userId === "string" ? data.userId : void 0,
58127
58137
  // Wire shape carries no label; fall back to the id (parity with
58128
58138
  // the history path in `process-historical-messages.ts`).
58129
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1575 => _1575.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1576 => _1576.id]) === "string").map((it) => ({
58139
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1576 => _1576.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1577 => _1577.id]) === "string").map((it) => ({
58130
58140
  type: it.type,
58131
58141
  id: it.id,
58132
58142
  label: it.id
@@ -58178,15 +58188,15 @@ function decodeNatsChunk(chunk) {
58178
58188
 
58179
58189
  // src/components/chat/utils/process-historical-messages.ts
58180
58190
  function getOwnerDisplayName(owner) {
58181
- if (_optionalChain([owner, 'optionalAccess', _1577 => _1577.type]) === OWNER_TYPE.ADMIN && owner.user) {
58191
+ if (_optionalChain([owner, 'optionalAccess', _1578 => _1578.type]) === OWNER_TYPE.ADMIN && owner.user) {
58182
58192
  const { firstName, lastName } = owner.user;
58183
58193
  const name = [firstName, lastName].filter(Boolean).join(" ");
58184
58194
  if (name) return name;
58185
58195
  }
58186
- return _optionalChain([owner, 'optionalAccess', _1578 => _1578.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58196
+ return _optionalChain([owner, 'optionalAccess', _1579 => _1579.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58187
58197
  }
58188
58198
  function getOwnerAvatar(owner) {
58189
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1579 => _1579.user, 'optionalAccess', _1580 => _1580.image, 'optionalAccess', _1581 => _1581.imageUrl]), () => ( void 0));
58199
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1580 => _1580.user, 'optionalAccess', _1581 => _1581.image, 'optionalAccess', _1582 => _1582.imageUrl]), () => ( void 0));
58190
58200
  }
58191
58201
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
58192
58202
  messageDataArray.forEach((data) => {
@@ -58384,7 +58394,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58384
58394
  event.offerId,
58385
58395
  event.text,
58386
58396
  event.origin,
58387
- _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1582 => _1582[event.offerId]]), () => ( "pending"))
58397
+ _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1583 => _1583[event.offerId]]), () => ( "pending"))
58388
58398
  );
58389
58399
  break;
58390
58400
  case "ticket-escalated":
@@ -58409,7 +58419,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58409
58419
  });
58410
58420
  break;
58411
58421
  case "escalation-offer-resolved":
58412
- _optionalChain([offerResolutions, 'optionalAccess', _1583 => _1583.set, 'call', _1584 => _1584(event.offerId, {
58422
+ _optionalChain([offerResolutions, 'optionalAccess', _1584 => _1584.set, 'call', _1585 => _1585(event.offerId, {
58413
58423
  status: event.status,
58414
58424
  resolvedByName: event.resolvedByName
58415
58425
  })]);
@@ -58487,7 +58497,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58487
58497
  }
58488
58498
  }
58489
58499
  } else {
58490
- _optionalChain([escalatedApprovals, 'optionalAccess', _1585 => _1585.set, 'call', _1586 => _1586(event.requestId, {
58500
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1586 => _1586.set, 'call', _1587 => _1587(event.requestId, {
58491
58501
  command: event.command || "",
58492
58502
  explanation: event.explanation,
58493
58503
  approvalType,
@@ -58502,8 +58512,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58502
58512
  const existingStatus = approvalStatuses[requestId];
58503
58513
  const status = existingStatus || event.status;
58504
58514
  const resolvedByName = event.resolvedByName;
58505
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1587 => _1587.get, 'call', _1588 => _1588(requestId)]);
58506
- if (_optionalChain([escalatedData, 'optionalAccess', _1589 => _1589.toolCalls]) && escalatedData.toolCalls.length > 0) {
58515
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1588 => _1588.get, 'call', _1589 => _1589(requestId)]);
58516
+ if (_optionalChain([escalatedData, 'optionalAccess', _1590 => _1590.toolCalls]) && escalatedData.toolCalls.length > 0) {
58507
58517
  if (batchApprovalsEnabled) {
58508
58518
  accumulator.addApprovalBatch(
58509
58519
  requestId,
@@ -58525,7 +58535,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58525
58535
  );
58526
58536
  }
58527
58537
  }
58528
- _optionalChain([escalatedApprovals, 'optionalAccess', _1590 => _1590.delete, 'call', _1591 => _1591(requestId)]);
58538
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1591 => _1591.delete, 'call', _1592 => _1592(requestId)]);
58529
58539
  break;
58530
58540
  }
58531
58541
  if (escalatedData) {
@@ -58534,7 +58544,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58534
58544
  explanation: escalatedData.explanation,
58535
58545
  approvalType: escalatedData.approvalType
58536
58546
  });
58537
- _optionalChain([escalatedApprovals, 'optionalAccess', _1592 => _1592.delete, 'call', _1593 => _1593(requestId)]);
58547
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1593 => _1593.delete, 'call', _1594 => _1594(requestId)]);
58538
58548
  }
58539
58549
  const before = accumulator.getSegments();
58540
58550
  const after = accumulator.updateApprovalStatus(requestId, status, resolvedByName);
@@ -58551,7 +58561,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58551
58561
  let message2;
58552
58562
  if (event.details) {
58553
58563
  try {
58554
- message2 = _optionalChain([JSON, 'access', _1594 => _1594.parse, 'call', _1595 => _1595(event.details), 'optionalAccess', _1596 => _1596.error, 'optionalAccess', _1597 => _1597.message]);
58564
+ message2 = _optionalChain([JSON, 'access', _1595 => _1595.parse, 'call', _1596 => _1596(event.details), 'optionalAccess', _1597 => _1597.error, 'optionalAccess', _1598 => _1598.message]);
58555
58565
  } catch (e104) {
58556
58566
  message2 = event.details;
58557
58567
  }
@@ -58637,14 +58647,14 @@ function processHistoricalMessages(messages, options = {}) {
58637
58647
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
58638
58648
  return;
58639
58649
  }
58640
- const isUserMessage = _optionalChain([msg, 'access', _1598 => _1598.owner, 'optionalAccess', _1599 => _1599.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1600 => _1600.owner, 'optionalAccess', _1601 => _1601.type]) === OWNER_TYPE.ADMIN;
58650
+ const isUserMessage = _optionalChain([msg, 'access', _1599 => _1599.owner, 'optionalAccess', _1600 => _1600.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1601 => _1601.owner, 'optionalAccess', _1602 => _1602.type]) === OWNER_TYPE.ADMIN;
58641
58651
  if (isUserMessage) {
58642
58652
  flushAssistantMessage();
58643
- const userAuthorType = _optionalChain([msg, 'access', _1602 => _1602.owner, 'optionalAccess', _1603 => _1603.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58653
+ const userAuthorType = _optionalChain([msg, 'access', _1603 => _1603.owner, 'optionalAccess', _1604 => _1604.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58644
58654
  messageDataArray.forEach((data) => {
58645
58655
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
58646
58656
  const rawContext = data.contextItems;
58647
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1604 => _1604.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1605 => _1605.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58657
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1605 => _1605.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1606 => _1606.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58648
58658
  processedMessages.push({
58649
58659
  id: msg.id,
58650
58660
  role: "user",
@@ -58681,7 +58691,7 @@ function processHistoricalMessages(messages, options = {}) {
58681
58691
  });
58682
58692
  const nextMsg = messages[index + 1];
58683
58693
  const isLastMessage = index === messages.length - 1;
58684
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1606 => _1606.owner, 'optionalAccess', _1607 => _1607.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1608 => _1608.owner, 'optionalAccess', _1609 => _1609.type]) === OWNER_TYPE.ADMIN);
58694
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1607 => _1607.owner, 'optionalAccess', _1608 => _1608.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1609 => _1609.owner, 'optionalAccess', _1610 => _1610.type]) === OWNER_TYPE.ADMIN);
58685
58695
  if (isLastMessage || nextIsFromUser) {
58686
58696
  flushAssistantMessage();
58687
58697
  }
@@ -58793,7 +58803,7 @@ function extractIncompleteMessageState(lastMessage) {
58793
58803
  break;
58794
58804
  case "approval_batch": {
58795
58805
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
58796
- (c) => _optionalChain([segment, 'access', _1610 => _1610.data, 'access', _1611 => _1611.executions, 'optionalAccess', _1612 => _1612[c.toolExecutionRequestId], 'optionalAccess', _1613 => _1613.status]) === "done"
58806
+ (c) => _optionalChain([segment, 'access', _1611 => _1611.data, 'access', _1612 => _1612.executions, 'optionalAccess', _1613 => _1613[c.toolExecutionRequestId], 'optionalAccess', _1614 => _1614.status]) === "done"
58797
58807
  );
58798
58808
  if (segment.status !== "rejected" && !allDone) {
58799
58809
  hasIncompleteState = true;
@@ -58829,11 +58839,11 @@ function extractIncompleteMessageState(lastMessage) {
58829
58839
  function extractIncompleteTailState(messages) {
58830
58840
  if (!messages || messages.length === 0) return void 0;
58831
58841
  let start = messages.length;
58832
- while (start > 0 && _optionalChain([messages, 'access', _1614 => _1614[start - 1], 'optionalAccess', _1615 => _1615.role]) === "assistant") start -= 1;
58842
+ while (start > 0 && _optionalChain([messages, 'access', _1615 => _1615[start - 1], 'optionalAccess', _1616 => _1616.role]) === "assistant") start -= 1;
58833
58843
  if (start === messages.length) return void 0;
58834
58844
  const segments = [];
58835
58845
  for (let i = start; i < messages.length; i += 1) {
58836
- const content = _optionalChain([messages, 'access', _1616 => _1616[i], 'optionalAccess', _1617 => _1617.content]);
58846
+ const content = _optionalChain([messages, 'access', _1617 => _1617[i], 'optionalAccess', _1618 => _1618.content]);
58837
58847
  if (Array.isArray(content)) segments.push(...content);
58838
58848
  }
58839
58849
  if (segments.length === 0) return void 0;
@@ -59187,7 +59197,7 @@ function useNatsChatAdapter(config, options = {}) {
59187
59197
  }, [active, fetchDialogs, loadDialogsPage]);
59188
59198
  const sendMessage = _react.useCallback.call(void 0,
59189
59199
  async (text, sendOptions) => {
59190
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1618 => _1618.hidden]), () => ( false));
59200
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1619 => _1619.hidden]), () => ( false));
59191
59201
  mutate((r) => r.pushOptimisticSend(text, hidden));
59192
59202
  await publishUserMessage(text, { hidden, dialogId });
59193
59203
  },
@@ -59343,11 +59353,11 @@ function useNatsChatAdapter(config, options = {}) {
59343
59353
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
59344
59354
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
59345
59355
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
59346
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1619 => _1619.provider]), () => ( modelProvider)), () => ( null)),
59347
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1620 => _1620.modelLabel]), () => ( modelLabel)), () => ( null)),
59348
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1621 => _1621.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1622 => _1622.contextWindowMaxTokens]))), () => ( null)),
59349
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1623 => _1623.inputTokensSize]), () => ( null)),
59350
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1624 => _1624.outputTokensSize]), () => ( null)),
59356
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1620 => _1620.provider]), () => ( modelProvider)), () => ( null)),
59357
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1621 => _1621.modelLabel]), () => ( modelLabel)), () => ( null)),
59358
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1622 => _1622.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1623 => _1623.contextWindowMaxTokens]))), () => ( null)),
59359
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1624 => _1624.inputTokensSize]), () => ( null)),
59360
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1625 => _1625.outputTokensSize]), () => ( null)),
59351
59361
  currentCacheHitRatePct: null,
59352
59362
  currentUsageBreakdown: null,
59353
59363
  // Dialog management
@@ -59484,7 +59494,7 @@ function useUnifiedChat(options) {
59484
59494
  []
59485
59495
  );
59486
59496
  const setDialogScope = _react.useCallback.call(void 0,
59487
- (scope) => _optionalChain([activeStateRef, 'access', _1625 => _1625.current, 'access', _1626 => _1626.setDialogScope, 'optionalCall', _1627 => _1627(scope)]),
59497
+ (scope) => _optionalChain([activeStateRef, 'access', _1626 => _1626.current, 'access', _1627 => _1627.setDialogScope, 'optionalCall', _1628 => _1628(scope)]),
59488
59498
  []
59489
59499
  );
59490
59500
  const reloadDialogs = _react.useCallback.call(void 0,
@@ -59588,19 +59598,19 @@ function turnRequestKeys(content) {
59588
59598
  if (!Array.isArray(content)) return keys;
59589
59599
  for (const seg of content) {
59590
59600
  if (seg.type === "tool_execution") {
59591
- const id = _optionalChain([seg, 'access', _1628 => _1628.data, 'optionalAccess', _1629 => _1629.toolExecutionRequestId]);
59601
+ const id = _optionalChain([seg, 'access', _1629 => _1629.data, 'optionalAccess', _1630 => _1630.toolExecutionRequestId]);
59592
59602
  if (id) keys.add(id);
59593
59603
  } else if (seg.type === "approval_request") {
59594
- const id = _optionalChain([seg, 'access', _1630 => _1630.data, 'optionalAccess', _1631 => _1631.requestId]);
59604
+ const id = _optionalChain([seg, 'access', _1631 => _1631.data, 'optionalAccess', _1632 => _1632.requestId]);
59595
59605
  if (id) keys.add(id);
59596
59606
  } else if (seg.type === "escalation_offer") {
59597
- const id = _optionalChain([seg, 'access', _1632 => _1632.data, 'optionalAccess', _1633 => _1633.offerId]);
59607
+ const id = _optionalChain([seg, 'access', _1633 => _1633.data, 'optionalAccess', _1634 => _1634.offerId]);
59598
59608
  if (id) keys.add(id);
59599
59609
  } else if (seg.type === "approval_batch") {
59600
59610
  const data = seg.data;
59601
- if (_optionalChain([data, 'optionalAccess', _1634 => _1634.approvalRequestId])) keys.add(data.approvalRequestId);
59602
- for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1635 => _1635.toolCalls]), () => ( []))) {
59603
- if (_optionalChain([call, 'optionalAccess', _1636 => _1636.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59611
+ if (_optionalChain([data, 'optionalAccess', _1635 => _1635.approvalRequestId])) keys.add(data.approvalRequestId);
59612
+ for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1636 => _1636.toolCalls]), () => ( []))) {
59613
+ if (_optionalChain([call, 'optionalAccess', _1637 => _1637.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59604
59614
  }
59605
59615
  }
59606
59616
  }
@@ -59652,20 +59662,20 @@ function mergeHistoryWithRealtime(input) {
59652
59662
  }
59653
59663
  }
59654
59664
  const trailing = processedHistory[processedHistory.length - 1];
59655
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1637 => _1637.role]) === "assistant" ? trailing : null;
59656
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1638 => _1638.content, 'access', _1639 => _1639.find, 'call', _1640 => _1640((s) => s.type === "approval_batch"), 'optionalAccess', _1641 => _1641.data, 'optionalAccess', _1642 => _1642.approvalRequestId]), () => ( null)) : null;
59665
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1638 => _1638.role]) === "assistant" ? trailing : null;
59666
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1639 => _1639.content, 'access', _1640 => _1640.find, 'call', _1641 => _1641((s) => s.type === "approval_batch"), 'optionalAccess', _1642 => _1642.data, 'optionalAccess', _1643 => _1643.approvalRequestId]), () => ( null)) : null;
59657
59667
  let processedToUse = processedHistory;
59658
59668
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
59659
59669
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
59660
59670
  if (historyBatchId) {
59661
59671
  const batchTwins = existingMessages.filter(
59662
59672
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
59663
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1643 => _1643.data, 'optionalAccess', _1644 => _1644.approvalRequestId]) === historyBatchId
59673
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1644 => _1644.data, 'optionalAccess', _1645 => _1645.approvalRequestId]) === historyBatchId
59664
59674
  )
59665
59675
  );
59666
59676
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
59667
59677
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
59668
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1645 => _1645.content])) ? historyTrailingAssistant.content.length : 0;
59678
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1646 => _1646.content])) ? historyTrailingAssistant.content.length : 0;
59669
59679
  const realtimeSize = existingWithSameBatch.content.length;
59670
59680
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
59671
59681
  processedToUse = processedHistory.slice(0, -1);
@@ -59707,9 +59717,9 @@ function mergeHistoryWithRealtime(input) {
59707
59717
  if (pinnedSyntheticIds.has(m.id)) return true;
59708
59718
  if (droppedSyntheticIds.has(m.id)) return false;
59709
59719
  if (processedIds.has(m.id)) return false;
59710
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1646 => _1646.has, 'call', _1647 => _1647(m.id)])) return false;
59720
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1647 => _1647.has, 'call', _1648 => _1648(m.id)])) return false;
59711
59721
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
59712
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1648 => _1648.timestamp, 'optionalAccess', _1649 => _1649.getTime, 'call', _1650 => _1650()]), () => ( 0))) <= historyFetchedAt;
59722
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1649 => _1649.timestamp, 'optionalAccess', _1650 => _1650.getTime, 'call', _1651 => _1651()]), () => ( 0))) <= historyFetchedAt;
59713
59723
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
59714
59724
  }
59715
59725
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
@@ -59733,7 +59743,7 @@ function mergeHistoryWithRealtime(input) {
59733
59743
  } else if (typeof m.streamSeq === "number") {
59734
59744
  covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
59735
59745
  } else {
59736
- covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1651 => _1651.timestamp, 'optionalAccess', _1652 => _1652.getTime, 'call', _1653 => _1653()]), () => ( 0))) <= historyFetchedAt;
59746
+ covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1652 => _1652.timestamp, 'optionalAccess', _1653 => _1653.getTime, 'call', _1654 => _1654()]), () => ( 0))) <= historyFetchedAt;
59737
59747
  }
59738
59748
  if (covered) return false;
59739
59749
  }
@@ -59789,7 +59799,7 @@ function normalizeHistoricalMessageData(md) {
59789
59799
  function isHistoricalUserTurn(m) {
59790
59800
  return !!m.owner;
59791
59801
  }
59792
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1654 => _1654.type]) === "TEXT" && typeof d.text === "string";
59802
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1655 => _1655.type]) === "TEXT" && typeof d.text === "string";
59793
59803
  var THINK_MS = 550;
59794
59804
  var TOKEN_MS = 55;
59795
59805
  var USER_MS = 480;
@@ -60036,7 +60046,7 @@ function useChatDialogManager({
60036
60046
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
60037
60047
  if (restoreTarget) {
60038
60048
  try {
60039
- await _optionalChain([unarchiveDialog, 'optionalCall', _1655 => _1655(restoreTarget.id)]);
60049
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1656 => _1656(restoreTarget.id)]);
60040
60050
  } catch (err) {
60041
60051
  console.error("[useChatDialogManager] unarchive failed:", err);
60042
60052
  return;
@@ -60518,7 +60528,7 @@ function EmbeddableChatInner({
60518
60528
  }),
60519
60529
  [commandsUrl]
60520
60530
  );
60521
- const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1656 => _1656.name, 'optionalAccess', _1657 => _1657.trim, 'call', _1658 => _1658()]) || [_optionalChain([identityUser, 'optionalAccess', _1659 => _1659.firstName]), _optionalChain([identityUser, 'optionalAccess', _1660 => _1660.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1661 => _1661.trim, 'call', _1662 => _1662()]) || void 0;
60531
+ const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1657 => _1657.name, 'optionalAccess', _1658 => _1658.trim, 'call', _1659 => _1659()]) || [_optionalChain([identityUser, 'optionalAccess', _1660 => _1660.firstName]), _optionalChain([identityUser, 'optionalAccess', _1661 => _1661.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1662 => _1662.trim, 'call', _1663 => _1663()]) || void 0;
60522
60532
  const effectiveModes = _react.useMemo.call(void 0, () => {
60523
60533
  if (modes) return modes;
60524
60534
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -60527,19 +60537,19 @@ function EmbeddableChatInner({
60527
60537
  const mingoCaps = _react.useMemo.call(void 0, () => {
60528
60538
  if (mingoState) {
60529
60539
  return {
60530
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1663 => _1663.canRename]), () => ( false)),
60531
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1664 => _1664.canArchive]), () => ( false)),
60532
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1665 => _1665.fetchArchivedDialogs]),
60533
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1666 => _1666.unarchiveDialog]),
60534
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1667 => _1667.searchQuery]),
60535
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1668 => _1668.onSearchChange])
60540
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1664 => _1664.canRename]), () => ( false)),
60541
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1665 => _1665.canArchive]), () => ( false)),
60542
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1666 => _1666.fetchArchivedDialogs]),
60543
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1667 => _1667.unarchiveDialog]),
60544
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1668 => _1668.searchQuery]),
60545
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1669 => _1669.onSearchChange])
60536
60546
  };
60537
60547
  }
60538
60548
  return {
60539
- canRename: !!_optionalChain([effectiveModes, 'access', _1669 => _1669.mingo, 'optionalAccess', _1670 => _1670.renameDialog]),
60540
- canArchive: !!_optionalChain([effectiveModes, 'access', _1671 => _1671.mingo, 'optionalAccess', _1672 => _1672.archiveDialog]),
60541
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1673 => _1673.mingo, 'optionalAccess', _1674 => _1674.fetchArchivedDialogs]),
60542
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1675 => _1675.mingo, 'optionalAccess', _1676 => _1676.unarchiveDialog]),
60549
+ canRename: !!_optionalChain([effectiveModes, 'access', _1670 => _1670.mingo, 'optionalAccess', _1671 => _1671.renameDialog]),
60550
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1672 => _1672.mingo, 'optionalAccess', _1673 => _1673.archiveDialog]),
60551
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1674 => _1674.mingo, 'optionalAccess', _1675 => _1675.fetchArchivedDialogs]),
60552
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1676 => _1676.mingo, 'optionalAccess', _1677 => _1677.unarchiveDialog]),
60543
60553
  searchQuery: void 0,
60544
60554
  onSearchChange: void 0
60545
60555
  };
@@ -60553,7 +60563,7 @@ function EmbeddableChatInner({
60553
60563
  if (controlledActiveMode === void 0) {
60554
60564
  setUncontrolledActiveMode(next);
60555
60565
  }
60556
- _optionalChain([onActiveModeChange, 'optionalCall', _1677 => _1677(next)]);
60566
+ _optionalChain([onActiveModeChange, 'optionalCall', _1678 => _1678(next)]);
60557
60567
  },
60558
60568
  [controlledActiveMode, onActiveModeChange]
60559
60569
  );
@@ -60575,7 +60585,7 @@ function EmbeddableChatInner({
60575
60585
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
60576
60586
  const effectiveAssistantName = emptyStateConfig.name;
60577
60587
  const effectiveAssistantIcon = emptyStateConfig.icon;
60578
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1678 => _1678.title]) === "string" ? guideWelcome.title : null)));
60588
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1679 => _1679.title]) === "string" ? guideWelcome.title : null)));
60579
60589
  const {
60580
60590
  messages: rawMessages,
60581
60591
  isLoading: chatLoading,
@@ -60617,7 +60627,7 @@ function EmbeddableChatInner({
60617
60627
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
60618
60628
  guidePromptSentRef.current = true;
60619
60629
  void sendMessage(guidePendingPrompt);
60620
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1679 => _1679()]);
60630
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1680 => _1680()]);
60621
60631
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
60622
60632
  const {
60623
60633
  attachments: stagedAttachments,
@@ -60628,7 +60638,7 @@ function EmbeddableChatInner({
60628
60638
  clear: clearAttachments
60629
60639
  } = useChatAttachments();
60630
60640
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
60631
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1680 => _1680.maxItems]), () => ( 10));
60641
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1681 => _1681.maxItems]), () => ( 10));
60632
60642
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
60633
60643
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
60634
60644
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -60645,10 +60655,10 @@ function EmbeddableChatInner({
60645
60655
  }, [activeDialogId, activeMode]);
60646
60656
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
60647
60657
  const m = /* @__PURE__ */ new Map();
60648
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1681 => _1681.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60658
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1682 => _1682.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60649
60659
  return m;
60650
- }, [_optionalChain([contextPicker, 'optionalAccess', _1682 => _1682.entityTypes])]);
60651
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1683 => _1683.entityTypes]);
60660
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1683 => _1683.entityTypes])]);
60661
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1684 => _1684.entityTypes]);
60652
60662
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
60653
60663
  const byType = /* @__PURE__ */ new Map();
60654
60664
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -60660,7 +60670,7 @@ function EmbeddableChatInner({
60660
60670
  if (mentionActiveRef.current) {
60661
60671
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
60662
60672
  if (contextItems.length >= contextMaxItems) return;
60663
- _optionalChain([chatInputRef, 'access', _1684 => _1684.current, 'optionalAccess', _1685 => _1685.commitMention, 'call', _1686 => _1686(mentionTokenOf(key, mentionMarkerByType), {
60673
+ _optionalChain([chatInputRef, 'access', _1685 => _1685.current, 'optionalAccess', _1686 => _1686.commitMention, 'call', _1687 => _1687(mentionTokenOf(key, mentionMarkerByType), {
60664
60674
  label: item.label,
60665
60675
  icon: resolveContextIcon(item)
60666
60676
  })]);
@@ -60682,9 +60692,9 @@ function EmbeddableChatInner({
60682
60692
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
60683
60693
  if (mentionKeysRef.current.has(key)) {
60684
60694
  mentionKeysRef.current.delete(key);
60685
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1687 => _1687.current, 'optionalAccess', _1688 => _1688.getValue, 'call', _1689 => _1689()]), () => ( ""));
60695
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1688 => _1688.current, 'optionalAccess', _1689 => _1689.getValue, 'call', _1690 => _1690()]), () => ( ""));
60686
60696
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
60687
- _optionalChain([chatInputRef, 'access', _1690 => _1690.current, 'optionalAccess', _1691 => _1691.setValue, 'call', _1692 => _1692(next)]);
60697
+ _optionalChain([chatInputRef, 'access', _1691 => _1691.current, 'optionalAccess', _1692 => _1692.setValue, 'call', _1693 => _1693(next)]);
60688
60698
  }
60689
60699
  }, [mentionMarkerByType]);
60690
60700
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -60701,7 +60711,7 @@ function EmbeddableChatInner({
60701
60711
  }, []);
60702
60712
  const closeContextPicker = _react.useCallback.call(void 0, () => {
60703
60713
  if (mentionActiveRef.current) {
60704
- _optionalChain([chatInputRef, 'access', _1693 => _1693.current, 'optionalAccess', _1694 => _1694.removeMentionTrigger, 'call', _1695 => _1695()]);
60714
+ _optionalChain([chatInputRef, 'access', _1694 => _1694.current, 'optionalAccess', _1695 => _1695.removeMentionTrigger, 'call', _1696 => _1696()]);
60705
60715
  }
60706
60716
  setContextPickerOpen(false);
60707
60717
  setMentionQuery(null);
@@ -60735,8 +60745,8 @@ function EmbeddableChatInner({
60735
60745
  [effectiveAssistantIcon]
60736
60746
  );
60737
60747
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
60738
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1696 => _1696.firstName]), _optionalChain([identityUser, 'optionalAccess', _1697 => _1697.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1698 => _1698.name, 'optionalAccess', _1699 => _1699.trim, 'call', _1700 => _1700()]) || void 0 : void 0;
60739
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1701 => _1701.avatarUrl, 'optionalAccess', _1702 => _1702.trim, 'call', _1703 => _1703()]) || void 0 : void 0;
60748
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1697 => _1697.firstName]), _optionalChain([identityUser, 'optionalAccess', _1698 => _1698.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1699 => _1699.name, 'optionalAccess', _1700 => _1700.trim, 'call', _1701 => _1701()]) || void 0 : void 0;
60749
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1702 => _1702.avatarUrl, 'optionalAccess', _1703 => _1703.trim, 'call', _1704 => _1704()]) || void 0 : void 0;
60740
60750
  const messages = _react.useMemo.call(void 0, () => {
60741
60751
  const cache = timestampCacheRef.current;
60742
60752
  const seenIds = /* @__PURE__ */ new Set();
@@ -60927,9 +60937,9 @@ function EmbeddableChatInner({
60927
60937
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
60928
60938
  const lastSources = _react.useMemo.call(void 0, () => {
60929
60939
  if (chatLoading) return void 0;
60930
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1704 => _1704.sources]);
60940
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1705 => _1705.sources]);
60931
60941
  if (!sources || sources.length === 0) return void 0;
60932
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1705 => _1705.content]) || "";
60942
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1706 => _1706.content]) || "";
60933
60943
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
60934
60944
  (m) => parseInt(m[1], 10)
60935
60945
  );
@@ -60949,7 +60959,7 @@ function EmbeddableChatInner({
60949
60959
  const el = panelMeasureRef.current;
60950
60960
  if (!el || typeof ResizeObserver === "undefined") return;
60951
60961
  const ro = new ResizeObserver((entries) => {
60952
- const w = _optionalChain([entries, 'access', _1706 => _1706[0], 'optionalAccess', _1707 => _1707.contentRect, 'optionalAccess', _1708 => _1708.width]);
60962
+ const w = _optionalChain([entries, 'access', _1707 => _1707[0], 'optionalAccess', _1708 => _1708.contentRect, 'optionalAccess', _1709 => _1709.width]);
60953
60963
  if (typeof w === "number") setPanelWidth(w);
60954
60964
  });
60955
60965
  ro.observe(el);
@@ -60992,16 +61002,16 @@ function EmbeddableChatInner({
60992
61002
  const isMingoMode = activeMode === "mingo";
60993
61003
  const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
60994
61004
  const headerShowBack = hasConversation || guideCanReturnToMingo;
60995
- const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1709 => _1709.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
61005
+ const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1710 => _1710.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
60996
61006
  const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
60997
61007
  const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
60998
61008
  const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
60999
61009
  const headerOnRename = activeDialogId && activeDialog && mingoCaps.canRename ? () => setRenameTarget(activeDialog) : void 0;
61000
61010
  const headerOnArchive = activeDialogId && activeDialog && mingoCaps.canArchive ? () => setArchiveTarget(activeDialog) : void 0;
61001
61011
  const headerOnOpenArchive = fetchArchivedDialogs ? openArchive : void 0;
61002
- const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1710 => _1710.owner]) : void 0;
61003
- const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1711 => _1711.name, 'optionalAccess', _1712 => _1712.trim, 'call', _1713 => _1713()]) || headerUserName;
61004
- const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1714 => _1714.avatarUrl, 'optionalAccess', _1715 => _1715.trim, 'call', _1716 => _1716()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1717 => _1717.avatarUrl, 'optionalAccess', _1718 => _1718.trim, 'call', _1719 => _1719()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1720 => _1720.trim, 'call', _1721 => _1721()]) || void 0;
61012
+ const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1711 => _1711.owner]) : void 0;
61013
+ const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1712 => _1712.name, 'optionalAccess', _1713 => _1713.trim, 'call', _1714 => _1714()]) || headerUserName;
61014
+ const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1715 => _1715.avatarUrl, 'optionalAccess', _1716 => _1716.trim, 'call', _1717 => _1717()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1718 => _1718.avatarUrl, 'optionalAccess', _1719 => _1719.trim, 'call', _1720 => _1720()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1721 => _1721.trim, 'call', _1722 => _1722()]) || void 0;
61005
61015
  const headerAvatar = headerPersonName || headerPersonAvatarUrl ? { name: headerPersonName, avatarUrl: headerPersonAvatarUrl } : void 0;
61006
61016
  const handleNewChat = _react.useCallback.call(void 0, () => {
61007
61017
  resetToNewChat();
@@ -61362,9 +61372,9 @@ function EmbeddableChatInner({
61362
61372
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
61363
61373
  subtitleLoading: emptyStateLoading,
61364
61374
  ...guideWelcome,
61365
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1722 => _1722.title]))),
61366
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1723 => _1723.icon]))),
61367
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1724 => _1724.quickActions]), () => ( guideSuggestedActions)),
61375
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1723 => _1723.title]))),
61376
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1724 => _1724.icon]))),
61377
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1725 => _1725.quickActions]), () => ( guideSuggestedActions)),
61368
61378
  onQuickAction: (action) => {
61369
61379
  setQuickActionPreview(null);
61370
61380
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -61444,8 +61454,8 @@ function EmbeddableChatInner({
61444
61454
  selectedContextItems: contextItems,
61445
61455
  onToggleContextItem: toggleContextItem,
61446
61456
  onRemoveContextItem: removeContextItem,
61447
- contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1725 => _1725.items]),
61448
- onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1726 => _1726.onRemove]),
61457
+ contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1726 => _1726.items]),
61458
+ onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1727 => _1727.onRemove]),
61449
61459
  contextPickerOpen,
61450
61460
  onOpenContextPicker: openContextPicker,
61451
61461
  onCloseContextPicker: closeContextPicker,
@@ -62642,5 +62652,6 @@ function EmbeddableChatInner({
62642
62652
 
62643
62653
 
62644
62654
 
62645
- exports.Label = Label; 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.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; 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.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; 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.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.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;
62646
- //# sourceMappingURL=chunk-CE2GROZZ.cjs.map
62655
+
62656
+ exports.Label = Label; 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.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; 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.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; 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.getCaptionsUrl = getCaptionsUrl; 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;
62657
+ //# sourceMappingURL=chunk-TTFBD45B.cjs.map