@flamingo-stack/openframe-frontend-core 0.0.489 → 0.0.490-1506.3944.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. package/dist/chat-protocol/decode.d.ts +58 -0
  2. package/dist/chat-protocol/decode.d.ts.map +1 -0
  3. package/dist/chat-protocol/encode.d.ts +44 -0
  4. package/dist/chat-protocol/encode.d.ts.map +1 -0
  5. package/dist/chat-protocol/env-flag.d.ts +35 -0
  6. package/dist/chat-protocol/env-flag.d.ts.map +1 -0
  7. package/dist/chat-protocol/events.d.ts +196 -0
  8. package/dist/chat-protocol/events.d.ts.map +1 -0
  9. package/dist/chat-protocol/frames.d.ts +213 -0
  10. package/dist/chat-protocol/frames.d.ts.map +1 -0
  11. package/dist/chat-protocol/index.cjs +494 -0
  12. package/dist/chat-protocol/index.cjs.map +1 -0
  13. package/dist/chat-protocol/index.d.ts +18 -0
  14. package/dist/chat-protocol/index.d.ts.map +1 -0
  15. package/dist/chat-protocol/index.js +478 -0
  16. package/dist/chat-protocol/index.js.map +1 -0
  17. package/dist/chat-protocol/ip-normalize.d.ts +44 -0
  18. package/dist/chat-protocol/ip-normalize.d.ts.map +1 -0
  19. package/dist/chat-protocol/nats-decoder.d.ts +26 -0
  20. package/dist/chat-protocol/nats-decoder.d.ts.map +1 -0
  21. package/dist/{chunk-K7MNWYYI.js → chunk-4NWARV5I.js} +2 -2
  22. package/dist/{chunk-2RNJYJWO.cjs → chunk-5CJR2GZ4.cjs} +31 -31
  23. package/dist/{chunk-2RNJYJWO.cjs.map → chunk-5CJR2GZ4.cjs.map} +1 -1
  24. package/dist/{chunk-H3YRJ3LZ.cjs → chunk-5EYRXSY5.cjs} +9 -9
  25. package/dist/{chunk-H3YRJ3LZ.cjs.map → chunk-5EYRXSY5.cjs.map} +1 -1
  26. package/dist/{chunk-IN4IO7BL.cjs → chunk-5LMGFI4J.cjs} +6930 -4755
  27. package/dist/chunk-5LMGFI4J.cjs.map +1 -0
  28. package/dist/{chunk-YMJZOANX.js → chunk-BE6DK7QY.js} +12228 -10053
  29. package/dist/chunk-BE6DK7QY.js.map +1 -0
  30. package/dist/{chunk-TWGYBXYV.js → chunk-CORIBKHG.js} +2 -2
  31. package/dist/{chunk-RO7Q56ZK.cjs → chunk-CSYSYJCF.cjs} +37 -37
  32. package/dist/{chunk-RO7Q56ZK.cjs.map → chunk-CSYSYJCF.cjs.map} +1 -1
  33. package/dist/{chunk-Z7Y63IFU.cjs → chunk-DSDZ5T4P.cjs} +5 -5
  34. package/dist/{chunk-Z7Y63IFU.cjs.map → chunk-DSDZ5T4P.cjs.map} +1 -1
  35. package/dist/{chunk-EU6QNO4S.js → chunk-GTWO5NAY.js} +2 -2
  36. package/dist/{chunk-BGWDDB7Y.js → chunk-HSACATCD.js} +2 -2
  37. package/dist/{chunk-3OIB763B.cjs → chunk-NWX7MMF5.cjs} +15 -15
  38. package/dist/{chunk-3OIB763B.cjs.map → chunk-NWX7MMF5.cjs.map} +1 -1
  39. package/dist/{chunk-J7H32E3R.cjs → chunk-P4WTZU6L.cjs} +11 -11
  40. package/dist/{chunk-J7H32E3R.cjs.map → chunk-P4WTZU6L.cjs.map} +1 -1
  41. package/dist/{chunk-VLOE7MI2.cjs → chunk-Q6E7VJ4W.cjs} +28 -27
  42. package/dist/chunk-Q6E7VJ4W.cjs.map +1 -0
  43. package/dist/{chunk-ZIAS5NNL.cjs → chunk-QSCHCZL3.cjs} +7 -7
  44. package/dist/{chunk-ZIAS5NNL.cjs.map → chunk-QSCHCZL3.cjs.map} +1 -1
  45. package/dist/{chunk-VL4LUO32.js → chunk-RQLBHKXN.js} +2 -2
  46. package/dist/{chunk-5YMY4BAW.cjs → chunk-S2NHJDKQ.cjs} +62 -62
  47. package/dist/{chunk-5YMY4BAW.cjs.map → chunk-S2NHJDKQ.cjs.map} +1 -1
  48. package/dist/{chunk-N4MTNTSX.js → chunk-T2EGSZFN.js} +6 -5
  49. package/dist/chunk-T2EGSZFN.js.map +1 -0
  50. package/dist/{chunk-W6ZUOWSB.js → chunk-TKN5667N.js} +10 -10
  51. package/dist/chunk-TKN5667N.js.map +1 -0
  52. package/dist/{chunk-B4YR342L.js → chunk-UUYRJPGJ.js} +4 -4
  53. package/dist/{chunk-FKPXFTZT.js → chunk-VHG6AX5V.js} +2 -2
  54. package/dist/{chunk-2IHN7NNB.cjs → chunk-VQ523ORK.cjs} +26 -26
  55. package/dist/{chunk-2IHN7NNB.cjs.map → chunk-VQ523ORK.cjs.map} +1 -1
  56. package/dist/{chunk-X2YF5TJS.js → chunk-XQ2B74SI.js} +2 -2
  57. package/dist/{chunk-LLEDO4P7.cjs → chunk-YHOIAA2E.cjs} +60 -60
  58. package/dist/chunk-YHOIAA2E.cjs.map +1 -0
  59. package/dist/{chunk-5VSEMWWE.js → chunk-YZ2OIYQ3.js} +4 -4
  60. package/dist/components/case-studies/index.cjs +8 -8
  61. package/dist/components/case-studies/index.js +2 -2
  62. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  63. package/dist/components/chat/chat-message-list.d.ts.map +1 -1
  64. package/dist/components/chat/hooks/index.d.ts +0 -1
  65. package/dist/components/chat/hooks/index.d.ts.map +1 -1
  66. package/dist/components/chat/hooks/use-chat.d.ts.map +1 -1
  67. package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts +15 -48
  68. package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts.map +1 -1
  69. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts +10 -57
  70. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts.map +1 -1
  71. package/dist/components/chat/index.cjs +10 -2
  72. package/dist/components/chat/index.cjs.map +1 -1
  73. package/dist/components/chat/index.d.ts +1 -0
  74. package/dist/components/chat/index.d.ts.map +1 -1
  75. package/dist/components/chat/index.js +21 -13
  76. package/dist/components/chat/stream/chat-dialog-store.d.ts +184 -0
  77. package/dist/components/chat/stream/chat-dialog-store.d.ts.map +1 -0
  78. package/dist/components/chat/stream/chat-stream-reducer.d.ts +367 -0
  79. package/dist/components/chat/stream/chat-stream-reducer.d.ts.map +1 -0
  80. package/dist/components/chat/stream/delta-batcher.d.ts +51 -0
  81. package/dist/components/chat/stream/delta-batcher.d.ts.map +1 -0
  82. package/dist/components/chat/stream/index.d.ts +17 -0
  83. package/dist/components/chat/stream/index.d.ts.map +1 -0
  84. package/dist/components/chat/stream/message-mutations.d.ts +77 -0
  85. package/dist/components/chat/stream/message-mutations.d.ts.map +1 -0
  86. package/dist/components/chat/stream/use-chat-stream-reducer.d.ts +22 -0
  87. package/dist/components/chat/stream/use-chat-stream-reducer.d.ts.map +1 -0
  88. package/dist/components/chat/types/api.types.d.ts +1 -81
  89. package/dist/components/chat/types/api.types.d.ts.map +1 -1
  90. package/dist/components/chat/types/processing.types.d.ts +2 -90
  91. package/dist/components/chat/types/processing.types.d.ts.map +1 -1
  92. package/dist/components/chat/utils/extract-incomplete-message-state.d.ts +34 -6
  93. package/dist/components/chat/utils/extract-incomplete-message-state.d.ts.map +1 -1
  94. package/dist/components/chat/utils/index.d.ts +2 -3
  95. package/dist/components/chat/utils/index.d.ts.map +1 -1
  96. package/dist/components/chat/utils/process-historical-messages.d.ts +59 -11
  97. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  98. package/dist/components/contact/index.cjs +3 -3
  99. package/dist/components/contact/index.js +2 -2
  100. package/dist/components/docs/index.cjs +5 -5
  101. package/dist/components/docs/index.js +4 -4
  102. package/dist/components/embeds/index.cjs +3 -3
  103. package/dist/components/embeds/index.js +2 -2
  104. package/dist/components/faq/index.cjs +3 -3
  105. package/dist/components/faq/index.js +2 -2
  106. package/dist/components/features/index.cjs +2 -2
  107. package/dist/components/features/index.js +1 -1
  108. package/dist/components/help-center-pages/index.cjs +20 -20
  109. package/dist/components/help-center-pages/index.js +11 -11
  110. package/dist/components/index.cjs +172 -130
  111. package/dist/components/index.cjs.map +1 -1
  112. package/dist/components/index.js +63 -21
  113. package/dist/components/index.js.map +1 -1
  114. package/dist/components/navigation/index.cjs +2 -2
  115. package/dist/components/navigation/index.js +1 -1
  116. package/dist/components/onboarding-guides/index.cjs +5 -5
  117. package/dist/components/onboarding-guides/index.js +4 -4
  118. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts.map +1 -1
  119. package/dist/components/related-content/index.cjs +3 -3
  120. package/dist/components/related-content/index.js +2 -2
  121. package/dist/components/shared/product-release/release-detail-page.d.ts.map +1 -1
  122. package/dist/components/tickets/index.cjs +5 -5
  123. package/dist/components/tickets/index.js +4 -4
  124. package/dist/components/ui/index.cjs +44 -2
  125. package/dist/components/ui/index.cjs.map +1 -1
  126. package/dist/components/ui/index.d.ts +1 -2
  127. package/dist/components/ui/index.d.ts.map +1 -1
  128. package/dist/components/ui/index.js +55 -13
  129. package/dist/components/ui/markdown/base-components.d.ts +51 -0
  130. package/dist/components/ui/markdown/base-components.d.ts.map +1 -0
  131. package/dist/components/ui/markdown/engine.d.ts +99 -0
  132. package/dist/components/ui/markdown/engine.d.ts.map +1 -0
  133. package/dist/components/ui/markdown/heading-ids.d.ts +65 -0
  134. package/dist/components/ui/markdown/heading-ids.d.ts.map +1 -0
  135. package/dist/components/ui/markdown/index.d.ts +18 -0
  136. package/dist/components/ui/markdown/index.d.ts.map +1 -0
  137. package/dist/components/ui/markdown/mermaid-diagram.d.ts +79 -0
  138. package/dist/components/ui/markdown/mermaid-diagram.d.ts.map +1 -0
  139. package/dist/components/ui/markdown/rich/embed-overrides.d.ts +14 -0
  140. package/dist/components/ui/markdown/rich/embed-overrides.d.ts.map +1 -0
  141. package/dist/components/ui/markdown/rich/rich-markdown-renderer.d.ts +40 -0
  142. package/dist/components/ui/markdown/rich/rich-markdown-renderer.d.ts.map +1 -0
  143. package/dist/components/ui/markdown/rich/shortcodes.d.ts +8 -0
  144. package/dist/components/ui/markdown/rich/shortcodes.d.ts.map +1 -0
  145. package/dist/components/ui/markdown/sanitize.d.ts +153 -0
  146. package/dist/components/ui/markdown/sanitize.d.ts.map +1 -0
  147. package/dist/components/ui/markdown/simple-markdown-renderer.d.ts +23 -0
  148. package/dist/components/ui/markdown/simple-markdown-renderer.d.ts.map +1 -0
  149. package/dist/components/ui/markdown/streaming.d.ts +78 -0
  150. package/dist/components/ui/markdown/streaming.d.ts.map +1 -0
  151. package/dist/components/ui/markdown/text-size.d.ts +34 -0
  152. package/dist/components/ui/markdown/text-size.d.ts.map +1 -0
  153. package/dist/index.cjs +60 -2
  154. package/dist/index.cjs.map +1 -1
  155. package/dist/index.js +71 -13
  156. package/dist/utils/index.cjs +169 -40
  157. package/dist/utils/index.cjs.map +1 -1
  158. package/dist/utils/index.d.ts +1 -0
  159. package/dist/utils/index.d.ts.map +1 -1
  160. package/dist/utils/index.js +162 -41
  161. package/dist/utils/index.js.map +1 -1
  162. package/dist/utils/markdown-fences.d.ts +42 -0
  163. package/dist/utils/markdown-fences.d.ts.map +1 -0
  164. package/dist/utils/markdown-heading-id.d.ts +85 -0
  165. package/dist/utils/markdown-heading-id.d.ts.map +1 -0
  166. package/dist/utils/markdown-section-extractor.d.ts.map +1 -1
  167. package/package.json +7 -1
  168. package/src/chat-protocol/__tests__/__snapshots__/nats-decoder-golden.test.ts.snap +307 -0
  169. package/src/chat-protocol/__tests__/chat-protocol.test.ts +516 -0
  170. package/src/chat-protocol/__tests__/env-flag.test.ts +52 -0
  171. package/src/chat-protocol/__tests__/ip-normalize.test.ts +136 -0
  172. package/src/chat-protocol/__tests__/nats-decoder-golden.test.ts +228 -0
  173. package/src/chat-protocol/decode.ts +278 -0
  174. package/src/chat-protocol/encode.ts +71 -0
  175. package/src/chat-protocol/env-flag.ts +39 -0
  176. package/src/chat-protocol/events.ts +232 -0
  177. package/src/chat-protocol/frames.ts +245 -0
  178. package/src/chat-protocol/index.ts +21 -0
  179. package/src/chat-protocol/ip-normalize.ts +146 -0
  180. package/src/chat-protocol/nats-decoder.ts +252 -0
  181. package/src/components/chat/__tests__/chat-message-list.test.tsx +293 -5
  182. package/src/components/chat/__tests__/chat-message-streaming-memo.test.tsx +207 -0
  183. package/src/components/chat/__tests__/chat-pending-turn.test.tsx +209 -0
  184. package/src/components/chat/chat-message-enhanced.tsx +111 -17
  185. package/src/components/chat/chat-message-list.tsx +358 -109
  186. package/src/components/chat/embeddable-chat.tsx +6 -0
  187. package/src/components/chat/hooks/.index.md +30 -33
  188. package/src/components/chat/hooks/.use-nats-chat-adapter.md +36 -55
  189. package/src/components/chat/hooks/__tests__/__snapshots__/conversation-id-persistence-golden.test.ts.snap +37 -0
  190. package/src/components/chat/hooks/__tests__/__snapshots__/sse-stream-golden.test.ts.snap +0 -0
  191. package/src/components/chat/hooks/__tests__/conversation-id-persistence-golden.test.ts +438 -0
  192. package/src/components/chat/hooks/__tests__/sse-stream-golden.test.ts +318 -0
  193. package/src/components/chat/hooks/index.ts +0 -1
  194. package/src/components/chat/hooks/use-chat.ts +8 -0
  195. package/src/components/chat/hooks/use-nats-chat-adapter.ts +243 -823
  196. package/src/components/chat/hooks/use-sse-chat-adapter.ts +380 -684
  197. package/src/components/chat/index.ts +5 -0
  198. package/src/components/chat/stream/__tests__/__snapshots__/chat-stream-reducer-golden.test.ts.snap +940 -0
  199. package/src/components/chat/stream/__tests__/chat-dialog-store.test.ts +756 -0
  200. package/src/components/chat/stream/__tests__/chat-stream-reducer-golden.test.ts +460 -0
  201. package/src/components/chat/stream/__tests__/chat-stream-reducer.test.ts +894 -0
  202. package/src/components/chat/stream/__tests__/delta-batcher.test.ts +255 -0
  203. package/src/components/chat/stream/__tests__/use-chat-stream-reducer.test.ts +98 -0
  204. package/src/components/chat/stream/chat-dialog-store.ts +536 -0
  205. package/src/components/chat/stream/chat-stream-reducer.ts +1796 -0
  206. package/src/components/chat/stream/delta-batcher.ts +159 -0
  207. package/src/components/chat/stream/index.ts +55 -0
  208. package/src/components/chat/stream/message-mutations.ts +338 -0
  209. package/src/components/chat/stream/use-chat-stream-reducer.ts +126 -0
  210. package/src/components/chat/thinking-display.tsx +1 -1
  211. package/src/components/chat/types/.api.types.md +39 -49
  212. package/src/components/chat/types/.processing.types.md +29 -58
  213. package/src/components/chat/types/api.types.ts +6 -73
  214. package/src/components/chat/types/processing.types.ts +11 -52
  215. package/src/components/chat/utils/.index.md +31 -40
  216. package/src/components/chat/utils/__tests__/__snapshots__/process-historical-messages-golden.test.ts.snap +420 -0
  217. package/src/components/chat/utils/__tests__/__snapshots__/segment-accumulator-golden.test.ts.snap +605 -0
  218. package/src/components/chat/utils/__tests__/process-historical-messages-golden.test.ts +317 -0
  219. package/src/components/chat/utils/__tests__/segment-accumulator-golden.test.ts +270 -0
  220. package/src/components/chat/utils/extract-incomplete-message-state.ts +63 -5
  221. package/src/components/chat/utils/index.ts +5 -8
  222. package/src/components/chat/utils/process-historical-messages.ts +352 -384
  223. package/src/components/onboarding-guides/onboarding-guide-detail-view.tsx +22 -4
  224. package/src/components/shared/legal-document/legal-document-page.tsx +1 -1
  225. package/src/components/shared/product-release/release-detail-page.tsx +19 -4
  226. package/src/components/ui/__tests__/__snapshots__/markdown-parity.test.tsx.snap +2420 -0
  227. package/src/components/ui/__tests__/markdown-parity.test.tsx +2528 -0
  228. package/src/components/ui/index.ts +1 -2
  229. package/src/components/ui/markdown/__tests__/mermaid-security.test.ts +115 -0
  230. package/src/components/ui/markdown/__tests__/mermaid-stale-render.test.tsx +95 -0
  231. package/src/components/ui/markdown/__tests__/sanitize-invariant.test.ts +309 -0
  232. package/src/components/ui/markdown/__tests__/streaming.test.tsx +388 -0
  233. package/src/components/ui/markdown/base-components.tsx +360 -0
  234. package/src/components/ui/markdown/engine.tsx +315 -0
  235. package/src/components/ui/markdown/heading-ids.ts +239 -0
  236. package/src/components/ui/markdown/index.ts +49 -0
  237. package/src/components/ui/markdown/mermaid-diagram.tsx +291 -0
  238. package/src/components/ui/markdown/rich/embed-overrides.tsx +199 -0
  239. package/src/components/ui/markdown/rich/rich-markdown-renderer.tsx +184 -0
  240. package/src/components/ui/markdown/rich/shortcodes.ts +170 -0
  241. package/src/components/ui/markdown/sanitize.ts +3499 -0
  242. package/src/components/ui/markdown/simple-markdown-renderer.tsx +28 -0
  243. package/src/components/ui/markdown/streaming.ts +362 -0
  244. package/src/components/ui/markdown/text-size.ts +106 -0
  245. package/src/components/ui/release-changelog-section.tsx +1 -1
  246. package/src/components/ui/ticket-info-section.tsx +1 -1
  247. package/src/utils/index.ts +1 -0
  248. package/src/utils/markdown-fences.ts +127 -0
  249. package/src/utils/markdown-heading-id.ts +348 -0
  250. package/src/utils/markdown-section-extractor.ts +41 -56
  251. package/dist/chunk-IN4IO7BL.cjs.map +0 -1
  252. package/dist/chunk-LLEDO4P7.cjs.map +0 -1
  253. package/dist/chunk-N4MTNTSX.js.map +0 -1
  254. package/dist/chunk-VLOE7MI2.cjs.map +0 -1
  255. package/dist/chunk-W6ZUOWSB.js.map +0 -1
  256. package/dist/chunk-YMJZOANX.js.map +0 -1
  257. package/dist/components/chat/hooks/use-realtime-chunk-processor.d.ts +0 -6
  258. package/dist/components/chat/hooks/use-realtime-chunk-processor.d.ts.map +0 -1
  259. package/dist/components/chat/utils/chunk-parser.d.ts +0 -25
  260. package/dist/components/chat/utils/chunk-parser.d.ts.map +0 -1
  261. package/dist/components/ui/rich-markdown-renderer.d.ts +0 -34
  262. package/dist/components/ui/rich-markdown-renderer.d.ts.map +0 -1
  263. package/dist/components/ui/simple-markdown-renderer.d.ts +0 -73
  264. package/dist/components/ui/simple-markdown-renderer.d.ts.map +0 -1
  265. package/src/components/chat/hooks/.use-realtime-chunk-processor.md +0 -77
  266. package/src/components/chat/hooks/use-realtime-chunk-processor.ts +0 -479
  267. package/src/components/chat/utils/.chunk-parser.md +0 -62
  268. package/src/components/chat/utils/chunk-parser.ts +0 -256
  269. package/src/components/ui/.simple-markdown-renderer.md +0 -52
  270. package/src/components/ui/rich-markdown-renderer.tsx +0 -1223
  271. package/src/components/ui/simple-markdown-renderer.tsx +0 -964
  272. /package/dist/{chunk-K7MNWYYI.js.map → chunk-4NWARV5I.js.map} +0 -0
  273. /package/dist/{chunk-TWGYBXYV.js.map → chunk-CORIBKHG.js.map} +0 -0
  274. /package/dist/{chunk-EU6QNO4S.js.map → chunk-GTWO5NAY.js.map} +0 -0
  275. /package/dist/{chunk-BGWDDB7Y.js.map → chunk-HSACATCD.js.map} +0 -0
  276. /package/dist/{chunk-VL4LUO32.js.map → chunk-RQLBHKXN.js.map} +0 -0
  277. /package/dist/{chunk-B4YR342L.js.map → chunk-UUYRJPGJ.js.map} +0 -0
  278. /package/dist/{chunk-FKPXFTZT.js.map → chunk-VHG6AX5V.js.map} +0 -0
  279. /package/dist/{chunk-X2YF5TJS.js.map → chunk-XQ2B74SI.js.map} +0 -0
  280. /package/dist/{chunk-5VSEMWWE.js.map → chunk-YZ2OIYQ3.js.map} +0 -0
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import type { ChunkData, NatsMessageType, FetchChunksFunction } from './network.types';
6
6
  import type { ChatType, ChatApprovalStatus } from './chat.types';
