@nority/bridge-sdk 0.2.1 → 0.3.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 (63) hide show
  1. package/README.md +3 -3
  2. package/dist/agent.d.ts +58 -0
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/auth/jwt.d.ts +9 -0
  5. package/dist/auth/jwt.d.ts.map +1 -1
  6. package/dist/auth/jwt.js +2 -0
  7. package/dist/auth/jwt.js.map +1 -1
  8. package/dist/auth/pairing.d.ts +9 -0
  9. package/dist/auth/pairing.d.ts.map +1 -1
  10. package/dist/auth/pairing.js +6 -0
  11. package/dist/auth/pairing.js.map +1 -1
  12. package/dist/auth/reconnect.d.ts +9 -0
  13. package/dist/auth/reconnect.d.ts.map +1 -1
  14. package/dist/auth/reconnect.js +2 -0
  15. package/dist/auth/reconnect.js.map +1 -1
  16. package/dist/connection-types.d.ts +20 -0
  17. package/dist/connection-types.d.ts.map +1 -1
  18. package/dist/conversation/replay.d.ts +22 -0
  19. package/dist/conversation/replay.d.ts.map +1 -1
  20. package/dist/conversation/replay.js +9 -0
  21. package/dist/conversation/replay.js.map +1 -1
  22. package/dist/conversation/runtime.d.ts +1 -0
  23. package/dist/conversation/runtime.d.ts.map +1 -1
  24. package/dist/conversation/runtime.js.map +1 -1
  25. package/dist/conversation/state.d.ts +7 -0
  26. package/dist/conversation/state.d.ts.map +1 -1
  27. package/dist/conversation/state.js +6 -0
  28. package/dist/conversation/state.js.map +1 -1
  29. package/dist/crypto/conversation.d.ts +2 -0
  30. package/dist/crypto/conversation.d.ts.map +1 -1
  31. package/dist/crypto/conversation.js +2 -0
  32. package/dist/crypto/conversation.js.map +1 -1
  33. package/dist/crypto/identity.d.ts +3 -0
  34. package/dist/crypto/identity.d.ts.map +1 -1
  35. package/dist/crypto/identity.js.map +1 -1
  36. package/dist/crypto/x25519.d.ts +6 -0
  37. package/dist/crypto/x25519.d.ts.map +1 -1
  38. package/dist/crypto/x25519.js +3 -0
  39. package/dist/crypto/x25519.js.map +1 -1
  40. package/dist/index.d.ts +0 -2
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +0 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/pairing/client.d.ts.map +1 -1
  45. package/dist/pairing/client.js +3 -5
  46. package/dist/pairing/client.js.map +1 -1
  47. package/dist/pairing/types.d.ts +25 -0
  48. package/dist/pairing/types.d.ts.map +1 -1
  49. package/dist/protocol/frames.d.ts +3 -0
  50. package/dist/protocol/frames.d.ts.map +1 -1
  51. package/dist/protocol/frames.js.map +1 -1
  52. package/dist/protocol/validation.d.ts +4 -0
  53. package/dist/protocol/validation.d.ts.map +1 -1
  54. package/dist/protocol/validation.js +2 -1
  55. package/dist/protocol/validation.js.map +1 -1
  56. package/dist/runtime/proactive.d.ts +4 -0
  57. package/dist/runtime/proactive.d.ts.map +1 -1
  58. package/dist/runtime/proactive.js.map +1 -1
  59. package/dist/transport/websocket.d.ts +44 -0
  60. package/dist/transport/websocket.d.ts.map +1 -1
  61. package/dist/transport/websocket.js +9 -1
  62. package/dist/transport/websocket.js.map +1 -1
  63. package/package.json +1 -1
