@syntrologie/adapt-chatbot 2.27.0 → 2.29.0

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 (131) hide show
  1. package/dist/AdaptiveChatBar.composer.test.d.ts +2 -0
  2. package/dist/AdaptiveChatBar.composer.test.d.ts.map +1 -0
  3. package/dist/AdaptiveChatBar.d.ts +212 -0
  4. package/dist/AdaptiveChatBar.d.ts.map +1 -0
  5. package/dist/AdaptiveChatBar.js +11 -0
  6. package/dist/AdaptiveChatBar.js.map +7 -0
  7. package/dist/AdaptiveChatBarMountable.d.ts +82 -0
  8. package/dist/AdaptiveChatBarMountable.d.ts.map +1 -0
  9. package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts +2 -0
  10. package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts.map +1 -0
  11. package/dist/AdaptiveChatTrail.d.ts +469 -0
  12. package/dist/AdaptiveChatTrail.d.ts.map +1 -0
  13. package/dist/AdaptiveChatTrail.js +11 -0
  14. package/dist/AdaptiveChatTrail.js.map +7 -0
  15. package/dist/AdaptiveChatTrail.test.d.ts +2 -0
  16. package/dist/AdaptiveChatTrail.test.d.ts.map +1 -0
  17. package/dist/AdaptiveChipsStrip.d.ts +1156 -0
  18. package/dist/AdaptiveChipsStrip.d.ts.map +1 -0
  19. package/dist/AdaptiveChipsStrip.js +11 -0
  20. package/dist/AdaptiveChipsStrip.js.map +7 -0
  21. package/dist/AdaptiveChipsStripMountable.d.ts +24 -0
  22. package/dist/AdaptiveChipsStripMountable.d.ts.map +1 -0
  23. package/dist/ChatAssistantLit.d.ts +22 -50
  24. package/dist/ChatAssistantLit.d.ts.map +1 -1
  25. package/dist/ChatAssistantLit.js +6 -3
  26. package/dist/ChatSession.d.ts +239 -0
  27. package/dist/ChatSession.d.ts.map +1 -0
  28. package/dist/ChatTransport.d.ts +390 -0
  29. package/dist/ChatTransport.d.ts.map +1 -0
  30. package/dist/InlineRegistryWidgetMount.test.d.ts +2 -0
  31. package/dist/InlineRegistryWidgetMount.test.d.ts.map +1 -0
  32. package/dist/InlineWidgetLiveMount.test.d.ts +2 -0
  33. package/dist/InlineWidgetLiveMount.test.d.ts.map +1 -0
  34. package/dist/NavLinkMountable.d.ts +25 -0
  35. package/dist/NavLinkMountable.d.ts.map +1 -0
  36. package/dist/NavLinkMountable.test.d.ts +2 -0
  37. package/dist/NavLinkMountable.test.d.ts.map +1 -0
  38. package/dist/TextAnswerMountable.d.ts +17 -0
  39. package/dist/TextAnswerMountable.d.ts.map +1 -0
  40. package/dist/TextAnswerMountable.test.d.ts +2 -0
  41. package/dist/TextAnswerMountable.test.d.ts.map +1 -0
  42. package/dist/Turnstile.d.ts +83 -0
  43. package/dist/Turnstile.d.ts.map +1 -0
  44. package/dist/chunk-A7RBZLIX.js +1678 -0
  45. package/dist/chunk-A7RBZLIX.js.map +7 -0
  46. package/dist/chunk-EACGDSJI.js +237 -0
  47. package/dist/chunk-EACGDSJI.js.map +7 -0
  48. package/dist/chunk-EWPPVPJ4.js +14 -0
  49. package/dist/chunk-EWPPVPJ4.js.map +7 -0
  50. package/dist/chunk-FXHYE6FY.js +632 -0
  51. package/dist/chunk-FXHYE6FY.js.map +7 -0
  52. package/dist/chunk-OIGVZGSX.js +641 -0
  53. package/dist/chunk-OIGVZGSX.js.map +7 -0
  54. package/dist/chunk-VZIUXXAM.js +4015 -0
  55. package/dist/chunk-VZIUXXAM.js.map +7 -0
  56. package/dist/{chunk-W457NMGD.js → chunk-ZXV4GXMO.js} +2149 -4254
  57. package/dist/chunk-ZXV4GXMO.js.map +7 -0
  58. package/dist/elements/ActionHandler.d.ts +34 -0
  59. package/dist/elements/ActionHandler.d.ts.map +1 -0
  60. package/dist/elements/ElementInstanceStore.d.ts +217 -0
  61. package/dist/elements/ElementInstanceStore.d.ts.map +1 -0
  62. package/dist/elements/ElementInstanceStore.test.d.ts +2 -0
  63. package/dist/elements/ElementInstanceStore.test.d.ts.map +1 -0
  64. package/dist/elements/ElementTypeHandler.d.ts +77 -0
  65. package/dist/elements/ElementTypeHandler.d.ts.map +1 -0
  66. package/dist/elements/ItemHandler.d.ts +60 -0
  67. package/dist/elements/ItemHandler.d.ts.map +1 -0
  68. package/dist/elements/ItemHandler.test.d.ts +2 -0
  69. package/dist/elements/ItemHandler.test.d.ts.map +1 -0
  70. package/dist/elements/TileHandler.d.ts +52 -0
  71. package/dist/elements/TileHandler.d.ts.map +1 -0
  72. package/dist/elements/TileHandler.test.d.ts +2 -0
  73. package/dist/elements/TileHandler.test.d.ts.map +1 -0
  74. package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts +2 -0
  75. package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts.map +1 -0
  76. package/dist/elements/blockRenderer.d.ts +46 -0
  77. package/dist/elements/blockRenderer.d.ts.map +1 -0
  78. package/dist/elements/blockRenderer.test.d.ts +13 -0
  79. package/dist/elements/blockRenderer.test.d.ts.map +1 -0
  80. package/dist/elements/blocks.d.ts +58 -0
  81. package/dist/elements/blocks.d.ts.map +1 -0
  82. package/dist/elements/envelope.d.ts +24 -0
  83. package/dist/elements/envelope.d.ts.map +1 -0
  84. package/dist/elements/fetcher.d.ts +40 -0
  85. package/dist/elements/fetcher.d.ts.map +1 -0
  86. package/dist/elements/index.d.ts +33 -0
  87. package/dist/elements/index.d.ts.map +1 -0
  88. package/dist/elements/store-singleton.d.ts +4 -0
  89. package/dist/elements/store-singleton.d.ts.map +1 -0
  90. package/dist/elements/types.d.ts +110 -0
  91. package/dist/elements/types.d.ts.map +1 -0
  92. package/dist/observer/__tests__/allowlist.test.d.ts +9 -0
  93. package/dist/observer/__tests__/allowlist.test.d.ts.map +1 -0
  94. package/dist/observer/__tests__/bus-translate.test.d.ts +16 -0
  95. package/dist/observer/__tests__/bus-translate.test.d.ts.map +1 -0
  96. package/dist/observer/__tests__/lifecycle.test.d.ts +2 -0
  97. package/dist/observer/__tests__/lifecycle.test.d.ts.map +1 -0
  98. package/dist/observer/__tests__/observer-enrich.test.d.ts +10 -0
  99. package/dist/observer/__tests__/observer-enrich.test.d.ts.map +1 -0
  100. package/dist/observer/__tests__/observer-isolation.test.d.ts +13 -0
  101. package/dist/observer/__tests__/observer-isolation.test.d.ts.map +1 -0
  102. package/dist/observer/__tests__/queue.test.d.ts +2 -0
  103. package/dist/observer/__tests__/queue.test.d.ts.map +1 -0
  104. package/dist/observer/__tests__/transport.test.d.ts +2 -0
  105. package/dist/observer/__tests__/transport.test.d.ts.map +1 -0
  106. package/dist/observer/allowlist.d.ts +30 -0
  107. package/dist/observer/allowlist.d.ts.map +1 -0
  108. package/dist/observer/bus-translate.d.ts +33 -0
  109. package/dist/observer/bus-translate.d.ts.map +1 -0
  110. package/dist/observer/index.d.ts +44 -0
  111. package/dist/observer/index.d.ts.map +1 -0
  112. package/dist/observer/queue.d.ts +63 -0
  113. package/dist/observer/queue.d.ts.map +1 -0
  114. package/dist/observer/transport.d.ts +27 -0
  115. package/dist/observer/transport.d.ts.map +1 -0
  116. package/dist/personas.d.ts +30 -0
  117. package/dist/personas.d.ts.map +1 -0
  118. package/dist/runtime.d.ts +9 -0
  119. package/dist/runtime.d.ts.map +1 -1
  120. package/dist/runtime.js +2345 -3
  121. package/dist/runtime.js.map +4 -4
  122. package/dist/schema.d.ts +3426 -17
  123. package/dist/schema.d.ts.map +1 -1
  124. package/dist/schema.js +213 -0
  125. package/dist/schema.js.map +2 -2
  126. package/dist/test/setup.d.ts +1 -0
  127. package/dist/test/setup.d.ts.map +1 -0
  128. package/dist/types.d.ts +46 -2
  129. package/dist/types.d.ts.map +1 -1
  130. package/package.json +17 -1
  131. package/dist/chunk-W457NMGD.js.map +0 -7