7
- import type { MessageSegment, PendingToolCallData, TokenUsageData, ExecutingToolState, ToolExecutionSegment } from './message.types';
7
+ import type { MessageSegment, TokenUsageData, ToolExecutionSegment } from './message.types';
8
8
  export interface UseChunkCatchupOptions {
9
9
  dialogId: string | null;
10
10
  onChunkReceived: (chunk: ChunkData, messageType: NatsMessageType) => void;
@@ -222,86 +222,6 @@ export interface RealtimeChunkCallbacks {
222
222
  /** Called when a DIALOG_CLOSED chunk is received */
223
223
  onDialogClosed?: () => void;
224
224
  }
225
- export interface UseRealtimeChunkProcessorOptions {
226
- callbacks: RealtimeChunkCallbacks;
227
- /**
228
- * Filter approval types that should be displayed directly
229
- * Others will trigger onEscalatedApproval
230
- * Default: ['CLIENT']
231
- */
232
- displayApprovalTypes?: string[];
233
- /**
234
- * Map of existing approval statuses
235
- */
236
- approvalStatuses?: Record<string, ChatApprovalStatus>;
237
- /**
238
- * Initialize accumulator with existing state from incomplete historical message
239
- * Used to continue building messages across page refreshes or reconnections
240
- */
241
- initialState?: {
242
- /** Existing segments to continue building upon */
243
- existingSegments?: MessageSegment[];
244
- /** Pending approvals that haven't been resolved */
245
- pendingApprovals?: Map<string, {
246
- command: string;
247
- explanation?: string;
248
- approvalType: string;
249
- }>;
250
- /** Executing tools waiting for completion */
251
- executingTools?: Map<string, ExecutingToolState>;
252
- /** Escalated approvals */
253
- escalatedApprovals?: Map<string, {
254
- command: string;
255
- explanation?: string;
256
- approvalType: string;
257
- toolCalls?: PendingToolCallData[];
258
- }>;
259
- };
260
- /**
261
- * Consumer-owned (e.g. set in `openframe-oss-tenant` chat client via the
262
- * `'batch-approvals'` feature flag and forwarded here). The lib does NOT
263
- * default this to a batch-on behavior — when omitted it falls back to the
264
- * legacy single-card rendering.
265
- *
266
- * When true: `APPROVAL_REQUEST` chunks containing `toolCalls[]` are rendered
267
- * as a single batch card. When false / omitted: the batch is split into N
268
- * legacy approval cards (one per tool that requires approval), all sharing
269
- * the same `approvalRequestId`. Tools with `requiresApproval=false` are
270
- * dropped from the UI in the unfolded mode.
271
- */
272
- batchApprovalsEnabled?: boolean;
273
- /**
274
- * Engages the direct-mode barrier optimistically: once true, all AI-assistant
275
- * chunks (text, thinking, tool executions, approvals, metadata, errors, etc.)
276
- * are dropped and any open stream is torn down, leaving only human/control
277
- * messages. A `DIRECT_MESSAGE` chunk engages the same barrier automatically
278
- * regardless of this flag. Pass this from a host that already knows the dialog
279
- * switched to direct mode (e.g. an optimistic mode toggle) to close the race
280
- * window before the server emits the first `DIRECT_MESSAGE`.
281
- *
282
- * Do NOT set this when the host reconstructs history by replaying chunks
283
- * through `processChunk` — a static flag would drop legitimate pre-switch AI
284
- * history. Rely on the in-order `DIRECT_MESSAGE` detection instead.
285
- */
286
- isDirectMode?: boolean;
287
- }
288
- export interface UseRealtimeChunkProcessorReturn {
289
- /** Process a single chunk */
290
- processChunk: (chunk: unknown) => void;
291
- /** Get current segments */
292
- getSegments: () => MessageSegment[];
293
- /** Reset the accumulator */
294
- reset: () => void;
295
- /** Update approval status for a request */
296
- updateApprovalStatus: (requestId: string, status: ChatApprovalStatus, resolvedByName?: string | null) => MessageSegment[];
297
- /** Get pending approval requests */
298
- getPendingApprovals: () => Map<string, {
299
- command: string;
300
- explanation?: string;
301
- approvalType: string;
302
- toolCalls?: PendingToolCallData[];
303
- }>;
304
- }
305
225
  export interface ChatAPIRequest {
306
226
  dialogId: string;
307
227
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/api.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/api.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACtF,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,KAAK,EACV,cAAc,EAEd,cAAc,EAEd,oBAAoB,EACrB,MAAM,iBAAiB,CAAA;AAIxB,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,eAAe,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,KAAK,IAAI,CAAA;IACzE;;;OAGG;IACH,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAA;CAClC;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,eAAe,EAAE,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,KAAK,IAAI,CAAA;IAClE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,wGAAwG;IACxG,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC9C;;OAEG;IACH,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACjC;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE;QACpB,4FAA4F;QAC5F,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,8FAA8F;QAC9F,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,4FAA4F;QAC5F,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,uFAAuF;QACvF,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,yGAAyG;QACzG,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;CACF;AAID,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChE,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,OAAO,CAAA;IACjG,kBAAkB,EAAE,MAAM,IAAI,CAAA;IAC9B,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,iBAAiB,EAAE,MAAM,OAAO,CAAA;IAChC,cAAc,EAAE,MAAM,CAAA;IACtB,kIAAkI;IAClI,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC;AAED,MAAM,WAAW,+BAA+B;IAC9C,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,wFAAwF;IACxF,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,qCAAqC;IACpD,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,oCAAoC;IACpC,KAAK,EAAE,eAAe,CAAA;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,KAAK,IAAI,CAAA;IAClE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC9C,qEAAqE;IACrE,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACjC,YAAY,CAAC,EAAE;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,mBAAmB,CAAC,EAAE;QACpB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;IACD,0FAA0F;IAC1F,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,oCAAoC;IACnD,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,oFAAoF;IACpF,iBAAiB,EAAE,MAAM,CAAA;IACzB,sFAAsF;IACtF,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,qDAAqD;IACrD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;;+DAG2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;IACxB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,gBAAgB,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC7H,uCAAuC;IACvC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,QAAQ,CAAC,EAAE,sBAAsB,KAAK,IAAI,CAAA;IAC1F,uCAAuC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACnD;;qEAEiE;IACjE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,KAAK,IAAI,CAAA;IACxL,iEAAiE;IACjE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAC7C;yEACqE;IACrE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACtI,8EAA8E;IAC9E,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC3E,oCAAoC;IACpC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACxD,qCAAqC;IACrC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACvD,6EAA6E;IAC7E,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACxH,2DAA2D;IAC3D,yBAAyB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACjJ;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAClI;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACxD;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;IACxB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC5B;AAWD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,MAAM,CAAA;IAC5C,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAC,CAAA;IACF,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB;AAID,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAID,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf"}
@@ -2,79 +2,9 @@
2
2
  * Message processing and transformation types
3
3
  * Contains types for message parsing, accumulation, and processing
4
4
  */
5
- import type { MessageSegment, ProcessedMessage, ToolExecutionSegment, TokenUsageData, PendingToolCallData, ExecutingToolState } from './message.types';
5
+ import type { MessageSegment, PendingToolCallData, ExecutingToolState } from './message.types';
6
6
  import type { ChatApprovalStatus, AssistantType } from './chat.types';
7
- import type { ChunkData, NatsMessageType } from './network.types';
8
- export type ParsedChunkAction = {
9
- action: 'message_start';
10
- } | {
11
- action: 'message_end';
12
- } | {
13
- action: 'error';
14
- error: string;
15
- details?: string;
16
- } | {
17
- action: 'metadata';
18
- modelDisplayName: string;
19
- modelName: string;
20
- providerName: string;
21
- contextWindow: number;
22
- } | {
23
- action: 'text';
24
- text: string;
25
- } | {
26
- action: 'thinking';
27
- text: string;
28
- } | {
29
- action: 'tool_execution';
30
- segment: ToolExecutionSegment;
31
- } | {
32
- action: 'approval_request';
33
- requestId: string;
34
- command: string;
35
- explanation?: string;
36
- approvalType: string;
37
- } | {
38
- action: 'approval_batch';
39
- requestId: string;
40
- approvalType: string;
41
- toolCalls: PendingToolCallData[];
42
- } | {
43
- action: 'approval_result';
44
- requestId: string;
45
- approved: boolean;
46
- approvalType: string;
47
- resolvedByName?: string | null;
48
- } | {
49
- action: 'message_request';
50
- text: string;
51
- ownerType?: string;
52
- displayName?: string;
53
- userId?: string;
54
- contextItems?: Array<{
55
- type: string;
56
- id: string;
57
- }>;
58
- } | {
59
- action: 'token_usage';
60
- data: TokenUsageData;
61
- } | {
62
- action: 'direct_message';
63
- text: string;
64
- ownerType?: string;
65
- displayName?: string;
66
- userId?: string;
67
- } | {
68
- action: 'system';
69
- text: string;
70
- } | {
71
- action: 'context_compaction_start';
72
- } | {
73
- action: 'context_compaction_end';
74
- summary?: string;
75
- } | {
76
- action: 'dialog_closed';
77
- };
7
+ import type { ChunkData } from './network.types';
78
8
  export interface PendingApproval {
79
9
  command: string;
80
10
  explanation?: string;
@@ -116,24 +46,6 @@ export interface MessageProcessingOptions {
116
46
  */
117
47
  batchApprovalsEnabled?: boolean;
118
48
  }
119
- export interface ChunkProcessor {
120
- processChunk: (chunk: ChunkData, messageType: NatsMessageType) => ParsedChunkAction | null;
121
- reset: () => void;
122
- }
123
- export interface ChunkProcessorOptions {
124
- onMessageStart?: () => void;
125
- onMessageEnd?: () => void;
126
- onError?: (error: string, details?: string) => void;
127
- onText?: (text: string) => void;
128
- onToolExecution?: (segment: MessageSegment) => void;
129
- onApprovalRequest?: (data: any) => void;
130
- onApprovalResult?: (data: any) => void;
131
- onMetadata?: (data: any) => void;
132
- }
133
- export interface MessageTransformer {
134
- transform: (input: any) => ProcessedMessage | null;
135
- batch: (inputs: any[]) => ProcessedMessage[];
136
- }
137
49
  export interface TransformationOptions {
138
50
  preserveOriginal?: boolean;
139
51
  mergeSegments?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"processing.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/processing.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processing.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/processing.types.ts"],"names":[],"mappings":"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"}
@@ -2,14 +2,42 @@
2
2
  * Utility for extracting incomplete message state from historical messages
3
3
  * Used to continue building messages across realtime connections
4
4
  */
5
- import type { ProcessedMessage, MessageSegment, PendingApproval, ExecutingToolState } from '../types';
5
+ import type { ProcessedMessage } from '../types';
6
+ import type { InitializeExtras } from '../stream/chat-stream-reducer';
7
+ /**
8
+ * What the realtime accumulator needs to RESUME an unfinished turn.
9
+ *
10
+ * DERIVED, not restated: this is exactly the reducer's `InitializeExtras`
11
+ * minus `escalatedApprovals` (which only the live stream can produce — it has
12
+ * no historical representation to extract). Hosts pass the result straight
13
+ * into `reducer.initializeWithState(messages, extras)`, so the two must not
14
+ * drift; a structural coincidence is not a contract.
15
+ */
16
+ export type IncompleteMessageState = Omit<InitializeExtras, 'escalatedApprovals'>;
6
17
  /**
7
18
  * Extract incomplete message state from the last historical assistant message
8
19
  * Used to initialize realtime chunk processor when continuing an incomplete message
9
20
  */
10
- export declare function extractIncompleteMessageState(lastMessage: ProcessedMessage | undefined): {
11
- existingSegments?: MessageSegment[];
12
- pendingApprovals?: Map<string, PendingApproval>;
13
- executingTools?: Map<string, ExecutingToolState>;
14
- } | undefined;
21
+ export declare function extractIncompleteMessageState(lastMessage: ProcessedMessage | undefined): IncompleteMessageState | undefined;
22
+ /**
23
+ * THREAD-level generalization of `extractIncompleteMessageState`: given a
24
+ * processed thread, look at the TRAILING RUN of consecutive assistant
25
+ * messages (not just the very last row), flatten it to one segment list, and
26
+ * ask the single-message extractor whether that tail is unfinished.
27
+ *
28
+ * Why the run and not the last row: the backend can split one logical turn
29
+ * across several assistant messages (a preamble bubble, then the approval
30
+ * card, then the continuation). The unfinished artifact — a pending approval,
31
+ * an EXECUTING_TOOL with no result, an open compaction — can therefore sit in
32
+ * an EARLIER bubble of the same trailing run, and a last-row-only check
33
+ * reports "complete" while the turn is very much still in flight.
34
+ *
35
+ * SSOT for every "is the tail incomplete?" question — the NATS adapter (which
36
+ * used to inline the single-row check) and hosts replaying a stored thread
37
+ * both call this instead of re-deriving the walk.
38
+ *
39
+ * A trailing non-assistant row (user / error) means the last turn closed →
40
+ * `undefined`.
41
+ */
42
+ export declare function extractIncompleteTailState(messages: readonly ProcessedMessage[] | undefined): IncompleteMessageState | undefined;
15
43
  //# sourceMappingURL=extract-incomplete-message-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-incomplete-message-state.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/extract-incomplete-message-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,EACnB,MAAM,UAAU,CAAA;AAEjB;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,gBAAgB,GAAG,SAAS,GACxC;IACD,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAA;IACnC,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC/C,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;CACjD,GAAG,SAAS,CAwEZ"}
1
+ {"version":3,"file":"extract-incomplete-message-state.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/extract-incomplete-message-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAIjB,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAErE;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAA;AAEjF;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,gBAAgB,GAAG,SAAS,GACxC,sBAAsB,GAAG,SAAS,CAwEpC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GAAG,SAAS,GAChD,sBAAsB,GAAG,SAAS,CA0BpC"}
@@ -2,10 +2,9 @@
2
2
  * Message processing utilities
3
3
  * Export all utilities for processing chat messages
4
4
  */
5
- export { parseChunkToAction, isControlChunk, isErrorChunk, isMetadataChunk, extractTextFromChunk, } from './chunk-parser';
6
5
  export { MessageSegmentAccumulator, createMessageSegmentAccumulator, type AccumulatorCallbacks, } from './message-segment-accumulator';
7
- export { processHistoricalMessages, extractErrorMessages, processHistoricalMessagesWithErrors, } from './process-historical-messages';
8
- export { extractIncompleteMessageState, } from './extract-incomplete-message-state';
6
+ export { processHistoricalMessages, extractErrorMessages, processHistoricalMessagesWithErrors, decodeHistoricalMessageData, } from './process-historical-messages';
7
+ export { extractIncompleteMessageState, extractIncompleteTailState, } from './extract-incomplete-message-state';
9
8
  export { mergeHistoryWithRealtime, computeHistoryPrepend, flattenMessagePagesChronological, maxPersistedStreamSeq, SYNTHETIC_REALTIME_ID_PREFIXES, type MergeableChatMessage, type HistoryMergeInput, type HistoryPrependResult, } from './history-merge';
10
9
  export { getCommandText } from './tool-call-helpers';
11
10
  export { CHIP_ACTION_BUTTON_CLASS } from './chip-action-class';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAC/B,KAAK,oBAAoB,GAC1B,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,mCAAmC,EACnC,2BAA2B,GAC5B,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,oCAAoC,CAAA;AAG3C,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,gCAAgC,EAChC,qBAAqB,EACrB,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,kBAAkB,EAClB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAA;AAI5B,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,aAAa,GACnB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,KAAK,aAAa,GACnB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAGrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EACL,aAAa,EACb,KAAK,YAAY,EACjB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAC9B,KAAK,4BAA4B,GAClC,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,oBAAoB,EACpB,8BAA8B,EAC9B,KAAK,eAAe,EACpB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,+BAA+B,EAC/B,sCAAsC,EACtC,8BAA8B,EAC9B,KAAK,cAAc,EACnB,0BAA0B,EAC1B,oBAAoB,EACpB,qCAAqC,EACrC,6CAA6C,EAC7C,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD,OAAO,EAAE,KAAK,WAAW,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG/E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAG5E,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,gCAAgC,EAChC,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,QAAQ,GACT,MAAM,wBAAwB,CAAA;AAO/B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAA;AAIxB,OAAO,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,UAAU,GAChB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,iCAAiC,EACjC,6BAA6B,GAC9B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AAEzB,cAAc,mBAAmB,CAAA"}
@@ -1,19 +1,61 @@
1
1
  /**
2
- * Utility for processing historical messages from GraphQL/API
3
- * into display-ready format
2
+ * Utility for processing historical messages from GraphQL/API into
3
+ * display-ready format.
4
+ *
5
+ * Phase 3 of the chat unification reduced this file to DECODE + ENVELOPE:
6
+ *
7
+ * - `decodeHistoricalMessageData` maps one persisted `MessageData` item
8
+ * into the shared `ChatStreamEvent` vocabulary (historical items share
9
+ * the MESSAGE_TYPE vocabulary with NATS chunks but are NOT full chunk
10
+ * envelopes — e.g. compaction summaries ride in `summary`, not `text`,
11
+ * and APPROVAL_RESULT rows carry `resolvedByName` directly);
12
+ * - `applyHistoryEvent` replays each decoded event into the shared
13
+ * per-turn kernel (`MessageSegmentAccumulator` — the same kernel the
14
+ * master `createChatStreamReducer` instantiates) with the
15
+ * history-specific approval semantics (display-all default, pending
16
+ * tracking + `flushPendingApprovals`, `approvalStatuses` overrides);
17
+ * - the ENVELOPE (user/assistant flush-grouping, OWNER_TYPE author /
18
+ * display-name / avatar resolution, standalone SYSTEM handling,
19
+ * per-message contextItems mapping, per-turn streamSeq MAX) lives ONCE
20
+ * in `processHistory` — the previous near-duplicate second copy was
21
+ * deleted (`processHistoricalMessagesWithErrors` is an alias; the two
22
+ * snapshots were byte-identical).
23
+ *
24
+ * Adapters then feed the processed rows into the reducer via
25
+ * `initializeWithState` (see `useNatsChatAdapter.loadDialogHistory`).
4
26
  */
5
- import { type HistoricalMessage, type PendingToolCallData, type ProcessedMessage, type MessageProcessingOptions } from '../types';
27
+ import { type HistoricalMessage, type PendingToolCallData, type ProcessedMessage, type MessageProcessingOptions, type MessageData } from '../types';
28
+ import type { ChatStreamEvent } from '../../../chat-protocol/events';
29
+ /**
30
+ * Map one persisted `MessageData` item to a normalized `ChatStreamEvent`.
31
+ * Thin shim over the NATS chunk decoder's core mapping — the differences
32
+ * are exactly the persisted-row divergences from the realtime envelope:
33
+ *
34
+ * - compaction summaries arrive in `summary` (realtime: `text`);
35
+ * - APPROVAL_RESULT rows carry `resolvedByName` (realtime chunks carry
36
+ * the resolver's name as `displayName`);
37
+ * - `approvalType` defaults to 'CLIENT' (legacy history parity;
38
+ * realtime defaults APPROVAL_REQUEST to 'USER');
39
+ * - batch `toolCalls` pass through verbatim (already the persisted
40
+ * `PendingToolCallData` shape — no normalization pass).
41
+ *
42
+ * Returns `null` for rows the assistant-turn path doesn't decode (SYSTEM
43
+ * is handled by the envelope's standalone path; user TEXT rows are handled
44
+ * by the envelope's user path).
45
+ */
46
+ export declare function decodeHistoricalMessageData(data: MessageData): ChatStreamEvent | null;
47
+ type EscalatedApprovals = Map<string, {
48
+ command: string;
49
+ explanation?: string;
50
+ approvalType: string;
51
+ toolCalls?: PendingToolCallData[];
52
+ }>;
6
53
  /**
7
54
  * Result type for historical message processing
8
55
  */
9
56
  export interface ProcessHistoricalMessagesResult {
10
57
  messages: ProcessedMessage[];
11
- escalatedApprovals: Map<string, {
12
- command: string;
13
- explanation?: string;
14
- approvalType: string;
15
- toolCalls?: PendingToolCallData[];
16
- }>;
58
+ escalatedApprovals: EscalatedApprovals;
17
59
  }
18
60
  /**
19
61
  * Process an array of historical messages into display-ready format
@@ -25,7 +67,13 @@ export declare function processHistoricalMessages(messages: HistoricalMessage[],
25
67
  */
26
68
  export declare function extractErrorMessages(messages: HistoricalMessage[], options?: MessageProcessingOptions): ProcessedMessage[];
27
69
  /**
28
- * Process messages and include error messages in the correct order
70
+ * Process messages and include error messages in the correct order.
71
+ *
72
+ * HISTORICAL ALIAS: this was a byte-identical second copy of
73
+ * `processHistoricalMessages` (both goldens snapshot identical output on the
74
+ * same corpus). The duplicate envelope was deleted in Phase 3 — kept as an
75
+ * alias for the established import sites.
29
76
  */
30
- export declare function processHistoricalMessagesWithErrors(messages: HistoricalMessage[], options?: MessageProcessingOptions): ProcessHistoricalMessagesResult;
77
+ export declare const processHistoricalMessagesWithErrors: typeof processHistoricalMessages;
78
+ export {};
31
79
  //# sourceMappingURL=process-historical-messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-historical-messages.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/process-historical-messages.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAG9B,MAAM,UAAU,CAAA;AAuCjB;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,EAAE,gBAAgB,EAAE,CAAA;IAC5B,kBAAkB,EAAE,GAAG,CACrB,MAAM,EACN;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAA;KAAE,CACnG,CAAA;CACF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,GAAE,wBAA6B,GACrC,+BAA+B,CA6KjC;AA2ND;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,GAAE,wBAA6B,GACrC,gBAAgB,EAAE,CA8BpB;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,GAAE,wBAA6B,GACrC,+BAA+B,CAwJjC"}
1
+ {"version":3,"file":"process-historical-messages.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/utils/process-historical-messages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAEjB,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AA2CpE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,GAAG,IAAI,CAuGrF;AAMD,KAAK,kBAAkB,GAAG,GAAG,CAC3B,MAAM,EACN;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAAE,CACnG,CAAA;AAuLD;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,EAAE,gBAAgB,EAAE,CAAA;IAC5B,kBAAkB,EAAE,kBAAkB,CAAA;CACvC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,GAAE,wBAA6B,GACrC,+BAA+B,CA4KjC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,GAAE,wBAA6B,GACrC,gBAAgB,EAAE,CA8BpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mCAAmC,kCAA4B,CAAA"}
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunk2IHN7NNBcjs = require('../../chunk-2IHN7NNB.cjs');
5
- require('../../chunk-IN4IO7BL.cjs');
4
+ var _chunkVQ523ORKcjs = require('../../chunk-VQ523ORK.cjs');
5
+ require('../../chunk-5LMGFI4J.cjs');
6
6
  require('../../chunk-BIKOJ4FH.cjs');
7
7
  require('../../chunk-BGD345ZV.cjs');
8
8
  require('../../chunk-LILQJ3UZ.cjs');
@@ -20,5 +20,5 @@ require('../../chunk-W24U7ZUV.cjs');
20
20
  require('../../chunk-VRHGVLSL.cjs');
21
21
 
22
22
 
23
- exports.ContactForm = _chunk2IHN7NNBcjs.ContactForm;
23
+ exports.ContactForm = _chunkVQ523ORKcjs.ContactForm;
24
24
  //# sourceMappingURL=index.cjs.map
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import {
3
3
  ContactForm
4
- } from "../../chunk-VL4LUO32.js";
5
- import "../../chunk-YMJZOANX.js";
4
+ } from "../../chunk-RQLBHKXN.js";
5
+ import "../../chunk-BE6DK7QY.js";
6
6
  import "../../chunk-PB3BTZDU.js";
7
7
  import "../../chunk-OYGFWWLQ.js";
8
8
  import "../../chunk-6GT557KN.js";
@@ -9,10 +9,10 @@
9
9
 
10
10
 
11
11
 
12
- var _chunk2RNJYJWOcjs = require('../../chunk-2RNJYJWO.cjs');
13
- require('../../chunk-ZIAS5NNL.cjs');
14
- require('../../chunk-H3YRJ3LZ.cjs');
15
- require('../../chunk-IN4IO7BL.cjs');
12
+ var _chunk5CJR2GZ4cjs = require('../../chunk-5CJR2GZ4.cjs');
13
+ require('../../chunk-QSCHCZL3.cjs');
14
+ require('../../chunk-5EYRXSY5.cjs');
15
+ require('../../chunk-5LMGFI4J.cjs');
16
16
  require('../../chunk-BIKOJ4FH.cjs');
17
17
  require('../../chunk-BGD345ZV.cjs');
18
18
  require('../../chunk-LILQJ3UZ.cjs');
@@ -37,5 +37,5 @@ require('../../chunk-VRHGVLSL.cjs');
37
37
 
38
38
 
39
39
 
40
- exports.DocNavigationProvider = _chunk2RNJYJWOcjs.DocNavigationProvider; exports.DocViewer = _chunk2RNJYJWOcjs.DocViewer; exports.DocsHubPage = _chunk2RNJYJWOcjs.DocsHubPage; exports.EmbedSkeleton = _chunk2RNJYJWOcjs.EmbedSkeleton; exports.MarkdownSkeleton = _chunk2RNJYJWOcjs.MarkdownSkeleton; exports.useDocNavigation = _chunk2RNJYJWOcjs.useDocNavigation; exports.useDocumentTree = _chunk2RNJYJWOcjs.useDocumentTree; exports.useScrollSpy = _chunk2RNJYJWOcjs.useScrollSpy;
40
+ exports.DocNavigationProvider = _chunk5CJR2GZ4cjs.DocNavigationProvider; exports.DocViewer = _chunk5CJR2GZ4cjs.DocViewer; exports.DocsHubPage = _chunk5CJR2GZ4cjs.DocsHubPage; exports.EmbedSkeleton = _chunk5CJR2GZ4cjs.EmbedSkeleton; exports.MarkdownSkeleton = _chunk5CJR2GZ4cjs.MarkdownSkeleton; exports.useDocNavigation = _chunk5CJR2GZ4cjs.useDocNavigation; exports.useDocumentTree = _chunk5CJR2GZ4cjs.useDocumentTree; exports.useScrollSpy = _chunk5CJR2GZ4cjs.useScrollSpy;
41
41
  //# sourceMappingURL=index.cjs.map
@@ -9,10 +9,10 @@ import {
9
9
  useDocNavigation,
10
10
  useDocumentTree,
11
11
  useScrollSpy
12
- } from "../../chunk-5VSEMWWE.js";
13
- import "../../chunk-EU6QNO4S.js";
14
- import "../../chunk-TWGYBXYV.js";
15
- import "../../chunk-YMJZOANX.js";
12
+ } from "../../chunk-YZ2OIYQ3.js";
13
+ import "../../chunk-GTWO5NAY.js";
14
+ import "../../chunk-CORIBKHG.js";
15
+ import "../../chunk-BE6DK7QY.js";
16
16
  import "../../chunk-PB3BTZDU.js";