package/README.md CHANGED
@@ -224,7 +224,7 @@ interface BridgeConfig {
224
224
  agent: AgentAdapter; // Your adapter implementation
225
225
  onPairingInfo?: (pairing: PairingInfo) => void; // Called when pairing token is ready
226
226
  logger?: BridgeLogger; // Structured logging
227
- webSocketFactory?: WebSocketFactory; // Custom WebSocket creation
227
+ webSocketFactory?: WebSocketFactory; // Override the built-in ws-based WebSocket
228
228
  fetchImplementation?: typeof fetch; // Custom fetch (for auth challenge-response)
229
229
  clock?: () => Date; // Custom clock (for testing)
230
230
  pairingTokenFactory?: () => string; // Custom pairing token generator
@@ -242,7 +242,7 @@ interface PairingClientConfig {
242
242
  dataDir: string;
243
243
  onPairingInfo?: (info: PairingInfo) => void;
244
244
  logger?: BridgeLogger;
245
- webSocketFactory?: WebSocketFactory;
245
+ webSocketFactory?: WebSocketFactory; // Override the built-in ws-based WebSocket
246
246
  clock?: () => Date;
247
247
  pairingTokenFactory?: () => string;
248
248
  }
@@ -260,7 +260,7 @@ interface BridgeConnectionConfig {
260
260
  logger?: BridgeLogger;
261
261
  seedJwt?: AccessTokenRecord;
262
262
  fetchImplementation?: typeof fetch;
263
- webSocketFactory?: WebSocketFactory;
263
+ webSocketFactory?: WebSocketFactory; // Override the built-in ws-based WebSocket
264
264
  clock?: () => Date;
265
265
  backoffRandom?: () => number;
266
266
  heartbeatIntervalMs?: number;
package/dist/agent.d.ts CHANGED
@@ -3,12 +3,21 @@
3
3
  * Provider-agnostic — no assumptions about the agent runtime transport.
4
4
  */
5
5
  import type { WebSocketFactory } from "./transport/websocket.js";
6
+ /** Reference to a media asset (image, file, etc.) within a conversation. */
6
7
  export interface MediaReference {
8
+ /** Unique identifier for the media asset. */
7
9
  mediaId: string;
10
+ /** MIME type of the media (e.g. "image/png"). */
8
11
  mediaType: string;
12
+ /** Size of the media in bytes. */
9
13
  size: number;
14
+ /** Optional base64-encoded thumbnail for preview. */
10
15
  thumbnailB64?: string;
11
16
  }
17
+ /**
18
+ * A single piece of content within a conversation turn.
19
+ * Multimodal-safe: supports text and media from day one.
20
+ */
12
21
  export type ContentPart = {
13
22
  kind: "text";
14
23
  text: string;
@@ -16,15 +25,28 @@ export type ContentPart = {
16
25
  kind: "media";
17
26
  media: MediaReference;
18
27
  };
28
+ /** A single turn in a conversation, representing either a user or assistant message. */
19
29
  export interface ChatTurn {
30
+ /** Who produced this turn. */
20
31
  role: "user" | "assistant";
32
+ /** Ordered content parts that make up the turn. */
21
33
  parts: ContentPart[];
22
34
  }
35
+ /** The request payload passed to {@link AgentAdapter.invokeAgent}. */
23
36
  export interface InvokeRequest {
37
+ /** Unique conversation identifier. */
24
38
  conversationId: string;
39
+ /** Content parts from the current user turn. */
25
40
  inputs: ContentPart[];
41
+ /** Previous conversation turns for context. */
26
42
  history: ChatTurn[];
27
43
  }
44
+ /**
45
+ * A streaming event yielded by the agent adapter during an invocation.
46
+ *
47
+ * The SDK encrypts each event and forwards it to the backend in real time.
48
+ * The final event yielded **must** be `{ type: "done" }`.
49
+ */
28
50
  export type AgentEvent = {
29
51
  type: "text_delta";
30
52
  content: string;
@@ -70,32 +92,68 @@ export type AgentEvent = {
70
92
  } | {
71
93
  type: "done";
72
94
  };
95
+ /**
96
+ * Provider-agnostic agent adapter interface.
97
+ *
98
+ * Implement this to connect your agent runtime to the Nority bridge.
99
+ * The SDK calls {@link invokeAgent} for each incoming user message and
100
+ * streams the yielded {@link AgentEvent}s back to the user.
101
+ */
73
102
  export interface AgentAdapter {
103
+ /**
104
+ * Invokes the agent with the given request and yields streaming events.
105
+ *
106
+ * @param signal - Aborted when the conversation is deleted or the bridge disconnects.
107
+ * @param req - The invocation request containing user input and conversation history.
108
+ */
74
109
  invokeAgent(signal: AbortSignal, req: InvokeRequest): AsyncIterable<AgentEvent>;
75
110
  }
111
+ /** Information about an active pairing token, used to display a QR code or deeplink. */
76
112
  export interface PairingInfo {
113
+ /** The pairing token string. */
77
114
  token: string;
115
+ /** The `nority://` deeplink URL containing the token. */
78
116
  deeplinkUrl: string;
117
+ /** ISO 8601 timestamp when this token expires (auto-regenerates after expiry). */
79
118
  expiresAt: string;
80
119
  }
120
+ /** Structured logger interface accepted by all SDK components. */
81
121
  export interface BridgeLogger {
82
122
  debug: (msg: string, ...args: unknown[]) => void;
83
123
  info: (msg: string, ...args: unknown[]) => void;
84
124
  warn: (msg: string, ...args: unknown[]) => void;
85
125
  error: (msg: string, ...args: unknown[]) => void;
86
126
  }
127
+ /**
128
+ * Configuration for {@link NorityBridge}, the managed entry point.
129
+ *
130
+ * Only `backendUrl`, `dataDir`, and `agent` are required.
131
+ * All other fields have sensible defaults.
132
+ */
87
133
  export interface BridgeConfig {
134
+ /** Nority backend WebSocket URL. */
88
135
  backendUrl: string;
136
+ /** Directory for durable state (Ed25519 identity, conversation keys). */
89
137
  dataDir: string;
138
+ /** Your agent adapter implementation. */
90
139
  agent: AgentAdapter;
140
+ /** Called when a pairing token is ready — use this to display a QR code. */
91
141
  onPairingInfo?: (pairing: PairingInfo) => void;
142
+ /** Structured logger. Defaults to no-op. */
92
143
  logger?: BridgeLogger;
144
+ /** Override the default `fetch` used for challenge-response auth. */
93
145
  fetchImplementation?: typeof fetch;
146
+ /** Override the built-in `ws`-based WebSocket. */
94
147
  webSocketFactory?: WebSocketFactory;
148
+ /** Override the system clock (useful for testing). */
95
149
  clock?: () => Date;
150
+ /** Override the random pairing token generator. */
96
151
  pairingTokenFactory?: () => string;
152
+ /** Override `Math.random` for reconnect backoff jitter (useful for testing). */
97
153
  backoffRandom?: () => number;
154
+ /** Heartbeat interval in milliseconds. Default: 15000. */
98
155
  heartbeatIntervalMs?: number;
156
+ /** Idle timeout in milliseconds. Must be greater than `heartbeatIntervalMs`. Default: 45000. */
99
157
  idleTimeoutMs?: number;
100
158
  }
101
159
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -6,15 +6,24 @@
6
6
  * - Bridge-scoped (audience: "nority-bridge")
7
7
  * - Least-privilege (scope: "bridge:connect bridge:replay bridge:events")
8
8
  */
9
+ /** JWT audience claim for bridge access tokens. */
9
10
  export declare const BRIDGE_JWT_AUDIENCE = "nority-bridge";
11
+ /** JWT scopes granted to bridge access tokens. */
10
12
  export declare const BRIDGE_JWT_SCOPES: readonly ["bridge:connect", "bridge:replay", "bridge:events"];
13
+ /** A short-lived bridge access JWT with its expiry metadata. */
11
14
  export interface AccessTokenRecord {
15
+ /** The raw JWT string. */
12
16
  accessJwt: string;
17
+ /** ISO 8601 expiry timestamp. */
13
18
  expiresAt: string;
19
+ /** Agent ID the token was issued for (when available). */
14
20
  agentId?: string;
15
21
  }
22
+ /** Options for {@link JwtCache}. */
16
23
  export interface JwtCacheOptions {
24
+ /** Override the system clock (useful for testing). */
17
25
  clock?: () => Date;
26
+ /** How many milliseconds before expiry to consider a token stale. Default: 5000. */
18
27
  expirySkewMs?: number;
19
28
  }
20
29
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../src/auth/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,iBAAiB,+DAIpB,CAAC;AAEX,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,eAAe,SAAoB,GAClC,OAAO,CAqBT;AAED;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,OAAO,CAAkC;gBAErC,OAAO,GAAE,eAAoB;IAKzC,IAAI,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAKrC,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,iBAAiB,GAAG,IAAI;IAqBpC,OAAO,CAAC,YAAY;CAarB"}
1
+ {"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../src/auth/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,mDAAmD;AACnD,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AAEnD,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,+DAIpB,CAAC;AAEX,gEAAgE;AAChE,MAAM,WAAW,iBAAiB;IAChC,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oCAAoC;AACpC,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,eAAe,SAAoB,GAClC,OAAO,CAqBT;AAED;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,OAAO,CAAkC;gBAErC,OAAO,GAAE,eAAoB;IAKzC,IAAI,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAKrC,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,iBAAiB,GAAG,IAAI;IAqBpC,OAAO,CAAC,YAAY;CAarB"}
package/dist/auth/jwt.js CHANGED
@@ -6,7 +6,9 @@
6
6
  * - Bridge-scoped (audience: "nority-bridge")
7
7
  * - Least-privilege (scope: "bridge:connect bridge:replay bridge:events")
8
8
  */
9
+ /** JWT audience claim for bridge access tokens. */
9
10
  export const BRIDGE_JWT_AUDIENCE = "nority-bridge";
11
+ /** JWT scopes granted to bridge access tokens. */
10
12
  export const BRIDGE_JWT_SCOPES = [
11
13
  "bridge:connect",
12
14
  "bridge:replay",
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/auth/jwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/auth/jwt.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,23 @@
1
1
  /**
2
2
  * Pairing flow helpers.
3
3
  */
4
+ /** How long a pairing token remains valid before auto-regeneration (seconds). */
4
5
  export declare const PAIRING_TOKEN_TTL_SECONDS = 120;
6
+ /** URL scheme prefix for Nority pairing deeplinks. */
5
7
  export declare const DEEPLINK_PREFIX = "nority://pair-bridge?token=";
8
+ /** Clock and TTL overrides for pairing expiry calculations. */
6
9
  export interface PairingClockOptions {
10
+ /** Override the system clock (useful for testing). */
7
11
  clock?: () => Date;
12
+ /** Override the token TTL. Default: {@link PAIRING_TOKEN_TTL_SECONDS}. */
8
13
  tokenTtlSeconds?: number;
9
14
  }
15
+ /** Creates a `nority://` deeplink URL from a pairing token. */
10
16
  export declare function createDeeplinkUrl(token: string): string;
17
+ /** Generates a cryptographically random pairing token prefixed with `pair_`. */
11
18
  export declare function createPairingToken(): string;
19
+ /** Returns an ISO 8601 timestamp representing when the pairing token expires. */
12
20
  export declare function createPairingExpiry(options?: PairingClockOptions): string;
21
+ /** Returns `true` if the pairing token's `expiresAt` timestamp is in the past. */
13
22
  export declare function isPairingExpired(expiresAt: string, clock?: () => Date): boolean;
14
23
  //# sourceMappingURL=pairing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pairing.d.ts","sourceRoot":"","sources":["../../src/auth/pairing.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,eAAe,gCAAgC,CAAC;AAE7D,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAUR;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAM,IAAuB,GACnC,OAAO,CAaT"}
1
+ {"version":3,"file":"pairing.d.ts","sourceRoot":"","sources":["../../src/auth/pairing.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,sDAAsD;AACtD,eAAO,MAAM,eAAe,gCAAgC,CAAC;AAE7D,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,iFAAiF;AACjF,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAUR;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAM,IAAuB,GACnC,OAAO,CAaT"}
@@ -2,17 +2,22 @@ import { randomBytes } from "node:crypto";
2
2
  /**
3
3
  * Pairing flow helpers.
4
4
  */
5
+ /** How long a pairing token remains valid before auto-regeneration (seconds). */
5
6
  export const PAIRING_TOKEN_TTL_SECONDS = 120;
7
+ /** URL scheme prefix for Nority pairing deeplinks. */
6
8
  export const DEEPLINK_PREFIX = "nority://pair-bridge?token=";
9
+ /** Creates a `nority://` deeplink URL from a pairing token. */
7
10
  export function createDeeplinkUrl(token) {
8
11
  if (!token) {
9
12
  throw new Error("createDeeplinkUrl: token is required");
10
13
  }
11
14
  return `${DEEPLINK_PREFIX}${token}`;
12
15
  }
16
+ /** Generates a cryptographically random pairing token prefixed with `pair_`. */
13
17
  export function createPairingToken() {
14
18
  return `pair_${randomBytes(15).toString("base64url")}`;
15
19
  }
20
+ /** Returns an ISO 8601 timestamp representing when the pairing token expires. */
16
21
  export function createPairingExpiry(options = {}) {
17
22
  const clock = options.clock ?? (() => new Date());
18
23
  const tokenTtlSeconds = options.tokenTtlSeconds ?? PAIRING_TOKEN_TTL_SECONDS;
@@ -21,6 +26,7 @@ export function createPairingExpiry(options = {}) {
21
26
  }
22
27
  return new Date(clock().getTime() + tokenTtlSeconds * 1000).toISOString();
23
28
  }
29
+ /** Returns `true` if the pairing token's `expiresAt` timestamp is in the past. */
24
30
  export function isPairingExpired(expiresAt, clock = () => new Date()) {
25
31
  if (!expiresAt) {
26
32
  throw new Error("isPairingExpired: expiresAt is required");
@@ -1 +1 @@
1
- {"version":3,"file":"pairing.js","sourceRoot":"","sources":["../../src/auth/pairing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,6BAA6B,CAAC;AAO7D,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,GAAG,eAAe,GAAG,KAAK,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,QAAQ,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,yBAAyB,CAAC;IAC7E,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,8DAA8D,eAAe,EAAE,CAChF,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,eAAe,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,QAAoB,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;IAEpC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,oDAAoD,SAAS,EAAE,CAChE,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"pairing.js","sourceRoot":"","sources":["../../src/auth/pairing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AAEH,iFAAiF;AACjF,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAE7C,sDAAsD;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,6BAA6B,CAAC;AAU7D,+DAA+D;AAC/D,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,GAAG,eAAe,GAAG,KAAK,EAAE,CAAC;AACtC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB;IAChC,OAAO,QAAQ,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,mBAAmB,CACjC,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,yBAAyB,CAAC;IAC7E,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,8DAA8D,eAAe,EAAE,CAChF,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,eAAe,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5E,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,QAAoB,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;IAEpC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,oDAAoD,SAAS,EAAE,CAChE,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC;AACvC,CAAC"}
@@ -1,13 +1,22 @@
1
1
  import { AccessTokenRecord, type JwtCacheOptions } from "./jwt.js";
2
+ /** HTTP path for requesting an Ed25519 challenge from the backend. */
2
3
  export declare const CHALLENGE_ENDPOINT = "/v1/bridge/auth/challenge";
4
+ /** HTTP path for submitting a signed challenge and receiving a JWT. */
3
5
  export declare const VERIFY_ENDPOINT = "/v1/bridge/auth/verify";
6
+ /** Options for {@link BridgeAccessTokenManager}. */
4
7
  export interface BridgeAccessTokenManagerOptions extends JwtCacheOptions {
8
+ /** Nority backend WebSocket URL (protocol is swapped to HTTP for auth). */
5
9
  backendUrl: string;
10
+ /** Override the default `fetch` used for challenge-response requests. */
6
11
  fetchImplementation?: typeof fetch;
7
12
  }
13
+ /** Options for {@link BridgeAccessTokenManager.getAccessToken}. */
8
14
  export interface GetAccessTokenOptions {
15
+ /** The durable bridge credential. */
9
16
  credential: string;
17
+ /** Ed25519 private key in PEM format for signing the challenge. */
10
18
  privateKeyPem: string;
19
+ /** When `true`, bypasses the cache and performs a fresh challenge-response. */
11
20
  forceRefresh?: boolean;
12
21
  }
13
22
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reconnect.d.ts","sourceRoot":"","sources":["../../src/auth/reconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,KAAK,eAAe,EACrB,MAAM,UAAU,CAAC;AAGlB,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAC9D,eAAO,MAAM,eAAe,2BAA2B,CAAC;AAaxD,MAAM,WAAW,+BAAgC,SAAQ,eAAe;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;gBAExB,OAAO,EAAE,+BAA+B;IAapD,IAAI,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAIrC,KAAK,IAAI,IAAI;IAIP,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;YA0Cf,cAAc;YA+Bd,WAAW;CAmC1B;AAWD,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"reconnect.d.ts","sourceRoot":"","sources":["../../src/auth/reconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,KAAK,eAAe,EACrB,MAAM,UAAU,CAAC;AAGlB,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAE9D,uEAAuE;AACvE,eAAO,MAAM,eAAe,2BAA2B,CAAC;AAaxD,oDAAoD;AACpD,MAAM,WAAW,+BAAgC,SAAQ,eAAe;IACtE,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;CACpC;AAED,mEAAmE;AACnE,MAAM,WAAW,qBAAqB;IACpC,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;gBAExB,OAAO,EAAE,+BAA+B;IAapD,IAAI,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAIrC,KAAK,IAAI,IAAI;IAIP,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;YA0Cf,cAAc;YA+Bd,WAAW;CAmC1B;AAWD,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import { JwtCache, } from "./jwt.js";
2
2
  import { signEd25519 } from "../crypto/identity.js";
3
+ /** HTTP path for requesting an Ed25519 challenge from the backend. */
3
4
  export const CHALLENGE_ENDPOINT = "/v1/bridge/auth/challenge";
5
+ /** HTTP path for submitting a signed challenge and receiving a JWT. */
4
6
  export const VERIFY_ENDPOINT = "/v1/bridge/auth/verify";
5
7
  /**
6
8
  * Mints and caches short-lived bridge access JWTs.
@@ -1 +1 @@
1
- {"version":3,"file":"reconnect.js","sourceRoot":"","sources":["../../src/auth/reconnect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconnect.js","sourceRoot":"","sources":["../../src/auth/reconnect.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,40 @@
1
1
  import type { AgentAdapter, BridgeLogger } from "./agent.js";
2
2
  import type { AccessTokenRecord } from "./auth/jwt.js";
3
3
  import type { WebSocketFactory } from "./transport/websocket.js";
4
+ /**
5
+ * Configuration for {@link BridgeConnection}, the standalone connection layer.
6
+ *
7
+ * Use this when you already have a bridge credential (from {@link PairingClient}
8
+ * or pre-provisioned) and want full control over the connection lifecycle.
9
+ */
4
10
  export interface BridgeConnectionConfig {
11
+ /** Nority backend WebSocket URL. */
5
12
  backendUrl: string;
13
+ /** Directory for durable state (conversation keys). */
6
14
  dataDir: string;
15
+ /** Long-lived bridge credential obtained during pairing. */
7
16
  credential: string;
17
+ /** Ed25519 private key in PEM format for challenge-response auth. */
8
18
  privateKeyPem: string;
19
+ /** Your agent adapter implementation. */
9
20
  agent: AgentAdapter;
21
+ /** Structured logger. Defaults to no-op. */
10
22
  logger?: BridgeLogger;
23
+ /** Pre-existing JWT to skip the first challenge-response round-trip. */
11
24
  seedJwt?: AccessTokenRecord;
25
+ /** Override the default `fetch` used for challenge-response auth. */
12
26
  fetchImplementation?: typeof fetch;
27
+ /** Override the built-in `ws`-based WebSocket. */
13
28
  webSocketFactory?: WebSocketFactory;
29
+ /** Override the system clock (useful for testing). */
14
30
  clock?: () => Date;
31
+ /** Override `Math.random` for reconnect backoff jitter (useful for testing). */
15
32
  backoffRandom?: () => number;
33
+ /** Heartbeat interval in milliseconds. Default: 15000. */
16
34
  heartbeatIntervalMs?: number;
35
+ /** Idle timeout in milliseconds. Must be greater than `heartbeatIntervalMs`. Default: 45000. */
17
36
  idleTimeoutMs?: number;
18
37
  }
38
+ /** Lifecycle states for {@link BridgeConnection}. */
19
39
  export type BridgeConnectionState = "idle" | "connecting" | "connected" | "reconnecting" | "blocked" | "failed" | "stopped";
20
40
  //# sourceMappingURL=connection-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connection-types.d.ts","sourceRoot":"","sources":["../src/connection-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;IACnC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,YAAY,GACZ,WAAW,GACX,cAAc,GACd,SAAS,GACT,QAAQ,GACR,SAAS,CAAC"}
1
+ {"version":3,"file":"connection-types.d.ts","sourceRoot":"","sources":["../src/connection-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,KAAK,EAAE,YAAY,CAAC;IACpB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,wEAAwE;IACxE,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;IACnC,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,0DAA0D;IAC1D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qDAAqD;AACrD,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,YAAY,GACZ,WAAW,GACX,cAAc,GACd,SAAS,GACT,QAAQ,GACR,SAAS,CAAC"}
@@ -10,21 +10,43 @@
10
10
  * Event format matches what the bridge SDK encrypts and stores:
11
11
  * { type: "text_delta", content: "...", message_id: "..." }
12
12
  */
13
+ /** A reconstructed conversation turn produced by the replay engine. */
13
14
  export interface Turn {
15
+ /** Who produced this turn. */
14
16
  role: "user" | "assistant";
17
+ /** The concatenated text content of the turn. */
15
18
  text: string;
19
+ /** Whether the turn is still being streamed or is finalized. */
16
20
  status: "complete" | "streaming";
17
21
  }
22
+ /** Snapshot of a conversation's replay state, used as both input and output of {@link rebuildHistory}. */
18
23
  export interface ConversationState {
24
+ /** Sequence number of the last event that was applied. */
19
25
  last_applied_seq: number;
26
+ /** Ordered list of reconstructed turns. */
20
27
  turns: Turn[];
21
28
  }
29
+ /** A single event in a replay batch, decrypted and ready for application. */
22
30
  export interface ReplayEvent {
31
+ /** Monotonically increasing sequence number. */
23
32
  seq: number;
33
+ /** Event type (e.g. "user_message", "text_delta", "done"). */
24
34
  type: string;
35
+ /** Text content (used by some event types). */
25
36
  text?: string;
37
+ /** Content payload (used by text_delta and user_message). */
26
38
  content?: string;
39
+ /** Groups streaming deltas into a single assistant turn. */
27
40
  message_id?: string;
28
41
  }
42
+ /**
43
+ * Deterministically rebuilds conversation history from a replay batch.
44
+ *
45
+ * Follows the bridge protocol replay rules:
46
+ * 1. Skip events at or below `last_applied_seq`
47
+ * 2. Deduplicate by seq (first occurrence wins)
48
+ * 3. Sort by ascending seq
49
+ * 4. Apply events in order
50
+ */
29
51
  export declare function rebuildHistory(initialState: ConversationState, replayEvents: ReplayEvent[]): ConversationState;
30
52
  //# sourceMappingURL=replay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/conversation/replay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,WAAW,CAAC;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,cAAc,CAC5B,YAAY,EAAE,iBAAiB,EAC/B,YAAY,EAAE,WAAW,EAAE,GAC1B,iBAAiB,CAgFnB"}
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/conversation/replay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,uEAAuE;AACvE,MAAM,WAAW,IAAI;IACnB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,MAAM,EAAE,UAAU,GAAG,WAAW,CAAC;CAClC;AAED,0GAA0G;AAC1G,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,iBAAiB,EAC/B,YAAY,EAAE,WAAW,EAAE,GAC1B,iBAAiB,CAgFnB"}
@@ -10,6 +10,15 @@
10
10
  * Event format matches what the bridge SDK encrypts and stores:
11
11
  * { type: "text_delta", content: "...", message_id: "..." }
12
12
  */
13
+ /**
14
+ * Deterministically rebuilds conversation history from a replay batch.
15
+ *
16
+ * Follows the bridge protocol replay rules:
17
+ * 1. Skip events at or below `last_applied_seq`
18
+ * 2. Deduplicate by seq (first occurrence wins)
19
+ * 3. Sort by ascending seq
20
+ * 4. Apply events in order
21
+ */
13
22
  export function rebuildHistory(initialState, replayEvents) {
14
23
  if (!initialState) {
15
24
  throw new Error("rebuildHistory: initialState is required");
@@ -1 +1 @@
1
- {"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/conversation/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/conversation/replay.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { AgentAdapter, AgentEvent, BridgeLogger } from "../agent.js";
2
2
  import { type BridgeFrame } from "../protocol/frames.js";
3
3
  import { type ProactiveTurnRequest } from "../runtime/proactive.js";
4
+ /** Options for {@link ConversationRuntime}. */
4
5
  export interface ConversationRuntimeOptions {
5
6
  dataDir: string;
6
7
  agent: AgentAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/conversation/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAC;AAajG,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AASD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IACtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAsC;gBAE5D,OAAO,EAAE,0BAA0B;IAiBzC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAQjD,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAOhD,wBAAwB,IAAI,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAahE,wBAAwB,CACtB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,oBAAoB,GAC5B,WAAW,CAAC,sBAAsB,CAAC;IAStC,IAAI,IAAI,IAAI;IAMZ,OAAO,CAAC,qBAAqB;IAIvB,WAAW,CACf,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACtC,OAAO,CAAC,IAAI,CAAC;YAgCF,iBAAiB;YAmCjB,aAAa;YA0Eb,YAAY;YAgDZ,yBAAyB;IAavC,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,yBAAyB;IA+BjC,OAAO,CAAC,2BAA2B;IAOnC,OAAO,CAAC,eAAe;CAIxB;AAoFD,MAAM,MAAM,mBAAmB,GAC3B,YAAY,GACZ,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,gBAAgB,GAChB,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,GACZ,OAAO,GACP,MAAM,CAAC;AAEX,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,GAEf;IACE,SAAS,EAAE,mBAAmB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,GACD,IAAI,CAwFP"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/conversation/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAC;AAajG,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,+CAA+C;AAC/C,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AASD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IACtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAsC;gBAE5D,OAAO,EAAE,0BAA0B;IAiBzC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAQjD,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAOhD,wBAAwB,IAAI,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAahE,wBAAwB,CACtB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,oBAAoB,GAC5B,WAAW,CAAC,sBAAsB,CAAC;IAStC,IAAI,IAAI,IAAI;IAMZ,OAAO,CAAC,qBAAqB;IAIvB,WAAW,CACf,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACtC,OAAO,CAAC,IAAI,CAAC;YAgCF,iBAAiB;YAmCjB,aAAa;YA0Eb,YAAY;YAgDZ,yBAAyB;IAavC,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,yBAAyB;IA+BjC,OAAO,CAAC,2BAA2B;IAOnC,OAAO,CAAC,eAAe;CAIxB;AAoFD,MAAM,MAAM,mBAAmB,GAC3B,YAAY,GACZ,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,gBAAgB,GAChB,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,GACZ,OAAO,GACP,MAAM,CAAC;AAEX,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,GAEf;IACE,SAAS,EAAE,mBAAmB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,GACD,IAAI,CAwFP"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/conversation/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/conversation/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,SAAS,EACT,uBAAuB,GAExB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAoB,MAAM,uBAAuB,CAAC;AACtE,OAAO,EACL,wBAAwB,GAEzB,MAAM,yBAAyB,CAAC;AAUjC,MAAM,UAAU,GAAiB;IAC/B,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACb,KAAK,CAAe;IACpB,MAAM,CAAe;IACrB,KAAK,CAAa;IAClB,KAAK,CAAwB;IAC7B,aAAa,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,iBAAiB,GAAG,IAAI,GAAG,EAA2B,CAAC;IAExE,YAAY,OAAmC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC;QAC3C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAqB,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,0BAA0B;QAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,eAAe,CAAC,cAAsB;QACpC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;IAED,wBAAwB;QACtB,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,WAAW,CAAC,gBAAgB,EAAE;YACnC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC/D,eAAe,EAAE,KAAK,CAAC,cAAc;gBACrC,qBAAqB,EAAE,KAAK,CAAC,cAAc;aAC5C,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC;IAED,wBAAwB,CACtB,cAAsB,EACtB,OAA6B;QAE7B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;QACJ,CAAC;QACD,OAAO,wBAAwB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI;QACF,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;YACzD,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAEO,qBAAqB;QAC3B,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAkB,EAClB,SAAuC;QAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,cAAc;gBACjB,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAoC,EAAE,SAAS,CAAC,CAAC;gBAC9E,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,IAAI,CAAC,aAAa,CAAC,KAA+B,EAAE,SAAS,CAAC,CAAC;gBACrE,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,IAAI,CAAC,YAAY,CAAC,KAA8B,CAAC,CAAC;gBACxD,MAAM;YACR,KAAK,sBAAsB;gBACzB,MAAM,IAAI,CAAC,yBAAyB,CAClC,KAA4C,CAC7C,CAAC;gBACF,MAAM;YACR;gBACE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,kEAAkE,EAClE,KAAK,CAAC,IAAI,CACX,CAAC;gBACF,MAAM;QACV,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,KAAkC,EAClC,SAAuC;QAEvC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,eAAe,GAAG,iBAAiB,CACvC,KAAK,CAAC,OAAO,EACb,mBAAmB,EACnB,uCAAuC,CACxC,CAAC;QAEF,MAAM,UAAU,GAAG,8BAA8B,EAAE,CAAC;QACpD,MAAM,YAAY,GAAG,+BAA+B,CAClD,UAAU,CAAC,UAAU,EACrB,eAAe,CAChB,CAAC;QAEF,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE7B,SAAS,CACP,WAAW,CACT,uBAAuB,EACvB;YACE,iBAAiB,EAAE,UAAU,CAAC,eAAe;SAC9C,EACD,KAAK,CAAC,eAAe,CACtB,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,KAA6B,EAC7B,SAAuC;QAEvC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,gBAAgB,GAAG,iBAAiB,CACxC,KAAK,CAAC,OAAO,EACb,mBAAmB,EACnB,mCAAmC,CACpC,CAAC;QACF,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;QACJ,CAAC;QAED,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAEtC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACjD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE;gBAClE,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC;gBACxC,OAAO,EAAE,oBAAoB;aAC9B,CAAC,EAAE,CAAC;gBACH,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM;gBACR,CAAC;gBAED,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAChF,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;oBAC3B,SAAS,CACP,WAAW,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,CAC9E,CAAC;gBACJ,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAChC,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,UAAU,EAAE,CAAC;gBACpE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/E,OAAO;QACT,CAAC;QACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,KAA4B;QACrD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAC;QACJ,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC5D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,mEAAmE,EACnE,KAAK,CAAC,eAAe,CACtB,CAAC;gBACF,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAClF,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAC1D,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,OAAO,EAAE,SAAoC;aAC9C,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,IAAI,OAAO,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YAC5C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,KAA0C;QAE1C,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACjD,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IACjD,CAAC;IAEO,iBAAiB,CACvB,KAAwB,EACxB,YAAsE;QAEtE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;QACjE,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,IAAI,WAAW,CAAC,GAAG,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBAC5C,SAAS;YACX,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACvF,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAC7C,KAAK,CAAC,cAAc,GAAG,GAAG,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,kBAAkB,CACxB,KAAwB,EACxB,GAAW,EACX,OAAgC;QAEhC,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAElE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,cAAc;gBACjB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE;oBACxB;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,oBAAoB,CACxB,OAAO,EACP,wCAAwC,CACzC;qBACF;iBACF,CAAC,CAAC;gBACH,OAAO;YACT,KAAK,YAAY;gBACf,IAAI,CAAC,yBAAyB,CAC5B,KAAK,EACL,kBAAkB,CAAC,OAAO,EAAE,wCAAwC,CAAC,EACrE,qBAAqB,CAAC,OAAO,EAAE,wCAAwC,CAAC,CACzE,CAAC;gBACF,OAAO;YACT,KAAK,MAAM;gBACT,IAAI,CAAC,2BAA2B,CAC9B,KAAK,EACL,kBAAkB,CAAC,OAAO,EAAE,wCAAwC,CAAC,CACtE,CAAC;gBACF,OAAO;YACT,KAAK,iBAAiB,CAAC;YACvB,KAAK,aAAa,CAAC;YACnB,KAAK,YAAY;gBACf,kDAAkD;gBAClD,OAAO;YACT;gBACE,4DAA4D;gBAC5D,6DAA6D;gBAC7D,kCAAkC;gBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,wEAAwE,IAAI,WAAW,GAAG,EAAE,CAC7F,CAAC;gBACF,OAAO;QACX,CAAC;IACH,CAAC;IAEO,yBAAyB,CAC/B,KAAwB,EACxB,SAAiB,EACjB,KAAa;QAEb,MAAM,iBAAiB,GAAG,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;aACvC,CAAC,CAAC;YACH,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC;YACvB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,2BAA2B,CACjC,KAAwB,EACxB,SAAiB;QAEjB,OAAO,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAEO,eAAe,CAAC,cAAsB;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC9D,UAAU,EAAE,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AAED,SAAS,qBAAqB,CAAC,OAAgB;IAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,MAAM,GAAG,OAAkC,CAAC;IAClD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAa;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,IACE,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;YACnC,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;YACrC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAC/B,CAAC;YACD,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM,CAAC,QAAQ;gBACxB,SAAS,EAAE,MAAM,CAAC,UAAU;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;SACF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAwB,EACxB,KAAiB,EACjB,KAAiB,EACjB,SAAiB;IAQjB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,gEAAgE;IAChE,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAEpC,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,SAAS;QAC7B,iBAAiB,EAAE,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC;QACvE,UAAU,EAAE,mBAAmB,CAAC,KAAK,EAAE,CAAC;KACzC,CAAC;AACJ,CAAC;AAcD,MAAM,UAAU,mBAAmB,CACjC,KAAiB;IAOjB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,YAAY;YACf,OAAO;gBACL,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;aACrD,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,SAAS,EAAE,iBAAiB;gBAC5B,IAAI,EAAE;oBACJ,IAAI,EAAE,iBAAiB;oBACvB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,IAAI,EAAE,KAAK,CAAC,QAAQ;oBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;iBAC3B;aACF,CAAC;QACJ,KAAK,kBAAkB;YACrB,OAAO;gBACL,SAAS,EAAE,kBAAkB;gBAC7B,IAAI,EAAE;oBACJ,IAAI,EAAE,kBAAkB;oBACxB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,EAAE;oBACxC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,aAAa;iBACtC;aACF,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO;gBACL,SAAS,EAAE,aAAa;gBACxB,IAAI,EAAE;oBACJ,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,SAAS;iBAClC;aACF,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,SAAS,EAAE,gBAAgB;gBAC3B,IAAI,EAAE;oBACJ,IAAI,EAAE,gBAAgB;oBACtB,eAAe,EAAE,KAAK,CAAC,eAAe;iBACvC;aACF,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,SAAS,EAAE,gBAAgB;gBAC3B,IAAI,EAAE;oBACJ,IAAI,EAAE,gBAAgB;oBACtB,eAAe,EAAE,KAAK,CAAC,eAAe;oBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,SAAS,EAAE,mBAAmB;gBAC9B,IAAI,EAAE;oBACJ,IAAI,EAAE,mBAAmB;oBACzB,eAAe,EAAE,KAAK,CAAC,eAAe;iBACvC;aACF,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE;oBACJ,IAAI,EAAE,YAAY;oBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;iBAC3B;aACF,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,SAAS,EAAE,OAAO;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;iBAC3B;aACF,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,SAAS,EAAE,MAAM;gBACjB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aACvB,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM;QACzB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;QACnC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAgC,EAChC,KAAa,EACb,MAAc;IAEd,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,aAAa,KAAK,cAAc,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAc;IAMd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,OAAQ,KAAuC,CAAC,eAAe,KAAK,QAAQ;QAC5E,OAAQ,KAA2B,CAAC,GAAG,KAAK,QAAQ;QACpD,OAAQ,KAAyC,CAAC,iBAAiB,KAAK,QAAQ,CACjF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAgC,EAChC,MAAc;IAEd,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,8BAA8B,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,qBAAqB,CAC5B,OAAgC,EAChC,MAAc;IAEd,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,8BAA8B,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAgC,EAChC,OAAe;IAEf,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5E,OAAO,OAAO,CAAC,UAAU,CAAC;IAC5B,CAAC;IACD,2EAA2E;IAC3E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAU;IACrC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACtD,CAAC"}
@@ -9,6 +9,7 @@ export interface ConversationEntry {
9
9
  lastAppliedSeq: number;
10
10
  pendingAssistantTurns: Record<string, number>;
11
11
  }
12
+ /** JSON-serializable form of {@link ConversationEntry} for durable storage. */
12
13
  export interface PersistedConversationEntry {
13
14
  conversationId: string;
14
15
  symmetricKeyBase64: string;
@@ -16,10 +17,16 @@ export interface PersistedConversationEntry {
16
17
  lastAppliedSeq: number;
17
18
  pendingAssistantTurns?: Record<string, number>;
18
19
  }
20
+ /** Creates a new conversation entry with the given symmetric key and empty history. */
19
21
  export declare function createConversationEntry(conversationId: string, symmetricKey: Buffer): ConversationEntry;
22
+ /** Converts a {@link ConversationEntry} to its JSON-serializable {@link PersistedConversationEntry} form. */
20
23
  export declare function serializeConversationEntry(entry: ConversationEntry): PersistedConversationEntry;
24
+ /** Restores a {@link ConversationEntry} from its persisted JSON form. */
21
25
  export declare function deserializeConversationEntry(entry: PersistedConversationEntry): ConversationEntry;
26
+ /** Appends a new turn to a conversation entry's history. */
22
27
  export declare function appendTurn(entry: ConversationEntry, role: ChatTurn["role"], parts: ContentPart[]): void;
28
+ /** Returns a deep copy of a conversation turn. */
23
29
  export declare function cloneTurn(turn: ChatTurn): ChatTurn;
30
+ /** Concatenates all text content parts into a single string, ignoring media parts. */
24
31
  export declare function extractPlainText(parts: ContentPart[]): string;
25
32
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/conversation/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,0BAA0B;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AAED,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,iBAAiB,CAiBnB;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,iBAAiB,GACvB,0BAA0B,CAS5B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,0BAA0B,GAChC,iBAAiB,CA+BnB;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EACtB,KAAK,EAAE,WAAW,EAAE,GACnB,IAAI,CAUN;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAYlD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAS7D"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/conversation/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C;AAED,+EAA+E;AAC/E,MAAM,WAAW,0BAA0B;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AAED,uFAAuF;AACvF,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,iBAAiB,CAiBnB;AAED,6GAA6G;AAC7G,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,iBAAiB,GACvB,0BAA0B,CAS5B;AAED,yEAAyE;AACzE,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,0BAA0B,GAChC,iBAAiB,CA+BnB;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CACxB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EACtB,KAAK,EAAE,WAAW,EAAE,GACnB,IAAI,CAUN;AAED,kDAAkD;AAClD,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAYlD;AAED,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAS7D"}