@flamingo-stack/openframe-frontend-core 0.0.554-1822.4841.1 → 0.0.554

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 (104) hide show
  1. package/dist/{chunk-M3SHPHQ7.cjs → chunk-2HWN6CYI.cjs} +115 -137
  2. package/dist/chunk-2HWN6CYI.cjs.map +1 -0
  3. package/dist/{chunk-2UVCQJVY.js → chunk-44QNFLHC.js} +5 -5
  4. package/dist/{chunk-7ZMCHZIJ.cjs → chunk-4KIPZULI.cjs} +7 -7
  5. package/dist/{chunk-7ZMCHZIJ.cjs.map → chunk-4KIPZULI.cjs.map} +1 -1
  6. package/dist/{chunk-CGDMM2IJ.js → chunk-5VICQQM7.js} +2 -2
  7. package/dist/{chunk-T2EHJ4GN.js → chunk-67Q4QQBA.js} +6 -6
  8. package/dist/{chunk-JCURBCB7.cjs → chunk-AQFYI3HH.cjs} +9 -9
  9. package/dist/{chunk-JCURBCB7.cjs.map → chunk-AQFYI3HH.cjs.map} +1 -1
  10. package/dist/{chunk-TF4ASBLD.cjs → chunk-CGCQ4HA5.cjs} +11 -11
  11. package/dist/{chunk-TF4ASBLD.cjs.map → chunk-CGCQ4HA5.cjs.map} +1 -1
  12. package/dist/{chunk-6V6J7P75.cjs → chunk-CWLV6DEK.cjs} +26 -26
  13. package/dist/{chunk-6V6J7P75.cjs.map → chunk-CWLV6DEK.cjs.map} +1 -1
  14. package/dist/{chunk-6G3HJCLJ.js → chunk-DXAUNMFM.js} +2 -2
  15. package/dist/{chunk-NENDMVCF.js → chunk-FHS2SA5F.js} +2 -2
  16. package/dist/{chunk-NJX7WVJB.js → chunk-FVXND3SO.js} +2 -2
  17. package/dist/{chunk-T6UFFK3K.cjs → chunk-HO6IG73U.cjs} +62 -62
  18. package/dist/{chunk-T6UFFK3K.cjs.map → chunk-HO6IG73U.cjs.map} +1 -1
  19. package/dist/{chunk-MPJ53DQU.cjs → chunk-J355HL3X.cjs} +86 -86
  20. package/dist/{chunk-MPJ53DQU.cjs.map → chunk-J355HL3X.cjs.map} +1 -1
  21. package/dist/{chunk-SE667HU6.cjs → chunk-JJKK7E66.cjs} +4 -4
  22. package/dist/{chunk-SE667HU6.cjs.map → chunk-JJKK7E66.cjs.map} +1 -1
  23. package/dist/{chunk-HUGKJGXP.js → chunk-P6LUXP5E.js} +2 -2
  24. package/dist/{chunk-TMNMJF5F.cjs → chunk-PAW27EWH.cjs} +20 -20
  25. package/dist/{chunk-TMNMJF5F.cjs.map → chunk-PAW27EWH.cjs.map} +1 -1
  26. package/dist/{chunk-AEJ4VSN7.js → chunk-PDVSL7OW.js} +15 -6
  27. package/dist/chunk-PDVSL7OW.js.map +1 -0
  28. package/dist/{chunk-JS5YP37A.cjs → chunk-PFQVCHDE.cjs} +3 -3
  29. package/dist/{chunk-JS5YP37A.cjs.map → chunk-PFQVCHDE.cjs.map} +1 -1
  30. package/dist/{chunk-2E63H7SH.js → chunk-QA7NU73D.js} +2 -2
  31. package/dist/{chunk-F2W5V5MH.cjs → chunk-QH3QWY3N.cjs} +31 -31
  32. package/dist/{chunk-F2W5V5MH.cjs.map → chunk-QH3QWY3N.cjs.map} +1 -1
  33. package/dist/{chunk-4VALLDF7.js → chunk-RMGX6BVQ.js} +2 -2
  34. package/dist/{chunk-ROUWF3PD.js → chunk-SBXQW72U.js} +4 -4
  35. package/dist/{chunk-P4OGKQYQ.js → chunk-U72YYXBT.js} +4 -4
  36. package/dist/{chunk-CUWKFI7Q.cjs → chunk-ULH6JHWZ.cjs} +27 -18
  37. package/dist/{chunk-CUWKFI7Q.cjs.map → chunk-ULH6JHWZ.cjs.map} +1 -1
  38. package/dist/{chunk-6PH34GDC.js → chunk-VIDE4YOQ.js} +2 -2
  39. package/dist/{chunk-CCV3SQ4W.cjs → chunk-WZWQWZFJ.cjs} +39 -39
  40. package/dist/{chunk-CCV3SQ4W.cjs.map → chunk-WZWQWZFJ.cjs.map} +1 -1
  41. package/dist/{chunk-YR3JVBT3.cjs → chunk-XMB5P2OS.cjs} +5 -5
  42. package/dist/{chunk-YR3JVBT3.cjs.map → chunk-XMB5P2OS.cjs.map} +1 -1
  43. package/dist/{chunk-3XOICFFT.js → chunk-ZGLMZM2I.js} +19 -41
  44. package/dist/{chunk-3XOICFFT.js.map → chunk-ZGLMZM2I.js.map} +1 -1
  45. package/dist/components/case-studies/index.cjs +8 -8
  46. package/dist/components/case-studies/index.js +2 -2
  47. package/dist/components/chat/hooks/use-chat-card-item.d.ts.map +1 -1
  48. package/dist/components/chat/index.cjs +2 -2
  49. package/dist/components/chat/index.js +1 -1
  50. package/dist/components/chat/stream/use-chat-stream-reducer.d.ts.map +1 -1
  51. package/dist/components/contact/index.cjs +3 -3
  52. package/dist/components/contact/index.js +2 -2
  53. package/dist/components/docs/index.cjs +5 -5
  54. package/dist/components/docs/index.js +4 -4
  55. package/dist/components/embeds/index.cjs +3 -3
  56. package/dist/components/embeds/index.js +2 -2
  57. package/dist/components/faq/index.cjs +3 -3
  58. package/dist/components/faq/index.js +2 -2
  59. package/dist/components/features/index.cjs +2 -2
  60. package/dist/components/features/index.js +1 -1
  61. package/dist/components/help-center-pages/index.cjs +22 -22
  62. package/dist/components/help-center-pages/index.js +13 -13
  63. package/dist/components/index.cjs +131 -131
  64. package/dist/components/index.js +11 -11
  65. package/dist/components/meeting-scheduler/index.cjs +28 -28
  66. package/dist/components/meeting-scheduler/index.js +3 -3
  67. package/dist/components/navigation/index.cjs +2 -2
  68. package/dist/components/navigation/index.js +1 -1
  69. package/dist/components/onboarding-guides/index.cjs +5 -5
  70. package/dist/components/onboarding-guides/index.js +4 -4
  71. package/dist/components/related-content/index.cjs +3 -3
  72. package/dist/components/related-content/index.js +2 -2
  73. package/dist/components/shared/dev-section/dev-section-view.d.ts.map +1 -1
  74. package/dist/components/tickets/index.cjs +6 -6
  75. package/dist/components/tickets/index.js +5 -5
  76. package/dist/components/ui/index.cjs +2 -2
  77. package/dist/components/ui/index.js +1 -1
  78. package/dist/index.cjs +2 -2
  79. package/dist/index.js +1 -1
  80. package/dist/utils/dev-sections/openframe-dev-sections.d.ts +7 -0
  81. package/dist/utils/dev-sections/openframe-dev-sections.d.ts.map +1 -1
  82. package/dist/utils/index.cjs +8 -1
  83. package/dist/utils/index.cjs.map +1 -1
  84. package/dist/utils/index.js +8 -1
  85. package/dist/utils/index.js.map +1 -1
  86. package/package.json +1 -1
  87. package/src/components/chat/hooks/use-chat-card-item.ts +12 -22
  88. package/src/components/chat/stream/use-chat-stream-reducer.ts +1 -36
  89. package/src/components/shared/dev-section/dev-section-view.tsx +27 -7
  90. package/src/utils/dev-sections/openframe-dev-sections.ts +15 -2
  91. package/dist/chunk-AEJ4VSN7.js.map +0 -1
  92. package/dist/chunk-M3SHPHQ7.cjs.map +0 -1
  93. /package/dist/{chunk-2UVCQJVY.js.map → chunk-44QNFLHC.js.map} +0 -0
  94. /package/dist/{chunk-CGDMM2IJ.js.map → chunk-5VICQQM7.js.map} +0 -0
  95. /package/dist/{chunk-T2EHJ4GN.js.map → chunk-67Q4QQBA.js.map} +0 -0
  96. /package/dist/{chunk-6G3HJCLJ.js.map → chunk-DXAUNMFM.js.map} +0 -0
  97. /package/dist/{chunk-NENDMVCF.js.map → chunk-FHS2SA5F.js.map} +0 -0
  98. /package/dist/{chunk-NJX7WVJB.js.map → chunk-FVXND3SO.js.map} +0 -0
  99. /package/dist/{chunk-HUGKJGXP.js.map → chunk-P6LUXP5E.js.map} +0 -0
  100. /package/dist/{chunk-2E63H7SH.js.map → chunk-QA7NU73D.js.map} +0 -0
  101. /package/dist/{chunk-4VALLDF7.js.map → chunk-RMGX6BVQ.js.map} +0 -0
  102. /package/dist/{chunk-ROUWF3PD.js.map → chunk-SBXQW72U.js.map} +0 -0
  103. /package/dist/{chunk-P4OGKQYQ.js.map → chunk-U72YYXBT.js.map} +0 -0
  104. /package/dist/{chunk-6PH34GDC.js.map → chunk-VIDE4YOQ.js.map} +0 -0
