@keetanetwork/anchor 0.0.49 → 0.0.50
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/resolver.js +33 -33
- package/npm-shrinkwrap.json +8 -8
- package/package.json +2 -2
- package/services/asset-movement/client.d.ts.map +1 -1
- package/services/asset-movement/client.js +8 -6
- package/services/asset-movement/client.js.map +1 -1
- package/services/asset-movement/common.d.ts +9 -5
- package/services/asset-movement/common.d.ts.map +1 -1
- package/services/asset-movement/common.js +18113 -9853
- package/services/asset-movement/common.js.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/bcr-pay.d.ts +4 -0
- package/services/asset-movement/lib/data/addresses/bank-account/bcr-pay.d.ts.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/bcr-pay.js +36 -0
- package/services/asset-movement/lib/data/addresses/bank-account/bcr-pay.js.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/duit-now.d.ts +4 -0
- package/services/asset-movement/lib/data/addresses/bank-account/duit-now.d.ts.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/duit-now.js +35 -0
- package/services/asset-movement/lib/data/addresses/bank-account/duit-now.js.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/hk-fps.d.ts +4 -0
- package/services/asset-movement/lib/data/addresses/bank-account/hk-fps.d.ts.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/hk-fps.js +36 -0
- package/services/asset-movement/lib/data/addresses/bank-account/hk-fps.js.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/index.generated.d.ts +10 -0
- package/services/asset-movement/lib/data/addresses/bank-account/index.generated.d.ts.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/index.generated.js +10 -0
- package/services/asset-movement/lib/data/addresses/bank-account/index.generated.js.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/pay-now.d.ts +4 -0
- package/services/asset-movement/lib/data/addresses/bank-account/pay-now.d.ts.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/pay-now.js +36 -0
- package/services/asset-movement/lib/data/addresses/bank-account/pay-now.js.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/pix.d.ts.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/pix.js +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/pix.js.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/upi.d.ts +4 -0
- package/services/asset-movement/lib/data/addresses/bank-account/upi.d.ts.map +1 -0
- package/services/asset-movement/lib/data/addresses/bank-account/upi.js +37 -0
- package/services/asset-movement/lib/data/addresses/bank-account/upi.js.map +1 -0
- package/services/asset-movement/lib/data/addresses/types.generated.d.ts +458 -2
- package/services/asset-movement/lib/data/addresses/types.generated.d.ts.map +1 -1
- package/services/asset-movement/lib/data/addresses/types.generated.js +508 -0
- package/services/asset-movement/lib/data/addresses/types.generated.js.map +1 -1
- package/services/asset-movement/lib/location.generated.js +3 -3
- package/services/fx/common.js +16 -16
- package/services/fx/server.js +8 -8
- package/services/notification/common.generated.js +34 -34
- package/services/storage/clients/contacts.generated.js +1216 -406
- package/services/storage/clients/contacts.generated.js.map +1 -1
- package/services/username/common.generated.js +23 -23
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keetanetwork/anchor",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.50",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@keetanetwork/anchor",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.50",
|
|
10
10
|
"license": "SEE LICENSE IN LICENSE",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@keetanetwork/currency-info": "1.2.5",
|
|
13
|
-
"@keetanetwork/keetanet-client": "0.16.
|
|
13
|
+
"@keetanetwork/keetanet-client": "0.16.1",
|
|
14
14
|
"typia": "9.5.0"
|
|
15
15
|
},
|
|
16
16
|
"engines": {
|
|
@@ -171,8 +171,8 @@
|
|
|
171
171
|
}
|
|
172
172
|
},
|
|
173
173
|
"node_modules/@keetanetwork/asn1-napi-rs": {
|
|
174
|
-
"version": "1.2.
|
|
175
|
-
"integrity": "sha512-
|
|
174
|
+
"version": "1.2.2",
|
|
175
|
+
"integrity": "sha512-kwxPBWHJv/VYKYpElhwWTbAlxAxFIQzyJmDxOEApKtqf2r4Lpiuq2RXd2lDkojGPLYVZfXrGTalm4e0b4DaYzA==",
|
|
176
176
|
"license": "SEE LICENSE IN LICENSE",
|
|
177
177
|
"optional": true,
|
|
178
178
|
"engines": {
|
|
@@ -185,15 +185,15 @@
|
|
|
185
185
|
"license": "ISC"
|
|
186
186
|
},
|
|
187
187
|
"node_modules/@keetanetwork/keetanet-client": {
|
|
188
|
-
"version": "0.16.
|
|
189
|
-
"integrity": "sha512-
|
|
188
|
+
"version": "0.16.1",
|
|
189
|
+
"integrity": "sha512-SS31ZlQvz/qvcZf039K3COjSje3FiQOPBbhB0xAfn2Mwrc+QSqvM/FEi/3uWZdEWqeu4+cziUi1vMRReBUMGwA==",
|
|
190
190
|
"license": "see LICENSE",
|
|
191
191
|
"dependencies": {
|
|
192
192
|
"secp256k1": "5.0.1"
|
|
193
193
|
},
|
|
194
194
|
"optionalDependencies": {
|
|
195
195
|
"@google-cloud/logging": "11.2.0",
|
|
196
|
-
"@keetanetwork/asn1-napi-rs": "1.2.
|
|
196
|
+
"@keetanetwork/asn1-napi-rs": "1.2.2"
|
|
197
197
|
}
|
|
198
198
|
},
|
|
199
199
|
"node_modules/@opentelemetry/api": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keetanetwork/anchor",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.50",
|
|
4
4
|
"description": "KeetaNetwork Network Anchor",
|
|
5
5
|
"main": "client/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"sideEffects": false,
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@keetanetwork/currency-info": "1.2.5",
|
|
27
|
-
"@keetanetwork/keetanet-client": "0.16.
|
|
27
|
+
"@keetanetwork/keetanet-client": "0.16.1",
|
|
28
28
|
"typia": "9.5.0"
|
|
29
29
|
},
|
|
30
30
|
"engines": {
|
|
@@ -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,uBAAuB,EACvB,mBAAmB,EAEnB,oEAAoE,EACpE,yBAAyB,EACzB,+DAA+D,EAC/D,qDAAqD,EAErD,8EAA8E,EAG9E,qDAAqD,EACrD,kEAAkE,EAClE,6BAA6B,EAC7B,sDAAsD,EACtD,6CAA6C,EAG7C,6DAA6D,EAC7D,uCAAuC,EACvC,gDAAgD,EAChD,MAAM,aAAa,CAAC;AAuBrB,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;AASlF;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC5C;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;IAClD;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;CACnD,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AAE1E;;GAEG;AACH,KAAK,UAAU,GAAG,aAAa,CAAC,yBAAyB,CAAC,CAAC;AAgB3D;;GAEG;AACH,KAAK,kCAAkC,GAAG;KACxC,SAAS,IAAI,MAAM,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;QACtG,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;SAAE,KAAK,GAAG,CAAC;QAClD,OAAO,EAAE;YACR,cAAc,EAAE,iCAAiC,CAAC;SAClD,CAAC;KACF;CACD,CAAC;AAEF;;GAEG;AACH,KAAK,6BAA6B,GAAG;IACpC,UAAU,EAAE;SACV,SAAS,IAAI,MAAM,kCAAkC,GAAG,OAAO,CAAC,kCAAkC,CAAC,SAAS,CAAC,CAAC;KAC/G,CAAC;IAEF,eAAe,EAAE,uBAAuB,EAAE,CAAC;CAC3C,CAAC;AA2GF,UAAU,kCAAkC;IAC3C,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,cAAM,4BAA4B;IACjC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;gBAElC,MAAM,EAAE,kCAAkC;CAItD;AAED;;GAEG;AACH,cAAM,0BAA0B;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,OAAO,CAAwD;IACvE,OAAO,CAAC,QAAQ,CAA8D;gBAElE,QAAQ,EAAE,gCAAgC,EAAE,OAAO,EAAE,qDAAqD,EAAE,QAAQ,EAAE,SAAS,CAAC,gDAAgD,CAAC;IAMvL,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,iDAAiD,CAAC,CAAC;IAKhG,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,YAAY,IAAI,yBAAyB,EAAE,CAE9C;CACD;AAGD,UAAU,sBAAsB;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,cAAM,gCAAiC,SAAQ,4BAA4B;;IAC1E,QAAQ,CAAC,WAAW,EAAE,6BAA6B,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAE5C,WAAW,EAAE,6BAA6B,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,8BAA8B;IA2IhH,gBAAgB,CAAC,OAAO,EAAE,qDAAqD,GAAG,OAAO,CAAC,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -364,8 +364,9 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
364
364
|
endpoint: 'initiateTransfer',
|
|
365
365
|
account: request.account,
|
|
366
366
|
serializeRequest(body) {
|
|
367
|
+
const { account, ...rest } = body;
|
|
367
368
|
return ({
|
|
368
|
-
...
|
|
369
|
+
...rest,
|
|
369
370
|
value: String(body.value),
|
|
370
371
|
from: {
|
|
371
372
|
location: convertAssetLocationToString(body.from.location)
|
|
@@ -375,7 +376,7 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
375
376
|
recipient: body.to.recipient
|
|
376
377
|
},
|
|
377
378
|
asset: convertAssetOrPairSearchInputToCanonical(body.asset),
|
|
378
|
-
account:
|
|
379
|
+
...(account ? { account: account.assertAccount().publicKeyString.get() } : {})
|
|
379
380
|
});
|
|
380
381
|
},
|
|
381
382
|
body: request,
|
|
@@ -404,11 +405,12 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
404
405
|
endpoint: 'createPersistentForwardingTemplate',
|
|
405
406
|
account: request.account,
|
|
406
407
|
serializeRequest(body) {
|
|
408
|
+
const { account, ...rest } = body;
|
|
407
409
|
return ({
|
|
408
|
-
...
|
|
410
|
+
...rest,
|
|
409
411
|
location: convertAssetLocationToString(body.location),
|
|
410
412
|
asset: convertAssetOrPairSearchInputToCanonical(body.asset),
|
|
411
|
-
account:
|
|
413
|
+
...(account ? { account: account.assertAccount().publicKeyString.get() } : {})
|
|
412
414
|
});
|
|
413
415
|
},
|
|
414
416
|
body: request,
|
|
@@ -460,7 +462,7 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
460
462
|
body: request,
|
|
461
463
|
serializeRequest(body) {
|
|
462
464
|
return ({
|
|
463
|
-
account: body.account
|
|
465
|
+
...(body.account ? { account: body.account.assertAccount().publicKeyString.get() } : {}),
|
|
464
466
|
asset: body.asset?.map(a => convertAssetSearchInputToCanonical(a)),
|
|
465
467
|
location: body.location?.map(l => convertAssetLocationToString(l))
|
|
466
468
|
});
|
|
@@ -606,7 +608,7 @@ class KeetaAssetMovementAnchorProvider extends KeetaAssetMovementAnchorBase {
|
|
|
606
608
|
return ({
|
|
607
609
|
account: body.account.assertAccount().publicKeyString.get(),
|
|
608
610
|
attributes: attributes,
|
|
609
|
-
tosAgreement: body.tosAgreement
|
|
611
|
+
...(body.tosAgreement ? { tosAgreement: body.tosAgreement } : {})
|
|
610
612
|
});
|
|
611
613
|
},
|
|
612
614
|
body: request,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AA+BrD,OAAO,EACN,kCAAkC,EAClC,4BAA4B,EAC5B,wCAAwC,EACxC,kCAAkC,EAClC,sFAAsF,EACtF,uEAAuE,EACvE,8DAA8D,EAC9D,6DAA6D,EAC7D,0EAA0E,EAC1E,qEAAqE,EACrE,6DAA6D,EAC7D,qDAAqD,EACrD,2EAA2E,EAC3E,4DAA4D,EAC5D,mDAAmD,EACnD,kDAAkD,EAClD,+DAA+D,EAC/D,0DAA0D,EAC1D,sEAAsE,EACtE,0CAA0C,EAC1C,MAAM,aAAa,CAAC;AAErB,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAE7C,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4CjD;;GAEG;AACH,4DAA4D;AAE5D,MAAM,yCAAyC,GAAG,MAAM,CAAC,2CAA2C,CAAC,CAAC;AAEtG,SAAS,gCAAgC,CAAmB,GAAM;IACjE,yEAAyE;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAA6B,CAAC;AACxD,CAAC;AAED,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAgD,CAAC;AAiCpF,SAAS,WAAW,CAAC,GAAuB;IAC3C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACvC,MAAK,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/B,OAAM,CAAC,SAAS,CAAC,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAkB,EAAE,OAA4B,EAAE,MAA6B,EAAE,MAAe;IAC3H,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,wCAAwC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7G,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,4BAA4B,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE;QACvD,GAAG,KAAK;QACR,GAAG,IAAI;QACP,GAAG,EAAE;QACL,GAAG,IAAI;KACP,EAAE,MAAM,CAAC,CAAC;IAEX,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAM,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,WAAU,CAAC,EAAE,EAAE,WAAW,CAAC;QACxF,MAAM,uBAAuB,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC5G,MAAM,eAAe,GAAG,kCAAkC,CAAC,uBAAuB,CAAC,CAAC;QAEpF,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,mBAAmB,GAAgD,EAAE,CAAC;QAC5E,KAAK,MAAM,CAAE,GAAG,EAAE,SAAS,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC7B,SAAS;YACV,CAAC;YAED,MAAM,CAAC,cAAc,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC/C,GAAG,EAAE,KAAK;oBACT,MAAM,YAAY,GAAG,6BAA6B,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC;oBAE9G,IAAI,GAAG,CAAC;oBACR,IAAI,cAAc,GAAsC;wBACvD,IAAI,EAAE,MAAM;wBACZ,MAAM,EAAE,eAAe;qBACvB,CAAC;oBAEF,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACtC,GAAG,GAAG,YAAY,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACP,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;wBACvB,IAAI,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;4BAC1C,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC;wBACtD,CAAC;oBACF,CAAC;oBAED,OAAM,CAAC;wBACN,GAAG,EAAE,UAAS,MAAmC;4BAChD,IAAI,cAAc,CAAC;4BAEnB,IAAI,CAAC;gCACJ,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;4BAChC,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCAChB,MAAM,EAAE,KAAK,CAAC,cAAc,EAAE,2DAA2D,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;gCAEvG,cAAc,GAAG,GAAG,CAAC;4BACtB,CAAC;4BAED,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;gCACnE,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,QAAQ,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;4BAC1F,CAAC;4BAED,OAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;wBACrC,CAAC;wBACD,OAAO,EAAE,EAAE,cAAc,EAAE;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBACD,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;aAClB,CAAC,CAAC;QACJ,CAAC;QAED,OAAM,CAAC;YACN,yEAAyE;YACzE,EAA2B;YAC3B;gBACC,UAAU,EAAE,mBAAmB;gBAC/B,eAAe,EAAE,eAAe;aAChC;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1E,OAAM,CAAC,MAAM,CAAC,CAAC;AAChB,CAAC;AAOD,MAAM,4BAA4B;IACd,MAAM,CAAsB;IAC5B,MAAM,CAAqB;IAE9C,YAAY,MAA0C;QACrD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,CAAC;CACD;AAED;;GAEG;AACH,MAAM,0BAA0B;IACd,QAAQ,CAAmC;IACpD,OAAO,CAAwD;IAC/D,QAAQ,CAA8D;IAE9E,YAAY,QAA0C,EAAE,OAA8D,EAAE,QAAqE;QAC5L,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,iBAAiB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,OAAM,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,IAAI,UAAU;QACb,OAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,YAAY;QACf,OAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;CACD;AASD,MAAM,gCAAiC,SAAQ,4BAA4B;IACjE,WAAW,CAAgC;IAC3C,UAAU,CAAa;IACf,MAAM,CAAiC;IAExD,YAAY,WAA0C,EAAE,UAAsB,EAAE,MAAsC;QACrH,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;QACnF,KAAK,CAAC,aAAa,CAAC,CAAC;QAErB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,aAAuD,EAAE,MAAmC;QACnH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAClE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAK,CAAC,IAAI,KAAK,CAAC,2CAA2C,aAAa,YAAY,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YAChE,MAAK,CAAC,IAAI,KAAK,CAAC,sCAAsC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClG,CAAC;QAED,OAAM,CAAC;YACN,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,cAAc;SACrC,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAa;QACtC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/C,MAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YAC1C,MAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,QAAQ,CAAC;QAEb,IAAI,WAAW,GAA4B,IAAI,CAAC;QAChD,IAAI,CAAC;YACJ,WAAW,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oDAAoD,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,OAAM,CAAC,WAAW,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACP,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,eAAe,CAAC;YAC5B,CAAC;YAED,OAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,YAAY,CAIhB,KAUD;QACA,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjF,IAAI,iBAAiB,CAAC;QAEtB,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC1C,iBAAiB,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACP,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,MAAmC,CAAC;QAExC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7E,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAK,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;YACxE,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAK,CAAC,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC,CAAC;YAChF,CAAC;YAED,wHAAwH;YACxH,yEAAyE;YACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,iBAAsC,CAAC,CAAC;YAE7E,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,QAAQ,GAAG,GAAG,CAAC;QACnB,MAAM,OAAO,GAA8B;YAC1C,QAAQ,EAAE,kBAAkB;SAC5B,CAAC;QACF,IAAI,IAAI,GAAoB,IAAI,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YAC7C,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,iBAAiB,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,IAAI,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAK,CAAC,IAAI,KAAK,CAAC,iGAAiG,CAAC,CAAC,CAAC;gBACrH,CAAC;gBAED,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACzG,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAK,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAChD,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI;SACnC,CAAC,CAAC;QAEH,MAAM,sBAAsB,GAAY,MAAM,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC/C,MAAK,CAAC,IAAI,KAAK,CAAC,iDAAiD,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7G,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,CAAC;YAChC,MAAK,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,mIAAmI;QACnI,yEAAyE;QACzE,OAAO,sBAA0D,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAA8D;QACpF,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,qDAAqD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAEnG,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kBAAkB;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACzB,IAAI,EAAE;wBACL,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;qBAC1D;oBACD,EAAE,EAAE;wBACH,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACxD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS;qBAC5B;oBACD,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;iBAC5D,CAAC,CAAA;YACH,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,6DAA6D;YAC5E,UAAU,EAAE,kDAAkD;SAC9D,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,sBAAsB,CAAC,EAAE,EAAE,CAAC,CAAC;QAEjG,OAAM,CAAC,IAAI,0BAA0B,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAA+D;QACtF,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,mBAAmB;YAC7B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;YAC1B,aAAa,EAAE,GAAG,EAAE,CAAC,8DAA8D,CAAC,OAAO,CAAC;YAC5F,UAAU,EAAE,mDAAmD;SAC/D,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAElF,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,kCAAkC,CAAC,OAAuF;QAC/H,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEtI,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,oCAAoC;YAC9C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACrD,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;iBAC5D,CAAC,CAAA;YACH,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,sFAAsF;YACrG,UAAU,EAAE,2EAA2E;SACvF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEtG,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,OAAwE;QAC/G,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEtI,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,4BAA4B;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,MAAM,IAAI,GAAG;oBACZ,cAAc,EAAE,4BAA4B,CAAC,IAAI,CAAC,cAAc,CAAC;oBACjE,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;iBACnD,CAAC;gBAEX,IAAI,6BAA6B,IAAI,IAAI,EAAE,CAAC;oBAC3C,OAAM,CAAC;wBACN,GAAG,IAAI;wBACP,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;qBAC7D,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,OAAM,CAAC;wBACN,GAAG,IAAI;wBACP,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;wBAC3C,mBAAmB,EAAE,4BAA4B,CAAC,IAAI,CAAC,mBAAmB,CAAC;qBAC3E,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,uEAAuE;YACtF,UAAU,EAAE,4DAA4D;SACxE,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEtG,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,8BAA8B,CAAC,OAA2E;QAC/G,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oEAAoE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAElH,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kCAAkC;YAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO;YACb,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC5D,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC;oBAClE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;iBAClE,CAAC,CAAC;YACJ,CAAC;YACD,aAAa,EAAE,0EAA0E;YACzF,UAAU,EAAE,+DAA+D;SAC3E,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iEAAiE,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAExH,OAAM,CAAC;YACN,SAAS,EAAE,sBAAsB,CAAC,SAAS;YAC3C,KAAK,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;SAC3C,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAsE;QACnG,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oEAAoE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAElH,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,0BAA0B;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO;YACb,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC5D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAS,UAAU;wBACxD,OAAM,CAAC;4BACN,GAAG,UAAU;4BACb,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;4BAC1F,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,4BAA4B,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;4BAC/G,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,4BAA4B,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS;yBAC9H,CAAC,CAAA;oBACH,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;iBACd,CAAC,CAAC;YACJ,CAAC;YACD,aAAa,EAAE,qEAAqE;YACpF,UAAU,EAAE,0DAA0D;SACtE,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,qEAAqE,EAAE,uDAAuD,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAErL,OAAM,CAAC;YACN,SAAS,EAAE,sBAAsB,CAAC,SAAS;YAC3C,KAAK,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;SAC3C,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAA8D;QACpF,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wDAAwD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3I,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kBAAkB;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC5D,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACzD,QAAQ,EAAE,4BAA4B,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACnD,GAAG,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;4BACtC,EAAE,yBAAyB,EAAE,EAAE,CAAC,yBAAyB,EAAE,CAAC,CAAC;4BAC7D,EAAE,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,EAAE,CAC3C;qBACD,CAAC,CAAC;oBACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACjB,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;wBAC1D,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBAClC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACxF,CAAC,CAAC,CAAC,SAAS;oBACb,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACb,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACxD,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW;wBAChC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACpF,CAAC,CAAC,CAAC,SAAS;iBACb,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,6DAA6D;YAC5E,UAAU,EAAE,sEAAsE;SAClF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oDAAoD,sBAAsB,CAAC,YAAY,EAAE,CAAC,CAAC;QAE9G,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,OAAgC;QAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,OAAO,GAAG,OAAO,EAAE,SAAS,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEtD,OAAO,IAAI,EAAE,CAAC;YACb,IAAI,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;gBACnC,MAAM;YACP,CAAC;YAED,IAAI,QAAQ,CAAC;YAEb,IAAI,CAAC;gBACJ,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC;gBAC7G,MAAK,CAAC,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC7B,OAAO;YACR,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC7B,IAAI,SAAkB,CAAC;gBACvB,IAAI,CAAC;oBACJ,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC;gBAAC,MAAM,CAAC;oBACR,MAAK,CAAC,IAAI,KAAK,CAAC,+DAA+D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACpG,CAAC;gBACD,MAAK,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CAAC;gBACtC,MAAK,CAAC,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,YAAgC,CAAC;YACrC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC7D,IAAI,gBAAgB,EAAE,CAAC;gBAEtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;oBACtC,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACP,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;wBACtC,YAAY,GAAG,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACtD,CAAC;gBACF,CAAC;YACF,CAAC;YAED,IAAI,CAAC,YAAY,EAAE,CAAC;gBACnB,YAAY,GAAG,OAAO,EAAE,qBAAqB,IAAI,IAAI,CAAC;YACvD,CAAC;YAED,MAAM,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAAsD,EAAE,YAAqC;QACrH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAItC;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,CAAC,gBAAgB,CAAC,IAAI;gBAC1B,IAAI,UAAU,CAAC;gBACf,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;oBACzC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACP,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAED,OAAM,CAAC;oBACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC3D,UAAU,EAAE,UAAU;oBACtB,YAAY,EAAE,IAAI,CAAC,YAAY;iBAC/B,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,qDAAqD;YACpE,UAAU,EAAE,0CAA0C;SACtD,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAE7E,IAAI,UAAU,CAAC;YAEf,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAC/D,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACP,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;YAClC,CAAC;YAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;CACD;AAED,MAAM,8BAA+B,SAAQ,4BAA4B;IAC/D,QAAQ,CAAW;IACnB,EAAE,CAAS;IACpB,2DAA2D;IAClD,OAAO,CAA2C;IAC3D,2DAA2D;IAClD,QAAQ,CAA2C;IAE5D,YAAY,MAA0B,EAAE,SAAyC,EAAE;QAClF,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAE3C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;aAAM,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;aAAM,IAAI,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,MAAK,CAAC,IAAI,KAAK,CAAC,4FAA4F,CAAC,CAAC,CAAC;QAChH,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;aAAM,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;aAAM,CAAC;YACP,MAAK,CAAC,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC,CAAC;QACnH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA4B,EAAE,MAA6B;QACxE,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClF,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACxB,OAAM,CAAC,IAAI,CAAC,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,gCAAgC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE;YACvF,OAAM,CAAC,IAAI,gCAAgC,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,OAAM,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAA4B;QACzD,OAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACxE,OAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,gBAAgB;IAChB,UAAU,CAAC,WAAmB;QAC7B,IAAI,WAAW,KAAK,yCAAyC,EAAE,CAAC;YAC/D,MAAK,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,OAAM,CAAC;YACN,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;IACJ,CAAC;CACD;AAED,eAAe,8BAA8B,CAAC","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\tSupportedAssetsMetadata,\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\tKeetaAssetMovementAnchorListPersistentForwardingClientRequest,\n\tKeetaPersistentForwardingAddressDetails,\n\tKeetaAssetMovementAnchorInitiateTransferResponse\n} from './common.js';\nimport {\n\tassertKeetaSupportedAssetsMetadata,\n\tconvertAssetLocationToString,\n\tconvertAssetOrPairSearchInputToCanonical,\n\tconvertAssetSearchInputToCanonical,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorGetTransferStatusRequestSigningData,\n\tgetKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\tgetKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorListPersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\tgetKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tisKeetaAssetMovementAnchorGetExchangeStatusResponse,\n\tisKeetaAssetMovementAnchorInitiateTransferResponse,\n\tisKeetaAssetMovementAnchorListForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorListPersistentForwardingResponse,\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: SupportedAssetsMetadata[];\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 = assertKeetaSupportedAssetsMetadata(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: ExtractOk<KeetaAssetMovementAnchorInitiateTransferResponse>;\n\n\tconstructor(provider: KeetaAssetMovementAnchorProvider, request: KeetaAssetMovementAnchorInitiateTransferClientRequest, transfer: ExtractOk<KeetaAssetMovementAnchorInitiateTransferResponse>) {\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\treturn(new KeetaAssetMovementTransfer(this, request, requestInformationJSON));\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<{ templates: PersistentAddressTemplateData[]; total: number; }> {\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({\n\t\t\ttemplates: requestInformationJSON.templates,\n\t\t\ttotal: Number(requestInformationJSON.total)\n\t\t});\n\t}\n\n\tasync listForwardingAddresses(request: KeetaAssetMovementAnchorListPersistentForwardingClientRequest): Promise<{ addresses: KeetaPersistentForwardingAddressDetails[]; total: number; }> {\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: 'listPersistentForwarding',\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\t...body,\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tsearch: body.search ? body.search.map(function(searchItem) {\n\t\t\t\t\t\treturn({\n\t\t\t\t\t\t\t...searchItem,\n\t\t\t\t\t\t\tasset: searchItem.asset ? convertAssetSearchInputToCanonical(searchItem.asset) : undefined,\n\t\t\t\t\t\t\tsourceLocation: searchItem.sourceLocation ? convertAssetLocationToString(searchItem.sourceLocation) : undefined,\n\t\t\t\t\t\t\tdestinationLocation: searchItem.destinationLocation ? convertAssetLocationToString(searchItem.destinationLocation) : undefined\n\t\t\t\t\t\t})\n\t\t\t\t\t}) : undefined\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorListPersistentForwardingRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorListPersistentForwardingResponse\n\t\t});\n\n\t\tthis.logger?.debug('KeetaAssetMovementAnchorProvider::listPersistentForwardingAddresses', `list persistent forwarding address request successful`, requestInformationJSON.addresses);\n\n\t\treturn({\n\t\t\taddresses: requestInformationJSON.addresses,\n\t\t\ttotal: Number(requestInformationJSON.total)\n\t\t});\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"]}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/asset-movement/client.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AA+BrD,OAAO,EACN,kCAAkC,EAClC,4BAA4B,EAC5B,wCAAwC,EACxC,kCAAkC,EAClC,sFAAsF,EACtF,uEAAuE,EACvE,8DAA8D,EAC9D,6DAA6D,EAC7D,0EAA0E,EAC1E,qEAAqE,EACrE,6DAA6D,EAC7D,qDAAqD,EACrD,2EAA2E,EAC3E,4DAA4D,EAC5D,mDAAmD,EACnD,kDAAkD,EAClD,+DAA+D,EAC/D,0DAA0D,EAC1D,sEAAsE,EACtE,0CAA0C,EAC1C,MAAM,aAAa,CAAC;AAErB,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAE7C,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4CjD;;GAEG;AACH,4DAA4D;AAE5D,MAAM,yCAAyC,GAAG,MAAM,CAAC,2CAA2C,CAAC,CAAC;AAEtG,SAAS,gCAAgC,CAAmB,GAAM;IACjE,yEAAyE;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAA6B,CAAC;AACxD,CAAC;AAED,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAgD,CAAC;AAiCpF,SAAS,WAAW,CAAC,GAAuB;IAC3C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACvC,MAAK,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/B,OAAM,CAAC,SAAS,CAAC,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAkB,EAAE,OAA4B,EAAE,MAA6B,EAAE,MAAe;IAC3H,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,wCAAwC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7G,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,4BAA4B,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE;QACvD,GAAG,KAAK;QACR,GAAG,IAAI;QACP,GAAG,EAAE;QACL,GAAG,IAAI;KACP,EAAE,MAAM,CAAC,CAAC;IAEX,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAM,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,WAAU,CAAC,EAAE,EAAE,WAAW,CAAC;QACxF,MAAM,uBAAuB,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC5G,MAAM,eAAe,GAAG,kCAAkC,CAAC,uBAAuB,CAAC,CAAC;QAEpF,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,mBAAmB,GAAgD,EAAE,CAAC;QAC5E,KAAK,MAAM,CAAE,GAAG,EAAE,SAAS,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC7B,SAAS;YACV,CAAC;YAED,MAAM,CAAC,cAAc,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC/C,GAAG,EAAE,KAAK;oBACT,MAAM,YAAY,GAAG,6BAA6B,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC;oBAE9G,IAAI,GAAG,CAAC;oBACR,IAAI,cAAc,GAAsC;wBACvD,IAAI,EAAE,MAAM;wBACZ,MAAM,EAAE,eAAe;qBACvB,CAAC;oBAEF,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACtC,GAAG,GAAG,YAAY,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACP,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;wBACvB,IAAI,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;4BAC1C,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC;wBACtD,CAAC;oBACF,CAAC;oBAED,OAAM,CAAC;wBACN,GAAG,EAAE,UAAS,MAAmC;4BAChD,IAAI,cAAc,CAAC;4BAEnB,IAAI,CAAC;gCACJ,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;4BAChC,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCAChB,MAAM,EAAE,KAAK,CAAC,cAAc,EAAE,2DAA2D,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;gCAEvG,cAAc,GAAG,GAAG,CAAC;4BACtB,CAAC;4BAED,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;gCACnE,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,QAAQ,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;4BAC1F,CAAC;4BAED,OAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;wBACrC,CAAC;wBACD,OAAO,EAAE,EAAE,cAAc,EAAE;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBACD,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;aAClB,CAAC,CAAC;QACJ,CAAC;QAED,OAAM,CAAC;YACN,yEAAyE;YACzE,EAA2B;YAC3B;gBACC,UAAU,EAAE,mBAAmB;gBAC/B,eAAe,EAAE,eAAe;aAChC;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1E,OAAM,CAAC,MAAM,CAAC,CAAC;AAChB,CAAC;AAOD,MAAM,4BAA4B;IACd,MAAM,CAAsB;IAC5B,MAAM,CAAqB;IAE9C,YAAY,MAA0C;QACrD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,CAAC;CACD;AAED;;GAEG;AACH,MAAM,0BAA0B;IACd,QAAQ,CAAmC;IACpD,OAAO,CAAwD;IAC/D,QAAQ,CAA8D;IAE9E,YAAY,QAA0C,EAAE,OAA8D,EAAE,QAAqE;QAC5L,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,iBAAiB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,OAAM,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,IAAI,UAAU;QACb,OAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,YAAY;QACf,OAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;CACD;AASD,MAAM,gCAAiC,SAAQ,4BAA4B;IACjE,WAAW,CAAgC;IAC3C,UAAU,CAAa;IACf,MAAM,CAAiC;IAExD,YAAY,WAA0C,EAAE,UAAsB,EAAE,MAAsC;QACrH,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;QACnF,KAAK,CAAC,aAAa,CAAC,CAAC;QAErB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,aAAuD,EAAE,MAAmC;QACnH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAClE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAK,CAAC,IAAI,KAAK,CAAC,2CAA2C,aAAa,YAAY,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YAChE,MAAK,CAAC,IAAI,KAAK,CAAC,sCAAsC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClG,CAAC;QAED,OAAM,CAAC;YACN,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,cAAc;SACrC,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAa;QACtC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/C,MAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YAC1C,MAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,QAAQ,CAAC;QAEb,IAAI,WAAW,GAA4B,IAAI,CAAC;QAChD,IAAI,CAAC;YACJ,WAAW,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oDAAoD,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,OAAM,CAAC,WAAW,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACP,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,eAAe,CAAC;YAC5B,CAAC;YAED,OAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,YAAY,CAIhB,KAUD;QACA,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjF,IAAI,iBAAiB,CAAC;QAEtB,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC1C,iBAAiB,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACP,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,MAAmC,CAAC;QAExC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7E,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAK,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;YACxE,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAK,CAAC,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC,CAAC;YAChF,CAAC;YAED,wHAAwH;YACxH,yEAAyE;YACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,iBAAsC,CAAC,CAAC;YAE7E,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,QAAQ,GAAG,GAAG,CAAC;QACnB,MAAM,OAAO,GAA8B;YAC1C,QAAQ,EAAE,kBAAkB;SAC5B,CAAC;QACF,IAAI,IAAI,GAAoB,IAAI,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YAC7C,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,iBAAiB,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,IAAI,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAK,CAAC,IAAI,KAAK,CAAC,iGAAiG,CAAC,CAAC,CAAC;gBACrH,CAAC;gBAED,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACzG,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAK,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAChD,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI;SACnC,CAAC,CAAC;QAEH,MAAM,sBAAsB,GAAY,MAAM,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC/C,MAAK,CAAC,IAAI,KAAK,CAAC,iDAAiD,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7G,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,CAAC;YAChC,MAAK,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,mIAAmI;QACnI,yEAAyE;QACzE,OAAO,sBAA0D,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAA8D;QACpF,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,qDAAqD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAEnG,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kBAAkB;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;gBAClC,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACzB,IAAI,EAAE;wBACL,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;qBAC1D;oBACD,EAAE,EAAE;wBACH,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACxD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS;qBAC5B;oBACD,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9E,CAAC,CAAA;YACH,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,6DAA6D;YAC5E,UAAU,EAAE,kDAAkD;SAC9D,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,sBAAsB,CAAC,EAAE,EAAE,CAAC,CAAC;QAEjG,OAAM,CAAC,IAAI,0BAA0B,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAA+D;QACtF,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,mBAAmB;YAC7B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;YAC1B,aAAa,EAAE,GAAG,EAAE,CAAC,8DAA8D,CAAC,OAAO,CAAC;YAC5F,UAAU,EAAE,mDAAmD;SAC/D,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAElF,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,kCAAkC,CAAC,OAAuF;QAC/H,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEtI,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,oCAAoC;YAC9C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;gBAClC,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACrD,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9E,CAAC,CAAA;YACH,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,sFAAsF;YACrG,UAAU,EAAE,2EAA2E;SACvF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEtG,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,OAAwE;QAC/G,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEtI,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,4BAA4B;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,MAAM,IAAI,GAAG;oBACZ,cAAc,EAAE,4BAA4B,CAAC,IAAI,CAAC,cAAc,CAAC;oBACjE,KAAK,EAAE,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;iBACnD,CAAC;gBAEX,IAAI,6BAA6B,IAAI,IAAI,EAAE,CAAC;oBAC3C,OAAM,CAAC;wBACN,GAAG,IAAI;wBACP,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;qBAC7D,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,OAAM,CAAC;wBACN,GAAG,IAAI;wBACP,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;wBAC3C,mBAAmB,EAAE,4BAA4B,CAAC,IAAI,CAAC,mBAAmB,CAAC;qBAC3E,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,uEAAuE;YACtF,UAAU,EAAE,4DAA4D;SACxE,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEtG,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,8BAA8B,CAAC,OAA2E;QAC/G,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oEAAoE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAElH,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kCAAkC;YAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO;YACb,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxF,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC;oBAClE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;iBAClE,CAAC,CAAC;YACJ,CAAC;YACD,aAAa,EAAE,0EAA0E;YACzF,UAAU,EAAE,+DAA+D;SAC3E,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iEAAiE,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAExH,OAAM,CAAC;YACN,SAAS,EAAE,sBAAsB,CAAC,SAAS;YAC3C,KAAK,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;SAC3C,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAsE;QACnG,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oEAAoE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAElH,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,0BAA0B;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO;YACb,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,GAAG,IAAI;oBACP,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC5D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAS,UAAU;wBACxD,OAAM,CAAC;4BACN,GAAG,UAAU;4BACb,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;4BAC1F,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,4BAA4B,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;4BAC/G,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,4BAA4B,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS;yBAC9H,CAAC,CAAA;oBACH,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;iBACd,CAAC,CAAC;YACJ,CAAC;YACD,aAAa,EAAE,qEAAqE;YACpF,UAAU,EAAE,0DAA0D;SACtE,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,qEAAqE,EAAE,uDAAuD,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAErL,OAAM,CAAC;YACN,SAAS,EAAE,sBAAsB,CAAC,SAAS;YAC3C,KAAK,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;SAC3C,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAA8D;QACpF,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wDAAwD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3I,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY,CAIpD;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,kBAAkB;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,CAAC,IAAI;gBACpB,OAAM,CAAC;oBACN,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC5D,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACzD,QAAQ,EAAE,4BAA4B,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACnD,GAAG,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;4BACtC,EAAE,yBAAyB,EAAE,EAAE,CAAC,yBAAyB,EAAE,CAAC,CAAC;4BAC7D,EAAE,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,EAAE,CAC3C;qBACD,CAAC,CAAC;oBACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACjB,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;wBAC1D,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBAClC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACxF,CAAC,CAAC,CAAC,SAAS;oBACb,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACb,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;wBACxD,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW;wBAChC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACpF,CAAC,CAAC,CAAC,SAAS;iBACb,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,6DAA6D;YAC5E,UAAU,EAAE,sEAAsE;SAClF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oDAAoD,sBAAsB,CAAC,YAAY,EAAE,CAAC,CAAC;QAE9G,OAAM,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,OAAgC;QAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,OAAO,GAAG,OAAO,EAAE,SAAS,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEtD,OAAO,IAAI,EAAE,CAAC;YACb,IAAI,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;gBACnC,MAAM;YACP,CAAC;YAED,IAAI,QAAQ,CAAC;YAEb,IAAI,CAAC;gBACJ,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,mDAAmD,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC;gBAC7G,MAAK,CAAC,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC7B,OAAO;YACR,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC7B,IAAI,SAAkB,CAAC;gBACvB,IAAI,CAAC;oBACJ,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC;gBAAC,MAAM,CAAC;oBACR,MAAK,CAAC,IAAI,KAAK,CAAC,+DAA+D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACpG,CAAC;gBACD,MAAK,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CAAC;gBACtC,MAAK,CAAC,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,YAAgC,CAAC;YACrC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC7D,IAAI,gBAAgB,EAAE,CAAC;gBAEtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;oBACtC,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACP,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;wBACtC,YAAY,GAAG,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACtD,CAAC;gBACF,CAAC;YACF,CAAC;YAED,IAAI,CAAC,YAAY,EAAE,CAAC;gBACnB,YAAY,GAAG,OAAO,EAAE,qBAAqB,IAAI,IAAI,CAAC;YACvD,CAAC;YAED,MAAM,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAAsD,EAAE,YAAqC;QACrH,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAItC;YACD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,CAAC,gBAAgB,CAAC,IAAI;gBAC1B,IAAI,UAAU,CAAC;gBACf,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;oBACzC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACP,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAED,OAAM,CAAC;oBACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE;oBAC3D,UAAU,EAAE,UAAU;oBACtB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjE,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,qDAAqD;YACpE,UAAU,EAAE,0CAA0C;SACtD,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAE7E,IAAI,UAAU,CAAC;YAEf,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAC/D,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACP,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;YAClC,CAAC;YAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;CACD;AAED,MAAM,8BAA+B,SAAQ,4BAA4B;IAC/D,QAAQ,CAAW;IACnB,EAAE,CAAS;IACpB,2DAA2D;IAClD,OAAO,CAA2C;IAC3D,2DAA2D;IAClD,QAAQ,CAA2C;IAE5D,YAAY,MAA0B,EAAE,SAAyC,EAAE;QAClF,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAE3C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;aAAM,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;aAAM,IAAI,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,MAAK,CAAC,IAAI,KAAK,CAAC,4FAA4F,CAAC,CAAC,CAAC;QAChH,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;aAAM,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;aAAM,CAAC;YACP,MAAK,CAAC,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC,CAAC;QACnH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA4B,EAAE,MAA6B;QACxE,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClF,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACxB,OAAM,CAAC,IAAI,CAAC,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,gCAAgC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE;YACvF,OAAM,CAAC,IAAI,gCAAgC,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,OAAM,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAA4B;QACzD,OAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACxE,OAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,gBAAgB;IAChB,UAAU,CAAC,WAAmB;QAC7B,IAAI,WAAW,KAAK,yCAAyC,EAAE,CAAC;YAC/D,MAAK,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,OAAM,CAAC;YACN,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;IACJ,CAAC;CACD;AAED,eAAe,8BAA8B,CAAC","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\tSupportedAssetsMetadata,\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\tKeetaAssetMovementAnchorListPersistentForwardingClientRequest,\n\tKeetaPersistentForwardingAddressDetails,\n\tKeetaAssetMovementAnchorInitiateTransferResponse\n} from './common.js';\nimport {\n\tassertKeetaSupportedAssetsMetadata,\n\tconvertAssetLocationToString,\n\tconvertAssetOrPairSearchInputToCanonical,\n\tconvertAssetSearchInputToCanonical,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorCreatePersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorGetTransferStatusRequestSigningData,\n\tgetKeetaAssetMovementAnchorInitiateTransferRequestSigningData,\n\tgetKeetaAssetMovementAnchorListForwardingAddressTemplateRequestSigningData,\n\tgetKeetaAssetMovementAnchorListPersistentForwardingRequestSigningData,\n\tgetKeetaAssetMovementAnchorlistTransactionsRequestSigningData,\n\tgetKeetaAssetMovementAnchorShareKYCRequestSigningData,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorCreatePersistentForwardingResponse,\n\tisKeetaAssetMovementAnchorGetExchangeStatusResponse,\n\tisKeetaAssetMovementAnchorInitiateTransferResponse,\n\tisKeetaAssetMovementAnchorListForwardingAddressTemplateResponse,\n\tisKeetaAssetMovementAnchorListPersistentForwardingResponse,\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: SupportedAssetsMetadata[];\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 = assertKeetaSupportedAssetsMetadata(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: ExtractOk<KeetaAssetMovementAnchorInitiateTransferResponse>;\n\n\tconstructor(provider: KeetaAssetMovementAnchorProvider, request: KeetaAssetMovementAnchorInitiateTransferClientRequest, transfer: ExtractOk<KeetaAssetMovementAnchorInitiateTransferResponse>) {\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\tconst { account, ...rest } = body;\n\t\t\t\treturn({\n\t\t\t\t\t...rest,\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\t...(account ? { account: 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\treturn(new KeetaAssetMovementTransfer(this, request, requestInformationJSON));\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\tconst { account, ...rest }\t= body;\n\t\t\t\treturn({\n\t\t\t\t\t...rest,\n\t\t\t\t\tlocation: convertAssetLocationToString(body.location),\n\t\t\t\t\tasset: convertAssetOrPairSearchInputToCanonical(body.asset),\n\t\t\t\t\t...(account ? { account: 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<{ templates: PersistentAddressTemplateData[]; total: number; }> {\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\t...(body.account ? { account: 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({\n\t\t\ttemplates: requestInformationJSON.templates,\n\t\t\ttotal: Number(requestInformationJSON.total)\n\t\t});\n\t}\n\n\tasync listForwardingAddresses(request: KeetaAssetMovementAnchorListPersistentForwardingClientRequest): Promise<{ addresses: KeetaPersistentForwardingAddressDetails[]; total: number; }> {\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: 'listPersistentForwarding',\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\t...body,\n\t\t\t\t\taccount: body.account?.assertAccount().publicKeyString.get(),\n\t\t\t\t\tsearch: body.search ? body.search.map(function(searchItem) {\n\t\t\t\t\t\treturn({\n\t\t\t\t\t\t\t...searchItem,\n\t\t\t\t\t\t\tasset: searchItem.asset ? convertAssetSearchInputToCanonical(searchItem.asset) : undefined,\n\t\t\t\t\t\t\tsourceLocation: searchItem.sourceLocation ? convertAssetLocationToString(searchItem.sourceLocation) : undefined,\n\t\t\t\t\t\t\tdestinationLocation: searchItem.destinationLocation ? convertAssetLocationToString(searchItem.destinationLocation) : undefined\n\t\t\t\t\t\t})\n\t\t\t\t\t}) : undefined\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetSignedData: getKeetaAssetMovementAnchorListPersistentForwardingRequestSigningData,\n\t\t\tisResponse: isKeetaAssetMovementAnchorListPersistentForwardingResponse\n\t\t});\n\n\t\tthis.logger?.debug('KeetaAssetMovementAnchorProvider::listPersistentForwardingAddresses', `list persistent forwarding address request successful`, requestInformationJSON.addresses);\n\n\t\treturn({\n\t\t\taddresses: requestInformationJSON.addresses,\n\t\t\ttotal: Number(requestInformationJSON.total)\n\t\t});\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\t...(body.tosAgreement ? { tosAgreement: 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"]}
|
|
@@ -46,7 +46,7 @@ export interface Asset {
|
|
|
46
46
|
*/
|
|
47
47
|
id: string;
|
|
48
48
|
}
|
|
49
|
-
export type FiatRails = 'ACH' | 'ACH_DEBIT' | 'WIRE' | 'PIX_PUSH' | 'SPEI_PUSH' | 'WIRE_INTL_PUSH' | 'SEPA_PUSH' | 'MOBILE_WALLET' | 'INTERAC_PUSH' | 'FPS_PUSH' | 'CARD_PUSH' | 'CARD_PULL';
|
|
49
|
+
export type FiatRails = 'ACH' | 'ACH_DEBIT' | 'WIRE' | 'PIX_PUSH' | 'SPEI_PUSH' | 'WIRE_INTL_PUSH' | 'SEPA_PUSH' | 'MOBILE_WALLET' | 'INTERAC_PUSH' | 'FPS_PUSH' | 'CARD_PUSH' | 'CARD_PULL' | 'HK_FPS_PUSH' | 'BCR_PAY_PUSH' | 'DUIT_NOW_PUSH' | 'PAY_NOW_PUSH' | 'UPI_PUSH';
|
|
50
50
|
export type CryptoRails = 'KEETA_SEND' | 'EVM_SEND' | 'EVM_CALL' | 'SOLANA_SEND' | 'BITCOIN_SEND' | 'TRON_SEND';
|
|
51
51
|
export type Rail = FiatRails | CryptoRails;
|
|
52
52
|
export interface AssetWithRails extends Asset {
|
|
@@ -163,6 +163,10 @@ export type RecipientResolved = AddressResolved | {
|
|
|
163
163
|
type: 'persistent-address';
|
|
164
164
|
persistentAddressId: string;
|
|
165
165
|
};
|
|
166
|
+
/**
|
|
167
|
+
* Optional deposit message to include with the transfer, ex: for wire this is a reference note.
|
|
168
|
+
*/
|
|
169
|
+
type AddressDepositMessage = string;
|
|
166
170
|
type ConvertToExternalRequest<Internal extends object, Overrides extends object, Signed = {
|
|
167
171
|
signed?: HTTPSignedField | undefined;
|
|
168
172
|
}> = ToJSONSerializable<Omit<Internal, keyof Overrides>> & Overrides & Signed;
|
|
@@ -190,6 +194,7 @@ export type KeetaAssetMovementAnchorInitiateTransferClientRequest = {
|
|
|
190
194
|
to: {
|
|
191
195
|
location: AssetLocationLike;
|
|
192
196
|
recipient: RecipientResolved;
|
|
197
|
+
depositMessage?: AddressDepositMessage;
|
|
193
198
|
};
|
|
194
199
|
/**
|
|
195
200
|
* The amount of the asset to transfer, as a string in the asset's smallest unit (e.g. cents for USD).
|
|
@@ -211,6 +216,7 @@ export type KeetaAssetMovementAnchorInitiateTransferRequest = ConvertToExternalR
|
|
|
211
216
|
to: {
|
|
212
217
|
location: AssetLocationCanonical;
|
|
213
218
|
recipient: RecipientResolved;
|
|
219
|
+
depositMessage?: AddressDepositMessage;
|
|
214
220
|
};
|
|
215
221
|
}>;
|
|
216
222
|
export declare function getKeetaAssetMovementAnchorInitiateTransferRequestSigningData(input: KeetaAssetMovementAnchorInitiateTransferClientRequest | KeetaAssetMovementAnchorInitiateTransferRequest): Signable;
|
|
@@ -315,10 +321,7 @@ export type AssetTransferInstructions = ({
|
|
|
315
321
|
* The resolved bank account address details to send funds to
|
|
316
322
|
*/
|
|
317
323
|
account: BankAccountAddressResolved;
|
|
318
|
-
|
|
319
|
-
* Optional deposit message to include with the transfer, ex: for wire this is a reference note.
|
|
320
|
-
*/
|
|
321
|
-
depositMessage?: string;
|
|
324
|
+
depositMessage?: AddressDepositMessage;
|
|
322
325
|
/**
|
|
323
326
|
* Amount to send, as a string in the asset's smallest unit (e.g. cents for USD).
|
|
324
327
|
*/
|
|
@@ -536,6 +539,7 @@ export type KeetaAssetMovementAnchorListForwardingAddressTemplateResponse = (({
|
|
|
536
539
|
export type KeetaPersistentForwardingAddressDetails = {
|
|
537
540
|
id?: string;
|
|
538
541
|
address: AddressObfuscated | AddressResolved;
|
|
542
|
+
depositMessage?: AddressDepositMessage;
|
|
539
543
|
asset?: AssetOrPair;
|
|
540
544
|
sourceLocation?: AssetLocationLike;
|
|
541
545
|
destinationLocation?: AssetLocationLike;
|
|
@@ -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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"}
|