@atproto/api 0.13.2 → 0.13.4
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/CHANGELOG.md +23 -0
- package/OAUTH.md +24 -13
- package/README.md +17 -7
- package/dist/agent.d.ts +17 -8
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +59 -6
- package/dist/agent.js.map +1 -1
- package/dist/atp-agent.d.ts +32 -18
- package/dist/atp-agent.d.ts.map +1 -1
- package/dist/atp-agent.js +117 -103
- package/dist/atp-agent.js.map +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -6
- package/dist/client/index.js.map +1 -1
- package/dist/client/lexicons.d.ts +7 -0
- package/dist/client/lexicons.d.ts.map +1 -1
- package/dist/client/lexicons.js +8 -1
- package/dist/client/lexicons.js.map +1 -1
- package/dist/client/types/app/bsky/embed/record.d.ts +1 -0
- package/dist/client/types/app/bsky/embed/record.d.ts.map +1 -1
- package/dist/client/types/app/bsky/embed/record.js.map +1 -1
- package/dist/client/types/app/bsky/feed/getPostThread.d.ts +1 -0
- package/dist/client/types/app/bsky/feed/getPostThread.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getPostThread.js.map +1 -1
- package/dist/client/types/app/bsky/feed/getQuotes.d.ts +4 -3
- package/dist/client/types/app/bsky/feed/getQuotes.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getQuotes.js +0 -6
- package/dist/client/types/app/bsky/feed/getQuotes.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/session-manager.d.ts +5 -0
- package/dist/session-manager.d.ts.map +1 -0
- package/dist/session-manager.js +3 -0
- package/dist/session-manager.js.map +1 -0
- package/package.json +2 -2
- package/src/agent.ts +35 -14
- package/src/atp-agent.ts +149 -128
- package/src/client/index.ts +1 -5
- package/src/client/lexicons.ts +8 -1
- package/src/client/types/app/bsky/embed/record.ts +1 -0
- package/src/client/types/app/bsky/feed/getPostThread.ts +1 -0
- package/src/client/types/app/bsky/feed/getQuotes.ts +4 -5
- package/src/index.ts +5 -2
- package/src/session-manager.ts +5 -0
package/dist/atp-agent.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Gettable } from '@atproto/xrpc';
|
|
2
2
|
import { Agent } from './agent';
|
|
3
|
-
import {
|
|
3
|
+
import { ComAtprotoServerCreateAccount, ComAtprotoServerCreateSession, ComAtprotoServerGetSession, ComAtprotoServerNS } from './client';
|
|
4
|
+
import { SessionManager } from './session-manager';
|
|
4
5
|
import { AtpAgentLoginOpts, AtpPersistSessionHandler, AtpSessionData } from './types';
|
|
5
6
|
export type AtpAgentOptions = {
|
|
6
7
|
service: string | URL;
|
|
@@ -9,17 +10,25 @@ export type AtpAgentOptions = {
|
|
|
9
10
|
headers?: Iterable<[string, Gettable<null | string>]>;
|
|
10
11
|
};
|
|
11
12
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
13
|
+
* A wrapper around the {@link Agent} class that uses credential based session
|
|
14
|
+
* management. This class also exposes most of the session management methods
|
|
15
|
+
* directly.
|
|
16
|
+
*
|
|
17
|
+
* This class will be deprecated in the near future. Use {@link Agent} directly
|
|
18
|
+
* with a {@link CredentialSession} instead:
|
|
19
|
+
*
|
|
20
|
+
* ```ts
|
|
21
|
+
* const session = new CredentialSession({
|
|
22
|
+
* service: new URL('https://example.com'),
|
|
23
|
+
* })
|
|
24
|
+
*
|
|
25
|
+
* const agent = new Agent(session)
|
|
26
|
+
* ```
|
|
14
27
|
*/
|
|
15
28
|
export declare class AtpAgent extends Agent {
|
|
16
|
-
readonly
|
|
17
|
-
|
|
18
|
-
constructor(options: AtpAgentOptions | SessionManager);
|
|
29
|
+
readonly sessionManager: CredentialSession;
|
|
30
|
+
constructor(options: AtpAgentOptions | CredentialSession);
|
|
19
31
|
clone(): AtpAgent;
|
|
20
|
-
copyInto<T extends Agent>(inst: T): T;
|
|
21
|
-
setHeader(key: string, value: Gettable<null | string>): void;
|
|
22
|
-
unsetHeader(key: string): void;
|
|
23
32
|
get session(): AtpSessionData | undefined;
|
|
24
33
|
get hasSession(): boolean;
|
|
25
34
|
get did(): string | undefined;
|
|
@@ -30,7 +39,7 @@ export declare class AtpAgent extends Agent {
|
|
|
30
39
|
get service(): URL;
|
|
31
40
|
get persistSession(): unknown;
|
|
32
41
|
set persistSession(v: unknown);
|
|
33
|
-
/** @deprecated
|
|
42
|
+
/** @deprecated use {@link AtpAgent.serviceUrl} instead */
|
|
34
43
|
getServiceUrl(): URL;
|
|
35
44
|
resumeSession(session: AtpSessionData): Promise<ComAtprotoServerGetSession.Response>;
|
|
36
45
|
createAccount(data: ComAtprotoServerCreateAccount.InputSchema, opts?: ComAtprotoServerCreateAccount.CallOptions): Promise<ComAtprotoServerCreateAccount.Response>;
|
|
@@ -38,11 +47,12 @@ export declare class AtpAgent extends Agent {
|
|
|
38
47
|
logout(): Promise<void>;
|
|
39
48
|
}
|
|
40
49
|
/**
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
50
|
+
* Credentials (username / password) based session manager. Instances of this
|
|
51
|
+
* class will typically be used as the session manager for an {@link AtpAgent}.
|
|
52
|
+
* They can also be used with an {@link XrpcClient}, if you want to use you
|
|
53
|
+
* own Lexicons.
|
|
44
54
|
*/
|
|
45
|
-
declare class SessionManager {
|
|
55
|
+
export declare class CredentialSession implements SessionManager {
|
|
46
56
|
readonly serviceUrl: URL;
|
|
47
57
|
fetch: typeof fetch;
|
|
48
58
|
protected readonly persistSession?: AtpPersistSessionHandler | undefined;
|
|
@@ -50,16 +60,21 @@ declare class SessionManager {
|
|
|
50
60
|
session?: AtpSessionData;
|
|
51
61
|
refreshSessionPromise: Promise<void> | undefined;
|
|
52
62
|
/**
|
|
53
|
-
* Private {@link
|
|
63
|
+
* Private {@link ComAtprotoServerNS} used to perform session management API
|
|
54
64
|
* calls on the service endpoint. Calls performed by this agent will not be
|
|
55
|
-
* authenticated using the user's session
|
|
65
|
+
* authenticated using the user's session to allow proper manual configuration
|
|
66
|
+
* of the headers when performing session management operations.
|
|
56
67
|
*/
|
|
57
|
-
protected
|
|
68
|
+
protected server: ComAtprotoServerNS;
|
|
58
69
|
constructor(serviceUrl: URL, fetch?: typeof globalThis.fetch, persistSession?: AtpPersistSessionHandler | undefined);
|
|
70
|
+
get did(): string | undefined;
|
|
71
|
+
get dispatchUrl(): URL;
|
|
72
|
+
get hasSession(): boolean;
|
|
59
73
|
/**
|
|
60
74
|
* Sets a WhatWG "fetch()" function to be used for making HTTP requests.
|
|
61
75
|
*/
|
|
62
76
|
setFetch(fetch?: typeof globalThis.fetch): void;
|
|
77
|
+
fetchHandler(url: string, init?: RequestInit): Promise<Response>;
|
|
63
78
|
/**
|
|
64
79
|
* Create a new account and hydrate its session in this agent.
|
|
65
80
|
*/
|
|
@@ -95,5 +110,4 @@ declare class SessionManager {
|
|
|
95
110
|
*/
|
|
96
111
|
private _updateApiEndpoint;
|
|
97
112
|
}
|
|
98
|
-
export {};
|
|
99
113
|
//# sourceMappingURL=atp-agent.d.ts.map
|
package/dist/atp-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atp-agent.d.ts","sourceRoot":"","sources":["../src/atp-agent.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,QAAQ,EAKT,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"atp-agent.d.ts","sourceRoot":"","sources":["../src/atp-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/atp-agent.js
CHANGED
|
@@ -1,116 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AtpAgent = void 0;
|
|
3
|
+
exports.CredentialSession = exports.AtpAgent = void 0;
|
|
4
4
|
const common_web_1 = require("@atproto/common-web");
|
|
5
5
|
const xrpc_1 = require("@atproto/xrpc");
|
|
6
6
|
const agent_1 = require("./agent");
|
|
7
7
|
const client_1 = require("./client");
|
|
8
|
+
const lexicons_1 = require("./client/lexicons");
|
|
8
9
|
const ReadableStream = globalThis.ReadableStream;
|
|
9
10
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
11
|
+
* A wrapper around the {@link Agent} class that uses credential based session
|
|
12
|
+
* management. This class also exposes most of the session management methods
|
|
13
|
+
* directly.
|
|
14
|
+
*
|
|
15
|
+
* This class will be deprecated in the near future. Use {@link Agent} directly
|
|
16
|
+
* with a {@link CredentialSession} instead:
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* const session = new CredentialSession({
|
|
20
|
+
* service: new URL('https://example.com'),
|
|
21
|
+
* })
|
|
22
|
+
*
|
|
23
|
+
* const agent = new Agent(session)
|
|
24
|
+
* ```
|
|
12
25
|
*/
|
|
13
26
|
class AtpAgent extends agent_1.Agent {
|
|
14
27
|
constructor(options) {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const reqInit = { ...init, headers: initialHeaders };
|
|
20
|
-
const initialUri = new URL(url, this.dispatchUrl);
|
|
21
|
-
const initialReq = new Request(initialUri, reqInit);
|
|
22
|
-
const initialToken = this.session?.accessJwt;
|
|
23
|
-
if (!initialToken || initialReq.headers.has('authorization')) {
|
|
24
|
-
return (0, this.sessionManager.fetch)(initialReq);
|
|
25
|
-
}
|
|
26
|
-
initialReq.headers.set('authorization', `Bearer ${initialToken}`);
|
|
27
|
-
const initialRes = await (0, this.sessionManager.fetch)(initialReq);
|
|
28
|
-
if (!this.session?.refreshJwt) {
|
|
29
|
-
return initialRes;
|
|
30
|
-
}
|
|
31
|
-
const isExpiredToken = await isErrorResponse(initialRes, [400], ['ExpiredToken']);
|
|
32
|
-
if (!isExpiredToken) {
|
|
33
|
-
return initialRes;
|
|
34
|
-
}
|
|
35
|
-
try {
|
|
36
|
-
await this.sessionManager.refreshSession();
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
return initialRes;
|
|
40
|
-
}
|
|
41
|
-
if (reqInit?.signal?.aborted) {
|
|
42
|
-
return initialRes;
|
|
43
|
-
}
|
|
44
|
-
// The stream was already consumed. We cannot retry the request. A solution
|
|
45
|
-
// would be to tee() the input stream but that would bufferize the entire
|
|
46
|
-
// stream in memory which can lead to memory starvation. Instead, we will
|
|
47
|
-
// return the original response and let the calling code handle retries.
|
|
48
|
-
if (ReadableStream && reqInit.body instanceof ReadableStream) {
|
|
49
|
-
return initialRes;
|
|
50
|
-
}
|
|
51
|
-
// Return initial "ExpiredToken" response if the session was not refreshed.
|
|
52
|
-
const updatedToken = this.session?.accessJwt;
|
|
53
|
-
if (!updatedToken || updatedToken === initialToken) {
|
|
54
|
-
return initialRes;
|
|
55
|
-
}
|
|
56
|
-
// Make sure the initial request is cancelled to avoid leaking resources
|
|
57
|
-
// (NodeJS 👀): https://undici.nodejs.org/#/?id=garbage-collection
|
|
58
|
-
await initialRes.body?.cancel();
|
|
59
|
-
// We need to re-compute the URI in case the PDS endpoint has changed
|
|
60
|
-
const updatedUri = new URL(url, this.dispatchUrl);
|
|
61
|
-
const updatedReq = new Request(updatedUri, reqInit);
|
|
62
|
-
updatedReq.headers.set('authorization', `Bearer ${updatedToken}`);
|
|
63
|
-
return await (0, this.sessionManager.fetch)(updatedReq);
|
|
64
|
-
});
|
|
65
|
-
Object.defineProperty(this, "headers", {
|
|
66
|
-
enumerable: true,
|
|
67
|
-
configurable: true,
|
|
68
|
-
writable: true,
|
|
69
|
-
value: void 0
|
|
70
|
-
});
|
|
28
|
+
const sessionManager = options instanceof CredentialSession
|
|
29
|
+
? options
|
|
30
|
+
: new CredentialSession(new URL(options.service), options.fetch, options.persistSession);
|
|
31
|
+
super(sessionManager);
|
|
71
32
|
Object.defineProperty(this, "sessionManager", {
|
|
72
33
|
enumerable: true,
|
|
73
34
|
configurable: true,
|
|
74
35
|
writable: true,
|
|
75
36
|
value: void 0
|
|
76
37
|
});
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
38
|
+
// This assignment is already being done in the super constructor, but we
|
|
39
|
+
// need to do it here to make TypeScript happy.
|
|
40
|
+
this.sessionManager = sessionManager;
|
|
41
|
+
if (!(options instanceof CredentialSession) && options.headers) {
|
|
42
|
+
for (const [key, value] of options.headers) {
|
|
43
|
+
this.setHeader(key, value);
|
|
44
|
+
}
|
|
84
45
|
}
|
|
85
46
|
}
|
|
86
47
|
clone() {
|
|
87
48
|
return this.copyInto(new AtpAgent(this.sessionManager));
|
|
88
49
|
}
|
|
89
|
-
copyInto(inst) {
|
|
90
|
-
if (inst instanceof AtpAgent) {
|
|
91
|
-
for (const [key] of inst.headers) {
|
|
92
|
-
inst.unsetHeader(key);
|
|
93
|
-
}
|
|
94
|
-
for (const [key, value] of this.headers) {
|
|
95
|
-
inst.setHeader(key, value);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return super.copyInto(inst);
|
|
99
|
-
}
|
|
100
|
-
setHeader(key, value) {
|
|
101
|
-
this.headers.set(key.toLowerCase(), value);
|
|
102
|
-
}
|
|
103
|
-
unsetHeader(key) {
|
|
104
|
-
this.headers.delete(key.toLowerCase());
|
|
105
|
-
}
|
|
106
50
|
get session() {
|
|
107
51
|
return this.sessionManager.session;
|
|
108
52
|
}
|
|
109
53
|
get hasSession() {
|
|
110
|
-
return
|
|
54
|
+
return this.sessionManager.hasSession;
|
|
111
55
|
}
|
|
112
56
|
get did() {
|
|
113
|
-
return this.
|
|
57
|
+
return this.sessionManager.did;
|
|
114
58
|
}
|
|
115
59
|
get serviceUrl() {
|
|
116
60
|
return this.sessionManager.serviceUrl;
|
|
@@ -119,7 +63,7 @@ class AtpAgent extends agent_1.Agent {
|
|
|
119
63
|
return this.sessionManager.pdsUrl;
|
|
120
64
|
}
|
|
121
65
|
get dispatchUrl() {
|
|
122
|
-
return this.
|
|
66
|
+
return this.sessionManager.dispatchUrl;
|
|
123
67
|
}
|
|
124
68
|
/** @deprecated use {@link serviceUrl} instead */
|
|
125
69
|
get service() {
|
|
@@ -131,7 +75,7 @@ class AtpAgent extends agent_1.Agent {
|
|
|
131
75
|
set persistSession(v) {
|
|
132
76
|
throw new Error('Cannot set persistSession directly. "persistSession" must be defined in the constructor and can no longer be changed.');
|
|
133
77
|
}
|
|
134
|
-
/** @deprecated
|
|
78
|
+
/** @deprecated use {@link AtpAgent.serviceUrl} instead */
|
|
135
79
|
getServiceUrl() {
|
|
136
80
|
return this.serviceUrl;
|
|
137
81
|
}
|
|
@@ -150,11 +94,12 @@ class AtpAgent extends agent_1.Agent {
|
|
|
150
94
|
}
|
|
151
95
|
exports.AtpAgent = AtpAgent;
|
|
152
96
|
/**
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
97
|
+
* Credentials (username / password) based session manager. Instances of this
|
|
98
|
+
* class will typically be used as the session manager for an {@link AtpAgent}.
|
|
99
|
+
* They can also be used with an {@link XrpcClient}, if you want to use you
|
|
100
|
+
* own Lexicons.
|
|
156
101
|
*/
|
|
157
|
-
class
|
|
102
|
+
class CredentialSession {
|
|
158
103
|
constructor(serviceUrl, fetch = globalThis.fetch, persistSession) {
|
|
159
104
|
Object.defineProperty(this, "serviceUrl", {
|
|
160
105
|
enumerable: true,
|
|
@@ -193,31 +138,97 @@ class SessionManager {
|
|
|
193
138
|
value: void 0
|
|
194
139
|
});
|
|
195
140
|
/**
|
|
196
|
-
* Private {@link
|
|
141
|
+
* Private {@link ComAtprotoServerNS} used to perform session management API
|
|
197
142
|
* calls on the service endpoint. Calls performed by this agent will not be
|
|
198
|
-
* authenticated using the user's session
|
|
143
|
+
* authenticated using the user's session to allow proper manual configuration
|
|
144
|
+
* of the headers when performing session management operations.
|
|
199
145
|
*/
|
|
200
|
-
Object.defineProperty(this, "
|
|
146
|
+
Object.defineProperty(this, "server", {
|
|
201
147
|
enumerable: true,
|
|
202
148
|
configurable: true,
|
|
203
149
|
writable: true,
|
|
204
|
-
value: new client_1.
|
|
150
|
+
value: new client_1.ComAtprotoServerNS(
|
|
151
|
+
// Note that the use of the codegen "schemas" (to instantiate `this.api`),
|
|
152
|
+
// as well as the use of `ComAtprotoServerNS` will cause this class to
|
|
153
|
+
// reference (way) more code than it actually needs. It is not possible,
|
|
154
|
+
// with the current state of the codegen, to generate a client that only
|
|
155
|
+
// includes the methods that are actually used by this class. This is a
|
|
156
|
+
// known limitation that should be addressed in a future version of the
|
|
157
|
+
// codegen.
|
|
158
|
+
new xrpc_1.XrpcClient((url, init) => {
|
|
205
159
|
return (0, this.fetch)(new URL(url, this.serviceUrl), init);
|
|
206
|
-
})
|
|
160
|
+
}, lexicons_1.schemas))
|
|
207
161
|
});
|
|
208
162
|
}
|
|
163
|
+
get did() {
|
|
164
|
+
return this.session?.did;
|
|
165
|
+
}
|
|
166
|
+
get dispatchUrl() {
|
|
167
|
+
return this.pdsUrl || this.serviceUrl;
|
|
168
|
+
}
|
|
169
|
+
get hasSession() {
|
|
170
|
+
return !!this.session;
|
|
171
|
+
}
|
|
209
172
|
/**
|
|
210
173
|
* Sets a WhatWG "fetch()" function to be used for making HTTP requests.
|
|
211
174
|
*/
|
|
212
175
|
setFetch(fetch = globalThis.fetch) {
|
|
213
176
|
this.fetch = fetch;
|
|
214
177
|
}
|
|
178
|
+
async fetchHandler(url, init) {
|
|
179
|
+
// wait for any active session-refreshes to finish
|
|
180
|
+
await this.refreshSessionPromise;
|
|
181
|
+
const initialUri = new URL(url, this.dispatchUrl);
|
|
182
|
+
const initialReq = new Request(initialUri, init);
|
|
183
|
+
const initialToken = this.session?.accessJwt;
|
|
184
|
+
if (!initialToken || initialReq.headers.has('authorization')) {
|
|
185
|
+
return (0, this.fetch)(initialReq);
|
|
186
|
+
}
|
|
187
|
+
initialReq.headers.set('authorization', `Bearer ${initialToken}`);
|
|
188
|
+
const initialRes = await (0, this.fetch)(initialReq);
|
|
189
|
+
if (!this.session?.refreshJwt) {
|
|
190
|
+
return initialRes;
|
|
191
|
+
}
|
|
192
|
+
const isExpiredToken = await isErrorResponse(initialRes, [400], ['ExpiredToken']);
|
|
193
|
+
if (!isExpiredToken) {
|
|
194
|
+
return initialRes;
|
|
195
|
+
}
|
|
196
|
+
try {
|
|
197
|
+
await this.refreshSession();
|
|
198
|
+
}
|
|
199
|
+
catch {
|
|
200
|
+
return initialRes;
|
|
201
|
+
}
|
|
202
|
+
if (init?.signal?.aborted) {
|
|
203
|
+
return initialRes;
|
|
204
|
+
}
|
|
205
|
+
// The stream was already consumed. We cannot retry the request. A solution
|
|
206
|
+
// would be to tee() the input stream but that would bufferize the entire
|
|
207
|
+
// stream in memory which can lead to memory starvation. Instead, we will
|
|
208
|
+
// return the original response and let the calling code handle retries.
|
|
209
|
+
if (ReadableStream && init?.body instanceof ReadableStream) {
|
|
210
|
+
return initialRes;
|
|
211
|
+
}
|
|
212
|
+
// Return initial "ExpiredToken" response if the session was not refreshed.
|
|
213
|
+
const updatedToken = this.session?.accessJwt;
|
|
214
|
+
if (!updatedToken || updatedToken === initialToken) {
|
|
215
|
+
return initialRes;
|
|
216
|
+
}
|
|
217
|
+
// Make sure the initial request is cancelled to avoid leaking resources
|
|
218
|
+
// (NodeJS 👀): https://undici.nodejs.org/#/?id=garbage-collection
|
|
219
|
+
await initialRes.body?.cancel();
|
|
220
|
+
// We need to re-compute the URI in case the PDS endpoint has changed
|
|
221
|
+
const updatedUri = new URL(url, this.dispatchUrl);
|
|
222
|
+
const updatedReq = new Request(updatedUri, init);
|
|
223
|
+
updatedReq.headers.set('authorization', `Bearer ${updatedToken}`);
|
|
224
|
+
return await (0, this.fetch)(updatedReq);
|
|
225
|
+
}
|
|
215
226
|
/**
|
|
216
227
|
* Create a new account and hydrate its session in this agent.
|
|
217
228
|
*/
|
|
218
229
|
async createAccount(data, opts) {
|
|
219
230
|
try {
|
|
220
|
-
const res = await this.
|
|
231
|
+
const res = await this.server.createAccount(data, opts);
|
|
221
232
|
this.session = {
|
|
222
233
|
accessJwt: res.data.accessJwt,
|
|
223
234
|
refreshJwt: res.data.refreshJwt,
|
|
@@ -243,7 +254,7 @@ class SessionManager {
|
|
|
243
254
|
*/
|
|
244
255
|
async login(opts) {
|
|
245
256
|
try {
|
|
246
|
-
const res = await this.
|
|
257
|
+
const res = await this.server.createSession({
|
|
247
258
|
identifier: opts.identifier,
|
|
248
259
|
password: opts.password,
|
|
249
260
|
authFactorToken: opts.authFactorToken,
|
|
@@ -272,7 +283,7 @@ class SessionManager {
|
|
|
272
283
|
async logout() {
|
|
273
284
|
if (this.session) {
|
|
274
285
|
try {
|
|
275
|
-
await this.
|
|
286
|
+
await this.server.deleteSession(undefined, {
|
|
276
287
|
headers: {
|
|
277
288
|
authorization: `Bearer ${this.session.accessJwt}`,
|
|
278
289
|
},
|
|
@@ -293,7 +304,7 @@ class SessionManager {
|
|
|
293
304
|
async resumeSession(session) {
|
|
294
305
|
this.session = session;
|
|
295
306
|
try {
|
|
296
|
-
const res = await this.
|
|
307
|
+
const res = await this.server
|
|
297
308
|
.getSession(undefined, {
|
|
298
309
|
headers: { authorization: `Bearer ${session.accessJwt}` },
|
|
299
310
|
})
|
|
@@ -302,10 +313,12 @@ class SessionManager {
|
|
|
302
313
|
['ExpiredToken', 'InvalidToken'].includes(err.error) &&
|
|
303
314
|
session.refreshJwt) {
|
|
304
315
|
try {
|
|
305
|
-
const res = await this.
|
|
316
|
+
const res = await this.server.refreshSession(undefined, {
|
|
317
|
+
headers: { authorization: `Bearer ${session.refreshJwt}` },
|
|
318
|
+
});
|
|
306
319
|
session.accessJwt = res.data.accessJwt;
|
|
307
320
|
session.refreshJwt = res.data.refreshJwt;
|
|
308
|
-
return this.
|
|
321
|
+
return this.server.getSession(undefined, {
|
|
309
322
|
headers: { authorization: `Bearer ${session.accessJwt}` },
|
|
310
323
|
});
|
|
311
324
|
}
|
|
@@ -361,7 +374,7 @@ class SessionManager {
|
|
|
361
374
|
return;
|
|
362
375
|
}
|
|
363
376
|
try {
|
|
364
|
-
const res = await this.
|
|
377
|
+
const res = await this.server.refreshSession(undefined, {
|
|
365
378
|
headers: { authorization: `Bearer ${this.session.refreshJwt}` },
|
|
366
379
|
});
|
|
367
380
|
// succeeded, update the session
|
|
@@ -409,6 +422,7 @@ class SessionManager {
|
|
|
409
422
|
}
|
|
410
423
|
}
|
|
411
424
|
}
|
|
425
|
+
exports.CredentialSession = CredentialSession;
|
|
412
426
|
function isErrorObject(v) {
|
|
413
427
|
return xrpc_1.errorResponseBody.safeParse(v).success;
|
|
414
428
|
}
|
package/dist/atp-agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atp-agent.js","sourceRoot":"","sources":["../src/atp-agent.ts"],"names":[],"mappings":";;;AAAA,oDAAmE;AACnE,wCAOsB;AACtB,mCAA+B;AAC/B,qCAKiB;AAOjB,MAAM,cAAc,GAAG,UAAU,CAAC,cAErB,CAAA;AASb;;;GAGG;AACH,MAAa,QAAS,SAAQ,aAAK;IAIjC,YAAY,OAAyC;QACnD,KAAK,CAAC,KAAK,EAAE,GAAW,EAAE,IAAkB,EAAqB,EAAE;YACjE,kDAAkD;YAClD,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAA;YAE/C,MAAM,cAAc,GAAG,IAAA,qBAAc,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAClE,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,CAAA;YAEpD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;YACjD,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAEnD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;YAC5C,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAA;YACnD,CAAC;YAED,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,YAAY,EAAE,CAAC,CAAA;YACjE,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAA;YAEnE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;gBAC9B,OAAO,UAAU,CAAA;YACnB,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,eAAe,CAC1C,UAAU,EACV,CAAC,GAAG,CAAC,EACL,CAAC,cAAc,CAAC,CACjB,CAAA;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAA;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC7B,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,2EAA2E;YAC3E,yEAAyE;YACzE,yEAAyE;YACzE,wEAAwE;YACxE,IAAI,cAAc,IAAI,OAAO,CAAC,IAAI,YAAY,cAAc,EAAE,CAAC;gBAC7D,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,2EAA2E;YAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;YAC5C,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;gBACnD,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,wEAAwE;YACxE,kEAAkE;YAClE,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,CAAA;YAE/B,qEAAqE;YACrE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;YACjD,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAEnD,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,YAAY,EAAE,CAAC,CAAA;YAEjE,OAAO,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QAtEY;;;;;WAA6C;QAC7C;;;;;WAA8B;QAuE5C,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;YACxB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACtC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EACxB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,cAAc,CACvB,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,QAAQ,CAAkB,IAAO;QAC/B,IAAI,IAAI,YAAY,QAAQ,EAAE,CAAC;YAC7B,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACxC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,KAA8B;QACnD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAA;IAC5C,CAAC;IAED,WAAW,CAAC,GAAW;QACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAA;IACpC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,CAAA;IAC1B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,CAAA;IACvC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAA;IACnC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAA;IACvC,CAAC;IAED,iDAAiD;IACjD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,IAAI,cAAc;QAChB,MAAM,IAAI,KAAK,CACb,sJAAsJ,CACvJ,CAAA;IACH,CAAC;IAED,IAAI,cAAc,CAAC,CAAU;QAC3B,MAAM,IAAI,KAAK,CACb,uHAAuH,CACxH,CAAA;IACH,CAAC;IAED,wDAAwD;IACxD,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,OAAuB;QAEvB,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,IAA+C,EAC/C,IAAgD;QAEhD,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,KAAK,CACT,IAAuB;QAEvB,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAA;IACrC,CAAC;CACF;AAlLD,4BAkLC;AAED;;;;GAIG;AACH,MAAM,cAAc;IAclB,YACkB,UAAe,EACxB,QAAQ,UAAU,CAAC,KAAK,EACZ,cAAyC;QAF5D;;;;mBAAgB,UAAU;WAAK;QAC/B;;;;mBAAO,KAAK;WAAmB;QAC/B;;;;mBAAmB,cAAc;WAA2B;QAhBvD;;;;;WAAY,CAAC,qCAAqC;QAClD;;;;;WAAwB;QACxB;;;;;WAAgD;QAEvD;;;;WAIG;QACO;;;;mBAAM,IAAI,sBAAa,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBAC9C,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAA;YAC7D,CAAC,CAAC;WAAA;IAMC,CAAC;IAEJ;;OAEG;IACH,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,IAA+C,EAC/C,IAAgD;QAEhD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACvE,IAAI,CAAC,OAAO,GAAG;gBACb,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS;gBAC7B,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU;gBAC/B,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;gBACvB,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,cAAc,EAAE,KAAK;gBACrB,eAAe,EAAE,KAAK;gBACtB,MAAM,EAAE,IAAI;aACb,CAAA;YACD,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAC7C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACxC,OAAO,GAAG,CAAA;QACZ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;YACjD,MAAM,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,IAAuB;QAEvB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC1D,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,GAAG;gBACb,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS;gBAC7B,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU;gBAC/B,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;gBACvB,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG;gBACjB,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;gBACrB,cAAc,EAAE,GAAG,CAAC,IAAI,CAAC,cAAc;gBACvC,eAAe,EAAE,GAAG,CAAC,IAAI,CAAC,eAAe;gBACzC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI;gBAC/B,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;aACxB,CAAA;YACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACxC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAC7C,OAAO,GAAG,CAAA;QACZ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;YACjD,MAAM,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE;oBACzD,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;qBAClD;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;YAClB,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;gBACxB,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,OAAuB;QAEvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;iBAC1C,UAAU,CAAC,SAAS,EAAE;gBACrB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,SAAS,EAAE,EAAE;aAC1D,CAAC;iBACD,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACnB,IACE,GAAG,YAAY,gBAAS;oBACxB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;oBACpD,OAAO,CAAC,UAAU,EAClB,CAAC;oBACD,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAC1D,SAAS,EACT,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,CAC/D,CAAA;wBAED,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAA;wBACtC,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAA;wBAExC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;4BACvD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,SAAS,EAAE,EAAE;yBAC1D,CAAC,CAAA;oBACJ,CAAC;oBAAC,MAAM,CAAC;wBACP,uCAAuC;oBACzC,CAAC;gBACH,CAAC;gBACD,MAAM,GAAG,CAAA;YACX,CAAC,CAAC,CAAA;YAEJ,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM,IAAI,gBAAS,CACjB,mBAAY,CAAC,cAAc,EAC3B,iBAAiB,EACjB,YAAY,CACb,CAAA;YACH,CAAC;YAED,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;YAC9B,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAA;YAChC,OAAO,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,cAAc,CAAA;YAChD,OAAO,CAAC,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,eAAe,CAAA;YAClD,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;YACxC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAA;YAEhC,6CAA6C;YAC7C,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACxC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC1C,CAAC;YAED,OAAO,GAAG,CAAA;QACZ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6CAA6C;YAC7C,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;gBACxB,IAAI,CAAC,cAAc,EAAE,CACnB,GAAG,YAAY,gBAAS;oBACtB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;oBACpD,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,eAAe,EACnB,SAAS,CACV,CAAA;YACH,CAAC;YAED,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,CAAC,IAAI,CAAC,qBAAqB,KAA1B,IAAI,CAAC,qBAAqB,GAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC,OAAO,CACxE,GAAG,EAAE;YACH,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAA;QACxC,CAAC,CACF,EAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB;QAChC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;YAC9B,OAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE;gBACtE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;aAChE,CAAC,CAAA;YACF,gCAAgC;YAChC,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS;gBAC7B,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU;gBAC/B,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;gBACvB,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG;aAClB,CAAA;YACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACxC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IACE,GAAG,YAAY,gBAAS;gBACxB,GAAG,CAAC,KAAK;gBACT,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EACpD,CAAC;gBACD,oCAAoC;gBACpC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;gBACxB,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC7C,CAAC;YACD,0DAA0D;YAC1D,qDAAqD;YACrD,cAAc;QAChB,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,kBAAkB,CAAC,MAAe;QACxC,IAAI,IAAA,0BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAA;YACvC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACxD,CAAC;aAAM,CAAC;YACN,uEAAuE;YACvE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACzB,CAAC;IACH,CAAC;CACF;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,wBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAC/C,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,QAAkB,EAClB,MAAgB,EAChB,UAAoB;IAEpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAA;IACnD,0EAA0E;IAC1E,mCAAmC;IACnC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;QAChD,OAAO,aAAa,CAAC,IAAI,CAAC,IAAK,UAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,QAAkB,EAClB,OAAO,GAAG,QAAQ;IAElB,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,kBAAkB;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;IAC7E,IAAI,aAAa,CAAC,QAAQ,CAAC,GAAG,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IAC5E,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,OAAO,EAAY;IAC1C,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAClC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC,CAAC,GAAG,CAAA;AACT,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,OAAO,EAAY;IACxC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;AAC3D,CAAC"}
|
|
1
|
+
{"version":3,"file":"atp-agent.js","sourceRoot":"","sources":["../src/atp-agent.ts"],"names":[],"mappings":"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"}
|