17
17
  import "../../chunk-OYGFWWLQ.js";
18
18
  import "../../chunk-6GT557KN.js";
@@ -4,7 +4,7 @@ require('../../chunk-FBWXMMRB.cjs');
4
4
 
5
5
 
6
6
 
7
- var _chunkZIAS5NNLcjs = require('../../chunk-ZIAS5NNL.cjs');
7
+ var _chunkQSCHCZL3cjs = require('../../chunk-QSCHCZL3.cjs');
8
8
 
9
9
 
10
10
 
@@ -23,7 +23,7 @@ var _chunkZIAS5NNLcjs = require('../../chunk-ZIAS5NNL.cjs');
23
23
 
24
24
 
25
25
 
26
- var _chunkIN4IO7BLcjs = require('../../chunk-IN4IO7BL.cjs');
26
+ var _chunk5LMGFI4Jcjs = require('../../chunk-5LMGFI4J.cjs');
27
27
  require('../../chunk-BIKOJ4FH.cjs');
28
28
  require('../../chunk-BGD345ZV.cjs');
29
29
  require('../../chunk-LILQJ3UZ.cjs');
@@ -60,5 +60,5 @@ require('../../chunk-VRHGVLSL.cjs');
60
60
 
61
61
 
62
62
 
63
- exports.EMBED_SIZES = _chunkIN4IO7BLcjs.EMBED_SIZES; exports.EmbedContainer = _chunkIN4IO7BLcjs.EmbedContainer; exports.EmbedIframe = _chunkIN4IO7BLcjs.EmbedIframe; exports.FigmaEmbed = _chunkIN4IO7BLcjs.FigmaEmbed; exports.FileDownloadCard = _chunkZIAS5NNLcjs.FileDownloadCard; exports.GoogleSheetsViewer = _chunkZIAS5NNLcjs.GoogleSheetsViewer; exports.LinkPreviewContainer = _chunkIN4IO7BLcjs.LinkPreviewContainer; exports.LinkedInContainer = _chunkIN4IO7BLcjs.LinkedInContainer; exports.LinkedInEmbedClient = _chunkIN4IO7BLcjs.LinkedInEmbedClient; exports.MarkdownImage = _chunkIN4IO7BLcjs.MarkdownImage; exports.OGLinkErrorBoundary = _chunkIN4IO7BLcjs.OGLinkErrorBoundary; exports.OGLinkPreview = _chunkIN4IO7BLcjs.OGLinkPreview; exports.PdfViewer = _chunkZIAS5NNLcjs.PdfViewer; exports.RedditContainer = _chunkIN4IO7BLcjs.RedditContainer; exports.RedditEmbedClient = _chunkIN4IO7BLcjs.RedditEmbedClient; exports.RichMarkdownRuntimeProvider = _chunkIN4IO7BLcjs.RichMarkdownRuntimeProvider; exports.TwitterContainer = _chunkIN4IO7BLcjs.TwitterContainer; exports.TwitterEmbedClient = _chunkIN4IO7BLcjs.TwitterEmbedClient; exports.YouTubeContainer = _chunkIN4IO7BLcjs.YouTubeContainer; exports.useRichMarkdownRuntime = _chunkIN4IO7BLcjs.useRichMarkdownRuntime;
63
+ exports.EMBED_SIZES = _chunk5LMGFI4Jcjs.EMBED_SIZES; exports.EmbedContainer = _chunk5LMGFI4Jcjs.EmbedContainer; exports.EmbedIframe = _chunk5LMGFI4Jcjs.EmbedIframe; exports.FigmaEmbed = _chunk5LMGFI4Jcjs.FigmaEmbed; exports.FileDownloadCard = _chunkQSCHCZL3cjs.FileDownloadCard; exports.GoogleSheetsViewer = _chunkQSCHCZL3cjs.GoogleSheetsViewer; exports.LinkPreviewContainer = _chunk5LMGFI4Jcjs.LinkPreviewContainer; exports.LinkedInContainer = _chunk5LMGFI4Jcjs.LinkedInContainer; exports.LinkedInEmbedClient = _chunk5LMGFI4Jcjs.LinkedInEmbedClient; exports.MarkdownImage = _chunk5LMGFI4Jcjs.MarkdownImage; exports.OGLinkErrorBoundary = _chunk5LMGFI4Jcjs.OGLinkErrorBoundary; exports.OGLinkPreview = _chunk5LMGFI4Jcjs.OGLinkPreview; exports.PdfViewer = _chunkQSCHCZL3cjs.PdfViewer; exports.RedditContainer = _chunk5LMGFI4Jcjs.RedditContainer; exports.RedditEmbedClient = _chunk5LMGFI4Jcjs.RedditEmbedClient; exports.RichMarkdownRuntimeProvider = _chunk5LMGFI4Jcjs.RichMarkdownRuntimeProvider; exports.TwitterContainer = _chunk5LMGFI4Jcjs.TwitterContainer; exports.TwitterEmbedClient = _chunk5LMGFI4Jcjs.TwitterEmbedClient; exports.YouTubeContainer = _chunk5LMGFI4Jcjs.YouTubeContainer; exports.useRichMarkdownRuntime = _chunk5LMGFI4Jcjs.useRichMarkdownRuntime;
64
64
  //# sourceMappingURL=index.cjs.map