@@ -28554,7 +28554,14 @@ var OPENFRAME_DEV_SECTIONS = {
28554
28554
  title: "Help Center",
28555
28555
  description: "Open new tickets, follow up on existing ones, and track responses from the team \u2014 all in one place."
28556
28556
  },
28557
- search: { placeholder: "Search your tickets...", paramKey: DEV_SECTION_PARAM_KEYS.search },
28557
+ search: {
28558
+ placeholder: "Search your tickets...",
28559
+ paramKey: DEV_SECTION_PARAM_KEYS.search,
28560
+ // Chat-card deep links arrive as `?ticket=<id>&search=<id>`
28561
+ // (buildTicketOpenHref) — clearing the search resets the whole
28562
+ // linked context, drawer param included.
28563
+ clearParamKeys: [TICKET_OPEN_PARAM]
28564
+ },
28558
28565
  filter: {
28559
28566
  label: "Status",
28560
28567
  paramKey: DEV_SECTION_PARAM_KEYS.status,
@@ -52028,25 +52035,15 @@ function useChatCardItem(type, id) {
52028
52035
  return _nullishCoalesce(match2, () => ( null));
52029
52036
  },
52030
52037
  enabled: !!url && id.length > 0,
52031
- // Don't refetch on window focus inside the chat the chat panel
52032
- // is opened and closed frequently, and re-fetching every time the
52033
- // user toggles back to the tab is wasteful (the row's id-keyed
52034
- // payload is effectively immutable).
52035
- refetchOnWindowFocus: false,
52036
- // A fetch-mode card inside a STREAMING assistant message re-mounts on
52037
- // every chunk as the surrounding markdown re-parses. Without a staleTime
52038
- // that meant a fresh network fetch + loading-skeleton flash on every
52039
- // single chunk. Treat the row as fresh for 5 min (matches the public
52040
- // pages) and keep it cached long after unmount so remounts resolve
52041
- // synchronously from cache — no refetch, no skeleton flash.
52042
- //
52043
- // MUTABLE ENTITIES (tickets, tasks): the 5-min freshness is NOT an
52044
- // immutability claim. When a confirmed tool action mutates an entity,
52045
- // `use-chat-stream-reducer` invalidates every ['chat-card-item', *, id]
52046
- // entry for it on the `approval-resolved` event — the receipt card (and
52047
- // any earlier card of the same entity) refetches the post-mutation row.
52048
- // Keep that invalidation in sync with this queryKey shape.
52049
- staleTime: 5 * 60 * 1e3,
52038
+ // ALWAYS FRESH no freshness window. Card entities are mutable
52039
+ // (tickets, tasks change status), so a cached row is a lie waiting to
52040
+ // render: a 5-min staleTime shipped a "NEW" badge on a ticket the
52041
+ // receipt right above it said was just CLOSED (2026-08-18). Every
52042
+ // mount refetches. `gcTime` is kept ONLY as render continuity: a card
52043
+ // inside a STREAMING assistant message re-mounts on every chunk as the
52044
+ // surrounding markdown re-parses, and the previous data renders while
52045
+ // the refetch is in flight no skeleton flash, never stale-forever.
52046
+ staleTime: 0,
52050
52047
  gcTime: 30 * 60 * 1e3
52051
52048
  });
52052
52049
  return {
@@ -57616,7 +57613,6 @@ function createChatDialogStore(options = {}) {
57616
57613
  // src/components/chat/stream/use-chat-stream-reducer.ts
57617
57614
 
57618
57615
 
57619
-
57620
57616
  // src/components/chat/stream/delta-batcher.ts
57621
57617
  var DELTA_FLUSH_FALLBACK_MS = 50;
57622
57618
  function isDeltaEvent(event) {
@@ -57698,22 +57694,6 @@ function createDeltaBatcher({
57698
57694
  }
57699
57695
 
57700
57696
  // src/components/chat/stream/use-chat-stream-reducer.ts
57701
- function useOptionalQueryClient() {
57702
- try {
57703
- return _reactquery.useQueryClient.call(void 0, );
57704
- } catch (e104) {
57705
- return null;
57706
- }
57707
- }
57708
- function invalidateMutatedEntityCards(queryClient, event) {
57709
- if (!queryClient) return;
57710
- if (event.type !== "approval-resolved" || event.status !== "approved") return;
57711
- const mutatedId = _optionalChain([event, 'access', _1559 => _1559.result, 'optionalAccess', _1560 => _1560.ticket_id]);
57712
- if (!mutatedId) return;
57713
- void queryClient.invalidateQueries({
57714
- predicate: (q) => q.queryKey[0] === "chat-card-item" && q.queryKey[2] === mutatedId
57715
- });
57716
- }
57717
57697
  function useChatStreamReducer({
57718
57698
  store,
57719
57699
  dialogId,
@@ -57722,7 +57702,7 @@ function useChatStreamReducer({
57722
57702
  }) {
57723
57703
  const optionsRef = _react.useRef.call(void 0, createReducerOptions);
57724
57704
  optionsRef.current = createReducerOptions;
57725
- const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1561 => _1561.current, 'optionalCall', _1562 => _1562()]), () => ( {})));
57705
+ const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1559 => _1559.current, 'optionalCall', _1560 => _1560()]), () => ( {})));
57726
57706
  const getSnapshot = _react.useCallback.call(void 0, () => store.getSnapshot(dialogId, side), [store, dialogId, side]);