@@ -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-OIGVZGSX.js";
5
+ import "./chunk-EACGDSJI.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"}
@@ -11,20 +11,22 @@
11
11
  * `window.__SYNTRO_CONFIG__.token` (set by runtime-config.js) — we read
12
12
  * it at mount time and forward it via `Authorization: Bearer` header.
13
13
  *
14
- * 2. Cloudflare Turnstile bot-check token (two-phase). When
15
- * `TURNSTILE_SITEKEY` is set:
16
- * a. Try invisible first passive fingerprints, no UI. Clean
17
- * traffic resolves in milliseconds. Token forwarded via
18
- * `CF-Turnstile-Token`.
19
- * b. If CF declines to grant silently (datacenter IP, automation
20
- * signals, strict-privacy browser), render a visible managed
21
- * widget inside the chat container so CF can present the
22
- * "I am human" checkbox. On solve, swap to the chat UI.
23
- * c. If both phases fail, fall through with no token; backend
24
- * enforcement returns 403 and the existing fallback card
25
- * renders. The widget mode must be `managed` on the CF side
26
- * for the visible escalation to work — see
27
- * cloudflare/turnstile/main.tf in syntro-infra.
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.)
28
30
  * If sitekey is empty, this step is skipped entirely.
29
31
  *
30
32
  * 3. Fallback card. If the first agent run fails (Cloudflare Turnstile
@@ -39,49 +41,19 @@
39
41
  * inside the chat surface.
40
42
  */
41
43
  import '@syntrologie/chat';
42
- import type { ChatbotConfig, ChatbotWidgetRuntime } from './types.js';
44
+ import type { ChatbotConfig, ChatbotFallback, ChatbotWidgetRuntime } from './types.js';
43
45
  export interface ChatAssistantLitProps {
44
46
  config: ChatbotConfig;
45
47
  runtime: ChatbotWidgetRuntime;
46
48
  tileId?: string;
47
49
  }
48
- export interface AcquireTurnstileOptions {
49
- /**
50
- * Widget size. `invisible` for the silent first attempt; `flexible`
51
- * (or `normal`) for the visible managed checkbox after silent failure.
52
- */
53
- size: 'invisible' | 'flexible' | 'normal' | 'compact';
54
- /**
55
- * Where to mount the widget. For `invisible` this is an off-screen
56
- * host; for the visible sizes it must be a container that's actually
57
- * in the layout so CF can render the challenge UI. When omitted, an
58
- * off-screen div is created and removed automatically (suitable for
59
- * `invisible` only — visible sizes need a real host).
60
- */
61
- host?: HTMLElement;
62
- /**
63
- * Cancels an in-flight acquisition. On abort, the promise resolves to
64
- * `null`, the CF widget is removed from the registry, and any owned
65
- * host is torn down. Required for cleanup-during-challenge — without
66
- * it, a user dismissing the tile mid-checkbox leaks the widget.
67
- */
68
- signal?: AbortSignal;
69
- }
70
50
  /**
71
- * Acquire a Cloudflare Turnstile token. Returns null when:
72
- * TURNSTILE_SITEKEY is empty (Turnstile disabled at build time)
73
- * the script fails to load (customer CSP blocks Cloudflare, etc.)
74
- * the render callback doesn't fire within TURNSTILE_ACQUIRE_TIMEOUT_MS
75
- * • Cloudflare returns an error-callback (e.g., rate-limited, bad sitekey)
76
- *
77
- * Calls `turnstile.remove(widgetId)` on settle so CF's internal widget
78
- * registry doesn't leak across re-mounts (CF will otherwise log
79
- * `Cannot find Widget ...` when subsequent renders look up the old
80
- * widget by id and find the host gone).
81
- *
82
- * Exported for tests; the production code path goes through `mount()`.
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.
83
55
  */
84
- export declare function acquireTurnstileToken(opts?: AcquireTurnstileOptions): Promise<string | null>;
56
+ export declare function renderFallbackHtml(fallback: ChatbotFallback | undefined): string;
85
57
  export declare const ChatAssistantLitMountable: {
86
58
  mount(container: HTMLElement, mountConfig?: Record<string, unknown>): () => void;
87
59
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ChatAssistantLit.d.ts","sourceRoot":"","sources":["../src/ChatAssistantLit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAGH,OAAO,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAE,aAAa,EAAmB,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;AAqGD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACtD;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,GAAE,uBAA+C,GACpD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkFxB;AAqGD,eAAO,MAAM,yBAAyB;qBACnB,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAwPpE,CAAC"}
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;CAqdpE,CAAC"}
@@ -1,10 +1,13 @@
1
1
  import {
2
2
  ChatAssistantLitMountable,
3
- acquireTurnstileToken
4
- } from "./chunk-W457NMGD.js";
3
+ renderFallbackHtml
4
+ } from "./chunk-ZXV4GXMO.js";
5
+ import "./chunk-EWPPVPJ4.js";
6
+ import "./chunk-VZIUXXAM.js";
7
+ import "./chunk-EACGDSJI.js";
5
8
  import "./chunk-UVKRO5ER.js";
6
9
  export {
7
10
  ChatAssistantLitMountable,
8
- acquireTurnstileToken
11
+ renderFallbackHtml
9
12
  };
10
13
  //# sourceMappingURL=ChatAssistantLit.js.map
@@ -0,0 +1,239 @@
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
+ forwardedProps?: Record<string, unknown>;
56
+ }) => void;
57
+ export type InterruptListener = () => void;
58
+ export type ToolResultListener = (event: ToolResultEvent) => void;
59
+ /** Optional per-send envelope. */
60
+ export interface SendOptions {
61
+ /**
62
+ * The slot the calling chat-bar lives in (e.g. ``"drawer"``,
63
+ * ``"adaptive-chat"``). Forwarded to transport listeners so the
64
+ * outbound request can tag the correct ``X-Active-Lid-Slot`` regardless
65
+ * of which bar most recently configured the singleton transport.
66
+ * Without per-send threading, two coexisting chat-bars race over the
67
+ * transport's cached ``activeLidSlot`` and the user-facing routing
68
+ * silently follows whichever bar configured last.
69
+ */
70
+ activeLidSlot?: string;
71
+ /**
72
+ * Merged into THIS request's forwardedProps only — never sticky. The
73
+ * transport spreads it over the config-level forwardedProps for the one
74
+ * AG-UI request this send produces (see ChatTransport). Used for turn
75
+ * provenance (`{ origin: TurnOrigin }`): a later typed message must not
76
+ * inherit it, or every message would look synthetic.
77
+ */
78
+ forwardedProps?: Record<string, unknown>;
79
+ }
80
+ export type Unsubscribe = () => void;
81
+ export declare class ChatSession {
82
+ private _messages;
83
+ private _inFlight;
84
+ private _runActive;
85
+ private _thinkingText;
86
+ private _nextId;
87
+ private subscribers;
88
+ private sendListeners;
89
+ private interruptListeners;
90
+ private toolResultListeners;
91
+ /** Snapshot the current state. Always returns a fresh immutable view. */
92
+ getState(): ChatSessionState;
93
+ /**
94
+ * Append a delta to the active thinking turn's narration buffer.
95
+ * Forwarded from the AG-UI THINKING_TEXT_MESSAGE_CONTENT event so
96
+ * the chat trail can render the model's own reasoning instead of
97
+ * silent loading dots between turns.
98
+ */
99
+ appendThinkingDelta(delta: string): void;
100
+ /**
101
+ * Replace the active thinking narration outright (vs. appendThinkingDelta's
102
+ * streaming accumulation). Used to surface tool-call progress — e.g.
103
+ * "Searching…" while the agent works a tool — so a long tool phase shows
104
+ * what's happening instead of silent dots. No-op if unchanged.
105
+ */
106
+ setThinkingText(text: string): void;
107
+ /**
108
+ * End the active thinking turn — drop any narration so the trail
109
+ * stops showing it. Fires on real text-message-start and on
110
+ * tool-call-start, the moment the model switches from reasoning
111
+ * to visible output.
112
+ */
113
+ clearThinking(): void;
114
+ setRunActive(active: boolean): void;
115
+ /**
116
+ * Subscribe to state changes. Called immediately with the current
117
+ * state, then again on every change. Returns an unsubscribe function.
118
+ */
119
+ subscribe(cb: ChatSessionSubscriber): Unsubscribe;
120
+ /**
121
+ * User submitted a message. Appends a user-role message, sets
122
+ * inFlight=true, notifies state subscribers, and fires a "send"
123
+ * event so transports can pick it up. Empty/whitespace text is a
124
+ * no-op (matches the chat bar's local guard).
125
+ */
126
+ send(text: string, opts?: SendOptions): void;
127
+ /**
128
+ * Single-shot assistant reply (no streaming). Equivalent to
129
+ * receiveStart + receiveDelta + receiveEnd in one call. Useful for
130
+ * stub transports and tests that don't model streaming.
131
+ */
132
+ receive(text: string): void;
133
+ /**
134
+ * Begin a streaming assistant message. Appends an empty assistant
135
+ * message with status='streaming'. Caller (transport adapter) feeds
136
+ * deltas via receiveDelta(id, text) and signals completion via
137
+ * receiveEnd(id). `inFlight` stays true through the stream.
138
+ */
139
+ receiveStart(id: string): void;
140
+ /**
141
+ * Append a delta to a streaming message. No-op when the id is
142
+ * unknown (race between transport events and reset, etc.) — never
143
+ * throws so transports can fire-and-forget.
144
+ */
145
+ receiveDelta(id: string, delta: string): void;
146
+ /**
147
+ * Mark a streaming message complete and clear inFlight. No-op when
148
+ * the id is unknown (defensive against transport double-fires).
149
+ */
150
+ receiveEnd(id: string): void;
151
+ /**
152
+ * Transport reports a fatal error. Marks any in-flight streaming
153
+ * message as 'error' (so the trail can render a styled error chip
154
+ * instead of pretending the partial text was a complete answer),
155
+ * appends a system-role message with the error text for visibility,
156
+ * and clears inFlight. Also drops any pending thinking narration
157
+ * — leaving stale "Let me check…" alongside an error chip reads
158
+ * as if the assistant is still working when it isn't.
159
+ */
160
+ error(message: string): void;
161
+ /**
162
+ * User clicked the in-flight stop button. Clears inFlight and
163
+ * fires an "interrupt" event so transports can cancel their
164
+ * in-flight request. No-op if not in-flight (idempotent). Drops
165
+ * any pending thinking narration for the same reason as error():
166
+ * the visitor explicitly asked the assistant to stop, so it
167
+ * shouldn't keep narrating in the trail.
168
+ */
169
+ interrupt(): void;
170
+ /**
171
+ * Wipe state. Used by the canvas-close path (start a fresh
172
+ * conversation next time) and by tests.
173
+ */
174
+ reset(): void;
175
+ /** Register a transport's send listener. Returns unsubscribe. */
176
+ onSend(listener: SendListener): Unsubscribe;
177
+ /**
178
+ * True when at least one transport has wired itself to the session's
179
+ * send pipeline. Views can use this to surface "no chat backend
180
+ * connected" affordances instead of hanging in `inFlight` after a
181
+ * send fires into the void.
182
+ */
183
+ hasTransport(): boolean;
184
+ /** Register a transport's interrupt listener. Returns unsubscribe. */
185
+ onInterrupt(listener: InterruptListener): Unsubscribe;
186
+ /**
187
+ * Register a transport's tool-result listener. The transport
188
+ * forwards `tool-result` actions back to the agent after the user
189
+ * approves or rejects a client-tool call. Returns unsubscribe.
190
+ */
191
+ onToolResult(listener: ToolResultListener): Unsubscribe;
192
+ /**
193
+ * Attach a tool call to a streaming assistant message. No-op when
194
+ * the message id is unknown (race between transport events and
195
+ * reset / late mount).
196
+ */
197
+ addToolCall(messageId: string | number, toolCall: TrailToolCall): void;
198
+ /**
199
+ * Partially update a tool call by id. Used by the transport to
200
+ * advance status (args-streaming → running → done) as AG-UI events
201
+ * arrive. No-op when the id is unknown.
202
+ */
203
+ updateToolCall(toolCallId: string, patch: Partial<TrailToolCall>): void;
204
+ /**
205
+ * Resolve a (client-) tool call. Marks the call done, persists, and
206
+ * fires onToolResult so the transport can forward the result + the
207
+ * user's approve/reject decision back to the agent. No-op when the
208
+ * id is unknown.
209
+ */
210
+ resolveToolCall(toolCallId: string, result: unknown, approved: boolean): void;
211
+ /**
212
+ * Hydrate from the server transcript (the /session SSE's
213
+ * messages-snapshot) — the server is the transcript of record
214
+ * (FEAT-1783701440). Snapshot order is truth: shared ids keep the
215
+ * LOCAL object (it may carry richer live tool-call state) but take the
216
+ * snapshot's position; snapshot-only messages (history on reload, a
217
+ * nudge missed during an SSE gap) are inserted; local-only messages
218
+ * (an in-flight turn, the greeting) float after in local order.
219
+ *
220
+ * Deploy-boundary guard: a user message persisted under a pre-Phase-2
221
+ * transport id (before ids were threaded) would arrive as
222
+ * "snapshot-only" next to its local twin — skip snapshot USER messages
223
+ * whose exact text already exists locally under a different id.
224
+ */
225
+ hydrate(snapshotMessages: TrailMessage[]): void;
226
+ private notify;
227
+ }
228
+ /**
229
+ * The module-level singleton. Every `<adaptive-chat-bar>` (regardless
230
+ * of which slot it lives in) reads from and writes to this instance.
231
+ * Multiple imports of this module return the same object.
232
+ *
233
+ * Scope: per-page. Correct for the canonical case (one user, one
234
+ * conversation, however many canvas views surface it). Multiple
235
+ * `<smart-canvas>` instances on the same page will share state —
236
+ * tracked in project_future_work.md for per-runtime scoping.
237
+ */
238
+ export declare const chatSession: ChatSession;
239
+ //# 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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"}