@@ -4,7 +4,7 @@ import {
4
4
  FileDownloadCard,
5
5
  GoogleSheetsViewer,
6
6
  PdfViewer
7
- } from "../../chunk-EU6QNO4S.js";
7
+ } from "../../chunk-GTWO5NAY.js";
8
8
  import {
9
9
  EMBED_SIZES,
10
10
  EmbedContainer,
@@ -23,7 +23,7 @@ import {
23
23
  TwitterEmbedClient,
24
24
  YouTubeContainer,
25
25
  useRichMarkdownRuntime
26
- } from "../../chunk-YMJZOANX.js";
26
+ } from "../../chunk-BE6DK7QY.js";
27
27
  import "../../chunk-PB3BTZDU.js";
28
28
  import "../../chunk-OYGFWWLQ.js";
29
29
  import "../../chunk-6GT557KN.js";
@@ -2,9 +2,9 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkJ7H32E3Rcjs = require('../../chunk-J7H32E3R.cjs');
5
+ var _chunkP4WTZU6Lcjs = require('../../chunk-P4WTZU6L.cjs');
6
6
  require('../../chunk-KP5KRRD6.cjs');
7
- require('../../chunk-IN4IO7BL.cjs');
7
+ require('../../chunk-5LMGFI4J.cjs');
8
8
  require('../../chunk-BIKOJ4FH.cjs');