57727
57707
  const getServerSnapshot = _react.useCallback.call(void 0, () => store.getServerSnapshot(), [store]);
57728
57708
  const subscribe = _react.useCallback.call(void 0, (listener) => store.subscribe(listener), [store]);
@@ -57744,15 +57724,13 @@ function useChatStreamReducer({
57744
57724
  }
57745
57725
  const batcher = batcherRef.current;
57746
57726
  const flushDeltas = _react.useCallback.call(void 0, () => batcher.flush(), [batcher]);
57747
- const queryClient = useOptionalQueryClient();
57748
57727
  const applyEvent = _react.useCallback.call(void 0,
57749
57728
  (event) => {
57750
57729
  if (batcher.push(event, keyRef.current)) return;
57751
57730
  batcher.flush();
57752
57731
  store.apply(dialogId, side, event);
57753
- invalidateMutatedEntityCards(queryClient, event);
57754
57732
  },
57755
- [batcher, store, dialogId, side, queryClient]
57733
+ [batcher, store, dialogId, side]
57756
57734
  );
57757
57735
  _react.useEffect.call(void 0, () => () => batcher.dispose(), [batcher]);
57758
57736
  const mutate = _react.useCallback.call(void 0,
@@ -57784,7 +57762,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57784
57762
  const { active = true } = runtimeOptions;
57785
57763
  const runtime = _chunkCEAAOVCVcjs.useRequiredChatRuntime.call(void 0, );
57786
57764
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
57787
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1563 => _1563.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57765
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1561 => _1561.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
57788
57766
  const sendMessageRef = _react.useRef.call(void 0, async () => true);
57789
57767
  const cardResolve = _react.useCallback.call(void 0,
57790
57768
  (action) => (reqId) => {
@@ -57819,7 +57797,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57819
57797
  if (!restoredConversationRef.current) {
57820
57798
  restoredConversationRef.current = true;
57821
57799
  pruneStaleChatConversationStorage(source);
57822
- conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1564 => _1564.load, 'call', _1565 => _1565(), 'optionalAccess', _1566 => _1566.conversationId]), () => ( null));
57800
+ conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1562 => _1562.load, 'call', _1563 => _1563(), 'optionalAccess', _1564 => _1564.conversationId]), () => ( null));
57823
57801
  }
57824
57802
  const commandsUrl = runtime.endpoints.commandsUrl;
57825
57803
  const { commands: slashCommands } = useSlashCommandRegistry(commandsUrl, {
@@ -57926,7 +57904,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57926
57904
  const serverMessage = await readServerErrorMessage(response);
57927
57905
  throw new Error(_nullishCoalesce(serverMessage, () => ( `Chat request failed: ${response.status}`)));
57928
57906
  }
57929
- const reader = _optionalChain([response, 'access', _1567 => _1567.body, 'optionalAccess', _1568 => _1568.getReader, 'call', _1569 => _1569()]);
57907
+ const reader = _optionalChain([response, 'access', _1565 => _1565.body, 'optionalAccess', _1566 => _1566.getReader, 'call', _1567 => _1567()]);
57930
57908
  if (!reader) throw new Error("No response body");
57931
57909
  const frameDecoder = createSseFrameDecoder();
57932
57910
  let finished = false;
@@ -57949,7 +57927,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57949
57927
  }
57950
57928
  return true;
57951
57929
  } catch (err) {
57952
- if (_optionalChain([err, 'optionalAccess', _1570 => _1570.name]) === "AbortError" || ctrl.signal.aborted) {
57930
+ if (_optionalChain([err, 'optionalAccess', _1568 => _1568.name]) === "AbortError" || ctrl.signal.aborted) {
57953
57931
  return true;
57954
57932
  }
57955
57933
  flushDeltas();
@@ -57971,7 +57949,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57971
57949
  );
57972
57950
  sendMessageRef.current = sendMessage;
57973
57951
  const stopMessage = _react.useCallback.call(void 0, () => {
57974
- _optionalChain([abortControllerRef, 'access', _1571 => _1571.current, 'optionalAccess', _1572 => _1572.abort, 'call', _1573 => _1573()]);
57952
+ _optionalChain([abortControllerRef, 'access', _1569 => _1569.current, 'optionalAccess', _1570 => _1570.abort, 'call', _1571 => _1571()]);
57975
57953
  flushDeltas();
57976
57954
  mutate((r) => r.setPhase("idle"));
57977
57955
  }, [mutate, flushDeltas]);
@@ -57987,7 +57965,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57987
57965
  let sendIdx = -1;
57988
57966
  return state.messages.map((m) => {
57989
57967
  const segments = m.segments;
57990
- const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1574 => _1574.filter, 'call', _1575 => _1575((s) => s.type === "text"), 'access', _1576 => _1576.map, 'call', _1577 => _1577((s) => s.text), 'access', _1578 => _1578.join, 'call', _1579 => _1579("")]), () => ( ""));
57968
+ const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1572 => _1572.filter, 'call', _1573 => _1573((s) => s.type === "text"), 'access', _1574 => _1574.map, 'call', _1575 => _1575((s) => s.text), 'access', _1576 => _1576.join, 'call', _1577 => _1577("")]), () => ( ""));
57991
57969
  let sources;
57992
57970
  let scrollAnchor;
57993
57971
  if (m.role === "user" && !m.hidden) {
@@ -57996,7 +57974,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57996
57974
  if (m.role === "assistant") {
57997
57975
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
57998
57976
  sources = sourcesMap.get(lookupIdx);
57999
- scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1580 => _1580.get, 'call', _1581 => _1581(lookupIdx), 'optionalAccess', _1582 => _1582.scrollAnchor]), () => ( void 0));
57977
+ scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1578 => _1578.get, 'call', _1579 => _1579(lookupIdx), 'optionalAccess', _1580 => _1580.scrollAnchor]), () => ( void 0));
58000
57978
  }
58001
57979
  return {
58002
57980
  id: m.id,
@@ -58025,7 +58003,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
58025
58003
  );
58026
58004
  return;
58027
58005
  }
58028
- const refSlug = typeof _optionalChain([reference, 'access', _1583 => _1583.metadata, 'optionalAccess', _1584 => _1584.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
58006
+ const refSlug = typeof _optionalChain([reference, 'access', _1581 => _1581.metadata, 'optionalAccess', _1582 => _1582.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
58029
58007
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
58030
58008
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
58031
58009
  const text = `/${cmdId} display "${escaped}"`;
@@ -58075,18 +58053,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
58075
58053
  /** True while the mount-time rebuild from the server transcript runs. */
58076
58054
  isHydratingHistory,
58077
58055
  /** Provider key for the lib's `<ModelDisplay>` icon. */
58078
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1585 => _1585.provider]), () => ( null)),
58079
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1586 => _1586.modelLabel]), () => ( null)),
58080
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1587 => _1587.contextWindowMaxTokens]), () => ( null)),
58056
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1583 => _1583.provider]), () => ( null)),
58057
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1584 => _1584.modelLabel]), () => ( null)),
58058
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1585 => _1585.contextWindowMaxTokens]), () => ( null)),
58081
58059
  /** Input tokens (known after server's message_start frame; null until). */
58082
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1588 => _1588.inputTokens]), () => ( null)),
58060
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1586 => _1586.inputTokens]), () => ( null)),
58083
58061
  /** Output tokens (known only after server's trailing usage frame). */
58084
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1589 => _1589.outputTokens]), () => ( null)),
58062
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1587 => _1587.outputTokens]), () => ( null)),
58085
58063
  /** Cache hit % (read / total-input × 100). null during streaming. */
