@keetanetwork/anchor 0.0.30 → 0.0.32
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/lib/error.d.ts +5 -1
- package/lib/error.d.ts.map +1 -1
- package/lib/error.js +43 -4
- package/lib/error.js.map +1 -1
- package/npm-shrinkwrap.json +1376 -38
- package/package.json +1 -1
- package/services/asset-movement/client.d.ts +6 -1
- package/services/asset-movement/client.d.ts.map +1 -1
- package/services/asset-movement/client.js +94 -22
- package/services/asset-movement/client.js.map +1 -1
- package/services/asset-movement/common.d.ts +6 -1
- package/services/asset-movement/common.d.ts.map +1 -1
- package/services/asset-movement/common.js +59 -25
- package/services/asset-movement/common.js.map +1 -1
- package/lib/http-server-shared.d.ts +0 -14
- package/lib/http-server-shared.d.ts.map +0 -1
- package/lib/http-server-shared.js +0 -108
- package/lib/http-server-shared.js.map +0 -1
- package/lib/http-server.d.ts +0 -62
- package/lib/http-server.d.ts.map +0 -1
- package/lib/http-server.js +0 -431
- package/lib/http-server.js.map +0 -1
- package/lib/log/common.d.ts +0 -35
- package/lib/log/common.d.ts.map +0 -1
- package/lib/log/common.js +0 -19
- package/lib/log/common.js.map +0 -1
- package/lib/queue/common.d.ts +0 -23
- package/lib/queue/common.d.ts.map +0 -1
- package/lib/queue/common.js +0 -47
- package/lib/queue/common.js.map +0 -1
- package/lib/queue/drivers/queue_file.d.ts +0 -17
- package/lib/queue/drivers/queue_file.d.ts.map +0 -1
- package/lib/queue/drivers/queue_file.js +0 -100
- package/lib/queue/drivers/queue_file.js.map +0 -1
- package/lib/queue/drivers/queue_sqlite3.d.ts +0 -28
- package/lib/queue/drivers/queue_sqlite3.d.ts.map +0 -1
- package/lib/queue/drivers/queue_sqlite3.js +0 -379
- package/lib/queue/drivers/queue_sqlite3.js.map +0 -1
- package/lib/queue/index.d.ts +0 -341
- package/lib/queue/index.d.ts.map +0 -1
- package/lib/queue/index.js +0 -940
- package/lib/queue/index.js.map +0 -1
- package/lib/queue/internal.d.ts +0 -8
- package/lib/queue/internal.d.ts.map +0 -1
- package/lib/queue/internal.js +0 -28
- package/lib/queue/internal.js.map +0 -1
- package/lib/queue/pipeline.d.ts +0 -149
- package/lib/queue/pipeline.d.ts.map +0 -1
- package/lib/queue/pipeline.js +0 -296
- package/lib/queue/pipeline.js.map +0 -1
- package/lib/utils/asleep.d.ts +0 -2
- package/lib/utils/asleep.d.ts.map +0 -1
- package/lib/utils/asleep.js +0 -3
- package/lib/utils/asleep.js.map +0 -1
- package/lib/utils/defer.d.ts +0 -3
- package/lib/utils/defer.d.ts.map +0 -1
- package/lib/utils/defer.js +0 -3
- package/lib/utils/defer.js.map +0 -1
package/package.json
CHANGED
|
@@ -91,6 +91,11 @@ declare class KeetaAssetMovementTransfer {
|
|
|
91
91
|
get transferId(): string;
|
|
92
92
|
get instructions(): AssetTransferInstructions[];
|
|
93
93
|
}
|
|
94
|
+
interface AwaitPromiseURLOptions {
|
|
95
|
+
defaultPollIntervalMs?: number;
|
|
96
|
+
timeoutMs?: number;
|
|
97
|
+
abortSignal?: AbortSignal;
|
|
98
|
+
}
|
|
94
99
|
declare class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
95
100
|
#private;
|
|
96
101
|
readonly serviceInfo: KeetaAssetMovementServiceInfo;
|
|
@@ -103,7 +108,7 @@ declare class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorB
|
|
|
103
108
|
createPersistentForwardingAddress(request: KeetaAssetMovementAnchorCreatePersistentForwardingClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorCreatePersistentForwardingResponse>>;
|
|
104
109
|
listForwardingAddressTemplates(request: KeetaAssetMovementAnchorListForwardingAddressTemplateClientRequest): Promise<PersistentAddressTemplateData[]>;
|
|
105
110
|
listTransactions(request: KeetaAssetMovementAnchorlistTransactionsClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse>>;
|
|
106
|
-
shareKYCAttributes(request: KeetaAssetMovementAnchorShareKYCClientRequest): Promise<void>;
|
|
111
|
+
shareKYCAttributes(request: KeetaAssetMovementAnchorShareKYCClientRequest, awaitOptions?: AwaitPromiseURLOptions): Promise<void>;
|
|
107
112
|
}
|
|
108
113
|
declare class KeetaAssetMovementAnchorClient extends KeetaAssetMovementAnchorBase {
|
|
109
114
|
#private;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,IAAI,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EACX,UAAU,IAAI,kBAAkB,EAChC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACX,iDAAiD,EAEjD,0DAA0D,EAC1D,eAAe,EACf,mBAAmB,EAEnB,oEAAoE,EACpE,yBAAyB,EACzB,+DAA+D,EAC/D,qDAAqD,EAErD,8EAA8E,EAG9E,qDAAqD,EACrD,kEAAkE,EAClE,6BAA6B,EAC7B,sDAAsD,EACtD,6CAA6C,EAG7C,MAAM,aAAa,CAAC;AAqBrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,iCAAiC,EAAiD,MAAM,uBAAuB,CAAC;AAE/I,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { createAssertEquals } from 'typia';
|
|
|
8
8
|
import { addSignatureToURL } from '../../lib/http-server/common.js';
|
|
9
9
|
import { SignData } from '../../lib/utils/signing.js';
|
|
10
10
|
import { KeetaAnchorError } from '../../lib/error.js';
|
|
11
|
+
import { KeetaNet } from '../../client/index.js';
|
|
11
12
|
/**
|
|
12
13
|
* An opaque type that represents an Asset Movement Anchor request ID
|
|
13
14
|
*/
|
|
@@ -272,6 +273,34 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
272
273
|
auth: endpoint.options.authentication
|
|
273
274
|
});
|
|
274
275
|
}
|
|
276
|
+
async #parseResponseError(data) {
|
|
277
|
+
if (typeof data !== 'object' || data === null) {
|
|
278
|
+
throw (new Error('Response is not an error'));
|
|
279
|
+
}
|
|
280
|
+
if (!('ok' in data) || data.ok !== false) {
|
|
281
|
+
throw (new Error('Response is not an error'));
|
|
282
|
+
}
|
|
283
|
+
let errorStr;
|
|
284
|
+
let parsedError = null;
|
|
285
|
+
try {
|
|
286
|
+
parsedError = await KeetaAnchorError.fromJSON(data);
|
|
287
|
+
}
|
|
288
|
+
catch (error) {
|
|
289
|
+
this.logger?.debug('Failed to parse error response as KeetaAnchorError', error, data);
|
|
290
|
+
}
|
|
291
|
+
if (parsedError) {
|
|
292
|
+
return (parsedError);
|
|
293
|
+
}
|
|
294
|
+
else {
|
|
295
|
+
if ('error' in data && typeof data.error === 'string') {
|
|
296
|
+
errorStr = data.error;
|
|
297
|
+
}
|
|
298
|
+
else {
|
|
299
|
+
errorStr = 'Unknown error';
|
|
300
|
+
}
|
|
301
|
+
return (new Error(`asset movement request failed: ${errorStr}`));
|
|
302
|
+
}
|
|
303
|
+
}
|
|
275
304
|
async #makeRequest(input) {
|
|
276
305
|
const { url, auth } = await this.#getOperationData(input.endpoint, input.params);
|
|
277
306
|
let serializedRequest;
|
|
@@ -322,26 +351,7 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
322
351
|
throw (new Error(`Invalid response from asset movement service: ${JSON.stringify(requestInformationJSON)}`));
|
|
323
352
|
}
|
|
324
353
|
if (!requestInformationJSON.ok) {
|
|
325
|
-
|
|
326
|
-
let parsedError = null;
|
|
327
|
-
try {
|
|
328
|
-
parsedError = await KeetaAnchorError.fromJSON(requestInformationJSON);
|
|
329
|
-
}
|
|
330
|
-
catch (error) {
|
|
331
|
-
this.logger?.debug('Failed to parse error response as KeetaAnchorError', error, requestInformationJSON);
|
|
332
|
-
}
|
|
333
|
-
if (parsedError) {
|
|
334
|
-
throw (parsedError);
|
|
335
|
-
}
|
|
336
|
-
else {
|
|
337
|
-
if ('error' in requestInformationJSON && typeof requestInformationJSON.error === 'string') {
|
|
338
|
-
errorStr = requestInformationJSON.error;
|
|
339
|
-
}
|
|
340
|
-
else {
|
|
341
|
-
errorStr = 'Unknown error';
|
|
342
|
-
}
|
|
343
|
-
throw (new Error(`asset movement ${input.endpoint} request failed: ${errorStr}`));
|
|
344
|
-
}
|
|
354
|
+
throw (await this.#parseResponseError(requestInformationJSON));
|
|
345
355
|
}
|
|
346
356
|
// We need this assertion because TypeScript cannot infer that the type is correct here, it is correct because we checked it above.
|
|
347
357
|
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
@@ -497,9 +507,59 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
497
507
|
this.logger?.debug(`list persistent transactions request successful, ${requestInformationJSON.transactions}`);
|
|
498
508
|
return (requestInformationJSON);
|
|
499
509
|
}
|
|
500
|
-
async
|
|
510
|
+
async #awaitPromiseURL(promiseURL, options) {
|
|
511
|
+
const startTime = Date.now();
|
|
512
|
+
const timeout = options?.timeoutMs ?? (5 * 60 * 1000);
|
|
513
|
+
while (true) {
|
|
514
|
+
if (options?.abortSignal?.aborted) {
|
|
515
|
+
break;
|
|
516
|
+
}
|
|
517
|
+
let response;
|
|
518
|
+
try {
|
|
519
|
+
response = await fetch(promiseURL);
|
|
520
|
+
}
|
|
521
|
+
catch (error) {
|
|
522
|
+
this.logger?.debug('KeetaAssetMovementAnchorProvider::awaitPromiseURL', 'Error fetching promise URL', error);
|
|
523
|
+
throw (new Error(`Error fetching promise URL: ${String(error)}`));
|
|
524
|
+
}
|
|
525
|
+
if (response.status === 200) {
|
|
526
|
+
return;
|
|
527
|
+
}
|
|
528
|
+
if (response.status !== 202) {
|
|
529
|
+
let errorData;
|
|
530
|
+
try {
|
|
531
|
+
errorData = await response.json();
|
|
532
|
+
}
|
|
533
|
+
catch {
|
|
534
|
+
throw (new Error(`Error parsing error response json from promise, status code ${response.status}`));
|
|
535
|
+
}
|
|
536
|
+
throw (await this.#parseResponseError(errorData));
|
|
537
|
+
}
|
|
538
|
+
if (Date.now() - startTime > timeout) {
|
|
539
|
+
throw (new Error('Timeout waiting for promise URL to complete'));
|
|
540
|
+
}
|
|
541
|
+
let retryAfterMS;
|
|
542
|
+
const retryAfterHeader = response.headers.get('Retry-After');
|
|
543
|
+
if (retryAfterHeader) {
|
|
544
|
+
if (!isNaN(Number(retryAfterHeader))) {
|
|
545
|
+
retryAfterMS = Number(retryAfterHeader) * 1000;
|
|
546
|
+
}
|
|
547
|
+
else {
|
|
548
|
+
const retryAfterDate = new Date(retryAfterHeader);
|
|
549
|
+
if (!isNaN(retryAfterDate.getTime())) {
|
|
550
|
+
retryAfterMS = retryAfterDate.getTime() - Date.now();
|
|
551
|
+
}
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
if (!retryAfterMS) {
|
|
555
|
+
retryAfterMS = options?.defaultPollIntervalMs ?? 1000;
|
|
556
|
+
}
|
|
557
|
+
await KeetaNet.lib.Utils.Helper.asleep(retryAfterMS);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
async shareKYCAttributes(request, awaitOptions) {
|
|
501
561
|
this.logger?.debug('Sharing KYC attributes');
|
|
502
|
-
await this.#makeRequest({
|
|
562
|
+
const response = await this.#makeRequest({
|
|
503
563
|
method: 'POST',
|
|
504
564
|
endpoint: 'shareKYC',
|
|
505
565
|
account: request.account,
|
|
@@ -521,6 +581,18 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
521
581
|
getSignedData: getKeetaAssetMovementAnchorShareKYCRequestSigningData,
|
|
522
582
|
isResponse: isKeetaAssetMovementAnchorShareKYCResponse
|
|
523
583
|
});
|
|
584
|
+
if (response.isPending && response.promiseURL) {
|
|
585
|
+
this.logger?.debug('KYC attribute sharing is pending, awaiting promise URL');
|
|
586
|
+
let promiseURL;
|
|
587
|
+
if (response.promiseURL.startsWith('/')) {
|
|
588
|
+
const operationData = await this.#getOperationData('shareKYC');
|
|
589
|
+
promiseURL = new URL(response.promiseURL, operationData.url).toString();
|
|
590
|
+
}
|
|
591
|
+
else {
|
|
592
|
+
promiseURL = response.promiseURL;
|
|
593
|
+
}
|
|
594
|
+
await this.#awaitPromiseURL(promiseURL, { ...awaitOptions });
|
|
595
|
+
}
|
|
524
596
|
this.logger?.debug(`done sharing KYC attributes`);
|
|
525
597
|
}
|
|
526
598
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';\n\nimport { getDefaultResolver } from '../../config.js';\n\nimport type {\n\tUserClient as KeetaNetUserClient\n} from '@keetanetwork/keetanet-client';\nimport type {\n\tKeetaAssetMovementAnchorGetTransferStatusResponse,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tSupportedAssets,\n\tProviderSearchInput,\n\tKeetaAssetMovementAnchorlistTransactionsRequest,\n\tKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\tAssetTransferInstructions,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingClientRequest,\n\tKeetaAssetMovementAnchorInitiateTransferClientRequest,\n\tKeetaNetAccount,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tKeetaAssetMovementAnchorlistTransactionsClientRequest,\n\tKeetaAssetMovementAnchorListForwardingAddressTemplateClientRequest,\n\tPersistentAddressTemplateData,\n\tKeetaAssetMovementAnchorGetTransferStatusClientRequest,\n\tKeetaAssetMovementAnchorShareKYCClientRequest,\n\tKeetaAssetMovementAnchorShareKYCRequest,\n\tKeetaAssetMovementAnchorShareKYCResponse\n} from './common.js';\nimport {\n\tassertKeetaSupportedAssets,\n\tconvertAssetLocationToString,\n\tconvertAssetOrPairSearchInputToCanonical,\n\tconvertAssetSearchInputToCanonical,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorGetTransferStatusRequestSigningData,\n\tgetKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\tgetKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\tgetKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tisKeetaAssetMovementAnchorGetExchangeStatusResponse,\n\tisKeetaAssetMovementAnchorInitiateTransferResponse,\n\tisKeetaAssetMovementAnchorListForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\tisKeetaAssetMovementAnchorShareKYCResponse\n} from './common.js';\nimport type { Logger } from '../../lib/log/index.ts';\nimport Resolver from \"../../lib/resolver.js\";\nimport type { ServiceMetadata, ServiceMetadataAuthenticationType, ServiceMetadataEndpoint, SharedLookupCriteria } from '../../lib/resolver.ts';\nimport crypto from '../../lib/utils/crypto.js';\nimport type { BrandedString } from '../../lib/utils/brand.js';\nimport { createAssertEquals } from 'typia';\nimport type { ExtractOk, HTTPSignedField } from '../../lib/http-server/common.js';\nimport { addSignatureToURL } from '../../lib/http-server/common.js';\nimport type { Signable } from '../../lib/utils/signing.js';\nimport { SignData } from '../../lib/utils/signing.js';\nimport { KeetaAnchorError } from '../../lib/error.js';\n\n// const PARANOID = true;\n\n/**\n * The configuration options for the Asset Movement (Inbound/Outbound) Anchor client.\n */\nexport type KeetaAssetMovementClientConfig = {\n\t/**\n\t * The ID of the client. This is used to identify the client in logs.\n\t * If not provided, a random ID will be generated.\n\t */\n\tid?: string;\n\t/**\n\t * The logger to use for logging messages. If not provided, no logging\n\t * will be done.\n\t */\n\tlogger?: Logger;\n\t/**\n\t * The resolver to use for resolving Asset Movement Anchor services. If not\n\t * provided, a default resolver will be created using the provided\n\t * client and network (if the network is also not provided and the\n\t * client is not a UserClient, an error occurs).\n\t */\n\tresolver?: Resolver;\n\t/**\n\t * The account to use for signing requests. If not provided, the\n\t * account associated with the provided client will be used. If there\n\t * is no account associated with the client, an error occurs.\n\t */\n\tsigner?: InstanceType<typeof KeetaNetLib.Account>;\n\t/**\n\t * Account to perform changes on. If not provided, the account\n\t * associated with the provided client will be used. If there is no\n\t * account associated with the client, an error occurs.\n\t */\n\taccount?: InstanceType<typeof KeetaNetLib.Account>;\n} & Omit<NonNullable<Parameters<typeof getDefaultResolver>[1]>, 'client'>;\n\n/**\n * An opaque type that represents a provider ID.\n */\ntype ProviderID = BrandedString<'AssetMovementProviderID'>;\n\n/**\n * An opaque type that represents an Asset Movement Anchor request ID\n */\n// type RequestID = BrandedString<'AssetMovementRequestID'>;\n\nconst KeetaAssetMovementAnchorClientAccessToken = Symbol('KeetaAssetMovementAnchorClientAccessToken');\n\nfunction typedAssetMovementServiceEntries<T extends object>(obj: T): [keyof T, T[keyof T]][] {\n\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\treturn(Object.entries(obj) as [keyof T, T[keyof T]][]);\n}\n\nconst assertServiceMetadataEndpoint = createAssertEquals<ServiceMetadataEndpoint>();\n\n/**\n * A list of operations that can be performed by the Asset Movement Anchor service.\n */\ntype KeetaAssetMovementAnchorOperations = {\n\t[operation in keyof NonNullable<ServiceMetadata['services']['assetMovement']>[string]['operations']]?: {\n\t\turl: (params?: { [key: string]: string; }) => URL;\n\t\toptions: {\n\t\t\tauthentication: ServiceMetadataAuthenticationType;\n\t\t};\n\t};\n};\n\n/**\n * The service information for a KYC Anchor service.\n */\ntype KeetaAssetMovementServiceInfo = {\n\toperations: {\n\t\t[operation in keyof KeetaAssetMovementAnchorOperations]: Promise<KeetaAssetMovementAnchorOperations[operation]>;\n\t};\n\n\tsupportedAssets: SupportedAssets[];\n};\n\n/**\n * For each matching KYC Anchor service, this type describes the\n * operations available and the country codes that the service supports.\n */\ntype GetEndpointsResult = {\n\t[id: ProviderID]: KeetaAssetMovementServiceInfo;\n};\n\nfunction validateURL(url: string | undefined): URL {\n\tif (url === undefined || url === null) {\n\t\tthrow(new Error('Invalid URL: null or undefined'));\n\t}\n\n\tconst parsedURL = new URL(url);\n\n\treturn(parsedURL);\n}\n\nasync function getEndpoints(resolver: Resolver, request: ProviderSearchInput, shared?: SharedLookupCriteria, logger?: Logger): Promise<GetEndpointsResult | null> {\n\tconst asset = request.asset ? { asset: convertAssetOrPairSearchInputToCanonical(request.asset) } : undefined;\n\tconst from = request.from ? { from: convertAssetLocationToString(request.from) } : {};\n\tconst to = request.to ? { to: convertAssetLocationToString(request.to) } : {};\n\tconst rail = request.rail ? { rail: request.rail } : {};\n\tconst response = await resolver.lookup('assetMovement', {\n\t\t...asset,\n\t\t...from,\n\t\t...to,\n\t\t...rail\n\t}, shared);\n\n\tif (response === undefined) {\n\t\treturn(null);\n\t}\n\n\tconst serviceInfoPromises = Object.entries(response).map(async function([id, serviceInfo]): Promise<[ProviderID, KeetaAssetMovementServiceInfo]> {\n\t\tconst supportedAssetsMetadata = await Resolver.Metadata.fullyResolveValuizable(serviceInfo.supportedAssets);\n\t\tconst supportedAssets = assertKeetaSupportedAssets(supportedAssetsMetadata);\n\n\t\tconst operations = await serviceInfo.operations('object');\n\t\tconst operationsFunctions: KeetaAssetMovementServiceInfo['operations'] = {};\n\t\tfor (const [ key, operation ] of Object.entries(operations)) {\n\t\t\tif (operation === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tObject.defineProperty(operationsFunctions, key, {\n\t\t\t\tget: async function() {\n\t\t\t\t\tconst endpointInfo = assertServiceMetadataEndpoint(await Resolver.Metadata.fullyResolveValuizable(operation));\n\n\t\t\t\t\tlet url;\n\t\t\t\t\tlet authentication: ServiceMetadataAuthenticationType = {\n\t\t\t\t\t\ttype: 'none',\n\t\t\t\t\t\tmethod: 'keeta-account'\n\t\t\t\t\t};\n\n\t\t\t\t\tif (typeof endpointInfo === 'string') {\n\t\t\t\t\t\turl = endpointInfo;\n\t\t\t\t\t} else {\n\t\t\t\t\t\turl = endpointInfo.url;\n\t\t\t\t\t\tif (endpointInfo.options?.authentication) {\n\t\t\t\t\t\t\tauthentication = endpointInfo.options.authentication;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn({\n\t\t\t\t\t\turl: function(params?: { [key: string]: string; }): URL {\n\t\t\t\t\t\t\tlet substitutedURL;\n\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tsubstitutedURL = decodeURI(url)\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\tlogger?.debug('getEndpoints', 'Failed to decode URI, using original URL for substitution', error, url);\n\n\t\t\t\t\t\t\t\tsubstitutedURL = url;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfor (const [paramKey, paramValue] of Object.entries(params ?? {})) {\n\t\t\t\t\t\t\t\tsubstitutedURL = substitutedURL.replace(`{${paramKey}}`, encodeURIComponent(paramValue));\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn(validateURL(substitutedURL));\n\t\t\t\t\t\t},\n\t\t\t\t\t\toptions: { authentication }\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\t\t}\n\n\t\treturn([\n\t\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\t\tid as unknown as ProviderID,\n\t\t\t{\n\t\t\t\toperations: operationsFunctions,\n\t\t\t\tsupportedAssets: supportedAssets\n\t\t\t}\n\t\t]);\n\t});\n\n\tconst retval = Object.fromEntries(await Promise.all(serviceInfoPromises));\n\n\treturn(retval);\n}\n\ninterface KeetaAssetMovementAnchorBaseConfig {\n\tclient: KeetaNetUserClient;\n\tlogger?: Logger | undefined;\n}\n\nclass KeetaAssetMovementAnchorBase {\n\tprotected readonly logger?: Logger | undefined;\n\tprotected readonly client: KeetaNetUserClient;\n\n\tconstructor(config: KeetaAssetMovementAnchorBaseConfig) {\n\t\tthis.client = config.client;\n\t\tthis.logger = config.logger;\n\t}\n}\n\n/**\n * Represents an in-progress Asset Movement request.\n */\nclass KeetaAssetMovementTransfer {\n\tprivate readonly provider: KeetaAssetMovementAnchorProvider;\n\tprivate request: KeetaAssetMovementAnchorInitiateTransferClientRequest;\n\tprivate transfer: { id: string, instructionChoices: AssetTransferInstructions[] }\n\n\tconstructor(provider: KeetaAssetMovementAnchorProvider, request: KeetaAssetMovementAnchorInitiateTransferClientRequest, transfer: { id: string, instructionChoices: AssetTransferInstructions[] }) {\n\t\tthis.provider = provider;\n\t\tthis.request = request;\n\t\tthis.transfer = transfer;\n\t}\n\n\tasync getTransferStatus(): Promise<ExtractOk<KeetaAssetMovementAnchorGetTransferStatusResponse>> {\n\t\tconst account = this.request.account ? { account: this.request.account } : undefined;\n\t\treturn(await this.provider.getTransferStatus({ id: this.transfer.id, ...account }));\n\t}\n\n\tget transferId(): string {\n\t\treturn(this.transfer.id);\n\t}\n\n\tget instructions(): AssetTransferInstructions[] {\n\t\treturn(this.transfer.instructionChoices);\n\t}\n}\n\nclass KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {\n\treadonly serviceInfo: KeetaAssetMovementServiceInfo;\n\treadonly providerID: ProviderID;\n\tprivate readonly parent: KeetaAssetMovementAnchorClient;\n\n\tconstructor(serviceInfo: KeetaAssetMovementServiceInfo, providerID: ProviderID, parent: KeetaAssetMovementAnchorClient) {\n\t\tconst parentPrivate = parent._internals(KeetaAssetMovementAnchorClientAccessToken);\n\t\tsuper(parentPrivate);\n\n\t\tthis.serviceInfo = serviceInfo;\n\t\tthis.providerID = providerID;\n\t\tthis.parent = parent;\n\t}\n\n\tasync #getOperationData(operationName: keyof KeetaAssetMovementAnchorOperations, params?: { [key: string]: string; }) {\n\t\tconst endpoint = await this.serviceInfo.operations[operationName];\n\t\tif (endpoint === undefined) {\n\t\t\tthrow(new Error(`Asset Movement service does not support ${operationName} operation`));\n\t\t}\n\n\t\tif (endpoint.options.authentication.method !== 'keeta-account') {\n\t\t\tthrow(new Error(`Unsupported authentication method: ${endpoint.options.authentication.method}`));\n\t\t}\n\n\t\treturn({\n\t\t\turl: endpoint.url(params),\n\t\t\tauth: endpoint.options.authentication\n\t\t})\n\t}\n\n\tasync #makeRequest<\n\t\tResponse extends { ok: true } | { ok: false; error: string; },\n\t\tRequest = undefined,\n\t\tSerializedRequest = Request\n\t>(input: {\n\t\tmethod: 'GET' | 'POST';\n\t\tendpoint: keyof KeetaAssetMovementAnchorOperations;\n\t\taccount?: KeetaNetAccount | undefined;\n\t\tparams?: { [key: string]: string; } | undefined;\n\t\tbody?: Request | undefined;\n\t\tserializeRequest?: (body: Request) => (SerializedRequest | Promise<Omit<SerializedRequest, 'signed'>>);\n\n\t\tgetSignedData?: (request: SerializedRequest) => Signable;\n\t\tisResponse: (data: unknown) => data is Response;\n\t}): Promise<Extract<Response, { ok: true }>> {\n\t\tconst { url, auth } = await this.#getOperationData(input.endpoint, input.params);\n\n\t\tlet serializedRequest;\n\n\t\tif (input.body && input.serializeRequest) {\n\t\t\tserializedRequest = await input.serializeRequest(input.body);\n\t\t} else {\n\t\t\tserializedRequest = input.body;\n\t\t}\n\n\t\tlet signed: HTTPSignedField | undefined;\n\n\t\tif (auth.type === 'required' || (auth.type === 'optional' && input.account)) {\n\t\t\tif (!input.account) {\n\t\t\t\tthrow(new Error('Account information is required for this operation'));\n\t\t\t}\n\n\t\t\tif (!input.getSignedData) {\n\t\t\t\tthrow(new Error('getSignedData function is required for signing the request'));\n\t\t\t}\n\n\t\t\t// We need this assertion because TypeScript cannot infer that the type is correct here, it is correct in the arguments.\n\t\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\t\tconst signable = input.getSignedData(serializedRequest as SerializedRequest);\n\n\t\t\tsigned = await SignData(input.account.assertAccount(), signable);\n\t\t}\n\n\t\tlet usingUrl = url;\n\t\tconst headers: { [key: string]: string } = {\n\t\t\t'Accept': 'application/json'\n\t\t};\n\t\tlet body: BodyInit | null = null;\n\t\tif (input.method === 'POST') {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t\tbody = JSON.stringify({ ...serializedRequest, signed });\n\t\t} else {\n\t\t\tif (signed) {\n\t\t\t\tif (!input.account) {\n\t\t\t\t\tthrow(new Error('invariant: Account information is required for this operation, which should exist at this point'));\n\t\t\t\t}\n\n\t\t\t\tusingUrl = addSignatureToURL(usingUrl, { signedField: signed, account: input.account.assertAccount() });\n\t\t\t}\n\n\t\t\tif (input.body) {\n\t\t\t\tthrow(new Error('Body cannot be sent with GET requests'));\n\t\t\t}\n\t\t}\n\n\t\tconst requestInformation = await fetch(usingUrl, {\n\t\t\tmethod: input.method, headers, body\n\t\t});\n\n\t\tconst requestInformationJSON: unknown = await requestInformation.json();\n\t\tif (!input.isResponse(requestInformationJSON)) {\n\t\t\tthrow(new Error(`Invalid response from asset movement service: ${JSON.stringify(requestInformationJSON)}`));\n\t\t}\n\n\t\tif (!requestInformationJSON.ok) {\n\t\t\tlet errorStr;\n\n\t\t\tlet parsedError: KeetaAnchorError | null = null;\n\t\t\ttry {\n\t\t\t\tparsedError = await KeetaAnchorError.fromJSON(requestInformationJSON);\n\t\t\t} catch (error: unknown) {\n\t\t\t\tthis.logger?.debug('Failed to parse error response as KeetaAnchorError', error, requestInformationJSON);\n\t\t\t}\n\n\t\t\tif (parsedError) {\n\t\t\t\tthrow(parsedError);\n\t\t\t} else {\n\t\t\t\tif ('error' in requestInformationJSON && typeof requestInformationJSON.error === 'string') {\n\t\t\t\t\terrorStr = requestInformationJSON.error;\n\t\t\t\t} else {\n\t\t\t\t\terrorStr = 'Unknown error';\n\t\t\t\t}\n\n\t\t\t\tthrow(new Error(`asset movement ${input.endpoint} request failed: ${errorStr}`));\n\t\t\t}\n\t\t}\n\n\t\t// We need this assertion because TypeScript cannot infer that the type is correct here, it is correct because we checked it above.\n\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\treturn(requestInformationJSON as Extract<Response, { ok: true }>);\n\t}\n\n\tasync initiateTransfer(request: KeetaAssetMovementAnchorInitiateTransferClientRequest): Promise<KeetaAssetMovementTransfer> {\n\t\tthis.logger?.debug(`Starting Asset Movement Transfer for provider ID: ${String(this.providerID)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'initiateTransfer',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\t...body,\n\t\t\t\t\tvalue: String(body.value),\n\t\t\t\t\tfrom: {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.from.location)\n\t\t\t\t\t},\n\t\t\t\t\tto: {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.to.location),\n\t\t\t\t\t\trecipient: body.to.recipient\n\t\t\t\t\t},\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t})\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorInitiateTransferResponse\n\t\t});\n\n\t\tthis.logger?.debug(`asset movement request successful, request ID ${requestInformationJSON.id}`);\n\n\t\tconst anchorTransfer = new KeetaAssetMovementTransfer(this, request, { id: requestInformationJSON.id, instructionChoices: requestInformationJSON.instructionChoices });\n\t\treturn(anchorTransfer);\n\t}\n\n\tasync getTransferStatus(request: KeetaAssetMovementAnchorGetTransferStatusClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorGetTransferStatusResponse>> {\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'GET',\n\t\t\tendpoint: 'getTransferStatus',\n\t\t\taccount: request.account,\n\t\t\tparams: { id: request.id },\n\t\t\tgetSignedData: () => getKeetaAssetMovementAnchorGetTransferStatusRequestSigningData(request),\n\t\t\tisResponse: isKeetaAssetMovementAnchorGetExchangeStatusResponse\n\t\t});\n\n\t\tthis.logger?.debug(`asset movement request successful, request ID ${request.id}`);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync createPersistentForwardingTemplate(request: KeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorCreatePersistentForwardingResponse>> {\n\t\tthis.logger?.debug(`Creating persistent forwarding for provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'createPersistentForwardingTemplate',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\t...body,\n\t\t\t\t\tlocation: convertAssetLocationToString(body.location),\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t})\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse\n\t\t});\n\n\t\tthis.logger?.debug(`create persistent forwarding request successful`, requestInformationJSON.address);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync createPersistentForwardingAddress(request: KeetaAssetMovementAnchorCreatePersistentForwardingClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorCreatePersistentForwardingResponse>> {\n\t\tthis.logger?.debug(`Creating persistent forwarding for provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingClientRequest,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'createPersistentForwarding',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\tconst base = {\n\t\t\t\t\tsourceLocation: convertAssetLocationToString(body.sourceLocation),\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t} as const;\n\n\t\t\t\tif ('persistentAddressTemplateId' in body) {\n\t\t\t\t\treturn({\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tpersistentAddressTemplateId: body.persistentAddressTemplateId\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturn({\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tdestinationAddress: body.destinationAddress,\n\t\t\t\t\t\tdestinationLocation: convertAssetLocationToString(body.destinationLocation)\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorCreatePersistentForwardingResponse\n\t\t});\n\n\t\tthis.logger?.debug(`create persistent forwarding request successful`, requestInformationJSON.address);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync listForwardingAddressTemplates(request: KeetaAssetMovementAnchorListForwardingAddressTemplateClientRequest): Promise<PersistentAddressTemplateData[]> {\n\t\tthis.logger?.debug(`Listing persistent forwarding address templates for provider ID: ${String(this.providerID)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'listPersistentForwardingTemplate',\n\t\t\taccount: request.account,\n\t\t\tbody: request,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tasset: body.asset?.map(a => convertAssetSearchInputToCanonical(a)),\n\t\t\t\t\tlocation: body.location?.map(l => convertAssetLocationToString(l))\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorListForwardingAddressTemplateResponse\n\t\t});\n\n\t\tthis.logger?.debug(`list persistent forwarding address templates request successful`, requestInformationJSON.templates);\n\n\t\treturn(requestInformationJSON.templates);\n\t}\n\n\tasync listTransactions(request: KeetaAssetMovementAnchorlistTransactionsClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse>> {\n\t\tthis.logger?.debug(`List persistent forwarding transactions provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\t\t\tKeetaAssetMovementAnchorlistTransactionsClientRequest,\n\t\t\tKeetaAssetMovementAnchorlistTransactionsRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'listTransactions',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tpagination: body.pagination,\n\t\t\t\t\tpersistentAddresses: body.persistentAddresses?.map(pa => ({\n\t\t\t\t\t\tlocation: convertAssetLocationToString(pa.location),\n\t\t\t\t\t\t...('persistentAddressTemplate' in pa ?\n\t\t\t\t\t\t\t{ persistentAddressTemplate: pa.persistentAddressTemplate } :\n\t\t\t\t\t\t\t{ persistentAddress: pa.persistentAddress }\n\t\t\t\t\t\t)\n\t\t\t\t\t})),\n\t\t\t\t\tfrom: body.from ? {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.from.location),\n\t\t\t\t\t\tuserAddress: body.from.userAddress,\n\t\t\t\t\t\tasset: body.from.asset ? convertAssetSearchInputToCanonical(body.from.asset) : undefined\n\t\t\t\t\t} : undefined,\n\t\t\t\t\tto: body.to ? {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.to.location),\n\t\t\t\t\t\tuserAddress: body.to.userAddress,\n\t\t\t\t\t\tasset: body.to.asset ? convertAssetSearchInputToCanonical(body.to.asset) : undefined\n\t\t\t\t\t} : undefined\n\t\t\t\t});\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse\n\t\t});\n\n\t\tthis.logger?.debug(`list persistent transactions request successful, ${requestInformationJSON.transactions}`);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync shareKYCAttributes(request: KeetaAssetMovementAnchorShareKYCClientRequest): Promise<void> {\n\t\tthis.logger?.debug('Sharing KYC attributes');\n\n\t\tawait this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorShareKYCResponse,\n\t\t\tKeetaAssetMovementAnchorShareKYCClientRequest,\n\t\t\tKeetaAssetMovementAnchorShareKYCRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'shareKYC',\n\t\t\taccount: request.account,\n\t\t\tasync serializeRequest(body) {\n\t\t\t\tlet attributes;\n\t\t\t\tif (typeof body.attributes === 'string') {\n\t\t\t\t\tattributes = body.attributes;\n\t\t\t\t} else {\n\t\t\t\t\tattributes = await body.attributes.export({ format: 'string' });\n\t\t\t\t}\n\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account.assertAccount().publicKeyString.get(),\n\t\t\t\t\tattributes: attributes,\n\t\t\t\t\ttosAgreement: body.tosAgreement\n\t\t\t\t});\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorShareKYCResponse\n\t\t});\n\n\t\tthis.logger?.debug(`done sharing KYC attributes`);\n\n\t}\n}\n\nclass KeetaAssetMovementAnchorClient extends KeetaAssetMovementAnchorBase {\n\treadonly resolver: Resolver;\n\treadonly id: string;\n\t// eslint-disable-next-line no-unused-private-class-members\n\treadonly #signer: InstanceType<typeof KeetaNetLib.Account>;\n\t// eslint-disable-next-line no-unused-private-class-members\n\treadonly #account: InstanceType<typeof KeetaNetLib.Account>;\n\n\tconstructor(client: KeetaNetUserClient, config: KeetaAssetMovementClientConfig = {}) {\n\t\tsuper({ client, logger: config.logger });\n\t\tthis.resolver = config.resolver ?? getDefaultResolver(client, config);\n\t\tthis.id = config.id ?? crypto.randomUUID();\n\n\t\tif (config.signer) {\n\t\t\tthis.#signer = config.signer;\n\t\t} else if ('signer' in client && client.signer !== null) {\n\t\t\tthis.#signer = client.signer;\n\t\t} else if ('account' in client && client.account.hasPrivateKey) {\n\t\t\tthis.#signer = client.account;\n\t\t} else {\n\t\t\tthrow(new Error('KeetaAssetMovementAnchorClient requires a Signer or a UserClient with an associated Signer'));\n\t\t}\n\n\t\tif (config.account) {\n\t\t\tthis.#account = config.account;\n\t\t} else if ('account' in client) {\n\t\t\tthis.#account = client.account;\n\t\t} else {\n\t\t\tthrow(new Error('KeetaAssetMovementAnchorClient requires an Account or a UserClient with an associated Account'));\n\t\t}\n\t}\n\n\tasync #lookup(request: ProviderSearchInput, shared?: SharedLookupCriteria): Promise<KeetaAssetMovementAnchorProvider[] | null> {\n\t\tconst endpoints = await getEndpoints(this.resolver, request, shared, this.logger);\n\t\tif (endpoints === null) {\n\t\t\treturn(null);\n\t\t}\n\n\t\tconst providers = typedAssetMovementServiceEntries(endpoints).map(([id, serviceInfo]) => {\n\t\t\treturn(new KeetaAssetMovementAnchorProvider(serviceInfo, id, this));\n\t\t});\n\n\t\treturn(providers);\n\t}\n\n\tasync getProvidersForTransfer(request: ProviderSearchInput): Promise<KeetaAssetMovementAnchorProvider[] | null> {\n\t\treturn(await this.#lookup(request));\n\t}\n\n\tasync getProviderByID(providerID: string): Promise<KeetaAssetMovementAnchorProvider | null> {\n\t\tconst providers = await this.#lookup({}, { providerIDs: [providerID] });\n\t\treturn(providers?.[0] ?? null);\n\t}\n\n\t/** @internal */\n\t_internals(accessToken: symbol) {\n\t\tif (accessToken !== KeetaAssetMovementAnchorClientAccessToken) {\n\t\t\tthrow(new Error('invalid access token'));\n\t\t}\n\n\t\treturn({\n\t\t\tresolver: this.resolver,\n\t\t\tlogger: this.logger,\n\t\t\tclient: this.client\n\t\t});\n\t}\n}\n\nexport default KeetaAssetMovementAnchorClient;\n"]}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';\n\nimport { getDefaultResolver } from '../../config.js';\n\nimport type {\n\tUserClient as KeetaNetUserClient\n} from '@keetanetwork/keetanet-client';\nimport type {\n\tKeetaAssetMovementAnchorGetTransferStatusResponse,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tSupportedAssets,\n\tProviderSearchInput,\n\tKeetaAssetMovementAnchorlistTransactionsRequest,\n\tKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\tAssetTransferInstructions,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingClientRequest,\n\tKeetaAssetMovementAnchorInitiateTransferClientRequest,\n\tKeetaNetAccount,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequest,\n\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tKeetaAssetMovementAnchorlistTransactionsClientRequest,\n\tKeetaAssetMovementAnchorListForwardingAddressTemplateClientRequest,\n\tPersistentAddressTemplateData,\n\tKeetaAssetMovementAnchorGetTransferStatusClientRequest,\n\tKeetaAssetMovementAnchorShareKYCClientRequest,\n\tKeetaAssetMovementAnchorShareKYCRequest,\n\tKeetaAssetMovementAnchorShareKYCResponse\n} from './common.js';\nimport {\n\tassertKeetaSupportedAssets,\n\tconvertAssetLocationToString,\n\tconvertAssetOrPairSearchInputToCanonical,\n\tconvertAssetSearchInputToCanonical,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorGetTransferStatusRequestSigningData,\n\tgetKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\tgetKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\tgetKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tisKeetaAssetMovementAnchorGetExchangeStatusResponse,\n\tisKeetaAssetMovementAnchorInitiateTransferResponse,\n\tisKeetaAssetMovementAnchorListForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\tisKeetaAssetMovementAnchorShareKYCResponse\n} from './common.js';\nimport type { Logger } from '../../lib/log/index.ts';\nimport Resolver from \"../../lib/resolver.js\";\nimport type { ServiceMetadata, ServiceMetadataAuthenticationType, ServiceMetadataEndpoint, SharedLookupCriteria } from '../../lib/resolver.ts';\nimport crypto from '../../lib/utils/crypto.js';\nimport type { BrandedString } from '../../lib/utils/brand.js';\nimport { createAssertEquals } from 'typia';\nimport type { ExtractOk, HTTPSignedField } from '../../lib/http-server/common.js';\nimport { addSignatureToURL } from '../../lib/http-server/common.js';\nimport type { Signable } from '../../lib/utils/signing.js';\nimport { SignData } from '../../lib/utils/signing.js';\nimport { KeetaAnchorError } from '../../lib/error.js';\nimport { KeetaNet } from '../../client/index.js';\n\n// const PARANOID = true;\n\n/**\n * The configuration options for the Asset Movement (Inbound/Outbound) Anchor client.\n */\nexport type KeetaAssetMovementClientConfig = {\n\t/**\n\t * The ID of the client. This is used to identify the client in logs.\n\t * If not provided, a random ID will be generated.\n\t */\n\tid?: string;\n\t/**\n\t * The logger to use for logging messages. If not provided, no logging\n\t * will be done.\n\t */\n\tlogger?: Logger;\n\t/**\n\t * The resolver to use for resolving Asset Movement Anchor services. If not\n\t * provided, a default resolver will be created using the provided\n\t * client and network (if the network is also not provided and the\n\t * client is not a UserClient, an error occurs).\n\t */\n\tresolver?: Resolver;\n\t/**\n\t * The account to use for signing requests. If not provided, the\n\t * account associated with the provided client will be used. If there\n\t * is no account associated with the client, an error occurs.\n\t */\n\tsigner?: InstanceType<typeof KeetaNetLib.Account>;\n\t/**\n\t * Account to perform changes on. If not provided, the account\n\t * associated with the provided client will be used. If there is no\n\t * account associated with the client, an error occurs.\n\t */\n\taccount?: InstanceType<typeof KeetaNetLib.Account>;\n} & Omit<NonNullable<Parameters<typeof getDefaultResolver>[1]>, 'client'>;\n\n/**\n * An opaque type that represents a provider ID.\n */\ntype ProviderID = BrandedString<'AssetMovementProviderID'>;\n\n/**\n * An opaque type that represents an Asset Movement Anchor request ID\n */\n// type RequestID = BrandedString<'AssetMovementRequestID'>;\n\nconst KeetaAssetMovementAnchorClientAccessToken = Symbol('KeetaAssetMovementAnchorClientAccessToken');\n\nfunction typedAssetMovementServiceEntries<T extends object>(obj: T): [keyof T, T[keyof T]][] {\n\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\treturn(Object.entries(obj) as [keyof T, T[keyof T]][]);\n}\n\nconst assertServiceMetadataEndpoint = createAssertEquals<ServiceMetadataEndpoint>();\n\n/**\n * A list of operations that can be performed by the Asset Movement Anchor service.\n */\ntype KeetaAssetMovementAnchorOperations = {\n\t[operation in keyof NonNullable<ServiceMetadata['services']['assetMovement']>[string]['operations']]?: {\n\t\turl: (params?: { [key: string]: string; }) => URL;\n\t\toptions: {\n\t\t\tauthentication: ServiceMetadataAuthenticationType;\n\t\t};\n\t};\n};\n\n/**\n * The service information for a KYC Anchor service.\n */\ntype KeetaAssetMovementServiceInfo = {\n\toperations: {\n\t\t[operation in keyof KeetaAssetMovementAnchorOperations]: Promise<KeetaAssetMovementAnchorOperations[operation]>;\n\t};\n\n\tsupportedAssets: SupportedAssets[];\n};\n\n/**\n * For each matching KYC Anchor service, this type describes the\n * operations available and the country codes that the service supports.\n */\ntype GetEndpointsResult = {\n\t[id: ProviderID]: KeetaAssetMovementServiceInfo;\n};\n\nfunction validateURL(url: string | undefined): URL {\n\tif (url === undefined || url === null) {\n\t\tthrow(new Error('Invalid URL: null or undefined'));\n\t}\n\n\tconst parsedURL = new URL(url);\n\n\treturn(parsedURL);\n}\n\nasync function getEndpoints(resolver: Resolver, request: ProviderSearchInput, shared?: SharedLookupCriteria, logger?: Logger): Promise<GetEndpointsResult | null> {\n\tconst asset = request.asset ? { asset: convertAssetOrPairSearchInputToCanonical(request.asset) } : undefined;\n\tconst from = request.from ? { from: convertAssetLocationToString(request.from) } : {};\n\tconst to = request.to ? { to: convertAssetLocationToString(request.to) } : {};\n\tconst rail = request.rail ? { rail: request.rail } : {};\n\tconst response = await resolver.lookup('assetMovement', {\n\t\t...asset,\n\t\t...from,\n\t\t...to,\n\t\t...rail\n\t}, shared);\n\n\tif (response === undefined) {\n\t\treturn(null);\n\t}\n\n\tconst serviceInfoPromises = Object.entries(response).map(async function([id, serviceInfo]): Promise<[ProviderID, KeetaAssetMovementServiceInfo]> {\n\t\tconst supportedAssetsMetadata = await Resolver.Metadata.fullyResolveValuizable(serviceInfo.supportedAssets);\n\t\tconst supportedAssets = assertKeetaSupportedAssets(supportedAssetsMetadata);\n\n\t\tconst operations = await serviceInfo.operations('object');\n\t\tconst operationsFunctions: KeetaAssetMovementServiceInfo['operations'] = {};\n\t\tfor (const [ key, operation ] of Object.entries(operations)) {\n\t\t\tif (operation === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tObject.defineProperty(operationsFunctions, key, {\n\t\t\t\tget: async function() {\n\t\t\t\t\tconst endpointInfo = assertServiceMetadataEndpoint(await Resolver.Metadata.fullyResolveValuizable(operation));\n\n\t\t\t\t\tlet url;\n\t\t\t\t\tlet authentication: ServiceMetadataAuthenticationType = {\n\t\t\t\t\t\ttype: 'none',\n\t\t\t\t\t\tmethod: 'keeta-account'\n\t\t\t\t\t};\n\n\t\t\t\t\tif (typeof endpointInfo === 'string') {\n\t\t\t\t\t\turl = endpointInfo;\n\t\t\t\t\t} else {\n\t\t\t\t\t\turl = endpointInfo.url;\n\t\t\t\t\t\tif (endpointInfo.options?.authentication) {\n\t\t\t\t\t\t\tauthentication = endpointInfo.options.authentication;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn({\n\t\t\t\t\t\turl: function(params?: { [key: string]: string; }): URL {\n\t\t\t\t\t\t\tlet substitutedURL;\n\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tsubstitutedURL = decodeURI(url)\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\tlogger?.debug('getEndpoints', 'Failed to decode URI, using original URL for substitution', error, url);\n\n\t\t\t\t\t\t\t\tsubstitutedURL = url;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfor (const [paramKey, paramValue] of Object.entries(params ?? {})) {\n\t\t\t\t\t\t\t\tsubstitutedURL = substitutedURL.replace(`{${paramKey}}`, encodeURIComponent(paramValue));\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn(validateURL(substitutedURL));\n\t\t\t\t\t\t},\n\t\t\t\t\t\toptions: { authentication }\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\t\t}\n\n\t\treturn([\n\t\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\t\tid as unknown as ProviderID,\n\t\t\t{\n\t\t\t\toperations: operationsFunctions,\n\t\t\t\tsupportedAssets: supportedAssets\n\t\t\t}\n\t\t]);\n\t});\n\n\tconst retval = Object.fromEntries(await Promise.all(serviceInfoPromises));\n\n\treturn(retval);\n}\n\ninterface KeetaAssetMovementAnchorBaseConfig {\n\tclient: KeetaNetUserClient;\n\tlogger?: Logger | undefined;\n}\n\nclass KeetaAssetMovementAnchorBase {\n\tprotected readonly logger?: Logger | undefined;\n\tprotected readonly client: KeetaNetUserClient;\n\n\tconstructor(config: KeetaAssetMovementAnchorBaseConfig) {\n\t\tthis.client = config.client;\n\t\tthis.logger = config.logger;\n\t}\n}\n\n/**\n * Represents an in-progress Asset Movement request.\n */\nclass KeetaAssetMovementTransfer {\n\tprivate readonly provider: KeetaAssetMovementAnchorProvider;\n\tprivate request: KeetaAssetMovementAnchorInitiateTransferClientRequest;\n\tprivate transfer: { id: string, instructionChoices: AssetTransferInstructions[] }\n\n\tconstructor(provider: KeetaAssetMovementAnchorProvider, request: KeetaAssetMovementAnchorInitiateTransferClientRequest, transfer: { id: string, instructionChoices: AssetTransferInstructions[] }) {\n\t\tthis.provider = provider;\n\t\tthis.request = request;\n\t\tthis.transfer = transfer;\n\t}\n\n\tasync getTransferStatus(): Promise<ExtractOk<KeetaAssetMovementAnchorGetTransferStatusResponse>> {\n\t\tconst account = this.request.account ? { account: this.request.account } : undefined;\n\t\treturn(await this.provider.getTransferStatus({ id: this.transfer.id, ...account }));\n\t}\n\n\tget transferId(): string {\n\t\treturn(this.transfer.id);\n\t}\n\n\tget instructions(): AssetTransferInstructions[] {\n\t\treturn(this.transfer.instructionChoices);\n\t}\n}\n\n\ninterface AwaitPromiseURLOptions {\n\tdefaultPollIntervalMs?: number;\n\ttimeoutMs?: number;\n\tabortSignal?: AbortSignal;\n}\n\nclass KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {\n\treadonly serviceInfo: KeetaAssetMovementServiceInfo;\n\treadonly providerID: ProviderID;\n\tprivate readonly parent: KeetaAssetMovementAnchorClient;\n\n\tconstructor(serviceInfo: KeetaAssetMovementServiceInfo, providerID: ProviderID, parent: KeetaAssetMovementAnchorClient) {\n\t\tconst parentPrivate = parent._internals(KeetaAssetMovementAnchorClientAccessToken);\n\t\tsuper(parentPrivate);\n\n\t\tthis.serviceInfo = serviceInfo;\n\t\tthis.providerID = providerID;\n\t\tthis.parent = parent;\n\t}\n\n\tasync #getOperationData(operationName: keyof KeetaAssetMovementAnchorOperations, params?: { [key: string]: string; }) {\n\t\tconst endpoint = await this.serviceInfo.operations[operationName];\n\t\tif (endpoint === undefined) {\n\t\t\tthrow(new Error(`Asset Movement service does not support ${operationName} operation`));\n\t\t}\n\n\t\tif (endpoint.options.authentication.method !== 'keeta-account') {\n\t\t\tthrow(new Error(`Unsupported authentication method: ${endpoint.options.authentication.method}`));\n\t\t}\n\n\t\treturn({\n\t\t\turl: endpoint.url(params),\n\t\t\tauth: endpoint.options.authentication\n\t\t})\n\t}\n\n\tasync #parseResponseError(data: unknown) {\n\t\tif (typeof data !== 'object' || data === null) {\n\t\t\tthrow(new Error('Response is not an error'));\n\t\t}\n\n\t\tif (!('ok' in data) || data.ok !== false) {\n\t\t\tthrow(new Error('Response is not an error'));\n\t\t}\n\n\t\tlet errorStr;\n\n\t\tlet parsedError: KeetaAnchorError | null = null;\n\t\ttry {\n\t\t\tparsedError = await KeetaAnchorError.fromJSON(data);\n\t\t} catch (error: unknown) {\n\t\t\tthis.logger?.debug('Failed to parse error response as KeetaAnchorError', error, data);\n\t\t}\n\n\t\tif (parsedError) {\n\t\t\treturn(parsedError);\n\t\t} else {\n\t\t\tif ('error' in data && typeof data.error === 'string') {\n\t\t\t\terrorStr = data.error;\n\t\t\t} else {\n\t\t\t\terrorStr = 'Unknown error';\n\t\t\t}\n\n\t\t\treturn(new Error(`asset movement request failed: ${errorStr}`));\n\t\t}\n\t}\n\n\tasync #makeRequest<\n\t\tResponse extends { ok: true } | { ok: false; error: string; },\n\t\tRequest = undefined,\n\t\tSerializedRequest = Request\n\t>(input: {\n\t\tmethod: 'GET' | 'POST';\n\t\tendpoint: keyof KeetaAssetMovementAnchorOperations;\n\t\taccount?: KeetaNetAccount | undefined;\n\t\tparams?: { [key: string]: string; } | undefined;\n\t\tbody?: Request | undefined;\n\t\tserializeRequest?: (body: Request) => (SerializedRequest | Promise<Omit<SerializedRequest, 'signed'>>);\n\n\t\tgetSignedData?: (request: SerializedRequest) => Signable;\n\t\tisResponse: (data: unknown) => data is Response;\n\t}): Promise<Extract<Response, { ok: true }>> {\n\t\tconst { url, auth } = await this.#getOperationData(input.endpoint, input.params);\n\n\t\tlet serializedRequest;\n\n\t\tif (input.body && input.serializeRequest) {\n\t\t\tserializedRequest = await input.serializeRequest(input.body);\n\t\t} else {\n\t\t\tserializedRequest = input.body;\n\t\t}\n\n\t\tlet signed: HTTPSignedField | undefined;\n\n\t\tif (auth.type === 'required' || (auth.type === 'optional' && input.account)) {\n\t\t\tif (!input.account) {\n\t\t\t\tthrow(new Error('Account information is required for this operation'));\n\t\t\t}\n\n\t\t\tif (!input.getSignedData) {\n\t\t\t\tthrow(new Error('getSignedData function is required for signing the request'));\n\t\t\t}\n\n\t\t\t// We need this assertion because TypeScript cannot infer that the type is correct here, it is correct in the arguments.\n\t\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\t\tconst signable = input.getSignedData(serializedRequest as SerializedRequest);\n\n\t\t\tsigned = await SignData(input.account.assertAccount(), signable);\n\t\t}\n\n\t\tlet usingUrl = url;\n\t\tconst headers: { [key: string]: string } = {\n\t\t\t'Accept': 'application/json'\n\t\t};\n\t\tlet body: BodyInit | null = null;\n\t\tif (input.method === 'POST') {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t\tbody = JSON.stringify({ ...serializedRequest, signed });\n\t\t} else {\n\t\t\tif (signed) {\n\t\t\t\tif (!input.account) {\n\t\t\t\t\tthrow(new Error('invariant: Account information is required for this operation, which should exist at this point'));\n\t\t\t\t}\n\n\t\t\t\tusingUrl = addSignatureToURL(usingUrl, { signedField: signed, account: input.account.assertAccount() });\n\t\t\t}\n\n\t\t\tif (input.body) {\n\t\t\t\tthrow(new Error('Body cannot be sent with GET requests'));\n\t\t\t}\n\t\t}\n\n\t\tconst requestInformation = await fetch(usingUrl, {\n\t\t\tmethod: input.method, headers, body\n\t\t});\n\n\t\tconst requestInformationJSON: unknown = await requestInformation.json();\n\t\tif (!input.isResponse(requestInformationJSON)) {\n\t\t\tthrow(new Error(`Invalid response from asset movement service: ${JSON.stringify(requestInformationJSON)}`));\n\t\t}\n\n\t\tif (!requestInformationJSON.ok) {\n\t\t\tthrow(await this.#parseResponseError(requestInformationJSON));\n\t\t}\n\n\t\t// We need this assertion because TypeScript cannot infer that the type is correct here, it is correct because we checked it above.\n\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\treturn(requestInformationJSON as Extract<Response, { ok: true }>);\n\t}\n\n\tasync initiateTransfer(request: KeetaAssetMovementAnchorInitiateTransferClientRequest): Promise<KeetaAssetMovementTransfer> {\n\t\tthis.logger?.debug(`Starting Asset Movement Transfer for provider ID: ${String(this.providerID)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'initiateTransfer',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\t...body,\n\t\t\t\t\tvalue: String(body.value),\n\t\t\t\t\tfrom: {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.from.location)\n\t\t\t\t\t},\n\t\t\t\t\tto: {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.to.location),\n\t\t\t\t\t\trecipient: body.to.recipient\n\t\t\t\t\t},\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t})\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorInitiateTransferResponse\n\t\t});\n\n\t\tthis.logger?.debug(`asset movement request successful, request ID ${requestInformationJSON.id}`);\n\n\t\tconst anchorTransfer = new KeetaAssetMovementTransfer(this, request, { id: requestInformationJSON.id, instructionChoices: requestInformationJSON.instructionChoices });\n\t\treturn(anchorTransfer);\n\t}\n\n\tasync getTransferStatus(request: KeetaAssetMovementAnchorGetTransferStatusClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorGetTransferStatusResponse>> {\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'GET',\n\t\t\tendpoint: 'getTransferStatus',\n\t\t\taccount: request.account,\n\t\t\tparams: { id: request.id },\n\t\t\tgetSignedData: () => getKeetaAssetMovementAnchorGetTransferStatusRequestSigningData(request),\n\t\t\tisResponse: isKeetaAssetMovementAnchorGetExchangeStatusResponse\n\t\t});\n\n\t\tthis.logger?.debug(`asset movement request successful, request ID ${request.id}`);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync createPersistentForwardingTemplate(request: KeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorCreatePersistentForwardingResponse>> {\n\t\tthis.logger?.debug(`Creating persistent forwarding for provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateClientRequest,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'createPersistentForwardingTemplate',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\t...body,\n\t\t\t\t\tlocation: convertAssetLocationToString(body.location),\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t})\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse\n\t\t});\n\n\t\tthis.logger?.debug(`create persistent forwarding request successful`, requestInformationJSON.address);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync createPersistentForwardingAddress(request: KeetaAssetMovementAnchorCreatePersistentForwardingClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorCreatePersistentForwardingResponse>> {\n\t\tthis.logger?.debug(`Creating persistent forwarding for provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingClientRequest,\n\t\t\tKeetaAssetMovementAnchorCreatePersistentForwardingRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'createPersistentForwarding',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\tconst base = {\n\t\t\t\t\tsourceLocation: convertAssetLocationToString(body.sourceLocation),\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get()\n\t\t\t\t} as const;\n\n\t\t\t\tif ('persistentAddressTemplateId' in body) {\n\t\t\t\t\treturn({\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tpersistentAddressTemplateId: body.persistentAddressTemplateId\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturn({\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tdestinationAddress: body.destinationAddress,\n\t\t\t\t\t\tdestinationLocation: convertAssetLocationToString(body.destinationLocation)\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorCreatePersistentForwardingResponse\n\t\t});\n\n\t\tthis.logger?.debug(`create persistent forwarding request successful`, requestInformationJSON.address);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync listForwardingAddressTemplates(request: KeetaAssetMovementAnchorListForwardingAddressTemplateClientRequest): Promise<PersistentAddressTemplateData[]> {\n\t\tthis.logger?.debug(`Listing persistent forwarding address templates for provider ID: ${String(this.providerID)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'listPersistentForwardingTemplate',\n\t\t\taccount: request.account,\n\t\t\tbody: request,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tasset: body.asset?.map(a => convertAssetSearchInputToCanonical(a)),\n\t\t\t\t\tlocation: body.location?.map(l => convertAssetLocationToString(l))\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorListForwardingAddressTemplateResponse\n\t\t});\n\n\t\tthis.logger?.debug(`list persistent forwarding address templates request successful`, requestInformationJSON.templates);\n\n\t\treturn(requestInformationJSON.templates);\n\t}\n\n\tasync listTransactions(request: KeetaAssetMovementAnchorlistTransactionsClientRequest): Promise<ExtractOk<KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse>> {\n\t\tthis.logger?.debug(`List persistent forwarding transactions provider ID: ${String(this.providerID)}, request: ${JSON.stringify(request)}`);\n\n\t\tconst requestInformationJSON = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse,\n\t\t\tKeetaAssetMovementAnchorlistTransactionsClientRequest,\n\t\t\tKeetaAssetMovementAnchorlistTransactionsRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'listTransactions',\n\t\t\taccount: request.account,\n\t\t\tserializeRequest(body) {\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tpagination: body.pagination,\n\t\t\t\t\tpersistentAddresses: body.persistentAddresses?.map(pa => ({\n\t\t\t\t\t\tlocation: convertAssetLocationToString(pa.location),\n\t\t\t\t\t\t...('persistentAddressTemplate' in pa ?\n\t\t\t\t\t\t\t{ persistentAddressTemplate: pa.persistentAddressTemplate } :\n\t\t\t\t\t\t\t{ persistentAddress: pa.persistentAddress }\n\t\t\t\t\t\t)\n\t\t\t\t\t})),\n\t\t\t\t\tfrom: body.from ? {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.from.location),\n\t\t\t\t\t\tuserAddress: body.from.userAddress,\n\t\t\t\t\t\tasset: body.from.asset ? convertAssetSearchInputToCanonical(body.from.asset) : undefined\n\t\t\t\t\t} : undefined,\n\t\t\t\t\tto: body.to ? {\n\t\t\t\t\t\tlocation: convertAssetLocationToString(body.to.location),\n\t\t\t\t\t\tuserAddress: body.to.userAddress,\n\t\t\t\t\t\tasset: body.to.asset ? convertAssetSearchInputToCanonical(body.to.asset) : undefined\n\t\t\t\t\t} : undefined\n\t\t\t\t});\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse\n\t\t});\n\n\t\tthis.logger?.debug(`list persistent transactions request successful, ${requestInformationJSON.transactions}`);\n\n\t\treturn(requestInformationJSON);\n\t}\n\n\tasync #awaitPromiseURL(promiseURL: string, options?: AwaitPromiseURLOptions): Promise<void> {\n\t\tconst startTime = Date.now();\n\n\t\tconst timeout = options?.timeoutMs ?? (5 * 60 * 1000);\n\n\t\twhile (true) {\n\t\t\tif (options?.abortSignal?.aborted) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tlet response;\n\n\t\t\ttry {\n\t\t\t\tresponse = await fetch(promiseURL);\n\t\t\t} catch (error) {\n\t\t\t\tthis.logger?.debug('KeetaAssetMovementAnchorProvider::awaitPromiseURL', 'Error fetching promise URL', error);\n\t\t\t\tthrow(new Error(`Error fetching promise URL: ${String(error)}`));\n\t\t\t}\n\n\t\t\tif (response.status === 200) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (response.status !== 202) {\n\t\t\t\tlet errorData: unknown;\n\t\t\t\ttry {\n\t\t\t\t\terrorData = await response.json();\n\t\t\t\t} catch {\n\t\t\t\t\tthrow(new Error(`Error parsing error response json from promise, status code ${response.status}`));\n\t\t\t\t}\n\t\t\t\tthrow(await this.#parseResponseError(errorData));\n\t\t\t}\n\n\t\t\tif (Date.now() - startTime > timeout) {\n\t\t\t\tthrow(new Error('Timeout waiting for promise URL to complete'));\n\t\t\t}\n\n\t\t\tlet retryAfterMS: number | undefined;\n\t\t\tconst retryAfterHeader = response.headers.get('Retry-After');\n\t\t\tif (retryAfterHeader) {\n\n\t\t\t\tif (!isNaN(Number(retryAfterHeader))) {\n\t\t\t\t\tretryAfterMS = Number(retryAfterHeader) * 1000;\n\t\t\t\t} else {\n\t\t\t\t\tconst retryAfterDate = new Date(retryAfterHeader);\n\t\t\t\t\tif (!isNaN(retryAfterDate.getTime())) {\n\t\t\t\t\t\tretryAfterMS = retryAfterDate.getTime() - Date.now();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!retryAfterMS) {\n\t\t\t\tretryAfterMS = options?.defaultPollIntervalMs ?? 1000;\n\t\t\t}\n\n\t\t\tawait KeetaNet.lib.Utils.Helper.asleep(retryAfterMS);\n\t\t}\n\t}\n\n\tasync shareKYCAttributes(request: KeetaAssetMovementAnchorShareKYCClientRequest, awaitOptions?: AwaitPromiseURLOptions): Promise<void> {\n\t\tthis.logger?.debug('Sharing KYC attributes');\n\n\t\tconst response = await this.#makeRequest<\n\t\t\tKeetaAssetMovementAnchorShareKYCResponse,\n\t\t\tKeetaAssetMovementAnchorShareKYCClientRequest,\n\t\t\tKeetaAssetMovementAnchorShareKYCRequest\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\tendpoint: 'shareKYC',\n\t\t\taccount: request.account,\n\t\t\tasync serializeRequest(body) {\n\t\t\t\tlet attributes;\n\t\t\t\tif (typeof body.attributes === 'string') {\n\t\t\t\t\tattributes = body.attributes;\n\t\t\t\t} else {\n\t\t\t\t\tattributes = await body.attributes.export({ format: 'string' });\n\t\t\t\t}\n\n\t\t\t\treturn({\n\t\t\t\t\taccount: body.account.assertAccount().publicKeyString.get(),\n\t\t\t\t\tattributes: attributes,\n\t\t\t\t\ttosAgreement: body.tosAgreement\n\t\t\t\t});\n\t\t\t},\n\t\t\tbody: request,\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorShareKYCResponse\n\t\t});\n\n\t\tif (response.isPending && response.promiseURL) {\n\t\t\tthis.logger?.debug('KYC attribute sharing is pending, awaiting promise URL');\n\n\t\t\tlet promiseURL;\n\n\t\t\tif (response.promiseURL.startsWith('/')) {\n\t\t\t\tconst operationData = await this.#getOperationData('shareKYC');\n\t\t\t\tpromiseURL = new URL(response.promiseURL, operationData.url).toString();\n\t\t\t} else {\n\t\t\t\tpromiseURL = response.promiseURL;\n\t\t\t}\n\n\t\t\tawait this.#awaitPromiseURL(promiseURL, { ...awaitOptions });\n\t\t}\n\n\t\tthis.logger?.debug(`done sharing KYC attributes`);\n\t}\n}\n\nclass KeetaAssetMovementAnchorClient extends KeetaAssetMovementAnchorBase {\n\treadonly resolver: Resolver;\n\treadonly id: string;\n\t// eslint-disable-next-line no-unused-private-class-members\n\treadonly #signer: InstanceType<typeof KeetaNetLib.Account>;\n\t// eslint-disable-next-line no-unused-private-class-members\n\treadonly #account: InstanceType<typeof KeetaNetLib.Account>;\n\n\tconstructor(client: KeetaNetUserClient, config: KeetaAssetMovementClientConfig = {}) {\n\t\tsuper({ client, logger: config.logger });\n\t\tthis.resolver = config.resolver ?? getDefaultResolver(client, config);\n\t\tthis.id = config.id ?? crypto.randomUUID();\n\n\t\tif (config.signer) {\n\t\t\tthis.#signer = config.signer;\n\t\t} else if ('signer' in client && client.signer !== null) {\n\t\t\tthis.#signer = client.signer;\n\t\t} else if ('account' in client && client.account.hasPrivateKey) {\n\t\t\tthis.#signer = client.account;\n\t\t} else {\n\t\t\tthrow(new Error('KeetaAssetMovementAnchorClient requires a Signer or a UserClient with an associated Signer'));\n\t\t}\n\n\t\tif (config.account) {\n\t\t\tthis.#account = config.account;\n\t\t} else if ('account' in client) {\n\t\t\tthis.#account = client.account;\n\t\t} else {\n\t\t\tthrow(new Error('KeetaAssetMovementAnchorClient requires an Account or a UserClient with an associated Account'));\n\t\t}\n\t}\n\n\tasync #lookup(request: ProviderSearchInput, shared?: SharedLookupCriteria): Promise<KeetaAssetMovementAnchorProvider[] | null> {\n\t\tconst endpoints = await getEndpoints(this.resolver, request, shared, this.logger);\n\t\tif (endpoints === null) {\n\t\t\treturn(null);\n\t\t}\n\n\t\tconst providers = typedAssetMovementServiceEntries(endpoints).map(([id, serviceInfo]) => {\n\t\t\treturn(new KeetaAssetMovementAnchorProvider(serviceInfo, id, this));\n\t\t});\n\n\t\treturn(providers);\n\t}\n\n\tasync getProvidersForTransfer(request: ProviderSearchInput): Promise<KeetaAssetMovementAnchorProvider[] | null> {\n\t\treturn(await this.#lookup(request));\n\t}\n\n\tasync getProviderByID(providerID: string): Promise<KeetaAssetMovementAnchorProvider | null> {\n\t\tconst providers = await this.#lookup({}, { providerIDs: [providerID] });\n\t\treturn(providers?.[0] ?? null);\n\t}\n\n\t/** @internal */\n\t_internals(accessToken: symbol) {\n\t\tif (accessToken !== KeetaAssetMovementAnchorClientAccessToken) {\n\t\t\tthrow(new Error('invalid access token'));\n\t\t}\n\n\t\treturn({\n\t\t\tresolver: this.resolver,\n\t\t\tlogger: this.logger,\n\t\t\tclient: this.client\n\t\t});\n\t}\n}\n\nexport default KeetaAssetMovementAnchorClient;\n"]}
|
|
@@ -550,9 +550,14 @@ export type KeetaAssetMovementAnchorShareKYCRequest = ConvertToExternalRequest<K
|
|
|
550
550
|
signed: HTTPSignedField;
|
|
551
551
|
}>;
|
|
552
552
|
export declare function getKeetaAssetMovementAnchorShareKYCRequestSigningData(_ignore_input: KeetaAssetMovementAnchorShareKYCClientRequest | KeetaAssetMovementAnchorShareKYCRequest): Signable;
|
|
553
|
-
export type KeetaAssetMovementAnchorShareKYCResponse = ({
|
|
553
|
+
export type KeetaAssetMovementAnchorShareKYCResponse = (({
|
|
554
554
|
ok: true;
|
|
555
|
+
} & ({
|
|
556
|
+
isPending?: false;
|
|
555
557
|
} | {
|
|
558
|
+
isPending: true;
|
|
559
|
+
promiseURL?: string;
|
|
560
|
+
})) | {
|
|
556
561
|
ok: false;
|
|
557
562
|
error: string;
|
|
558
563
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/common.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/common.ts"],"names":[],"mappings":"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"}
|