@lifi/perps-sdk-provider-lighter 17.2.2 → 18.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/cjs/LighterProvider.d.ts.map +1 -1
- package/dist/cjs/LighterProvider.js +76 -57
- package/dist/cjs/LighterProvider.js.map +1 -1
- package/dist/cjs/accountConfig.d.ts.map +1 -1
- package/dist/cjs/accountConfig.js.map +1 -1
- package/dist/cjs/constants.d.ts +2 -1
- package/dist/cjs/constants.d.ts.map +1 -1
- package/dist/cjs/constants.js +3 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/signers/LighterKeyStore.d.ts +3 -1
- package/dist/cjs/signers/LighterKeyStore.d.ts.map +1 -1
- package/dist/cjs/signers/LighterKeyStore.js +14 -2
- package/dist/cjs/signers/LighterKeyStore.js.map +1 -1
- package/dist/cjs/signers/LighterReadOnlyTokenManager.d.ts +7 -0
- package/dist/cjs/signers/LighterReadOnlyTokenManager.d.ts.map +1 -1
- package/dist/cjs/signers/LighterReadOnlyTokenManager.js +19 -7
- package/dist/cjs/signers/LighterReadOnlyTokenManager.js.map +1 -1
- package/dist/cjs/signers/signActions.d.ts.map +1 -1
- package/dist/cjs/signers/signActions.js +8 -0
- package/dist/cjs/signers/signActions.js.map +1 -1
- package/dist/cjs/utils/apiClient.d.ts +12 -0
- package/dist/cjs/utils/apiClient.d.ts.map +1 -1
- package/dist/cjs/utils/apiClient.js +62 -7
- package/dist/cjs/utils/apiClient.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +3 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/marketLimits.d.ts +7 -0
- package/dist/cjs/utils/marketLimits.d.ts.map +1 -0
- package/dist/cjs/utils/marketLimits.js +15 -0
- package/dist/cjs/utils/marketLimits.js.map +1 -0
- package/dist/esm/LighterProvider.d.ts.map +1 -1
- package/dist/esm/LighterProvider.js +78 -102
- package/dist/esm/LighterProvider.js.map +1 -1
- package/dist/esm/accountConfig.d.ts.map +1 -1
- package/dist/esm/accountConfig.js +2 -4
- package/dist/esm/accountConfig.js.map +1 -1
- package/dist/esm/constants.d.ts +7 -1
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +7 -1
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/signers/LighterKeyStore.d.ts +4 -1
- package/dist/esm/signers/LighterKeyStore.d.ts.map +1 -1
- package/dist/esm/signers/LighterKeyStore.js +15 -3
- package/dist/esm/signers/LighterKeyStore.js.map +1 -1
- package/dist/esm/signers/LighterReadOnlyTokenManager.d.ts +12 -0
- package/dist/esm/signers/LighterReadOnlyTokenManager.d.ts.map +1 -1
- package/dist/esm/signers/LighterReadOnlyTokenManager.js +23 -7
- package/dist/esm/signers/LighterReadOnlyTokenManager.js.map +1 -1
- package/dist/esm/signers/signActions.d.ts.map +1 -1
- package/dist/esm/signers/signActions.js +9 -0
- package/dist/esm/signers/signActions.js.map +1 -1
- package/dist/esm/utils/apiClient.d.ts +34 -7
- package/dist/esm/utils/apiClient.d.ts.map +1 -1
- package/dist/esm/utils/apiClient.js +77 -14
- package/dist/esm/utils/apiClient.js.map +1 -1
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/marketLimits.d.ts +8 -0
- package/dist/esm/utils/marketLimits.d.ts.map +1 -0
- package/dist/esm/utils/marketLimits.js +12 -0
- package/dist/esm/utils/marketLimits.js.map +1 -0
- package/dist/types/LighterProvider.d.ts.map +1 -1
- package/dist/types/accountConfig.d.ts.map +1 -1
- package/dist/types/constants.d.ts +7 -1
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/signers/LighterKeyStore.d.ts +4 -1
- package/dist/types/signers/LighterKeyStore.d.ts.map +1 -1
- package/dist/types/signers/LighterReadOnlyTokenManager.d.ts +12 -0
- package/dist/types/signers/LighterReadOnlyTokenManager.d.ts.map +1 -1
- package/dist/types/signers/signActions.d.ts.map +1 -1
- package/dist/types/utils/apiClient.d.ts +34 -7
- package/dist/types/utils/apiClient.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/marketLimits.d.ts +8 -0
- package/dist/types/utils/marketLimits.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/LighterProvider.ts +103 -138
- package/src/accountConfig.ts +2 -4
- package/src/constants.ts +8 -0
- package/src/signers/LighterKeyStore.ts +28 -3
- package/src/signers/LighterReadOnlyTokenManager.ts +39 -6
- package/src/signers/signActions.ts +10 -0
- package/src/utils/apiClient.ts +106 -13
- package/src/utils/index.ts +1 -0
- package/src/utils/marketLimits.ts +28 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LighterKeyStore.js","sourceRoot":"","sources":["../../../src/signers/LighterKeyStore.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"LighterKeyStore.js","sourceRoot":"","sources":["../../../src/signers/LighterKeyStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,7 @@ export type LighterTokenFetcher = (params: {
|
|
|
60
60
|
expiry: number;
|
|
61
61
|
subAccountAccess: boolean;
|
|
62
62
|
scopes: string;
|
|
63
|
+
fetchImpl?: typeof fetch;
|
|
63
64
|
}) => Promise<LighterCreateTokenResponse>;
|
|
64
65
|
/**
|
|
65
66
|
* One row of Lighter's read-only token registry, matching Lighter's
|
|
@@ -108,6 +109,7 @@ export type LighterTokenListFetcher = (params: {
|
|
|
108
109
|
url: string;
|
|
109
110
|
authorization: string;
|
|
110
111
|
accountIndex: number;
|
|
112
|
+
fetchImpl?: typeof fetch;
|
|
111
113
|
}) => Promise<LighterListTokensResponse>;
|
|
112
114
|
/**
|
|
113
115
|
* Function injected for the HTTP boundary against Lighter's
|
|
@@ -119,6 +121,7 @@ export type LighterTokenRevokeFetcher = (params: {
|
|
|
119
121
|
authorization: string;
|
|
120
122
|
tokenId: number;
|
|
121
123
|
accountIndex: number;
|
|
124
|
+
fetchImpl?: typeof fetch;
|
|
122
125
|
}) => Promise<LighterRevokeTokenResponse>;
|
|
123
126
|
/**
|
|
124
127
|
* Dependencies and overrides for {@link LighterReadOnlyTokenManager}.
|
|
@@ -144,6 +147,8 @@ export interface LighterReadOnlyTokenManagerOptions {
|
|
|
144
147
|
listFetcher?: LighterTokenListFetcher;
|
|
145
148
|
/** Override the revoke POST. Defaults to a `fetch`-based implementation. */
|
|
146
149
|
revokeFetcher?: LighterTokenRevokeFetcher;
|
|
150
|
+
/** Transport used by the default endpoint fetchers. Defaults to `fetch`. */
|
|
151
|
+
fetchImpl?: typeof fetch;
|
|
147
152
|
/** Clock injection for testing expiry logic. Defaults to `Date.now`. */
|
|
148
153
|
now?: () => number;
|
|
149
154
|
}
|
|
@@ -194,6 +199,7 @@ export declare class LighterReadOnlyTokenManager {
|
|
|
194
199
|
private readonly fetcher;
|
|
195
200
|
private readonly listFetcher;
|
|
196
201
|
private readonly revokeFetcher;
|
|
202
|
+
private readonly fetchImpl;
|
|
197
203
|
private readonly now;
|
|
198
204
|
private readonly cache;
|
|
199
205
|
constructor(options?: LighterReadOnlyTokenManagerOptions);
|
|
@@ -253,6 +259,12 @@ export declare class LighterReadOnlyTokenManager {
|
|
|
253
259
|
* @param inputs Token-create parameters plus the owning `address`.
|
|
254
260
|
*/
|
|
255
261
|
approve(authorization: string, inputs: ApproveReadOnlyTokenInputs): Promise<ApproveReadOnlyTokenResult>;
|
|
262
|
+
/**
|
|
263
|
+
* Replace a token that Lighter explicitly reports as revoked.
|
|
264
|
+
* The venue already revoked the row, so this path skips registry cleanup.
|
|
265
|
+
*/
|
|
266
|
+
replaceRevoked(authorization: string, inputs: ApproveReadOnlyTokenInputs): Promise<ApproveReadOnlyTokenResult>;
|
|
267
|
+
private createAndPersist;
|
|
256
268
|
/**
|
|
257
269
|
* Revoke the registry rows this SDK owns and no longer needs. Lighter's
|
|
258
270
|
* `tokens/create` appends a row on every call, so without this pass the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LighterReadOnlyTokenManager.d.ts","sourceRoot":"","sources":["../../../src/signers/LighterReadOnlyTokenManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,0BAA0B,EAC1B,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAGnC;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,gBAAgB,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAA;IACb,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAA;IACd,sEAAsE;IACtE,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAA;IACvB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE;IACzC,GAAG,EAAE,MAAM,CAAA;IACX,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,EAAE,OAAO,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"LighterReadOnlyTokenManager.d.ts","sourceRoot":"","sources":["../../../src/signers/LighterReadOnlyTokenManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,6 +54,7 @@ export class LighterReadOnlyTokenManager {
|
|
|
54
54
|
fetcher;
|
|
55
55
|
listFetcher;
|
|
56
56
|
revokeFetcher;
|
|
57
|
+
fetchImpl;
|
|
57
58
|
now;
|
|
58
59
|
cache = new Map();
|
|
59
60
|
constructor(options = {}) {
|
|
@@ -64,6 +65,7 @@ export class LighterReadOnlyTokenManager {
|
|
|
64
65
|
this.listFetcher = options.listFetcher ?? defaultLighterTokenListFetcher;
|
|
65
66
|
this.revokeFetcher =
|
|
66
67
|
options.revokeFetcher ?? defaultLighterTokenRevokeFetcher;
|
|
68
|
+
this.fetchImpl = options.fetchImpl;
|
|
67
69
|
this.now = options.now ?? (() => Date.now());
|
|
68
70
|
}
|
|
69
71
|
storageKey(address, accountIndex) {
|
|
@@ -161,8 +163,19 @@ export class LighterReadOnlyTokenManager {
|
|
|
161
163
|
* @param inputs Token-create parameters plus the owning `address`.
|
|
162
164
|
*/
|
|
163
165
|
async approve(authorization, inputs) {
|
|
166
|
+
await this.revokeStaleOwnTokens(authorization, inputs.address, inputs.accountIndex);
|
|
167
|
+
return this.createAndPersist(authorization, inputs);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Replace a token that Lighter explicitly reports as revoked.
|
|
171
|
+
* The venue already revoked the row, so this path skips registry cleanup.
|
|
172
|
+
*/
|
|
173
|
+
async replaceRevoked(authorization, inputs) {
|
|
174
|
+
await this.remove(inputs.address, inputs.accountIndex);
|
|
175
|
+
return this.createAndPersist(authorization, inputs);
|
|
176
|
+
}
|
|
177
|
+
async createAndPersist(authorization, inputs) {
|
|
164
178
|
const { address, accountIndex, expirySeconds, scope } = inputs;
|
|
165
|
-
await this.revokeStaleOwnTokens(authorization, address, accountIndex);
|
|
166
179
|
const response = await this.fetcher({
|
|
167
180
|
url: `${this.lighterApiUrl}/api/v1/tokens/create`,
|
|
168
181
|
authorization,
|
|
@@ -171,6 +184,7 @@ export class LighterReadOnlyTokenManager {
|
|
|
171
184
|
expiry: expirySeconds,
|
|
172
185
|
subAccountAccess: scope === 'all',
|
|
173
186
|
scopes: 'read.*',
|
|
187
|
+
fetchImpl: this.fetchImpl,
|
|
174
188
|
});
|
|
175
189
|
const token = {
|
|
176
190
|
token: response.api_token,
|
|
@@ -211,6 +225,7 @@ export class LighterReadOnlyTokenManager {
|
|
|
211
225
|
url: `${this.lighterApiUrl}/api/v1/tokens`,
|
|
212
226
|
authorization,
|
|
213
227
|
accountIndex,
|
|
228
|
+
fetchImpl: this.fetchImpl,
|
|
214
229
|
});
|
|
215
230
|
const nowSeconds = Math.floor(this.now() / 1000);
|
|
216
231
|
const stale = rows
|
|
@@ -229,6 +244,7 @@ export class LighterReadOnlyTokenManager {
|
|
|
229
244
|
authorization,
|
|
230
245
|
tokenId: row.token_id,
|
|
231
246
|
accountIndex,
|
|
247
|
+
fetchImpl: this.fetchImpl,
|
|
232
248
|
});
|
|
233
249
|
}
|
|
234
250
|
catch (err) {
|
|
@@ -248,14 +264,14 @@ export class LighterReadOnlyTokenManager {
|
|
|
248
264
|
* non-2xx.
|
|
249
265
|
* @internal
|
|
250
266
|
*/
|
|
251
|
-
export const defaultLighterTokenFetcher = async ({ url, authorization, name, accountIndex, expiry, subAccountAccess, scopes, }) => {
|
|
267
|
+
export const defaultLighterTokenFetcher = async ({ url, authorization, name, accountIndex, expiry, subAccountAccess, scopes, fetchImpl, }) => {
|
|
252
268
|
const form = new FormData();
|
|
253
269
|
form.set('name', name);
|
|
254
270
|
form.set('account_index', String(accountIndex));
|
|
255
271
|
form.set('expiry', String(expiry));
|
|
256
272
|
form.set('sub_account_access', String(subAccountAccess));
|
|
257
273
|
form.set('scopes', scopes);
|
|
258
|
-
const response = await fetch(url, {
|
|
274
|
+
const response = await (fetchImpl ?? fetch)(url, {
|
|
259
275
|
method: 'POST',
|
|
260
276
|
headers: { authorization },
|
|
261
277
|
body: form,
|
|
@@ -273,9 +289,9 @@ export const defaultLighterTokenFetcher = async ({ url, authorization, name, acc
|
|
|
273
289
|
* non-2xx.
|
|
274
290
|
* @internal
|
|
275
291
|
*/
|
|
276
|
-
export const defaultLighterTokenListFetcher = async ({ url, authorization, accountIndex, }) => {
|
|
292
|
+
export const defaultLighterTokenListFetcher = async ({ url, authorization, accountIndex, fetchImpl, }) => {
|
|
277
293
|
const query = new URLSearchParams({ account_index: String(accountIndex) });
|
|
278
|
-
const response = await fetch(`${url}?${query.toString()}`, {
|
|
294
|
+
const response = await (fetchImpl ?? fetch)(`${url}?${query.toString()}`, {
|
|
279
295
|
headers: { authorization },
|
|
280
296
|
});
|
|
281
297
|
if (!response.ok) {
|
|
@@ -291,12 +307,12 @@ export const defaultLighterTokenListFetcher = async ({ url, authorization, accou
|
|
|
291
307
|
* Lighter-side body when the response is non-2xx.
|
|
292
308
|
* @internal
|
|
293
309
|
*/
|
|
294
|
-
export const defaultLighterTokenRevokeFetcher = async ({ url, authorization, tokenId, accountIndex }) => {
|
|
310
|
+
export const defaultLighterTokenRevokeFetcher = async ({ url, authorization, tokenId, accountIndex, fetchImpl }) => {
|
|
295
311
|
const form = new URLSearchParams({
|
|
296
312
|
token_id: String(tokenId),
|
|
297
313
|
account_index: String(accountIndex),
|
|
298
314
|
});
|
|
299
|
-
const response = await fetch(url, {
|
|
315
|
+
const response = await (fetchImpl ?? fetch)(url, {
|
|
300
316
|
method: 'POST',
|
|
301
317
|
headers: {
|
|
302
318
|
authorization,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LighterReadOnlyTokenManager.js","sourceRoot":"","sources":["../../../src/signers/LighterReadOnlyTokenManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,mBAAmB,GAEpB,MAAM,iBAAiB,CAAA;AAMxB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEhF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"LighterReadOnlyTokenManager.js","sourceRoot":"","sources":["../../../src/signers/LighterReadOnlyTokenManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACrE,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA8B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAInC,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAOxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAEV,aAAa,EAEd,MAAM,oBAAoB,CAAA;AAE3B;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,EAAE,eAAe,CAAA;IACzB;;qCAEiC;IACjC,SAAS,EAAE,gBAAgB,CAAA;IAC3B;;;OAGG;IACH,eAAe,EAAE,sBAAsB,CAAA;IACvC;;;;;OAKG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACvD;AAyBD;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,CACnB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,QAAO,sBA6D/C,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EAAE,EAC3B,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAkCrC;
|
|
1
|
+
{"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACrE,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA8B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAInC,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAOxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAEV,aAAa,EAEd,MAAM,oBAAoB,CAAA;AAE3B;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,EAAE,eAAe,CAAA;IACzB;;qCAEiC;IACjC,SAAS,EAAE,gBAAgB,CAAA;IAC3B;;;OAGG;IACH,eAAe,EAAE,sBAAsB,CAAA;IACvC;;;;;OAKG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACvD;AAyBD;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,CACnB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,QAAO,sBA6D/C,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EAAE,EAC3B,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAkCrC;AAkXD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EAAE,EACxB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CA6ElC;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,sBAAsB,EAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,kBAAkB,GACvB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
|
|
@@ -169,11 +169,14 @@ async function signRegisterApiKey(deps, address, step, ctx) {
|
|
|
169
169
|
message: changePubKey.messageToSign,
|
|
170
170
|
});
|
|
171
171
|
const txInfoWithL1Sig = deps.signer.embedL1Signature(changePubKey.txInfo, l1Signature);
|
|
172
|
+
// The referral marker belongs to the L1 address, not to the key slot.
|
|
173
|
+
const previousKey = await deps.keyStore.get(address);
|
|
172
174
|
await deps.keyStore.set(address, {
|
|
173
175
|
accountIndex,
|
|
174
176
|
apiKeyIndex,
|
|
175
177
|
apiKeyPrivateKey: keypair.privateKey,
|
|
176
178
|
apiKeyPublicKey: keypair.publicKey,
|
|
179
|
+
appliedReferralCode: previousKey?.appliedReferralCode,
|
|
177
180
|
});
|
|
178
181
|
return {
|
|
179
182
|
action: step.action,
|
|
@@ -269,10 +272,13 @@ async function executeTokenAuthMutation(deps, address, step) {
|
|
|
269
272
|
apiKeyIndex: apiKey.apiKeyIndex,
|
|
270
273
|
accountIndex: apiKey.accountIndex,
|
|
271
274
|
});
|
|
275
|
+
let appliedReferralCode;
|
|
272
276
|
if (step.wasmSignParams.kind === 'referralUse') {
|
|
273
277
|
const { referral_code } = step.wasmSignParams;
|
|
278
|
+
appliedReferralCode = referral_code;
|
|
274
279
|
if (typeof referral_code === 'string' &&
|
|
275
280
|
(await isReferralAlreadyApplied(deps, address, authToken, referral_code))) {
|
|
281
|
+
await deps.keyStore.markReferralApplied(address, referral_code);
|
|
276
282
|
return;
|
|
277
283
|
}
|
|
278
284
|
}
|
|
@@ -283,6 +289,9 @@ async function executeTokenAuthMutation(deps, address, step) {
|
|
|
283
289
|
const suffix = data?.message ? `: ${data.message}` : '';
|
|
284
290
|
throw new PerpsError(PerpsErrorCode.ExchangeRejected, `Lighter ${step.action} rejected (code ${code ?? status})${suffix}`);
|
|
285
291
|
}
|
|
292
|
+
if (appliedReferralCode !== undefined) {
|
|
293
|
+
await deps.keyStore.markReferralApplied(address, appliedReferralCode);
|
|
294
|
+
}
|
|
286
295
|
}
|
|
287
296
|
/**
|
|
288
297
|
* Whether the account's applied referral code already equals `referralCode`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,21 +2,36 @@ import { PerpsError, type ResolvedRetryPolicy } from '@lifi/perps-sdk';
|
|
|
2
2
|
/** @internal */
|
|
3
3
|
export type ApiParams = Record<string, string | number | boolean>;
|
|
4
4
|
/**
|
|
5
|
-
* Auth-gated read whose token Lighter rejected.
|
|
6
|
-
*
|
|
7
|
-
* with a freshly-created one. Lighter signals this on either channel: an HTTP
|
|
8
|
-
* 401/403, or an HTTP 200 carrying an error `code` in the body.
|
|
5
|
+
* Auth-gated read whose token format Lighter rejected.
|
|
6
|
+
*
|
|
9
7
|
* @internal
|
|
10
8
|
*/
|
|
11
9
|
export declare class LighterAuthRejectedError extends PerpsError {
|
|
12
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Auth-gated read whose read-only token Lighter reports as revoked.
|
|
13
|
+
*
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export declare class LighterTokenRevokedError extends PerpsError {
|
|
17
|
+
}
|
|
13
18
|
/** @internal */
|
|
14
19
|
export declare const LIGHTER_RETRY_DEFAULTS: ResolvedRetryPolicy;
|
|
20
|
+
/**
|
|
21
|
+
* Mutable rate-limit deadline shared by the request clients for one provider
|
|
22
|
+
* instance. A client creates an isolated hold when the caller omits this.
|
|
23
|
+
*
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
export interface LighterRateLimitHold {
|
|
27
|
+
untilMs: number;
|
|
28
|
+
}
|
|
15
29
|
/** @internal */
|
|
16
30
|
export interface LighterApiClientOptions {
|
|
17
31
|
signal?: AbortSignal;
|
|
18
32
|
policy?: ResolvedRetryPolicy;
|
|
19
33
|
fetchImpl?: typeof fetch;
|
|
34
|
+
rateLimitHold?: LighterRateLimitHold;
|
|
20
35
|
}
|
|
21
36
|
/**
|
|
22
37
|
* HTTP boundary against Lighter's REST API.
|
|
@@ -32,9 +47,10 @@ export interface LighterApiClientOptions {
|
|
|
32
47
|
* `Authorization` header. This matches Lighter's OpenAPI spec and lets the
|
|
33
48
|
* same call work browser-direct and from server-side proxies.
|
|
34
49
|
*
|
|
35
|
-
* Lighter signals rate
|
|
36
|
-
*
|
|
37
|
-
*
|
|
50
|
+
* Lighter signals rate limits through HTTP 429 or HTTP 405. This client never
|
|
51
|
+
* retries such a response. It throws `RateLimitExceeded` and holds all network
|
|
52
|
+
* dispatch until `Retry-After` expires (capped at five minutes), or for 60
|
|
53
|
+
* seconds when the response has no valid header.
|
|
38
54
|
* @public
|
|
39
55
|
*/
|
|
40
56
|
export declare class LighterApiClient {
|
|
@@ -42,7 +58,18 @@ export declare class LighterApiClient {
|
|
|
42
58
|
private readonly signal;
|
|
43
59
|
private readonly policy;
|
|
44
60
|
private readonly fetchImpl;
|
|
61
|
+
private readonly rateLimitHold;
|
|
62
|
+
private readonly fetchWithHold;
|
|
45
63
|
constructor(baseUrl: string, options?: LighterApiClientOptions);
|
|
64
|
+
/**
|
|
65
|
+
* Send a single request through this client's rate-limit hold.
|
|
66
|
+
*
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
request(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
|
|
70
|
+
private rateLimitError;
|
|
71
|
+
private assertRequestAllowed;
|
|
72
|
+
private assertNotRateLimited;
|
|
46
73
|
private buildUrl;
|
|
47
74
|
get<T>(path: string, params?: ApiParams): Promise<T>;
|
|
48
75
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../../src/utils/apiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../../src/utils/apiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAA;AAQxB,gBAAgB;AAChB,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAA;AAejE;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;CAAG;AAE3D;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;CAAG;AAU3D,gBAAgB;AAChB,eAAO,MAAM,sBAAsB,EAAE,mBAgBpC,CAAA;AAsBD;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,gBAAgB;AAChB,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,MAAM,CAAC,EAAE,mBAAmB,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,aAAa,CAAC,EAAE,oBAAoB,CAAA;CACrC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAc;gBAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB;IAqB9D;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIxE,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,QAAQ;IAaV,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;;;OAIG;IACG,SAAS,CAAC,CAAC,EACf,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,SAAc,GACrB,OAAO,CAAC,CAAC,CAAC;IAqBb;;;;OAIG;IACG,aAAa,CAAC,CAAC,EACnB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;IAiBvC;;;;;OAKG;IACG,QAAQ,CAAC,CAAC,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;YAgBzB,UAAU;IAMxB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;CAejB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { fetchWithRetry, PerpsError, } from '@lifi/perps-sdk';
|
|
2
2
|
import { PerpsErrorCode } from '@lifi/perps-types';
|
|
3
|
-
import { LIGHTER_INVALID_AUTH_CODE, LIGHTER_SUCCESS_CODES, } from '../constants.js';
|
|
3
|
+
import { LIGHTER_INVALID_AUTH_CODE, LIGHTER_SUCCESS_CODES, LIGHTER_TOKEN_REVOKED_CODE, } from '../constants.js';
|
|
4
4
|
/**
|
|
5
5
|
* Lighter signals errors on two channels: a non-2xx HTTP status, or an HTTP 200
|
|
6
6
|
* carrying an error `code` in the JSON body. Returns the body error `code` when
|
|
@@ -14,17 +14,23 @@ const lighterBodyErrorCode = (data) => {
|
|
|
14
14
|
return code;
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
|
-
* Auth-gated read whose token Lighter rejected.
|
|
18
|
-
*
|
|
19
|
-
* with a freshly-created one. Lighter signals this on either channel: an HTTP
|
|
20
|
-
* 401/403, or an HTTP 200 carrying an error `code` in the body.
|
|
17
|
+
* Auth-gated read whose token format Lighter rejected.
|
|
18
|
+
*
|
|
21
19
|
* @internal
|
|
22
20
|
*/
|
|
23
21
|
export class LighterAuthRejectedError extends PerpsError {
|
|
24
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Auth-gated read whose read-only token Lighter reports as revoked.
|
|
25
|
+
*
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export class LighterTokenRevokedError extends PerpsError {
|
|
29
|
+
}
|
|
25
30
|
const isLighterAuthRejection = (status, data) => status === 401 ||
|
|
26
31
|
status === 403 ||
|
|
27
32
|
lighterBodyErrorCode(data) === LIGHTER_INVALID_AUTH_CODE;
|
|
33
|
+
const isLighterTokenRevoked = (data) => lighterBodyErrorCode(data) === LIGHTER_TOKEN_REVOKED_CODE;
|
|
28
34
|
/** @internal */
|
|
29
35
|
export const LIGHTER_RETRY_DEFAULTS = {
|
|
30
36
|
enabled: true,
|
|
@@ -33,9 +39,6 @@ export const LIGHTER_RETRY_DEFAULTS = {
|
|
|
33
39
|
maxDelayMs: 60_000,
|
|
34
40
|
respectRetryAfter: true,
|
|
35
41
|
classify: ({ response }) => {
|
|
36
|
-
if (response.status === 429 || response.status === 405) {
|
|
37
|
-
return 'retry-rate-limit';
|
|
38
|
-
}
|
|
39
42
|
if (response.status === 502 ||
|
|
40
43
|
response.status === 503 ||
|
|
41
44
|
response.status === 504) {
|
|
@@ -44,6 +47,22 @@ export const LIGHTER_RETRY_DEFAULTS = {
|
|
|
44
47
|
return 'fail';
|
|
45
48
|
},
|
|
46
49
|
};
|
|
50
|
+
const LIGHTER_RATE_LIMIT_HOLD_MS = 60_000;
|
|
51
|
+
const LIGHTER_RATE_LIMIT_HOLD_MAX_MS = 300_000;
|
|
52
|
+
const isLighterRateLimit = (status) => status === 429 || status === 405;
|
|
53
|
+
const retryAfterMs = (header, nowMs) => {
|
|
54
|
+
if (header === null) {
|
|
55
|
+
return LIGHTER_RATE_LIMIT_HOLD_MS;
|
|
56
|
+
}
|
|
57
|
+
const seconds = Number(header);
|
|
58
|
+
if (Number.isFinite(seconds) && seconds >= 0) {
|
|
59
|
+
return Math.min(seconds * 1000, LIGHTER_RATE_LIMIT_HOLD_MAX_MS);
|
|
60
|
+
}
|
|
61
|
+
const dateMs = Date.parse(header);
|
|
62
|
+
return Number.isFinite(dateMs)
|
|
63
|
+
? Math.min(Math.max(0, dateMs - nowMs), LIGHTER_RATE_LIMIT_HOLD_MAX_MS)
|
|
64
|
+
: LIGHTER_RATE_LIMIT_HOLD_MS;
|
|
65
|
+
};
|
|
47
66
|
/**
|
|
48
67
|
* HTTP boundary against Lighter's REST API.
|
|
49
68
|
*
|
|
@@ -58,9 +77,10 @@ export const LIGHTER_RETRY_DEFAULTS = {
|
|
|
58
77
|
* `Authorization` header. This matches Lighter's OpenAPI spec and lets the
|
|
59
78
|
* same call work browser-direct and from server-side proxies.
|
|
60
79
|
*
|
|
61
|
-
* Lighter signals rate
|
|
62
|
-
*
|
|
63
|
-
*
|
|
80
|
+
* Lighter signals rate limits through HTTP 429 or HTTP 405. This client never
|
|
81
|
+
* retries such a response. It throws `RateLimitExceeded` and holds all network
|
|
82
|
+
* dispatch until `Retry-After` expires (capped at five minutes), or for 60
|
|
83
|
+
* seconds when the response has no valid header.
|
|
64
84
|
* @public
|
|
65
85
|
*/
|
|
66
86
|
export class LighterApiClient {
|
|
@@ -68,11 +88,45 @@ export class LighterApiClient {
|
|
|
68
88
|
signal;
|
|
69
89
|
policy;
|
|
70
90
|
fetchImpl;
|
|
91
|
+
rateLimitHold;
|
|
92
|
+
fetchWithHold;
|
|
71
93
|
constructor(baseUrl, options) {
|
|
72
94
|
this.baseUrl = baseUrl.replace(/\/$/, '');
|
|
73
95
|
this.signal = options?.signal;
|
|
74
96
|
this.policy = options?.policy ?? LIGHTER_RETRY_DEFAULTS;
|
|
75
97
|
this.fetchImpl = options?.fetchImpl;
|
|
98
|
+
this.rateLimitHold = options?.rateLimitHold ?? { untilMs: 0 };
|
|
99
|
+
this.fetchWithHold = async (input, init) => {
|
|
100
|
+
this.assertRequestAllowed();
|
|
101
|
+
const response = await (this.fetchImpl ?? fetch)(input, init);
|
|
102
|
+
if (isLighterRateLimit(response.status)) {
|
|
103
|
+
const responseNowMs = Date.now();
|
|
104
|
+
this.rateLimitHold.untilMs = Math.max(this.rateLimitHold.untilMs, responseNowMs +
|
|
105
|
+
retryAfterMs(response.headers.get('Retry-After'), responseNowMs));
|
|
106
|
+
}
|
|
107
|
+
return response;
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Send a single request through this client's rate-limit hold.
|
|
112
|
+
*
|
|
113
|
+
* @internal
|
|
114
|
+
*/
|
|
115
|
+
request(input, init) {
|
|
116
|
+
return this.fetchWithHold(input, init);
|
|
117
|
+
}
|
|
118
|
+
rateLimitError() {
|
|
119
|
+
return new PerpsError(PerpsErrorCode.RateLimitExceeded, `Lighter API requests are held until ${new Date(this.rateLimitHold.untilMs).toISOString()}`);
|
|
120
|
+
}
|
|
121
|
+
assertRequestAllowed() {
|
|
122
|
+
if (Date.now() < this.rateLimitHold.untilMs) {
|
|
123
|
+
throw this.rateLimitError();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
assertNotRateLimited(response) {
|
|
127
|
+
if (isLighterRateLimit(response.status)) {
|
|
128
|
+
throw this.rateLimitError();
|
|
129
|
+
}
|
|
76
130
|
}
|
|
77
131
|
buildUrl(path, params) {
|
|
78
132
|
const url = `${this.baseUrl}${path}`;
|
|
@@ -97,6 +151,9 @@ export class LighterApiClient {
|
|
|
97
151
|
...params,
|
|
98
152
|
auth: authToken,
|
|
99
153
|
});
|
|
154
|
+
if (isLighterTokenRevoked(data)) {
|
|
155
|
+
throw new LighterTokenRevokedError(PerpsErrorCode.ThirdPartyError, `Lighter reports a revoked auth token for ${path}`);
|
|
156
|
+
}
|
|
100
157
|
if (isLighterAuthRejection(status, data)) {
|
|
101
158
|
throw new LighterAuthRejectedError(PerpsErrorCode.ThirdPartyError, `Lighter rejected the auth token for ${path}`);
|
|
102
159
|
}
|
|
@@ -109,8 +166,14 @@ export class LighterApiClient {
|
|
|
109
166
|
* caller distinguishes specific Lighter error codes from generic failures.
|
|
110
167
|
*/
|
|
111
168
|
async getWithStatus(path, params) {
|
|
169
|
+
this.assertRequestAllowed();
|
|
112
170
|
const url = this.buildUrl(path, params);
|
|
113
|
-
const response = await fetchWithRetry(url, {}, {
|
|
171
|
+
const response = await fetchWithRetry(url, {}, {
|
|
172
|
+
policy: this.policy,
|
|
173
|
+
fetchImpl: this.fetchWithHold,
|
|
174
|
+
signal: this.signal,
|
|
175
|
+
});
|
|
176
|
+
this.assertNotRateLimited(response);
|
|
114
177
|
const data = (await response.json().catch(() => undefined));
|
|
115
178
|
return { status: response.status, data };
|
|
116
179
|
}
|
|
@@ -125,13 +188,13 @@ export class LighterApiClient {
|
|
|
125
188
|
for (const [k, v] of Object.entries(params)) {
|
|
126
189
|
body.set(k, String(v));
|
|
127
190
|
}
|
|
128
|
-
const
|
|
129
|
-
const response = await fetchImpl(`${this.baseUrl}${path}`, {
|
|
191
|
+
const response = await this.fetchWithHold(`${this.baseUrl}${path}`, {
|
|
130
192
|
method: 'POST',
|
|
131
193
|
headers: { 'content-type': 'application/x-www-form-urlencoded' },
|
|
132
194
|
body: body.toString(),
|
|
133
195
|
signal: this.signal,
|
|
134
196
|
});
|
|
197
|
+
this.assertNotRateLimited(response);
|
|
135
198
|
const data = (await response.json().catch(() => undefined));
|
|
136
199
|
return { status: response.status, data };
|
|
137
200
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../../src/utils/apiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,UAAU,GAEX,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EACL,yBAAyB,EACzB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../../src/utils/apiClient.ts"],"names":[],"mappings":"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"}
|