58086
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1590 => _1590.cacheHitRatePct]), () => ( null)),
58064
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1588 => _1588.cacheHitRatePct]), () => ( null)),
58087
58065
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
58088
58066
  * token counts). null until the trailing usage frame lands. */
58089
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1591 => _1591.breakdown]), () => ( null)),
58067
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1589 => _1589.breakdown]), () => ( null)),
58090
58068
  // ─── Dialog management — stubs for v1 ────────────────────────────────
58091
58069
  // Guide mode keeps ONE server-side conversation per stored id
58092
58070
  // (`chat_conversations`, hydrated on mount). Surfacing multiple threads
@@ -58381,7 +58359,7 @@ function decodeNatsChunk(chunk) {
58381
58359
  userId: typeof data.userId === "string" ? data.userId : void 0,
58382
58360
  // Wire shape carries no label; fall back to the id (parity with
58383
58361
  // the history path in `process-historical-messages.ts`).
58384
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1592 => _1592.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1593 => _1593.id]) === "string").map((it) => ({
58362
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1590 => _1590.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1591 => _1591.id]) === "string").map((it) => ({
58385
58363
  type: it.type,
58386
58364
  id: it.id,
58387
58365
  label: it.id
@@ -58433,15 +58411,15 @@ function decodeNatsChunk(chunk) {
58433
58411
 
58434
58412
  // src/components/chat/utils/process-historical-messages.ts
58435
58413
  function getOwnerDisplayName(owner) {
58436
- if (_optionalChain([owner, 'optionalAccess', _1594 => _1594.type]) === OWNER_TYPE.ADMIN && owner.user) {
58414
+ if (_optionalChain([owner, 'optionalAccess', _1592 => _1592.type]) === OWNER_TYPE.ADMIN && owner.user) {
58437
58415
  const { firstName, lastName } = owner.user;
58438
58416
  const name = [firstName, lastName].filter(Boolean).join(" ");
58439
58417
  if (name) return name;
58440
58418
  }
58441
- return _optionalChain([owner, 'optionalAccess', _1595 => _1595.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58419
+ return _optionalChain([owner, 'optionalAccess', _1593 => _1593.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
58442
58420
  }
58443
58421
  function getOwnerAvatar(owner) {
58444
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1596 => _1596.user, 'optionalAccess', _1597 => _1597.image, 'optionalAccess', _1598 => _1598.imageUrl]), () => ( void 0));
58422
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1594 => _1594.user, 'optionalAccess', _1595 => _1595.image, 'optionalAccess', _1596 => _1596.imageUrl]), () => ( void 0));
58445
58423
  }
58446
58424
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
58447
58425
  messageDataArray.forEach((data) => {
@@ -58640,7 +58618,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58640
58618
  event.offerId,
58641
58619
  event.text,
58642
58620
  event.origin,
58643
- _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1599 => _1599[event.offerId]]), () => ( "pending"))
58621
+ _nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1597 => _1597[event.offerId]]), () => ( "pending"))
58644
58622
  );
58645
58623
  break;
58646
58624
  case "ticket-escalated":
@@ -58666,7 +58644,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58666
58644
  });
58667
58645
  break;
58668
58646
  case "escalation-offer-resolved":
58669
- _optionalChain([offerResolutions, 'optionalAccess', _1600 => _1600.set, 'call', _1601 => _1601(event.offerId, {
58647
+ _optionalChain([offerResolutions, 'optionalAccess', _1598 => _1598.set, 'call', _1599 => _1599(event.offerId, {
58670
58648
  status: event.status,
58671
58649
  resolvedByName: event.resolvedByName
58672
58650
  })]);
@@ -58744,7 +58722,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58744
58722
  }
58745
58723
  }
58746
58724
  } else {
58747
- _optionalChain([escalatedApprovals, 'optionalAccess', _1602 => _1602.set, 'call', _1603 => _1603(event.requestId, {
58725
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1600 => _1600.set, 'call', _1601 => _1601(event.requestId, {
58748
58726
  command: event.command || "",
58749
58727
  explanation: event.explanation,
58750
58728
  approvalType,
@@ -58759,8 +58737,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58759
58737
  const existingStatus = approvalStatuses[requestId];
58760
58738
  const status = existingStatus || event.status;
58761
58739
  const resolvedByName = event.resolvedByName;
58762
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1604 => _1604.get, 'call', _1605 => _1605(requestId)]);
58763
- if (_optionalChain([escalatedData, 'optionalAccess', _1606 => _1606.toolCalls]) && escalatedData.toolCalls.length > 0) {
58740
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1602 => _1602.get, 'call', _1603 => _1603(requestId)]);
58741
+ if (_optionalChain([escalatedData, 'optionalAccess', _1604 => _1604.toolCalls]) && escalatedData.toolCalls.length > 0) {
58764
58742
  if (batchApprovalsEnabled) {
58765
58743
  accumulator.addApprovalBatch(
58766
58744
  requestId,
@@ -58782,7 +58760,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58782
58760
  );
58783
58761
  }
58784
58762
  }
58785
- _optionalChain([escalatedApprovals, 'optionalAccess', _1607 => _1607.delete, 'call', _1608 => _1608(requestId)]);
58763
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1605 => _1605.delete, 'call', _1606 => _1606(requestId)]);
58786
58764
  break;
58787
58765
  }
58788
58766
  if (escalatedData) {
@@ -58791,7 +58769,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58791
58769
  explanation: escalatedData.explanation,
58792
58770
  approvalType: escalatedData.approvalType
58793
58771
  });
58794
- _optionalChain([escalatedApprovals, 'optionalAccess', _1609 => _1609.delete, 'call', _1610 => _1610(requestId)]);
58772
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1607 => _1607.delete, 'call', _1608 => _1608(requestId)]);
58795
58773
  }
58796
58774
  const before = accumulator.getSegments();
58797
58775
  const after = accumulator.updateApprovalStatus(requestId, status, resolvedByName);
@@ -58808,8 +58786,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
58808
58786
  let message2;
58809
58787
  if (event.details) {
58810
58788
  try {
58811
- message2 = _optionalChain([JSON, 'access', _1611 => _1611.parse, 'call', _1612 => _1612(event.details), 'optionalAccess', _1613 => _1613.error, 'optionalAccess', _1614 => _1614.message]);
58812
- } catch (e105) {
58789
+ message2 = _optionalChain([JSON, 'access', _1609 => _1609.parse, 'call', _1610 => _1610(event.details), 'optionalAccess', _1611 => _1611.error, 'optionalAccess', _1612 => _1612.message]);
58790
+ } catch (e104) {
58813
58791
  message2 = event.details;
58814
58792
  }
58815
58793
  }
@@ -58894,14 +58872,14 @@ function processHistoricalMessages(messages, options = {}) {
58894
58872
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
58895
58873
  return;
58896
58874
  }
