@syntrologie/adapt-chatbot 2.28.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.
- package/dist/AdaptiveChatBar.composer.test.d.ts +2 -0
- package/dist/AdaptiveChatBar.composer.test.d.ts.map +1 -0
- package/dist/AdaptiveChatBar.d.ts +140 -4
- package/dist/AdaptiveChatBar.d.ts.map +1 -1
- package/dist/AdaptiveChatBar.js +4 -3
- package/dist/AdaptiveChatBarMountable.d.ts +47 -0
- package/dist/AdaptiveChatBarMountable.d.ts.map +1 -1
- package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts +2 -0
- package/dist/AdaptiveChatTrail.anchor-scroll.test.d.ts.map +1 -0
- package/dist/AdaptiveChatTrail.d.ts +397 -5
- package/dist/AdaptiveChatTrail.d.ts.map +1 -1
- package/dist/AdaptiveChatTrail.js +6 -4
- package/dist/AdaptiveChatTrail.test.d.ts +2 -0
- package/dist/AdaptiveChatTrail.test.d.ts.map +1 -0
- package/dist/AdaptiveChipsStrip.d.ts +17 -11
- package/dist/AdaptiveChipsStrip.d.ts.map +1 -1
- package/dist/AdaptiveChipsStrip.js +2 -2
- package/dist/ChatAssistantLit.d.ts.map +1 -1
- package/dist/ChatAssistantLit.js +4 -3
- package/dist/ChatSession.d.ts +66 -5
- package/dist/ChatSession.d.ts.map +1 -1
- package/dist/ChatTransport.d.ts +107 -0
- package/dist/ChatTransport.d.ts.map +1 -1
- package/dist/InlineRegistryWidgetMount.test.d.ts +2 -0
- package/dist/InlineRegistryWidgetMount.test.d.ts.map +1 -0
- package/dist/InlineWidgetLiveMount.test.d.ts +2 -0
- package/dist/InlineWidgetLiveMount.test.d.ts.map +1 -0
- package/dist/NavLinkMountable.d.ts.map +1 -1
- package/dist/TextAnswerMountable.test.d.ts +2 -0
- package/dist/TextAnswerMountable.test.d.ts.map +1 -0
- package/dist/Turnstile.d.ts.map +1 -1
- package/dist/chunk-A7RBZLIX.js +1678 -0
- package/dist/chunk-A7RBZLIX.js.map +7 -0
- package/dist/{chunk-435KJD27.js → chunk-EACGDSJI.js} +46 -1
- package/dist/chunk-EACGDSJI.js.map +7 -0
- package/dist/chunk-EWPPVPJ4.js +14 -0
- package/dist/chunk-EWPPVPJ4.js.map +7 -0
- package/dist/chunk-FXHYE6FY.js +632 -0
- package/dist/chunk-FXHYE6FY.js.map +7 -0
- package/dist/{chunk-AUER7ZCK.js → chunk-OIGVZGSX.js} +11 -4
- package/dist/chunk-OIGVZGSX.js.map +7 -0
- package/dist/{chunk-UC4XU6GH.js → chunk-VZIUXXAM.js} +761 -52
- package/dist/chunk-VZIUXXAM.js.map +7 -0
- package/dist/{chunk-KUO67E2W.js → chunk-ZXV4GXMO.js} +715 -227
- package/dist/chunk-ZXV4GXMO.js.map +7 -0
- package/dist/elements/ActionHandler.d.ts +1 -1
- package/dist/elements/ActionHandler.d.ts.map +1 -1
- package/dist/elements/ElementInstanceStore.d.ts +62 -0
- package/dist/elements/ElementInstanceStore.d.ts.map +1 -1
- package/dist/elements/TileHandler.d.ts.map +1 -1
- package/dist/elements/TileHandler.test.d.ts +2 -0
- package/dist/elements/TileHandler.test.d.ts.map +1 -0
- package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts +2 -0
- package/dist/elements/__tests__/ElementInstanceStore.recall.test.d.ts.map +1 -0
- package/dist/elements/fetcher.d.ts +3 -3
- package/dist/elements/fetcher.d.ts.map +1 -1
- package/dist/elements/index.d.ts +1 -0
- package/dist/elements/index.d.ts.map +1 -1
- package/dist/elements/store-singleton.d.ts +4 -0
- package/dist/elements/store-singleton.d.ts.map +1 -0
- package/dist/elements/types.d.ts +4 -0
- package/dist/elements/types.d.ts.map +1 -1
- package/dist/observer/__tests__/bus-translate.test.d.ts +16 -0
- package/dist/observer/__tests__/bus-translate.test.d.ts.map +1 -0
- package/dist/observer/__tests__/lifecycle.test.d.ts +2 -0
- package/dist/observer/__tests__/lifecycle.test.d.ts.map +1 -0
- package/dist/observer/__tests__/observer-enrich.test.d.ts +10 -0
- package/dist/observer/__tests__/observer-enrich.test.d.ts.map +1 -0
- package/dist/observer/allowlist.d.ts +5 -7
- package/dist/observer/allowlist.d.ts.map +1 -1
- package/dist/observer/bus-translate.d.ts +33 -0
- package/dist/observer/bus-translate.d.ts.map +1 -0
- package/dist/observer/index.d.ts +10 -1
- package/dist/observer/index.d.ts.map +1 -1
- package/dist/observer/queue.d.ts +6 -0
- package/dist/observer/queue.d.ts.map +1 -1
- package/dist/observer/transport.d.ts +1 -0
- package/dist/observer/transport.d.ts.map +1 -1
- package/dist/personas.d.ts +30 -0
- package/dist/personas.d.ts.map +1 -0
- package/dist/runtime.d.ts +2 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +856 -129
- package/dist/runtime.js.map +4 -4
- package/dist/schema.d.ts +363 -67
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +176 -3
- package/dist/schema.js.map +2 -2
- package/dist/test/setup.d.ts +1 -0
- package/dist/test/setup.d.ts.map +1 -0
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -1
- package/dist/chunk-435KJD27.js.map +0 -7
- package/dist/chunk-AUER7ZCK.js.map +0 -7
- package/dist/chunk-DOMEUJR7.js +0 -382
- package/dist/chunk-DOMEUJR7.js.map +0 -7
- package/dist/chunk-KUO67E2W.js.map +0 -7
- package/dist/chunk-QELVKBQV.js +0 -214
- package/dist/chunk-QELVKBQV.js.map +0 -7
- package/dist/chunk-UC4XU6GH.js.map +0 -7
package/dist/ChatSession.d.ts
CHANGED
|
@@ -31,6 +31,16 @@ import type { TrailMessage, TrailToolCall } from './AdaptiveChatTrail';
|
|
|
31
31
|
export interface ChatSessionState {
|
|
32
32
|
readonly messages: readonly TrailMessage[];
|
|
33
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;
|
|
34
44
|
}
|
|
35
45
|
export interface ToolResultEvent {
|
|
36
46
|
toolCallId: string;
|
|
@@ -40,7 +50,9 @@ export interface ToolResultEvent {
|
|
|
40
50
|
export type ChatSessionSubscriber = (state: ChatSessionState) => void;
|
|
41
51
|
export type SendListener = (event: {
|
|
42
52
|
text: string;
|
|
53
|
+
id: string;
|
|
43
54
|
activeLidSlot?: string;
|
|
55
|
+
forwardedProps?: Record<string, unknown>;
|
|
44
56
|
}) => void;
|
|
45
57
|
export type InterruptListener = () => void;
|
|
46
58
|
export type ToolResultListener = (event: ToolResultEvent) => void;
|
|
@@ -56,20 +68,50 @@ export interface SendOptions {
|
|
|
56
68
|
* silently follows whichever bar configured last.
|
|
57
69
|
*/
|
|
58
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>;
|
|
59
79
|
}
|
|
60
80
|
export type Unsubscribe = () => void;
|
|
61
|
-
export declare const CHAT_SESSION_STORAGE_KEY = "syntro:chat:v1";
|
|
62
81
|
export declare class ChatSession {
|
|
63
82
|
private _messages;
|
|
64
83
|
private _inFlight;
|
|
84
|
+
private _runActive;
|
|
85
|
+
private _thinkingText;
|
|
65
86
|
private _nextId;
|
|
66
87
|
private subscribers;
|
|
67
88
|
private sendListeners;
|
|
68
89
|
private interruptListeners;
|
|
69
90
|
private toolResultListeners;
|
|
70
|
-
constructor();
|
|
71
91
|
/** Snapshot the current state. Always returns a fresh immutable view. */
|
|
72
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;
|
|
73
115
|
/**
|
|
74
116
|
* Subscribe to state changes. Called immediately with the current
|
|
75
117
|
* state, then again on every change. Returns an unsubscribe function.
|
|
@@ -111,13 +153,18 @@ export declare class ChatSession {
|
|
|
111
153
|
* message as 'error' (so the trail can render a styled error chip
|
|
112
154
|
* instead of pretending the partial text was a complete answer),
|
|
113
155
|
* appends a system-role message with the error text for visibility,
|
|
114
|
-
* and clears inFlight.
|
|
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.
|
|
115
159
|
*/
|
|
116
160
|
error(message: string): void;
|
|
117
161
|
/**
|
|
118
162
|
* User clicked the in-flight stop button. Clears inFlight and
|
|
119
163
|
* fires an "interrupt" event so transports can cancel their
|
|
120
|
-
* in-flight request. No-op if not in-flight (idempotent).
|
|
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.
|
|
121
168
|
*/
|
|
122
169
|
interrupt(): void;
|
|
123
170
|
/**
|
|
@@ -161,8 +208,22 @@ export declare class ChatSession {
|
|
|
161
208
|
* id is unknown.
|
|
162
209
|
*/
|
|
163
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;
|
|
164
226
|
private notify;
|
|
165
|
-
private persist;
|
|
166
227
|
}
|
|
167
228
|
/**
|
|
168
229
|
* The module-level singleton. Every `<adaptive-chat-bar>` (regardless
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSession.d.ts","sourceRoot":"","sources":["../src/ChatSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatSession.d.ts","sourceRoot":"","sources":["../src/ChatSession.ts"],"names":[],"mappings":"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"}
|
package/dist/ChatTransport.d.ts
CHANGED
|
@@ -111,6 +111,12 @@ export interface ChatTransportConfig {
|
|
|
111
111
|
* server-side, which is the pre-change behaviour.
|
|
112
112
|
*/
|
|
113
113
|
activeLidSlot?: string;
|
|
114
|
+
/** Sticky persona identity (FEAT-1784917430) — forwarded as headers so the
|
|
115
|
+
* agent speaks AS the persona the visitor sees. ASCII-sanitized client-side;
|
|
116
|
+
* the server re-sanitizes and never trusts these for anything but voice. */
|
|
117
|
+
personaId?: string;
|
|
118
|
+
personaName?: string;
|
|
119
|
+
personaRole?: string;
|
|
114
120
|
}
|
|
115
121
|
/**
|
|
116
122
|
* Debounce window for connect errors. Single transient errors
|
|
@@ -132,6 +138,22 @@ export interface FallbackPayload {
|
|
|
132
138
|
errorName: string | null;
|
|
133
139
|
}
|
|
134
140
|
export type FallbackListener = (payload: FallbackPayload) => void;
|
|
141
|
+
/**
|
|
142
|
+
* Visitor-facing progress copy for a tool call, shown in the thinking chip.
|
|
143
|
+
* Returns an ORDERED set of phrasings for the tool's category: the first shows
|
|
144
|
+
* immediately, and `ChatTransport` rotates through the rest every few seconds
|
|
145
|
+
* while the same phase runs (see `_startThinkingCycle`) so a long — or looping
|
|
146
|
+
* — tool phase reads as live progress instead of one frozen string. Keyed on
|
|
147
|
+
* substrings of the (technical) tool name so it survives renames; never shows
|
|
148
|
+
* the raw name.
|
|
149
|
+
*
|
|
150
|
+
* Distinct buckets matter: `retrieve_wiki` (search), `get_wiki_route`
|
|
151
|
+
* (navigate) and `read_section` (read) all used to collapse to one identical
|
|
152
|
+
* "Finding the right page…", which made a multi-call research loop look like a
|
|
153
|
+
* single calm step. Check search/retrieve BEFORE the generic `wiki` fallback so
|
|
154
|
+
* `retrieve_wiki` lands on "Searching…", not "Looking that up…".
|
|
155
|
+
*/
|
|
156
|
+
export declare function toolNarrationVariants(name: string): string[];
|
|
135
157
|
export declare class ChatTransport {
|
|
136
158
|
private _config;
|
|
137
159
|
private _status;
|
|
@@ -143,6 +165,12 @@ export declare class ChatTransport {
|
|
|
143
165
|
private _connectInFlight;
|
|
144
166
|
/** Bounded streaming-message id for the currently-being-typed assistant turn. */
|
|
145
167
|
private _currentAssistantMessageId;
|
|
168
|
+
/** Intent messageIds this transport actually dispatched (BUG-1784021805).
|
|
169
|
+
* The server's `suppressToast` hint assumes the intent frame reached us —
|
|
170
|
+
* but that frame is fire-and-forget, and a fresh visitor's connection gap
|
|
171
|
+
* loses it. Only the transport knows what it dispatched, so suppression is
|
|
172
|
+
* honored ONLY when the sibling intent (`{id}-intent`) went through here. */
|
|
173
|
+
private _dispatchedNudgeIntentIds;
|
|
146
174
|
/** Outcome bookkeeping for telemetry. */
|
|
147
175
|
private _hadTurnstileToken;
|
|
148
176
|
/** Count of successful round-trips for telemetry payloads. */
|
|
@@ -162,8 +190,28 @@ export declare class ChatTransport {
|
|
|
162
190
|
* pins the header to the bar that actually sent the message.
|
|
163
191
|
*/
|
|
164
192
|
private _pendingLidSlot;
|
|
193
|
+
/**
|
|
194
|
+
* Per-send forwardedProps override. Set in the ``chatSession.onSend``
|
|
195
|
+
* listener before each ``_forwardUserMessage`` and spread OVER the
|
|
196
|
+
* config-level forwardedProps for that one request (see
|
|
197
|
+
* ``_resolveForwardedProps``). Overwritten on EVERY send — ``null`` when
|
|
198
|
+
* the send carried no envelope — so turn provenance can never leak onto a
|
|
199
|
+
* later typed message and make it look synthetic. Same lifecycle as
|
|
200
|
+
* ``_pendingLidSlot``.
|
|
201
|
+
*/
|
|
202
|
+
private _pendingForwardedProps;
|
|
165
203
|
/** Active debounce timer; null when no debounce pending. */
|
|
166
204
|
private _errorDebounceTimer;
|
|
205
|
+
/** Rotates thinking-chip phrasings during a long/looping tool phase (C9). */
|
|
206
|
+
private _thinkingCycleTimer;
|
|
207
|
+
/**
|
|
208
|
+
* Per-class rotation counter, keyed by the narration set's first variant.
|
|
209
|
+
* A NEW tool class shows its primary (variant A) so it's recognizable; a
|
|
210
|
+
* REPEATED same-class call advances to the next variant, so a research loop
|
|
211
|
+
* of (e.g.) several searches reads as different thinking, not one repeated
|
|
212
|
+
* label. Bounded to ~6 keys (one per tool class).
|
|
213
|
+
*/
|
|
214
|
+
private _thinkingClassSeq;
|
|
167
215
|
/** Most recent error payload, captured so debounced fallback can attach it. */
|
|
168
216
|
private _lastErrorPayload;
|
|
169
217
|
private _fallbackListeners;
|
|
@@ -206,6 +254,19 @@ export declare class ChatTransport {
|
|
|
206
254
|
body?: string | null;
|
|
207
255
|
errorName?: string | null;
|
|
208
256
|
}): void;
|
|
257
|
+
/**
|
|
258
|
+
* Test seam — drive the FULL server-error path (fallback kernel + the
|
|
259
|
+
* visitor-facing chip), exactly what the `case 'error'` transport-event
|
|
260
|
+
* branch does. `midAnswer` simulates an assistant message having been
|
|
261
|
+
* mid-stream when the connection died.
|
|
262
|
+
*/
|
|
263
|
+
simulateServerError(payload: {
|
|
264
|
+
message?: string;
|
|
265
|
+
status?: number | null;
|
|
266
|
+
body?: string | null;
|
|
267
|
+
errorName?: string | null;
|
|
268
|
+
midAnswer?: boolean;
|
|
269
|
+
}): void;
|
|
209
270
|
/**
|
|
210
271
|
* Test seam — register a synthetic successful message-complete so
|
|
211
272
|
* the hasSucceeded gate flips without a real AgUi round-trip.
|
|
@@ -232,7 +293,35 @@ export declare class ChatTransport {
|
|
|
232
293
|
* _disconnect indirectly via reconfigure.
|
|
233
294
|
*/
|
|
234
295
|
reset(): void;
|
|
296
|
+
/** AbortController for the live /session SSE reader; null = not running. */
|
|
297
|
+
private _sessionStreamAbort;
|
|
298
|
+
/** Capped reconnect backoff for the session stream. */
|
|
299
|
+
private _sessionStreamBackoffMs;
|
|
300
|
+
/**
|
|
301
|
+
* Open the persistent `/api/adaptive/session` SSE and feed its frames
|
|
302
|
+
* through the SAME `_onTransportEvent` switch the AG-UI path uses
|
|
303
|
+
* (FEAT-1783640628 — proactive nudges).
|
|
304
|
+
*
|
|
305
|
+
* The AG-UI cutover left this endpoint with no client consumer, so
|
|
306
|
+
* server-INITIATED events had nowhere to land. A fetch-based reader —
|
|
307
|
+
* unlike EventSource — can send the SDK token, and the visitor ids that
|
|
308
|
+
* write the server's nudge identity bridge. Idempotent; reconnects with
|
|
309
|
+
* capped backoff; `reset()`/`stopSessionStream()` tears it down.
|
|
310
|
+
*/
|
|
311
|
+
startSessionStream(): Promise<void>;
|
|
312
|
+
stopSessionStream(): void;
|
|
235
313
|
private _clearDebounceTimer;
|
|
314
|
+
/**
|
|
315
|
+
* Show a per-call rotating variant in the thinking chip immediately (so
|
|
316
|
+
* consecutive tool calls differ), then rotate through the remaining phrasings
|
|
317
|
+
* every 4s while the same tool phase runs (C9). A
|
|
318
|
+
* single tool call can sit for tens of seconds (the model reasoning about the
|
|
319
|
+
* next step, or a slow retrieval); a static chip reads as frozen and hides a
|
|
320
|
+
* loop. Cycling makes a long/looping phase read as live progress. Restarting
|
|
321
|
+
* (a new tool), any output (message/thinking), or teardown clears the cycle.
|
|
322
|
+
*/
|
|
323
|
+
private _startThinkingCycle;
|
|
324
|
+
private _stopThinkingCycle;
|
|
236
325
|
/**
|
|
237
326
|
* Shared error-handling kernel — called by the AG-UI subscriber and
|
|
238
327
|
* by the simulateError test seam. Publishes transport_error
|
|
@@ -248,6 +337,14 @@ export declare class ChatTransport {
|
|
|
248
337
|
* diagnostic snapshot for telemetry/debug.
|
|
249
338
|
*/
|
|
250
339
|
private _renderFallback;
|
|
340
|
+
/**
|
|
341
|
+
* forwardedProps for the NEXT outbound AG-UI request: the config-level
|
|
342
|
+
* value (late-bound — `configure()` can update uiTemplates /
|
|
343
|
+
* elementsEnabled mid-session without a reconnect, so this must be
|
|
344
|
+
* resolved per request, not captured at construction) with the per-send
|
|
345
|
+
* envelope spread over it. Shallow merge; per-send wins per top-level key.
|
|
346
|
+
*/
|
|
347
|
+
private _resolveForwardedProps;
|
|
251
348
|
private _wireSession;
|
|
252
349
|
private _forwardUserMessage;
|
|
253
350
|
/**
|
|
@@ -270,6 +367,16 @@ export declare class ChatTransport {
|
|
|
270
367
|
* `tool-call` events for client tools transitioning to 'pending'.
|
|
271
368
|
*/
|
|
272
369
|
private _findToolCallStatus;
|
|
370
|
+
/**
|
|
371
|
+
* Convert one server-transcript message (the session store shape:
|
|
372
|
+
* ``{id, role, content, timestamp, status, toolCalls?}`` with toolCalls
|
|
373
|
+
* in AG-UI wire shape) into a TrailMessage. Returns null for entries the
|
|
374
|
+
* trail can't render (missing id, system/tool roles, empty content with
|
|
375
|
+
* no tool receipts) — the transcript may legitimately contain them.
|
|
376
|
+
*/
|
|
377
|
+
private _snapshotToTrailMessage;
|
|
378
|
+
/** AG-UI wire-shape toolCalls → settled TrailToolCall receipts. */
|
|
379
|
+
private _snapshotToolCalls;
|
|
273
380
|
/** Map AG-UI ToolCallStatus to TrailToolCall status. */
|
|
274
381
|
private _mapToolCallStatus;
|
|
275
382
|
private _onTransportEvent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatTransport.d.ts","sourceRoot":"","sources":["../src/ChatTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AASH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatTransport.d.ts","sourceRoot":"","sources":["../src/ChatTransport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineRegistryWidgetMount.test.d.ts","sourceRoot":"","sources":["../src/InlineRegistryWidgetMount.test.ts"],"names":[],"mappings":"AAiCA,OAAO,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineWidgetLiveMount.test.d.ts","sourceRoot":"","sources":["../src/InlineWidgetLiveMount.test.ts"],"names":[],"mappings":"AAmCA,OAAO,mBAAmB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavLinkMountable.d.ts","sourceRoot":"","sources":["../src/NavLinkMountable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;
|
|
1
|
+
{"version":3,"file":"NavLinkMountable.d.ts","sourceRoot":"","sources":["../src/NavLinkMountable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAoEH,eAAO,MAAM,gBAAgB;qBACV,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,IAAI;sBAkB9D,WAAW,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAO5E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextAnswerMountable.test.d.ts","sourceRoot":"","sources":["../src/TextAnswerMountable.test.ts"],"names":[],"mappings":""}
|
package/dist/Turnstile.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Turnstile.d.ts","sourceRoot":"","sources":["../src/Turnstile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAwBH,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAmE5D,MAAM,WAAW,uBAAuB;IACtC,mEAAmE;IACnE,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IACvD,4EAA4E;IAC5E,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,kBAAkB,CAAC;IACvD,uEAAuE;IACvE,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,qFAAqF;IACrF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,GAAE,uBAA4B,GACjC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"Turnstile.d.ts","sourceRoot":"","sources":["../src/Turnstile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAwBH,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAmE5D,MAAM,WAAW,uBAAuB;IACtC,mEAAmE;IACnE,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IACvD,4EAA4E;IAC5E,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,kBAAkB,CAAC;IACvD,uEAAuE;IACvE,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,qFAAqF;IACrF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,GAAE,uBAA4B,GACjC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyFxB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAkC/C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAMjE;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,UAAU,GAAG,kBAAkB,GAAG,uBAAuB,GAAG,oBAAoB,CAAC;CAC3F;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GACrC,OAAO,CAAC,0BAA0B,CAAC,CAgDrC"}
|