@syntrologie/adapt-chatbot 2.8.0-canary.43 → 2.8.0-canary.430

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 (178) hide show
  1. package/dist/AdaptiveChatBar.d.ts +175 -0
  2. package/dist/AdaptiveChatBar.d.ts.map +1 -0
  3. package/dist/AdaptiveChatBar.js +11 -0
  4. package/dist/AdaptiveChatBar.js.map +7 -0
  5. package/dist/AdaptiveChatBarMountable.d.ts +80 -0
  6. package/dist/AdaptiveChatBarMountable.d.ts.map +1 -0
  7. package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts +2 -0
  8. package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts.map +1 -0
  9. package/dist/AdaptiveChatTrail.d.ts +415 -0
  10. package/dist/AdaptiveChatTrail.d.ts.map +1 -0
  11. package/dist/AdaptiveChatTrail.js +11 -0
  12. package/dist/AdaptiveChatTrail.js.map +7 -0
  13. package/dist/AdaptiveChatTrail.test.d.ts +2 -0
  14. package/dist/AdaptiveChatTrail.test.d.ts.map +1 -0
  15. package/dist/AdaptiveChipsStrip.d.ts +1150 -0
  16. package/dist/AdaptiveChipsStrip.d.ts.map +1 -0
  17. package/dist/AdaptiveChipsStrip.js +11 -0
  18. package/dist/AdaptiveChipsStrip.js.map +7 -0
  19. package/dist/AdaptiveChipsStripMountable.d.ts +24 -0
  20. package/dist/AdaptiveChipsStripMountable.d.ts.map +1 -0
  21. package/dist/ChatAssistantLit.d.ts +60 -0
  22. package/dist/ChatAssistantLit.d.ts.map +1 -0
  23. package/dist/ChatAssistantLit.js +13 -0
  24. package/dist/ChatAssistantLit.js.map +7 -0
  25. package/dist/ChatSession.d.ts +230 -0
  26. package/dist/ChatSession.d.ts.map +1 -0
  27. package/dist/ChatTransport.d.ts +360 -0
  28. package/dist/ChatTransport.d.ts.map +1 -0
  29. package/dist/InlineRegistryWidgetMount.test.d.ts +2 -0
  30. package/dist/InlineRegistryWidgetMount.test.d.ts.map +1 -0
  31. package/dist/InlineWidgetLiveMount.test.d.ts +2 -0
  32. package/dist/InlineWidgetLiveMount.test.d.ts.map +1 -0
  33. package/dist/NavLinkMountable.d.ts +25 -0
  34. package/dist/NavLinkMountable.d.ts.map +1 -0
  35. package/dist/NavLinkMountable.test.d.ts +2 -0
  36. package/dist/NavLinkMountable.test.d.ts.map +1 -0
  37. package/dist/TextAnswerMountable.d.ts +17 -0
  38. package/dist/TextAnswerMountable.d.ts.map +1 -0
  39. package/dist/TextAnswerMountable.test.d.ts +2 -0
  40. package/dist/TextAnswerMountable.test.d.ts.map +1 -0
  41. package/dist/Turnstile.d.ts +83 -0
  42. package/dist/Turnstile.d.ts.map +1 -0
  43. package/dist/cdn.d.ts +2 -6
  44. package/dist/cdn.d.ts.map +1 -1
  45. package/dist/chunk-5W75LR6M.js +460 -0
  46. package/dist/chunk-5W75LR6M.js.map +7 -0
  47. package/dist/chunk-7WSMNAKW.js +3824 -0
  48. package/dist/chunk-7WSMNAKW.js.map +7 -0
  49. package/dist/chunk-EWPPVPJ4.js +14 -0
  50. package/dist/chunk-EWPPVPJ4.js.map +7 -0
  51. package/dist/chunk-GP4OSTZT.js +641 -0
  52. package/dist/chunk-GP4OSTZT.js.map +7 -0
  53. package/dist/chunk-HELUC5JI.js +8971 -0
  54. package/dist/chunk-HELUC5JI.js.map +7 -0
  55. package/dist/chunk-HVGQJZMP.js +1520 -0
  56. package/dist/chunk-HVGQJZMP.js.map +7 -0
  57. package/dist/chunk-KPWW7N27.js +235 -0
  58. package/dist/chunk-KPWW7N27.js.map +7 -0
  59. package/dist/chunk-UVKRO5ER.js +13 -0
  60. package/dist/chunk-UVKRO5ER.js.map +7 -0
  61. package/dist/editor-lit.d.ts +37 -0
  62. package/dist/editor-lit.d.ts.map +1 -0
  63. package/dist/editor-lit.js +134 -0
  64. package/dist/editor-lit.js.map +7 -0
  65. package/dist/elements/ActionHandler.d.ts +34 -0
  66. package/dist/elements/ActionHandler.d.ts.map +1 -0
  67. package/dist/elements/ElementInstanceStore.d.ts +207 -0
  68. package/dist/elements/ElementInstanceStore.d.ts.map +1 -0
  69. package/dist/elements/ElementInstanceStore.test.d.ts +2 -0
  70. package/dist/elements/ElementInstanceStore.test.d.ts.map +1 -0
  71. package/dist/elements/ElementTypeHandler.d.ts +77 -0
  72. package/dist/elements/ElementTypeHandler.d.ts.map +1 -0
  73. package/dist/elements/ItemHandler.d.ts +60 -0
  74. package/dist/elements/ItemHandler.d.ts.map +1 -0
  75. package/dist/elements/ItemHandler.test.d.ts +2 -0
  76. package/dist/elements/ItemHandler.test.d.ts.map +1 -0
  77. package/dist/elements/TileHandler.d.ts +52 -0
  78. package/dist/elements/TileHandler.d.ts.map +1 -0
  79. package/dist/elements/TileHandler.test.d.ts +2 -0
  80. package/dist/elements/TileHandler.test.d.ts.map +1 -0
  81. package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts +2 -0
  82. package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts.map +1 -0
  83. package/dist/elements/blockRenderer.d.ts +46 -0
  84. package/dist/elements/blockRenderer.d.ts.map +1 -0
  85. package/dist/elements/blockRenderer.test.d.ts +13 -0
  86. package/dist/elements/blockRenderer.test.d.ts.map +1 -0
  87. package/dist/elements/blocks.d.ts +58 -0
  88. package/dist/elements/blocks.d.ts.map +1 -0
  89. package/dist/elements/envelope.d.ts +24 -0
  90. package/dist/elements/envelope.d.ts.map +1 -0
  91. package/dist/elements/fetcher.d.ts +40 -0
  92. package/dist/elements/fetcher.d.ts.map +1 -0
  93. package/dist/elements/index.d.ts +33 -0
  94. package/dist/elements/index.d.ts.map +1 -0
  95. package/dist/elements/store-singleton.d.ts +4 -0
  96. package/dist/elements/store-singleton.d.ts.map +1 -0
  97. package/dist/elements/types.d.ts +106 -0
  98. package/dist/elements/types.d.ts.map +1 -0
  99. package/dist/observer/__tests__/allowlist.test.d.ts +9 -0
  100. package/dist/observer/__tests__/allowlist.test.d.ts.map +1 -0
  101. package/dist/observer/__tests__/bus-translate.test.d.ts +16 -0
  102. package/dist/observer/__tests__/bus-translate.test.d.ts.map +1 -0
  103. package/dist/observer/__tests__/lifecycle.test.d.ts +2 -0
  104. package/dist/observer/__tests__/lifecycle.test.d.ts.map +1 -0
  105. package/dist/observer/__tests__/observer-enrich.test.d.ts +10 -0
  106. package/dist/observer/__tests__/observer-enrich.test.d.ts.map +1 -0
  107. package/dist/observer/__tests__/observer-isolation.test.d.ts +13 -0
  108. package/dist/observer/__tests__/observer-isolation.test.d.ts.map +1 -0
  109. package/dist/observer/__tests__/queue.test.d.ts +2 -0
  110. package/dist/observer/__tests__/queue.test.d.ts.map +1 -0
  111. package/dist/observer/__tests__/transport.test.d.ts +2 -0
  112. package/dist/observer/__tests__/transport.test.d.ts.map +1 -0
  113. package/dist/observer/allowlist.d.ts +30 -0
  114. package/dist/observer/allowlist.d.ts.map +1 -0
  115. package/dist/observer/bus-translate.d.ts +33 -0
  116. package/dist/observer/bus-translate.d.ts.map +1 -0
  117. package/dist/observer/index.d.ts +44 -0
  118. package/dist/observer/index.d.ts.map +1 -0
  119. package/dist/observer/queue.d.ts +63 -0
  120. package/dist/observer/queue.d.ts.map +1 -0
  121. package/dist/observer/transport.d.ts +27 -0
  122. package/dist/observer/transport.d.ts.map +1 -0
  123. package/dist/runtime-lit.d.ts +8 -0
  124. package/dist/runtime-lit.d.ts.map +1 -0
  125. package/dist/runtime.d.ts +10 -3
  126. package/dist/runtime.d.ts.map +1 -1
  127. package/dist/runtime.js +2232 -29
  128. package/dist/runtime.js.map +7 -0
  129. package/dist/schema.d.ts +3340 -11
  130. package/dist/schema.d.ts.map +1 -1
  131. package/dist/schema.js +220 -31
  132. package/dist/schema.js.map +7 -0
  133. package/dist/test/setup.d.ts +1 -0
  134. package/dist/test/setup.d.ts.map +1 -0
  135. package/dist/types.d.ts +61 -40
  136. package/dist/types.d.ts.map +1 -1
  137. package/package.json +44 -23
  138. package/dist/ChatAssistant.d.ts +0 -18
  139. package/dist/ChatAssistant.d.ts.map +0 -1
  140. package/dist/ChatAssistant.js +0 -178
  141. package/dist/SyntroChatbot.d.ts +0 -14
  142. package/dist/SyntroChatbot.d.ts.map +0 -1
  143. package/dist/SyntroChatbot.js +0 -56
  144. package/dist/actionParser.d.ts +0 -15
  145. package/dist/actionParser.d.ts.map +0 -1
  146. package/dist/actionParser.js +0 -52
  147. package/dist/apiClient.d.ts +0 -23
  148. package/dist/apiClient.d.ts.map +0 -1
  149. package/dist/apiClient.js +0 -51
  150. package/dist/cdn.js +0 -37
  151. package/dist/editor.d.ts +0 -17
  152. package/dist/editor.d.ts.map +0 -1
  153. package/dist/editor.js +0 -36
  154. package/dist/tools/bridge.d.ts +0 -26
  155. package/dist/tools/bridge.d.ts.map +0 -1
  156. package/dist/tools/bridge.js +0 -25
  157. package/dist/tools/expanders.d.ts +0 -17
  158. package/dist/tools/expanders.d.ts.map +0 -1
  159. package/dist/tools/expanders.js +0 -41
  160. package/dist/tools/index.d.ts +0 -14
  161. package/dist/tools/index.d.ts.map +0 -1
  162. package/dist/tools/index.js +0 -11
  163. package/dist/tools/registrations/GetContextTool.d.ts +0 -7
  164. package/dist/tools/registrations/GetContextTool.d.ts.map +0 -1
  165. package/dist/tools/registrations/GetContextTool.js +0 -18
  166. package/dist/tools/registrations/ScrollToTool.d.ts +0 -7
  167. package/dist/tools/registrations/ScrollToTool.d.ts.map +0 -1
  168. package/dist/tools/registrations/ScrollToTool.js +0 -38
  169. package/dist/tools/registrations/ShowOverlayTool.d.ts +0 -7
  170. package/dist/tools/registrations/ShowOverlayTool.d.ts.map +0 -1
  171. package/dist/tools/registrations/ShowOverlayTool.js +0 -47
  172. package/dist/tools/registrations/index.d.ts +0 -19
  173. package/dist/tools/registrations/index.d.ts.map +0 -1
  174. package/dist/tools/registrations/index.js +0 -7
  175. package/dist/types.js +0 -6
  176. package/dist/useChat.d.ts +0 -25
  177. package/dist/useChat.d.ts.map +0 -1
  178. package/dist/useChat.js +0 -106
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdaptiveChipsStrip.d.ts","sourceRoot":"","sources":["../src/AdaptiveChipsStrip.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import {
2
+ AdaptiveChipsStrip,
3
+ SuggestionChipSchema
4
+ } from "./chunk-GP4OSTZT.js";
5
+ import "./chunk-KPWW7N27.js";
6
+ import "./chunk-UVKRO5ER.js";
7
+ export {
8
+ AdaptiveChipsStrip,
9
+ SuggestionChipSchema
10
+ };
11
+ //# sourceMappingURL=AdaptiveChipsStrip.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * AdaptiveChipsStripMountable — `MountableWidget` adapter for
3
+ * `<adaptive-chips-strip>`. Registered as widget id
4
+ * `adaptive-chatbot:chips-strip`.
5
+ *
6
+ * Mirrors `AdaptiveChatBarMountable`: creates the Lit element, forwards
7
+ * props, bridges DOM events → prop callbacks, cleans up on unmount.
8
+ *
9
+ * Props (passed via mountConfig):
10
+ * - `chips: SuggestionChip[]` — the strip's contents (required)
11
+ * - `onChipRevealed?: ({id, payload}) => void` — fires when a chip
12
+ * is opened
13
+ * - `onChipDismissed?: ({id}) => void` — fires when × is clicked
14
+ *
15
+ * The runtime registry injects `runtime` into mountConfig (see
16
+ * `WidgetRegistry.mount`). We forward it as `runtimeRef` on the strip
17
+ * so it can mount chip payload widgets through the same registry.
18
+ */
19
+ import './AdaptiveChipsStrip';
20
+ export declare const AdaptiveChipsStripMountable: {
21
+ mount(container: HTMLElement, mountConfig?: Record<string, unknown>): () => void;
22
+ update(container: HTMLElement, mountConfig?: Record<string, unknown>): void;
23
+ };
24
+ //# sourceMappingURL=AdaptiveChipsStripMountable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdaptiveChipsStripMountable.d.ts","sourceRoot":"","sources":["../src/AdaptiveChipsStripMountable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,sBAAsB,CAAC;AA0C9B,eAAO,MAAM,2BAA2B;qBACrB,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,IAAI;sBAqC9D,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAqB5E,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Adaptive Chatbot — Lit Mountable
3
+ *
4
+ * Thin wrapper that mounts <syntro-chat> from @syntrologie/chat with an
5
+ * AgUiTransport pointed at the adaptive AG-UI streaming endpoint.
6
+ *
7
+ * Four pieces this mountable owns:
8
+ *
9
+ * 1. SDK token plumbing. The chat backend (`/api/adaptive/*`) is identified
10
+ * by the workspace's `syn_*` SDK token. The token lives on
11
+ * `window.__SYNTRO_CONFIG__.token` (set by runtime-config.js) — we read
12
+ * it at mount time and forward it via `Authorization: Bearer` header.
13
+ *
14
+ * 2. Cloudflare Turnstile bot-check token. When `TURNSTILE_SITEKEY` is
15
+ * set, render a single `size: 'flexible'` widget with
16
+ * `appearance: 'interaction-only'` against a `managed`-mode sitekey:
17
+ * • Clean traffic: CF passive-grades silently, token resolves in
18
+ * ~100ms, no UI is ever shown.
19
+ * • Flagged traffic (datacenter IP, automation, strict-privacy):
20
+ * CF renders an "I am human" checkbox inside the in-chat verify
21
+ * panel; on solve, swap to the chat UI.
22
+ * • Total failure (CSP blocks CF, network error, user dismisses):
23
+ * fall through with no token; backend enforcement 403s and the
24
+ * existing fallback card renders.
25
+ * The widget mode MUST be `managed` on the CF side — see
26
+ * cloudflare/turnstile/main.tf in syntro-infra. (`mode = 'invisible'`
27
+ * rejects any `size` other than `invisible`, and `size: 'invisible'`
28
+ * against `mode = 'managed'` fails with a synchronous TurnstileError —
29
+ * don't mix.)
30
+ * If sitekey is empty, this step is skipped entirely.
31
+ *
32
+ * 3. Fallback card. If the first agent run fails (Cloudflare Turnstile
33
+ * bot-check failure, CORS / network error, or a server-side rejection),
34
+ * swap the chat UI for a per-customer fallback card built from
35
+ * `props.fallback`. The end-user is redirected to the customer's normal
36
+ * support path instead of seeing a raw error.
37
+ *
38
+ * 4. A2UI passthrough. AG-UI CUSTOM events carrying A2UI payloads
39
+ * (createSurface, updateDataModel, …) get forwarded to
40
+ * `runtime.actions.applyBatch` so tiles can render server-driven UI
41
+ * inside the chat surface.
42
+ */
43
+ import '@syntrologie/chat';
44
+ import type { ChatbotConfig, ChatbotFallback, ChatbotWidgetRuntime } from './types.js';
45
+ export interface ChatAssistantLitProps {
46
+ config: ChatbotConfig;
47
+ runtime: ChatbotWidgetRuntime;
48
+ tileId?: string;
49
+ }
50
+ /**
51
+ * Build the inline HTML for the fallback card. Customer-supplied copy wins;
52
+ * everything else falls back to generic copy. The card avoids any reference
53
+ * to Cloudflare or Turnstile so the end-user is never confronted with our
54
+ * implementation details.
55
+ */
56
+ export declare function renderFallbackHtml(fallback: ChatbotFallback | undefined): string;
57
+ export declare const ChatAssistantLitMountable: {
58
+ mount(container: HTMLElement, mountConfig?: Record<string, unknown>): () => void;
59
+ };
60
+ //# sourceMappingURL=ChatAssistantLit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatAssistantLit.d.ts","sourceRoot":"","sources":["../src/ChatAssistantLit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,mBAAmB,CAAC;AAa3B,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvF,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA8CD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,CAiEhF;AAED,eAAO,MAAM,yBAAyB;qBACnB,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAodpE,CAAC"}
@@ -0,0 +1,13 @@
1
+ import {
2
+ ChatAssistantLitMountable,
3
+ renderFallbackHtml
4
+ } from "./chunk-HELUC5JI.js";
5
+ import "./chunk-EWPPVPJ4.js";
6
+ import "./chunk-7WSMNAKW.js";
7
+ import "./chunk-KPWW7N27.js";
8
+ import "./chunk-UVKRO5ER.js";
9
+ export {
10
+ ChatAssistantLitMountable,
11
+ renderFallbackHtml
12
+ };
13
+ //# sourceMappingURL=ChatAssistantLit.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,230 @@
1
+ /**
2
+ * ChatSession — singleton holder of the chat conversation state.
3
+ *
4
+ * The chat is conceptually one thing. Whether it's rendered in the
5
+ * mini-canvas's lid, the drawer's lid, or as a tile inside any slot,
6
+ * they're all VIEWS of the same conversation. This module owns that
7
+ * shared state.
8
+ *
9
+ * Why a module-level singleton (not on `runtime`):
10
+ * - Per-page scope is the right granularity for a chat (one user,
11
+ * one conversation, however many canvas instances on the page).
12
+ * - Avoids a new SmartCanvasRuntime API surface for now. Easy to
13
+ * promote to `runtime.chat` later without breaking the widget API.
14
+ * - Module identity is stable per page; multiple imports return the
15
+ * same instance.
16
+ *
17
+ * Separation of concerns:
18
+ * - `ChatSession` owns state: messages, inFlight.
19
+ * - Views (AdaptiveChatBar via AdaptiveChatBarMountable) subscribe
20
+ * to state changes and dispatch user actions back via send() /
21
+ * interrupt().
22
+ * - Transports (the LLM call, SSE pipeline, stub timers) listen
23
+ * for "send" / "interrupt" events and eventually call receive()
24
+ * with the assistant's reply. Transports are NOT owned by this
25
+ * module — adapters live separately.
26
+ *
27
+ * No persistence in this slice. Future: snapshot to runtime.state
28
+ * for cross-session continuity.
29
+ */
30
+ import type { TrailMessage, TrailToolCall } from './AdaptiveChatTrail';
31
+ export interface ChatSessionState {
32
+ readonly messages: readonly TrailMessage[];
33
+ readonly inFlight: boolean;
34
+ /**
35
+ * Latest reasoning narration from the model, streamed via the
36
+ * AG-UI `THINKING_TEXT_MESSAGE_CONTENT` channel. Empty string when
37
+ * no thinking turn is active. Consumers render this in place of
38
+ * the silent loading dots while the model decides what to do
39
+ * between tool calls. Cleared the moment a real text or tool-call
40
+ * event lands — at that point the model has switched to producing
41
+ * visible output and the narration is over.
42
+ */
43
+ readonly thinkingText: string;
44
+ }
45
+ export interface ToolResultEvent {
46
+ toolCallId: string;
47
+ result: unknown;
48
+ approved: boolean;
49
+ }
50
+ export type ChatSessionSubscriber = (state: ChatSessionState) => void;
51
+ export type SendListener = (event: {
52
+ text: string;
53
+ id: string;
54
+ activeLidSlot?: string;
55
+ }) => void;
56
+ export type InterruptListener = () => void;
57
+ export type ToolResultListener = (event: ToolResultEvent) => void;
58
+ /** Optional per-send envelope. */
59
+ export interface SendOptions {
60
+ /**
61
+ * The slot the calling chat-bar lives in (e.g. ``"drawer"``,
62
+ * ``"adaptive-chat"``). Forwarded to transport listeners so the
63
+ * outbound request can tag the correct ``X-Active-Lid-Slot`` regardless
64
+ * of which bar most recently configured the singleton transport.
65
+ * Without per-send threading, two coexisting chat-bars race over the
66
+ * transport's cached ``activeLidSlot`` and the user-facing routing
67
+ * silently follows whichever bar configured last.
68
+ */
69
+ activeLidSlot?: string;
70
+ }
71
+ export type Unsubscribe = () => void;
72
+ export declare class ChatSession {
73
+ private _messages;
74
+ private _inFlight;
75
+ private _runActive;
76
+ private _thinkingText;
77
+ private _nextId;
78
+ private subscribers;
79
+ private sendListeners;
80
+ private interruptListeners;
81
+ private toolResultListeners;
82
+ /** Snapshot the current state. Always returns a fresh immutable view. */
83
+ getState(): ChatSessionState;
84
+ /**
85
+ * Append a delta to the active thinking turn's narration buffer.
86
+ * Forwarded from the AG-UI THINKING_TEXT_MESSAGE_CONTENT event so
87
+ * the chat trail can render the model's own reasoning instead of
88
+ * silent loading dots between turns.
89
+ */
90
+ appendThinkingDelta(delta: string): void;
91
+ /**
92
+ * Replace the active thinking narration outright (vs. appendThinkingDelta's
93
+ * streaming accumulation). Used to surface tool-call progress — e.g.
94
+ * "Searching…" while the agent works a tool — so a long tool phase shows
95
+ * what's happening instead of silent dots. No-op if unchanged.
96
+ */
97
+ setThinkingText(text: string): void;
98
+ /**
99
+ * End the active thinking turn — drop any narration so the trail
100
+ * stops showing it. Fires on real text-message-start and on
101
+ * tool-call-start, the moment the model switches from reasoning
102
+ * to visible output.
103
+ */
104
+ clearThinking(): void;
105
+ setRunActive(active: boolean): void;
106
+ /**
107
+ * Subscribe to state changes. Called immediately with the current
108
+ * state, then again on every change. Returns an unsubscribe function.
109
+ */
110
+ subscribe(cb: ChatSessionSubscriber): Unsubscribe;
111
+ /**
112
+ * User submitted a message. Appends a user-role message, sets
113
+ * inFlight=true, notifies state subscribers, and fires a "send"
114
+ * event so transports can pick it up. Empty/whitespace text is a
115
+ * no-op (matches the chat bar's local guard).
116
+ */
117
+ send(text: string, opts?: SendOptions): void;
118
+ /**
119
+ * Single-shot assistant reply (no streaming). Equivalent to
120
+ * receiveStart + receiveDelta + receiveEnd in one call. Useful for
121
+ * stub transports and tests that don't model streaming.
122
+ */
123
+ receive(text: string): void;
124
+ /**
125
+ * Begin a streaming assistant message. Appends an empty assistant
126
+ * message with status='streaming'. Caller (transport adapter) feeds
127
+ * deltas via receiveDelta(id, text) and signals completion via
128
+ * receiveEnd(id). `inFlight` stays true through the stream.
129
+ */
130
+ receiveStart(id: string): void;
131
+ /**
132
+ * Append a delta to a streaming message. No-op when the id is
133
+ * unknown (race between transport events and reset, etc.) — never
134
+ * throws so transports can fire-and-forget.
135
+ */
136
+ receiveDelta(id: string, delta: string): void;
137
+ /**
138
+ * Mark a streaming message complete and clear inFlight. No-op when
139
+ * the id is unknown (defensive against transport double-fires).
140
+ */
141
+ receiveEnd(id: string): void;
142
+ /**
143
+ * Transport reports a fatal error. Marks any in-flight streaming
144
+ * message as 'error' (so the trail can render a styled error chip
145
+ * instead of pretending the partial text was a complete answer),
146
+ * appends a system-role message with the error text for visibility,
147
+ * and clears inFlight. Also drops any pending thinking narration
148
+ * — leaving stale "Let me check…" alongside an error chip reads
149
+ * as if the assistant is still working when it isn't.
150
+ */
151
+ error(message: string): void;
152
+ /**
153
+ * User clicked the in-flight stop button. Clears inFlight and
154
+ * fires an "interrupt" event so transports can cancel their
155
+ * in-flight request. No-op if not in-flight (idempotent). Drops
156
+ * any pending thinking narration for the same reason as error():
157
+ * the visitor explicitly asked the assistant to stop, so it
158
+ * shouldn't keep narrating in the trail.
159
+ */
160
+ interrupt(): void;
161
+ /**
162
+ * Wipe state. Used by the canvas-close path (start a fresh
163
+ * conversation next time) and by tests.
164
+ */
165
+ reset(): void;
166
+ /** Register a transport's send listener. Returns unsubscribe. */
167
+ onSend(listener: SendListener): Unsubscribe;
168
+ /**
169
+ * True when at least one transport has wired itself to the session's
170
+ * send pipeline. Views can use this to surface "no chat backend
171
+ * connected" affordances instead of hanging in `inFlight` after a
172
+ * send fires into the void.
173
+ */
174
+ hasTransport(): boolean;
175
+ /** Register a transport's interrupt listener. Returns unsubscribe. */
176
+ onInterrupt(listener: InterruptListener): Unsubscribe;
177
+ /**
178
+ * Register a transport's tool-result listener. The transport
179
+ * forwards `tool-result` actions back to the agent after the user
180
+ * approves or rejects a client-tool call. Returns unsubscribe.
181
+ */
182
+ onToolResult(listener: ToolResultListener): Unsubscribe;
183
+ /**
184
+ * Attach a tool call to a streaming assistant message. No-op when
185
+ * the message id is unknown (race between transport events and
186
+ * reset / late mount).
187
+ */
188
+ addToolCall(messageId: string | number, toolCall: TrailToolCall): void;
189
+ /**
190
+ * Partially update a tool call by id. Used by the transport to
191
+ * advance status (args-streaming → running → done) as AG-UI events
192
+ * arrive. No-op when the id is unknown.
193
+ */
194
+ updateToolCall(toolCallId: string, patch: Partial<TrailToolCall>): void;
195
+ /**
196
+ * Resolve a (client-) tool call. Marks the call done, persists, and
197
+ * fires onToolResult so the transport can forward the result + the
198
+ * user's approve/reject decision back to the agent. No-op when the
199
+ * id is unknown.
200
+ */
201
+ resolveToolCall(toolCallId: string, result: unknown, approved: boolean): void;
202
+ /**
203
+ * Hydrate from the server transcript (the /session SSE's
204
+ * messages-snapshot) — the server is the transcript of record
205
+ * (FEAT-1783701440). Snapshot order is truth: shared ids keep the
206
+ * LOCAL object (it may carry richer live tool-call state) but take the
207
+ * snapshot's position; snapshot-only messages (history on reload, a
208
+ * nudge missed during an SSE gap) are inserted; local-only messages
209
+ * (an in-flight turn, the greeting) float after in local order.
210
+ *
211
+ * Deploy-boundary guard: a user message persisted under a pre-Phase-2
212
+ * transport id (before ids were threaded) would arrive as
213
+ * "snapshot-only" next to its local twin — skip snapshot USER messages
214
+ * whose exact text already exists locally under a different id.
215
+ */
216
+ hydrate(snapshotMessages: TrailMessage[]): void;
217
+ private notify;
218
+ }
219
+ /**
220
+ * The module-level singleton. Every `<adaptive-chat-bar>` (regardless
221
+ * of which slot it lives in) reads from and writes to this instance.
222
+ * Multiple imports of this module return the same object.
223
+ *
224
+ * Scope: per-page. Correct for the canonical case (one user, one
225
+ * conversation, however many canvas views surface it). Multiple
226
+ * `<smart-canvas>` instances on the same page will share state —
227
+ * tracked in project_future_work.md for per-runtime scoping.
228
+ */
229
+ export declare const chatSession: ChatSession;
230
+ //# sourceMappingURL=ChatSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatSession.d.ts","sourceRoot":"","sources":["../src/ChatSession.ts"],"names":[],"mappings":"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"}