58897
- const isUserMessage = _optionalChain([msg, 'access', _1615 => _1615.owner, 'optionalAccess', _1616 => _1616.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1617 => _1617.owner, 'optionalAccess', _1618 => _1618.type]) === OWNER_TYPE.ADMIN;
58875
+ const isUserMessage = _optionalChain([msg, 'access', _1613 => _1613.owner, 'optionalAccess', _1614 => _1614.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1615 => _1615.owner, 'optionalAccess', _1616 => _1616.type]) === OWNER_TYPE.ADMIN;
58898
58876
  if (isUserMessage) {
58899
58877
  flushAssistantMessage();
58900
- const userAuthorType = _optionalChain([msg, 'access', _1619 => _1619.owner, 'optionalAccess', _1620 => _1620.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58878
+ const userAuthorType = _optionalChain([msg, 'access', _1617 => _1617.owner, 'optionalAccess', _1618 => _1618.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
58901
58879
  messageDataArray.forEach((data) => {
58902
58880
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
58903
58881
  const rawContext = data.contextItems;
58904
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1621 => _1621.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1622 => _1622.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58882
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1619 => _1619.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1620 => _1620.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
58905
58883
  processedMessages.push({
58906
58884
  id: msg.id,
58907
58885
  role: "user",
@@ -58938,7 +58916,7 @@ function processHistoricalMessages(messages, options = {}) {
58938
58916
  });
58939
58917
  const nextMsg = messages[index + 1];
58940
58918
  const isLastMessage = index === messages.length - 1;
58941
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1623 => _1623.owner, 'optionalAccess', _1624 => _1624.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1625 => _1625.owner, 'optionalAccess', _1626 => _1626.type]) === OWNER_TYPE.ADMIN);
58919
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1621 => _1621.owner, 'optionalAccess', _1622 => _1622.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1623 => _1623.owner, 'optionalAccess', _1624 => _1624.type]) === OWNER_TYPE.ADMIN);
58942
58920
  if (isLastMessage || nextIsFromUser) {
58943
58921
  flushAssistantMessage();
58944
58922
  }
@@ -59050,7 +59028,7 @@ function extractIncompleteMessageState(lastMessage) {
59050
59028
  break;
59051
59029
  case "approval_batch": {
59052
59030
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
59053
- (c) => _optionalChain([segment, 'access', _1627 => _1627.data, 'access', _1628 => _1628.executions, 'optionalAccess', _1629 => _1629[c.toolExecutionRequestId], 'optionalAccess', _1630 => _1630.status]) === "done"
59031
+ (c) => _optionalChain([segment, 'access', _1625 => _1625.data, 'access', _1626 => _1626.executions, 'optionalAccess', _1627 => _1627[c.toolExecutionRequestId], 'optionalAccess', _1628 => _1628.status]) === "done"
59054
59032
  );
59055
59033
  if (segment.status !== "rejected" && !allDone) {
59056
59034
  hasIncompleteState = true;
@@ -59086,11 +59064,11 @@ function extractIncompleteMessageState(lastMessage) {
59086
59064
  function extractIncompleteTailState(messages) {
59087
59065
  if (!messages || messages.length === 0) return void 0;
59088
59066
  let start = messages.length;
59089
- while (start > 0 && _optionalChain([messages, 'access', _1631 => _1631[start - 1], 'optionalAccess', _1632 => _1632.role]) === "assistant") start -= 1;
59067
+ while (start > 0 && _optionalChain([messages, 'access', _1629 => _1629[start - 1], 'optionalAccess', _1630 => _1630.role]) === "assistant") start -= 1;
59090
59068
  if (start === messages.length) return void 0;
59091
59069
  const segments = [];
59092
59070
  for (let i = start; i < messages.length; i += 1) {
59093
- const content = _optionalChain([messages, 'access', _1633 => _1633[i], 'optionalAccess', _1634 => _1634.content]);
59071
+ const content = _optionalChain([messages, 'access', _1631 => _1631[i], 'optionalAccess', _1632 => _1632.content]);
59094
59072
  if (Array.isArray(content)) segments.push(...content);
59095
59073
  }
59096
59074
  if (segments.length === 0) return void 0;
@@ -59444,7 +59422,7 @@ function useNatsChatAdapter(config, options = {}) {
59444
59422
  }, [active, fetchDialogs, loadDialogsPage]);
59445
59423
  const sendMessage = _react.useCallback.call(void 0,
59446
59424
  async (text, sendOptions) => {
59447
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1635 => _1635.hidden]), () => ( false));
59425
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1633 => _1633.hidden]), () => ( false));
59448
59426
  mutate((r) => r.pushOptimisticSend(text, hidden));
59449
59427
  await publishUserMessage(text, { hidden, dialogId });
59450
59428
  },
@@ -59600,11 +59578,11 @@ function useNatsChatAdapter(config, options = {}) {
59600
59578
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
59601
59579
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
59602
59580
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
59603
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1636 => _1636.provider]), () => ( modelProvider)), () => ( null)),
59604
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1637 => _1637.modelLabel]), () => ( modelLabel)), () => ( null)),
59605
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1638 => _1638.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1639 => _1639.contextWindowMaxTokens]))), () => ( null)),
59606
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1640 => _1640.inputTokensSize]), () => ( null)),
59607
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1641 => _1641.outputTokensSize]), () => ( null)),
59581
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1634 => _1634.provider]), () => ( modelProvider)), () => ( null)),
59582
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1635 => _1635.modelLabel]), () => ( modelLabel)), () => ( null)),
59583
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1636 => _1636.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1637 => _1637.contextWindowMaxTokens]))), () => ( null)),
59584
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1638 => _1638.inputTokensSize]), () => ( null)),
59585
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1639 => _1639.outputTokensSize]), () => ( null)),
59608
59586
  currentCacheHitRatePct: null,
59609
59587
  currentUsageBreakdown: null,
59610
59588
  // Dialog management
@@ -59741,7 +59719,7 @@ function useUnifiedChat(options) {
59741
59719
  []
59742
59720
  );
59743
59721
  const setDialogScope = _react.useCallback.call(void 0,
59744
- (scope) => _optionalChain([activeStateRef, 'access', _1642 => _1642.current, 'access', _1643 => _1643.setDialogScope, 'optionalCall', _1644 => _1644(scope)]),
59722
+ (scope) => _optionalChain([activeStateRef, 'access', _1640 => _1640.current, 'access', _1641 => _1641.setDialogScope, 'optionalCall', _1642 => _1642(scope)]),
59745
59723
  []
59746
59724
  );
59747
59725
  const reloadDialogs = _react.useCallback.call(void 0,
@@ -59845,19 +59823,19 @@ function turnRequestKeys(content) {
59845
59823
  if (!Array.isArray(content)) return keys;
59846
59824
  for (const seg of content) {
59847
59825
  if (seg.type === "tool_execution") {
59848
- const id = _optionalChain([seg, 'access', _1645 => _1645.data, 'optionalAccess', _1646 => _1646.toolExecutionRequestId]);
59826
+ const id = _optionalChain([seg, 'access', _1643 => _1643.data, 'optionalAccess', _1644 => _1644.toolExecutionRequestId]);
59849
59827
  if (id) keys.add(id);
59850
59828
  } else if (seg.type === "approval_request") {
59851
- const id = _optionalChain([seg, 'access', _1647 => _1647.data, 'optionalAccess', _1648 => _1648.requestId]);
59829
+ const id = _optionalChain([seg, 'access', _1645 => _1645.data, 'optionalAccess', _1646 => _1646.requestId]);
59852
59830
  if (id) keys.add(id);
59853
59831
  } else if (seg.type === "escalation_offer") {
59854
- const id = _optionalChain([seg, 'access', _1649 => _1649.data, 'optionalAccess', _1650 => _1650.offerId]);
59832
+ const id = _optionalChain([seg, 'access', _1647 => _1647.data, 'optionalAccess', _1648 => _1648.offerId]);
59855
59833
  if (id) keys.add(id);
59856
59834
  } else if (seg.type === "approval_batch") {
59857
59835
  const data = seg.data;
59858
- if (_optionalChain([data, 'optionalAccess', _1651 => _1651.approvalRequestId])) keys.add(data.approvalRequestId);
59859
- for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1652 => _1652.toolCalls]), () => ( []))) {
59860
- if (_optionalChain([call, 'optionalAccess', _1653 => _1653.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59836
+ if (_optionalChain([data, 'optionalAccess', _1649 => _1649.approvalRequestId])) keys.add(data.approvalRequestId);
59837
+ for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1650 => _1650.toolCalls]), () => ( []))) {
59838
+ if (_optionalChain([call, 'optionalAccess', _1651 => _1651.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
59861
59839
  }
59862
59840
  }
59863
59841
  }
@@ -59909,20 +59887,20 @@ function mergeHistoryWithRealtime(input) {
59909
59887
  }
59910
59888
  }
