@datalayer/personal-agent-protocol 0.3.1 → 0.3.3

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.
@@ -0,0 +1,48 @@
1
+ import type { ReactorPlatformView } from "@datalayer/reactor";
2
+ import { type ConversationEvent, type ConversationEventPage, type ConversationResponder, type ConversationStatus, type Message } from "./models.js";
3
+ import type { SessionToken } from "./sessions.js";
4
+ import { DpopFetchClient } from "./transport.js";
5
+ export interface ConversationReceipt {
6
+ readonly conversation_id: string;
7
+ readonly status: ConversationStatus;
8
+ readonly responder: ConversationResponder;
9
+ }
10
+ export type ConversationResponse = ConversationReceipt | ConversationEventPage;
11
+ export interface ConversationRequestOptions {
12
+ readonly token: SessionToken;
13
+ readonly tenantId: string;
14
+ readonly pairwiseUserId: string;
15
+ readonly issuer: string;
16
+ readonly cursor?: string;
17
+ readonly wait?: number;
18
+ readonly signal?: AbortSignal;
19
+ }
20
+ export interface StartConversationOptions extends ConversationRequestOptions {
21
+ readonly parentConversationId?: string;
22
+ }
23
+ export interface ConversationEventOptions extends ConversationRequestOptions {
24
+ /** Called before one recovery read from the beginning after cursor expiry. */
25
+ readonly onCursorExpired?: () => void | Promise<void>;
26
+ /** Bound retained event IDs used to suppress reconnect duplicates. */
27
+ readonly maxSeenEventIds?: number;
28
+ }
29
+ export interface ConversationClientOptions {
30
+ readonly reactor: ReactorPlatformView;
31
+ readonly transport: DpopFetchClient;
32
+ readonly maxResponseBytes?: number;
33
+ }
34
+ /** Generate a user-global message ID with at least 128 random bits. */
35
+ export declare function generateMessageId(reactor: ReactorPlatformView): string;
36
+ /** Start and continue PAP conversations through a proof-bound transport. */
37
+ export declare class ConversationClient {
38
+ #private;
39
+ constructor(options: ConversationClientOptions);
40
+ generateMessageId(): string;
41
+ start(endpoint: string, message: Message, options: StartConversationOptions): Promise<ConversationResponse>;
42
+ send(endpoint: string, conversationId: string, message: Message, options: ConversationRequestOptions): Promise<ConversationResponse>;
43
+ /** Read one ordered page of events after an opaque cursor. */
44
+ readEvents(endpoint: string, conversationId: string, options: ConversationRequestOptions): Promise<ConversationEventPage>;
45
+ /** Yield ordered, de-duplicated events until the conversation closes. */
46
+ events(endpoint: string, conversationId: string, options: ConversationEventOptions): AsyncGenerator<ConversationEvent>;
47
+ }
48
+ //# sourceMappingURL=conversations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../src/conversations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAI9D,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,OAAO,EACb,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC3C;AAED,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAE/E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAyB,SAAQ,0BAA0B;IAC1E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,WAAW,wBAAyB,SAAQ,0BAA0B;IAC1E,8EAA8E;IAC9E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,sEAAsE;IACtE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AA4BD,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAatE;AAED,4EAA4E;AAC5E,qBAAa,kBAAkB;;gBAKjB,OAAO,EAAE,yBAAyB;IAU9C,iBAAiB,IAAI,MAAM;IAIrB,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,oBAAoB,CAAC;IAS1B,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC;IAUhC,8DAA8D;IACxD,UAAU,CACd,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,qBAAqB,CAAC;IAoCjC,yEAAyE;IAClE,MAAM,CACX,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,wBAAwB,GAChC,cAAc,CAAC,iBAAiB,CAAC;CAoLrC"}
@@ -0,0 +1,240 @@
1
+ import { ConversationError, ProtocolValidationError } from "./errors.js";
2
+ import { parseJsonStrict } from "./json.js";
3
+ import { parseConversationEventPage, parseMessage, } from "./models.js";
4
+ import { RandomSources, firstContribution } from "./reactor.js";
5
+ import { DpopFetchClient } from "./transport.js";
6
+ const identifier = /^[A-Za-z0-9_-]{1,256}$/;
7
+ function assertIdentifier(value, label) {
8
+ if (!identifier.test(value)) {
9
+ throw new ProtocolValidationError("invalid_identifier", `${label} is invalid`);
10
+ }
11
+ }
12
+ function base64Url(bytes) {
13
+ const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";
14
+ let output = "";
15
+ for (let index = 0; index < bytes.length; index += 3) {
16
+ const first = bytes[index] ?? 0;
17
+ const second = bytes[index + 1];
18
+ const third = bytes[index + 2];
19
+ output += alphabet[first >>> 2];
20
+ output += alphabet[((first & 3) << 4) | ((second ?? 0) >>> 4)];
21
+ if (second !== undefined)
22
+ output += alphabet[((second & 15) << 2) | ((third ?? 0) >>> 6)];
23
+ if (third !== undefined)
24
+ output += alphabet[third & 63];
25
+ }
26
+ return output;
27
+ }
28
+ /** Generate a user-global message ID with at least 128 random bits. */
29
+ export function generateMessageId(reactor) {
30
+ const bytes = firstContribution(reactor, RandomSources, "random source").bytes(16);
31
+ if (bytes.byteLength < 16) {
32
+ throw new ConversationError("insufficient_entropy", "message IDs require 128 random bits");
33
+ }
34
+ return `msg_${base64Url(bytes)}`;
35
+ }
36
+ /** Start and continue PAP conversations through a proof-bound transport. */
37
+ export class ConversationClient {
38
+ #reactor;
39
+ #transport;
40
+ #maxResponseBytes;
41
+ constructor(options) {
42
+ const maximum = options.maxResponseBytes ?? 1024 * 1024;
43
+ if (!Number.isInteger(maximum) || maximum <= 0) {
44
+ throw new RangeError("maxResponseBytes must be positive");
45
+ }
46
+ this.#reactor = options.reactor;
47
+ this.#transport = options.transport;
48
+ this.#maxResponseBytes = maximum;
49
+ }
50
+ generateMessageId() {
51
+ return generateMessageId(this.#reactor);
52
+ }
53
+ async start(endpoint, message, options) {
54
+ const body = { message: this.#outgoing(message) };
55
+ if (options.parentConversationId !== undefined) {
56
+ assertIdentifier(options.parentConversationId, "parent conversation ID");
57
+ body.parent_conversation_id = options.parentConversationId;
58
+ }
59
+ return this.#send(endpoint, body, 201, options);
60
+ }
61
+ async send(endpoint, conversationId, message, options) {
62
+ assertIdentifier(conversationId, "conversation ID");
63
+ return this.#send(`${endpoint.replace(/\/$/, "")}/${conversationId}/messages`, { message: this.#outgoing(message) }, 202, options);
64
+ }
65
+ /** Read one ordered page of events after an opaque cursor. */
66
+ async readEvents(endpoint, conversationId, options) {
67
+ assertIdentifier(conversationId, "conversation ID");
68
+ const target = this.#eventTarget(endpoint, conversationId, options.cursor, options.wait);
69
+ const response = await this.#transport.request("GET", target, {
70
+ token: options.token,
71
+ tenantId: options.tenantId,
72
+ pairwiseUserId: options.pairwiseUserId,
73
+ issuer: options.issuer,
74
+ headers: { Accept: "application/json" },
75
+ ...(options.signal === undefined ? {} : { signal: options.signal }),
76
+ });
77
+ const payload = await this.#responsePayload(response, 200);
78
+ let page;
79
+ try {
80
+ page = parseConversationEventPage(payload);
81
+ }
82
+ catch (cause) {
83
+ throw new ConversationError("invalid_response", "conversation response was malformed", { cause });
84
+ }
85
+ if (page.conversation_id !== conversationId) {
86
+ throw new ConversationError("conversation_mismatch", "conversation event page belongs to a different conversation");
87
+ }
88
+ return page;
89
+ }
90
+ /** Yield ordered, de-duplicated events until the conversation closes. */
91
+ async *events(endpoint, conversationId, options) {
92
+ const { cursor: initialCursor, wait: pollWait, onCursorExpired, maxSeenEventIds, ...requestOptions } = options;
93
+ const maximum = maxSeenEventIds ?? 10_000;
94
+ if (!Number.isInteger(maximum) || maximum <= 0) {
95
+ throw new RangeError("maxSeenEventIds must be positive");
96
+ }
97
+ let cursor = initialCursor;
98
+ let recoveredCursor = false;
99
+ let drainBacklog = false;
100
+ const seen = new Set();
101
+ while (true) {
102
+ let page;
103
+ try {
104
+ page = await this.readEvents(endpoint, conversationId, {
105
+ ...requestOptions,
106
+ ...(cursor === undefined ? {} : { cursor }),
107
+ ...(drainBacklog
108
+ ? { wait: 0 }
109
+ : pollWait === undefined
110
+ ? {}
111
+ : { wait: pollWait }),
112
+ });
113
+ }
114
+ catch (cause) {
115
+ if (!(cause instanceof ConversationError) ||
116
+ cause.code !== "cursor_expired" ||
117
+ cursor === undefined ||
118
+ recoveredCursor) {
119
+ throw cause;
120
+ }
121
+ recoveredCursor = true;
122
+ cursor = undefined;
123
+ await onCursorExpired?.();
124
+ continue;
125
+ }
126
+ for (const event of page.events) {
127
+ if (seen.has(event.id))
128
+ continue;
129
+ if (seen.size >= maximum) {
130
+ throw new ConversationError("event_history_too_large", "conversation event de-duplication limit was exceeded");
131
+ }
132
+ seen.add(event.id);
133
+ yield event;
134
+ }
135
+ cursor = page.cursor;
136
+ if (page.status === "closed" && !page.has_more)
137
+ return;
138
+ drainBacklog = page.has_more;
139
+ }
140
+ }
141
+ #outgoing(message) {
142
+ const parsed = parseMessage(message);
143
+ if (parsed.role !== undefined) {
144
+ throw new ProtocolValidationError("invalid_message", "outgoing messages cannot set role");
145
+ }
146
+ return parsed;
147
+ }
148
+ async #send(endpoint, body, expectedStatus, options) {
149
+ const target = new URL(endpoint);
150
+ if (target.search || target.hash) {
151
+ throw new ProtocolValidationError("invalid_endpoint", "conversation endpoint cannot have query or fragment");
152
+ }
153
+ if (options.cursor !== undefined) {
154
+ assertIdentifier(options.cursor, "cursor");
155
+ target.searchParams.set("cursor", options.cursor);
156
+ }
157
+ if (options.wait !== undefined) {
158
+ if (!Number.isInteger(options.wait) || options.wait < 0) {
159
+ throw new ProtocolValidationError("invalid_wait", "wait must be a non-negative integer");
160
+ }
161
+ target.searchParams.set("wait", String(options.wait));
162
+ }
163
+ const response = await this.#transport.request("POST", target.toString(), {
164
+ token: options.token,
165
+ tenantId: options.tenantId,
166
+ pairwiseUserId: options.pairwiseUserId,
167
+ issuer: options.issuer,
168
+ headers: { "Content-Type": "application/json" },
169
+ body: JSON.stringify(body),
170
+ ...(options.signal === undefined ? {} : { signal: options.signal }),
171
+ });
172
+ const payload = await this.#responsePayload(response, expectedStatus);
173
+ return parseConversationResponse(payload);
174
+ }
175
+ #eventTarget(endpoint, conversationId, cursor, wait) {
176
+ const target = new URL(`${endpoint.replace(/\/$/, "")}/${conversationId}/events`);
177
+ if (target.search || target.hash) {
178
+ throw new ProtocolValidationError("invalid_endpoint", "conversation endpoint cannot have query or fragment");
179
+ }
180
+ if (cursor !== undefined) {
181
+ assertIdentifier(cursor, "cursor");
182
+ target.searchParams.set("cursor", cursor);
183
+ }
184
+ if (wait !== undefined) {
185
+ if (!Number.isInteger(wait) || wait < 0) {
186
+ throw new ProtocolValidationError("invalid_wait", "wait must be a non-negative integer");
187
+ }
188
+ target.searchParams.set("wait", String(wait));
189
+ }
190
+ return target.toString();
191
+ }
192
+ async #responsePayload(response, expectedStatus) {
193
+ const bytes = new Uint8Array(await response.arrayBuffer());
194
+ if (bytes.byteLength > this.#maxResponseBytes) {
195
+ throw new ConversationError("response_too_large", "conversation response exceeded limit");
196
+ }
197
+ let payload;
198
+ try {
199
+ payload = parseJsonStrict(new TextDecoder("utf-8", { fatal: true }).decode(bytes));
200
+ }
201
+ catch (cause) {
202
+ throw new ConversationError("invalid_response", "conversation returned invalid JSON", {
203
+ cause,
204
+ });
205
+ }
206
+ if (response.status !== expectedStatus) {
207
+ const error = typeof payload === "object" &&
208
+ payload !== null &&
209
+ !Array.isArray(payload)
210
+ ? payload.error
211
+ : undefined;
212
+ throw new ConversationError(typeof error === "string" ? error : "conversation_request_failed", "conversation request was rejected", { statusCode: response.status });
213
+ }
214
+ return payload;
215
+ }
216
+ }
217
+ function parseConversationResponse(value) {
218
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
219
+ throw new ConversationError("invalid_response", "conversation response was malformed");
220
+ }
221
+ const source = value;
222
+ if (source.events !== undefined)
223
+ return parseConversationEventPage(source);
224
+ if (typeof source.conversation_id !== "string") {
225
+ throw new ConversationError("invalid_response", "conversation response was malformed");
226
+ }
227
+ assertIdentifier(source.conversation_id, "conversation ID");
228
+ if (!["working", "idle", "queued", "closed"].includes(source.status)) {
229
+ throw new ConversationError("invalid_response", "conversation response was malformed");
230
+ }
231
+ if (!["agent", "human"].includes(source.responder)) {
232
+ throw new ConversationError("invalid_response", "conversation response was malformed");
233
+ }
234
+ return {
235
+ conversation_id: source.conversation_id,
236
+ status: source.status,
237
+ responder: source.responder,
238
+ };
239
+ }
240
+ //# sourceMappingURL=conversations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../src/conversations.ts"],"names":[],"mappings":"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"}
package/lib/crypto.js CHANGED
@@ -73,7 +73,7 @@ export class JoseSigner {
73
73
  const token = await new SignJWT(claims)
74
74
  .setProtectedHeader({
75
75
  alg: this.#algorithm,
76
- typ: "JWT",
76
+ typ: _options.purpose === "browser_assertion" ? "poppy-browser+jwt" : "JWT",
77
77
  ...(this.#keyId === undefined ? {} : { kid: this.#keyId }),
78
78
  })
79
79
  .sign(this.#privateKey);
package/lib/crypto.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,sBAAsB,EACtB,qBAAqB,EACrB,SAAS,EACT,SAAS,GAIV,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAKrD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEjF,SAAS,SAAS,CAAC,KAAa;IAC9B,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,KAAU,EAAE,GAAkB;IAC/C,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACvC,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAChD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,GAAG,eAAe,QAAQ,aAAa,CAAC,CAAC;IAC5F,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,kCAAkC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,kCAAkC,CAAC,CAAC;IAC1E,CAAC;IACD,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;IAChB,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;IACd,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,SAAS,SAAS,CAAC,KAAiB;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,KAAK;QAAE,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,CAAC;IAC7F,OAAO,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,KAAkB;IAC/C,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAClD,SAAS,EACT,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CACzC,CAAC;IACF,OAAO,SAAS,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3C,CAAC;AAQD,6EAA6E;AAC7E,MAAM,OAAO,UAAU;IACZ,WAAW,CAAW;IACtB,UAAU,CAAgB;IAC1B,MAAM,CAAqB;IAEpC,YAAY,OAA0B;QACpC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,MAAyC,EACzC,QAAsC;QAEtC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAC,MAAoB,CAAC;iBAClD,kBAAkB,CAAC;gBAClB,GAAG,EAAE,IAAI,CAAC,UAAU;gBACpB,GAAG,EAAE,QAAQ,CAAC,OAAO,KAAK,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK;gBAC3E,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;aAC3D,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,UAAU,CAAC,gBAAgB,EAAE,8BAA8B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;CACF;AAkBD,wEAAwE;AACxE,MAAM,OAAO,qBAAqB;IACvB,WAAW,CAAkB;IAC7B,IAAI,CAAa;IACjB,YAAY,CAAiC;IAEtD,YAAY,OAAqC;QAC/C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAyB;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,UAAU,GAAG,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,UAAU,CAAC,iBAAiB,EAAE,wCAAwC,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,MAAM,GAAe;YACzB,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC;YACvB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;YACjC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YAC7C,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAChE,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;SACzD,CAAC;QACF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;iBACpC,kBAAkB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;iBACjD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC7B,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,UAAU,CAAC,gBAAgB,EAAE,2BAA2B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;CACF;AAuBD,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAA2B,EAC3B,OAA+B;IAE/B,MAAM,OAAO,GAAG,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACtE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACtC,MAAM,aAAa,GAAG,OAAO,CAAC,uBAAuB,IAAI,EAAE,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,UAAU,CAAC,oDAAoD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,GAAQ,CAAC;IACb,IAAI,OAAmB,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,GAAG,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAChE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,kCAAkC,CAAC,CAAC;QACjF,CAAC;QACD,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE;YAC3C,UAAU,EAAE,CAAC,GAAG,CAAC;YACjB,GAAG,EAAE,UAAU;YACf,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;SAC7C,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,UAAU;YAAE,MAAM,KAAK,CAAC;QAC7C,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,sCAAsC,EAAE;YACjF,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QACvF,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,gCAAgC,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,IAAI,UAAU,GAAG,aAAa,GAAG,IAAI,EAAE,CAAC;QACtC,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,6CAA6C,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,OAAO,CAAC,GAAG,KAAK,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/F,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,uCAAuC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;QACnE,MAAM,IAAI,UAAU,CAAC,gBAAgB,EAAE,wCAAwC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,mCAAmC,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,IAAI,UAAU,CAClB,oBAAoB,EACpB,gDAAgD,CACjD,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACxD,IACE,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE;QACtE,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,aAAa,GAAG,IAAI,CAAC;KAC1D,CAAC,CAAC,EACH,CAAC;QACD,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,kCAAkC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;AACvE,CAAC"}
@@ -0,0 +1,44 @@
1
+ import type { ReactorPlatformView } from "@datalayer/reactor";
2
+ import { type SessionToken } from "./sessions.js";
3
+ export declare const DEVICE_CODE_GRANT = "urn:ietf:params:oauth:grant-type:device_code";
4
+ export interface DeviceSignInStart {
5
+ readonly reference: string;
6
+ readonly userCode: string;
7
+ readonly verificationUri: string;
8
+ readonly verificationUriComplete?: string;
9
+ readonly expiresAt: Date;
10
+ readonly pollInterval: number;
11
+ readonly requestedScopes: readonly string[];
12
+ }
13
+ export interface DeviceSignInPoll {
14
+ readonly status: "pending" | "complete";
15
+ readonly retryAt?: Date;
16
+ readonly token?: SessionToken;
17
+ readonly accountTokenReference?: string;
18
+ readonly grantedScopes: readonly string[];
19
+ readonly missingScopes: readonly string[];
20
+ }
21
+ export interface DeviceSignInBeginOptions {
22
+ readonly deviceAuthorizationEndpoint: string;
23
+ readonly tokenEndpoint: string;
24
+ readonly issuer: string;
25
+ readonly clientId: string;
26
+ readonly scopes: readonly string[];
27
+ readonly tenantId: string;
28
+ readonly pairwiseUserId: string;
29
+ readonly sessionId: string;
30
+ readonly signal?: AbortSignal;
31
+ }
32
+ export interface DeviceSignInClientOptions {
33
+ readonly reactor: ReactorPlatformView;
34
+ readonly fetch?: typeof globalThis.fetch;
35
+ readonly maxResponseBytes?: number;
36
+ }
37
+ /** PAP Device Sign-In with private device codes and Reactor-backed Account Tokens. */
38
+ export declare class DeviceSignInClient {
39
+ #private;
40
+ constructor(options: DeviceSignInClientOptions);
41
+ begin(options: DeviceSignInBeginOptions): Promise<DeviceSignInStart>;
42
+ poll(reference: string, signal?: AbortSignal): Promise<DeviceSignInPoll>;
43
+ }
44
+ //# sourceMappingURL=device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAc9D,OAAO,EAA2C,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAE3F,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAmIhF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IACzC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,sFAAsF;AACtF,qBAAa,kBAAkB;;gBAKjB,OAAO,EAAE,yBAAyB;IAUxC,KAAK,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4DpE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;CA8K/E"}