9
9
  require('../../chunk-BGD345ZV.cjs');
10
10
  require('../../chunk-LILQJ3UZ.cjs');
@@ -23,5 +23,5 @@ require('../../chunk-VRHGVLSL.cjs');
23
23
 
24
24
 
25
25
 
26
- exports.FaqDocumentPage = _chunkJ7H32E3Rcjs.FaqDocumentPage; exports.FaqSection = _chunkJ7H32E3Rcjs.FaqSection;
26
+ exports.FaqDocumentPage = _chunkP4WTZU6Lcjs.FaqDocumentPage; exports.FaqSection = _chunkP4WTZU6Lcjs.FaqSection;
27
27
  //# sourceMappingURL=index.cjs.map
@@ -2,9 +2,9 @@
2
2
  import {
3
3
  FaqDocumentPage,
4
4
  FaqSection
5
- } from "../../chunk-BGWDDB7Y.js";
5
+ } from "../../chunk-HSACATCD.js";
6
6
  import "../../chunk-RW2LPL72.js";
7
- import "../../chunk-YMJZOANX.js";
7
+ import "../../chunk-BE6DK7QY.js";
8
8
  import "../../chunk-PB3BTZDU.js";
9
9
  import "../../chunk-OYGFWWLQ.js";
10
10
  import "../../chunk-6GT557KN.js";