59911
59889
  const trailing = processedHistory[processedHistory.length - 1];
59912
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1654 => _1654.role]) === "assistant" ? trailing : null;
59913
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1655 => _1655.content, 'access', _1656 => _1656.find, 'call', _1657 => _1657((s) => s.type === "approval_batch"), 'optionalAccess', _1658 => _1658.data, 'optionalAccess', _1659 => _1659.approvalRequestId]), () => ( null)) : null;
59890
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1652 => _1652.role]) === "assistant" ? trailing : null;
59891
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1653 => _1653.content, 'access', _1654 => _1654.find, 'call', _1655 => _1655((s) => s.type === "approval_batch"), 'optionalAccess', _1656 => _1656.data, 'optionalAccess', _1657 => _1657.approvalRequestId]), () => ( null)) : null;
59914
59892
  let processedToUse = processedHistory;
59915
59893
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
59916
59894
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
59917
59895
  if (historyBatchId) {
59918
59896
  const batchTwins = existingMessages.filter(
59919
59897
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
59920
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1660 => _1660.data, 'optionalAccess', _1661 => _1661.approvalRequestId]) === historyBatchId
59898
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1658 => _1658.data, 'optionalAccess', _1659 => _1659.approvalRequestId]) === historyBatchId
59921
59899
  )
59922
59900
  );
59923
59901
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
59924
59902
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
59925
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1662 => _1662.content])) ? historyTrailingAssistant.content.length : 0;
59903
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1660 => _1660.content])) ? historyTrailingAssistant.content.length : 0;
59926
59904
  const realtimeSize = existingWithSameBatch.content.length;
59927
59905
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
59928
59906
  processedToUse = processedHistory.slice(0, -1);
@@ -59964,9 +59942,9 @@ function mergeHistoryWithRealtime(input) {
59964
59942
  if (pinnedSyntheticIds.has(m.id)) return true;
59965
59943
  if (droppedSyntheticIds.has(m.id)) return false;
59966
59944
  if (processedIds.has(m.id)) return false;
59967
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1663 => _1663.has, 'call', _1664 => _1664(m.id)])) return false;
59945
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1661 => _1661.has, 'call', _1662 => _1662(m.id)])) return false;
59968
59946
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
59969
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1665 => _1665.timestamp, 'optionalAccess', _1666 => _1666.getTime, 'call', _1667 => _1667()]), () => ( 0))) <= historyFetchedAt;
59947
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1663 => _1663.timestamp, 'optionalAccess', _1664 => _1664.getTime, 'call', _1665 => _1665()]), () => ( 0))) <= historyFetchedAt;
59970
59948
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
59971
59949
  }
59972
59950
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
@@ -59990,7 +59968,7 @@ function mergeHistoryWithRealtime(input) {
59990
59968
  } else if (typeof m.streamSeq === "number") {
59991
59969
  covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
59992
59970
  } else {
59993
- covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1668 => _1668.timestamp, 'optionalAccess', _1669 => _1669.getTime, 'call', _1670 => _1670()]), () => ( 0))) <= historyFetchedAt;
59971
+ covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1666 => _1666.timestamp, 'optionalAccess', _1667 => _1667.getTime, 'call', _1668 => _1668()]), () => ( 0))) <= historyFetchedAt;
59994
59972
  }
59995
59973
  if (covered) return false;
59996
59974
  }
@@ -60046,7 +60024,7 @@ function normalizeHistoricalMessageData(md) {
60046
60024
  function isHistoricalUserTurn(m) {
60047
60025
  return !!m.owner;
60048
60026
  }
60049
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1671 => _1671.type]) === "TEXT" && typeof d.text === "string";
60027
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1669 => _1669.type]) === "TEXT" && typeof d.text === "string";
60050
60028
  var THINK_MS = 550;
60051
60029
  var TOKEN_MS = 55;
60052
60030
  var USER_MS = 480;
@@ -60293,7 +60271,7 @@ function useChatDialogManager({
60293
60271
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
60294
60272
  if (restoreTarget) {
60295
60273
  try {
60296
- await _optionalChain([unarchiveDialog, 'optionalCall', _1672 => _1672(restoreTarget.id)]);
60274
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1670 => _1670(restoreTarget.id)]);
60297
60275
  } catch (err) {
60298
60276
  console.error("[useChatDialogManager] unarchive failed:", err);
60299
60277
  return;
@@ -60775,7 +60753,7 @@ function EmbeddableChatInner({
60775
60753
  }),
60776
60754
  [commandsUrl]
60777
60755
  );
60778
- const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1673 => _1673.name, 'optionalAccess', _1674 => _1674.trim, 'call', _1675 => _1675()]) || [_optionalChain([identityUser, 'optionalAccess', _1676 => _1676.firstName]), _optionalChain([identityUser, 'optionalAccess', _1677 => _1677.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1678 => _1678.trim, 'call', _1679 => _1679()]) || void 0;
60756
+ const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1671 => _1671.name, 'optionalAccess', _1672 => _1672.trim, 'call', _1673 => _1673()]) || [_optionalChain([identityUser, 'optionalAccess', _1674 => _1674.firstName]), _optionalChain([identityUser, 'optionalAccess', _1675 => _1675.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1676 => _1676.trim, 'call', _1677 => _1677()]) || void 0;
60779
60757
  const effectiveModes = _react.useMemo.call(void 0, () => {
60780
60758
  if (modes) return modes;
60781
60759
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -60784,19 +60762,19 @@ function EmbeddableChatInner({
60784
60762
  const mingoCaps = _react.useMemo.call(void 0, () => {
60785
60763
  if (mingoState) {
60786
60764
  return {
60787
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1680 => _1680.canRename]), () => ( false)),
60788
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1681 => _1681.canArchive]), () => ( false)),
60789
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1682 => _1682.fetchArchivedDialogs]),
60790
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1683 => _1683.unarchiveDialog]),
60791
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1684 => _1684.searchQuery]),
60792
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1685 => _1685.onSearchChange])
60765
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1678 => _1678.canRename]), () => ( false)),
60766
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1679 => _1679.canArchive]), () => ( false)),
60767
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1680 => _1680.fetchArchivedDialogs]),
60768
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1681 => _1681.unarchiveDialog]),
60769
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1682 => _1682.searchQuery]),
60770
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1683 => _1683.onSearchChange])
60793
60771
  };
60794
60772
  }
60795
60773
  return {
60796
- canRename: !!_optionalChain([effectiveModes, 'access', _1686 => _1686.mingo, 'optionalAccess', _1687 => _1687.renameDialog]),
60797
- canArchive: !!_optionalChain([effectiveModes, 'access', _1688 => _1688.mingo, 'optionalAccess', _1689 => _1689.archiveDialog]),
60798
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1690 => _1690.mingo, 'optionalAccess', _1691 => _1691.fetchArchivedDialogs]),
60799
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1692 => _1692.mingo, 'optionalAccess', _1693 => _1693.unarchiveDialog]),
60774
+ canRename: !!_optionalChain([effectiveModes, 'access', _1684 => _1684.mingo, 'optionalAccess', _1685 => _1685.renameDialog]),
60775
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1686 => _1686.mingo, 'optionalAccess', _1687 => _1687.archiveDialog]),
60776
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1688 => _1688.mingo, 'optionalAccess', _1689 => _1689.fetchArchivedDialogs]),
60777
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1690 => _1690.mingo, 'optionalAccess', _1691 => _1691.unarchiveDialog]),
60800
60778
  searchQuery: void 0,
60801
60779
  onSearchChange: void 0
60802
60780
  };
@@ -60810,7 +60788,7 @@ function EmbeddableChatInner({
60810
60788
  if (controlledActiveMode === void 0) {
60811
60789
  setUncontrolledActiveMode(next);
60812
60790
  }
60813
- _optionalChain([onActiveModeChange, 'optionalCall', _1694 => _1694(next)]);
60791
+ _optionalChain([onActiveModeChange, 'optionalCall', _1692 => _1692(next)]);
60814
60792
  },
60815
60793
  [controlledActiveMode, onActiveModeChange]
60816
60794
  );
@@ -60832,7 +60810,7 @@ function EmbeddableChatInner({
60832
60810
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
60833
60811
  const effectiveAssistantName = emptyStateConfig.name;
60834
60812
  const effectiveAssistantIcon = emptyStateConfig.icon;
60835
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1695 => _1695.title]) === "string" ? guideWelcome.title : null)));
60813
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1693 => _1693.title]) === "string" ? guideWelcome.title : null)));
60836
60814
  const {
60837
60815
  messages: rawMessages,
60838
60816
  isLoading: chatLoading,
@@ -60874,7 +60852,7 @@ function EmbeddableChatInner({
60874
60852
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
60875
60853
  guidePromptSentRef.current = true;
60876
60854
  void sendMessage(guidePendingPrompt);
60877
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1696 => _1696()]);
60855
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1694 => _1694()]);
60878
60856
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
60879
60857
  const {
60880
60858
  attachments: stagedAttachments,
@@ -60885,7 +60863,7 @@ function EmbeddableChatInner({
60885
60863
  clear: clearAttachments
60886
60864
  } = useChatAttachments();
60887
60865
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
60888
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1697 => _1697.maxItems]), () => ( 10));
60866
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1695 => _1695.maxItems]), () => ( 10));
60889
60867
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
60890
60868
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
60891
60869
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -60902,10 +60880,10 @@ function EmbeddableChatInner({
60902
60880
  }, [activeDialogId, activeMode]);
60903
60881
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
60904
60882
  const m = /* @__PURE__ */ new Map();
60905
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1698 => _1698.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60883
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1696 => _1696.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
60906
60884
  return m;
60907
- }, [_optionalChain([contextPicker, 'optionalAccess', _1699 => _1699.entityTypes])]);
60908
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1700 => _1700.entityTypes]);
60885
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1697 => _1697.entityTypes])]);
60886
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1698 => _1698.entityTypes]);
60909
60887
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
60910
60888
  const byType = /* @__PURE__ */ new Map();
60911
60889
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -60917,7 +60895,7 @@ function EmbeddableChatInner({
60917
60895
  if (mentionActiveRef.current) {
60918
60896
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
60919
60897
  if (contextItems.length >= contextMaxItems) return;
60920
- _optionalChain([chatInputRef, 'access', _1701 => _1701.current, 'optionalAccess', _1702 => _1702.commitMention, 'call', _1703 => _1703(mentionTokenOf(key, mentionMarkerByType), {
60898
+ _optionalChain([chatInputRef, 'access', _1699 => _1699.current, 'optionalAccess', _1700 => _1700.commitMention, 'call', _1701 => _1701(mentionTokenOf(key, mentionMarkerByType), {
60921
60899
  label: item.label,
60922
60900
  icon: resolveContextIcon(item)
60923
60901
  })]);
@@ -60939,9 +60917,9 @@ function EmbeddableChatInner({
60939
60917
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
60940
60918
  if (mentionKeysRef.current.has(key)) {
60941
60919
  mentionKeysRef.current.delete(key);
60942
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1704 => _1704.current, 'optionalAccess', _1705 => _1705.getValue, 'call', _1706 => _1706()]), () => ( ""));
60920
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1702 => _1702.current, 'optionalAccess', _1703 => _1703.getValue, 'call', _1704 => _1704()]), () => ( ""));
60943
60921
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
60944
- _optionalChain([chatInputRef, 'access', _1707 => _1707.current, 'optionalAccess', _1708 => _1708.setValue, 'call', _1709 => _1709(next)]);
60922
+ _optionalChain([chatInputRef, 'access', _1705 => _1705.current, 'optionalAccess', _1706 => _1706.setValue, 'call', _1707 => _1707(next)]);
60945
60923
  }
60946
60924
  }, [mentionMarkerByType]);
60947
60925
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -60958,7 +60936,7 @@ function EmbeddableChatInner({
60958
60936
  }, []);
60959
60937
  const closeContextPicker = _react.useCallback.call(void 0, () => {
60960
60938
  if (mentionActiveRef.current) {
60961
- _optionalChain([chatInputRef, 'access', _1710 => _1710.current, 'optionalAccess', _1711 => _1711.removeMentionTrigger, 'call', _1712 => _1712()]);
60939
+ _optionalChain([chatInputRef, 'access', _1708 => _1708.current, 'optionalAccess', _1709 => _1709.removeMentionTrigger, 'call', _1710 => _1710()]);
60962
60940
  }
60963
60941
  setContextPickerOpen(false);
60964
60942
  setMentionQuery(null);
@@ -60992,8 +60970,8 @@ function EmbeddableChatInner({
60992
60970
  [effectiveAssistantIcon]
60993
60971
  );
60994
60972
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
60995
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1713 => _1713.firstName]), _optionalChain([identityUser, 'optionalAccess', _1714 => _1714.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1715 => _1715.name, 'optionalAccess', _1716 => _1716.trim, 'call', _1717 => _1717()]) || void 0 : void 0;
60996
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1718 => _1718.avatarUrl, 'optionalAccess', _1719 => _1719.trim, 'call', _1720 => _1720()]) || void 0 : void 0;
60973
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1711 => _1711.firstName]), _optionalChain([identityUser, 'optionalAccess', _1712 => _1712.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1713 => _1713.name, 'optionalAccess', _1714 => _1714.trim, 'call', _1715 => _1715()]) || void 0 : void 0;
60974
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1716 => _1716.avatarUrl, 'optionalAccess', _1717 => _1717.trim, 'call', _1718 => _1718()]) || void 0 : void 0;
60997
60975
  const messages = _react.useMemo.call(void 0, () => {
60998
60976
  const cache = timestampCacheRef.current;
60999
60977
  const seenIds = /* @__PURE__ */ new Set();
@@ -61184,9 +61162,9 @@ function EmbeddableChatInner({
61184
61162
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
61185
61163
  const lastSources = _react.useMemo.call(void 0, () => {
61186
61164
  if (chatLoading) return void 0;
61187
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1721 => _1721.sources]);
61165
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1719 => _1719.sources]);
61188
61166
  if (!sources || sources.length === 0) return void 0;
61189
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1722 => _1722.content]) || "";
61167
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1720 => _1720.content]) || "";
61190
61168
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
61191
61169
  (m) => parseInt(m[1], 10)
61192
61170
  );
@@ -61206,7 +61184,7 @@ function EmbeddableChatInner({
61206
61184
  const el = panelMeasureRef.current;
61207
61185
  if (!el || typeof ResizeObserver === "undefined") return;
61208
61186
  const ro = new ResizeObserver((entries) => {
61209
- const w = _optionalChain([entries, 'access', _1723 => _1723[0], 'optionalAccess', _1724 => _1724.contentRect, 'optionalAccess', _1725 => _1725.width]);
61187
+ const w = _optionalChain([entries, 'access', _1721 => _1721[0], 'optionalAccess', _1722 => _1722.contentRect, 'optionalAccess', _1723 => _1723.width]);
61210
61188
  if (typeof w === "number") setPanelWidth(w);
61211
61189
  });
61212
61190
  ro.observe(el);
@@ -61222,7 +61200,7 @@ function EmbeddableChatInner({
61222
61200
  try {
61223
61201
  if (window.localStorage.getItem(RAIL_COLLAPSED_STORAGE_KEY) === "1")
61224
61202
  setRailCollapsed(true);
61225
- } catch (e106) {
61203
+ } catch (e105) {
61226
61204
  }
61227
61205
  }, []);
61228
61206
  const toggleRailCollapsed = _react.useCallback.call(void 0, () => {
@@ -61230,7 +61208,7 @@ function EmbeddableChatInner({
61230
61208
  const next = !prev;
61231
61209
  try {
61232
61210
  window.localStorage.setItem(RAIL_COLLAPSED_STORAGE_KEY, next ? "1" : "0");
61233
- } catch (e107) {
61211
+ } catch (e106) {
61234
61212
  }
61235
61213
  return next;
61236
61214
  });
@@ -61249,16 +61227,16 @@ function EmbeddableChatInner({
61249
61227
  const isMingoMode = activeMode === "mingo";
61250
61228
  const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
61251
61229
  const headerShowBack = hasConversation || guideCanReturnToMingo;
61252
- const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1726 => _1726.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
61230
+ const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1724 => _1724.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
61253
61231
  const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
61254
61232
  const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
61255
61233
  const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
61256
61234
  const headerOnRename = activeDialogId && activeDialog && mingoCaps.canRename ? () => setRenameTarget(activeDialog) : void 0;
61257
61235
  const headerOnArchive = activeDialogId && activeDialog && mingoCaps.canArchive ? () => setArchiveTarget(activeDialog) : void 0;
61258
61236
  const headerOnOpenArchive = fetchArchivedDialogs ? openArchive : void 0;
61259
- const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1727 => _1727.owner]) : void 0;
61260
- const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1728 => _1728.name, 'optionalAccess', _1729 => _1729.trim, 'call', _1730 => _1730()]) || headerUserName;
61261
- const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1731 => _1731.avatarUrl, 'optionalAccess', _1732 => _1732.trim, 'call', _1733 => _1733()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1734 => _1734.avatarUrl, 'optionalAccess', _1735 => _1735.trim, 'call', _1736 => _1736()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1737 => _1737.trim, 'call', _1738 => _1738()]) || void 0;
61237
+ const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1725 => _1725.owner]) : void 0;
61238
+ const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1726 => _1726.name, 'optionalAccess', _1727 => _1727.trim, 'call', _1728 => _1728()]) || headerUserName;
61239
+ const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1729 => _1729.avatarUrl, 'optionalAccess', _1730 => _1730.trim, 'call', _1731 => _1731()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1732 => _1732.avatarUrl, 'optionalAccess', _1733 => _1733.trim, 'call', _1734 => _1734()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1735 => _1735.trim, 'call', _1736 => _1736()]) || void 0;
61262
61240
  const headerAvatar = headerPersonName || headerPersonAvatarUrl ? { name: headerPersonName, avatarUrl: headerPersonAvatarUrl } : void 0;
61263
61241
  const handleNewChat = _react.useCallback.call(void 0, () => {
61264
61242
  resetToNewChat();
@@ -61619,9 +61597,9 @@ function EmbeddableChatInner({
61619
61597
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
61620
61598
  subtitleLoading: emptyStateLoading,
61621
61599
  ...guideWelcome,
61622
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1739 => _1739.title]))),
61623
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1740 => _1740.icon]))),
61624
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1741 => _1741.quickActions]), () => ( guideSuggestedActions)),
61600
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1737 => _1737.title]))),
61601
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1738 => _1738.icon]))),
61602
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1739 => _1739.quickActions]), () => ( guideSuggestedActions)),
61625
61603
  onQuickAction: (action) => {
61626
61604
  setQuickActionPreview(null);
61627
61605
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -61701,8 +61679,8 @@ function EmbeddableChatInner({
61701
61679
  selectedContextItems: contextItems,
61702
61680
  onToggleContextItem: toggleContextItem,
61703
61681
  onRemoveContextItem: removeContextItem,
61704
- contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1742 => _1742.items]),
61705
- onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1743 => _1743.onRemove]),
61682
+ contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1740 => _1740.items]),
61683
+ onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1741 => _1741.onRemove]),
61706
61684
  contextPickerOpen,
61707
61685
  onOpenContextPicker: openContextPicker,
61708
61686
  onCloseContextPicker: closeContextPicker,
@@ -62913,4 +62891,4 @@ function EmbeddableChatInner({
62913
62891
 
62914
62892
 
62915
62893
  exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.FloatingTooltip = FloatingTooltip; exports.TruncateText = TruncateText; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.formatDate = formatDate2; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.titleCaseFromSlug = titleCaseFromSlug; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalTwoColumn = ModalTwoColumn; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.MermaidDiagram = MermaidDiagram; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.AiAssistantInfo = AiAssistantInfo; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.TICKET_EVENT_KIND = TICKET_EVENT_KIND; exports.TicketEventMessage = TicketEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.GuideDisplay = GuideDisplay; exports.AskDisplay = AskDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.ChatContextMemoryBar = ChatContextMemoryBar; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.EmployeeEntryBadge = EmployeeEntryBadge; exports.EmployeeEntryCard = EmployeeEntryCard; exports.EmployeeEntryCardSkeleton = EmployeeEntryCardSkeleton; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.HowIWorkCard = HowIWorkCard; exports.HowIWorkCardSkeleton = HowIWorkCardSkeleton; exports.getCaptionsUrl = getCaptionsUrl; exports.rebaseCaptionsUrl = rebaseCaptionsUrl; exports.buildCaptionsUrl = buildCaptionsUrl; exports.getEntityCaptionUrls = getEntityCaptionUrls; exports.getEntityCaptionUrlsById = getEntityCaptionUrlsById; exports.captionsEntityTypeForDocType = captionsEntityTypeForDocType; exports.useCaptions = useCaptions; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.CardHitLayer = CardHitLayer; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.AvatarStack = AvatarStack; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.clickupTaskUrl = clickupTaskUrl; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.isGuideApproval = isGuideApproval; exports.guideApprovalOrigin = guideApprovalOrigin; exports.approvalDisplaysInline = approvalDisplaysInline; exports.isGuideApprovalSegment = isGuideApprovalSegment; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.useSseChatAdapter = useSseChatAdapter; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.BackButton = BackButton; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.FilterPillRow = FilterPillRow; exports.MingoAiButton = MingoAiButton; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.useOptionalTicketLive = useOptionalTicketLive; exports.useTicketLive = useTicketLive; exports.TicketLiveProvider = TicketLiveProvider; exports.isOptimistic = isOptimistic; exports.TICKET_TEXT_MAX_CHARS = TICKET_TEXT_MAX_CHARS; exports.TICKET_MARK_READ_DEBOUNCE_MS = TICKET_MARK_READ_DEBOUNCE_MS; exports.TOAST_COPY = TOAST_COPY; exports.TicketAlertsButton = TicketAlertsButton; exports.TopNavigation = TopNavigation; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NAVIGATION_SIDEBAR_WIDTH_VAR = NAVIGATION_SIDEBAR_WIDTH_VAR; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
62916
- //# sourceMappingURL=chunk-M3SHPHQ7.cjs.map
62894
+ //# sourceMappingURL=chunk-2HWN6CYI.cjs.map