@atumlabs/payment-gateway-client 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/LICENSE +202 -83
- package/NOTICE +2 -0
- package/README.md +30 -13
- package/THIRD-PARTY-NOTICES.txt +4 -5
- package/dist/cli/approve-permit2.js +262 -37
- package/dist/cli/payment-status.js +78 -17
- package/dist/cli/quote-status.js +76 -15
- package/dist/cli/request-quote.js +76 -15
- package/dist/cli/send-payment.js +257 -42
- package/dist/index.d.ts +108 -1982
- package/dist/index.js +440 -149
- package/dist/sender-auth-verify-C-Q-zvAO.d.ts +2013 -0
- package/dist/signing.d.ts +223 -0
- package/dist/signing.js +7219 -0
- package/docs/idempotency.md +2 -1
- package/docs/signing.md +218 -0
- package/package.json +25 -6
- package/signing.d.ts +2 -0
- package/signing.js +11 -0
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*
|
|
3
|
-
* Copyright
|
|
4
|
-
*
|
|
5
|
-
* Access and use are governed by the LICENSE file distributed with this package.
|
|
6
|
-
* Do not remove, alter, or obscure this notice.
|
|
3
|
+
* Copyright 2026 Atum Labs, Inc.
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
7
5
|
*/
|
|
8
6
|
"use strict";
|
|
9
7
|
var __create = Object.create;
|
|
@@ -12,11 +10,20 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
12
10
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
11
|
var __getProtoOf = Object.getPrototypeOf;
|
|
14
12
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
15
|
-
var __esm = (fn, res) => function __init() {
|
|
16
|
-
|
|
13
|
+
var __esm = (fn, res, err) => function __init() {
|
|
14
|
+
if (err) throw err[0];
|
|
15
|
+
try {
|
|
16
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
17
|
+
} catch (e) {
|
|
18
|
+
throw err = [e], e;
|
|
19
|
+
}
|
|
17
20
|
};
|
|
18
21
|
var __commonJS = (cb, mod) => function __require() {
|
|
19
|
-
|
|
22
|
+
try {
|
|
23
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
24
|
+
} catch (e) {
|
|
25
|
+
throw mod = 0, e;
|
|
26
|
+
}
|
|
20
27
|
};
|
|
21
28
|
var __copyProps = (to, from, except, desc) => {
|
|
22
29
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -2101,7 +2108,7 @@ var require_errors2 = __commonJS({
|
|
|
2101
2108
|
"../contracts/svm/escrow-encoding/typescript/dist/errors.js"(exports2) {
|
|
2102
2109
|
"use strict";
|
|
2103
2110
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2104
|
-
exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2111
|
+
exports2.InvalidEscrowDomainError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2105
2112
|
var EncodingError = class extends Error {
|
|
2106
2113
|
constructor(message) {
|
|
2107
2114
|
super(message);
|
|
@@ -2214,6 +2221,13 @@ var require_errors2 = __commonJS({
|
|
|
2214
2221
|
}
|
|
2215
2222
|
};
|
|
2216
2223
|
exports2.DestinationTooLongError = DestinationTooLongError;
|
|
2224
|
+
var InvalidEscrowDomainError = class extends EncodingError {
|
|
2225
|
+
constructor(message) {
|
|
2226
|
+
super(message);
|
|
2227
|
+
this.name = "InvalidEscrowDomainError";
|
|
2228
|
+
}
|
|
2229
|
+
};
|
|
2230
|
+
exports2.InvalidEscrowDomainError = InvalidEscrowDomainError;
|
|
2217
2231
|
}
|
|
2218
2232
|
});
|
|
2219
2233
|
|
|
@@ -2922,12 +2936,17 @@ var require_escrow_domain = __commonJS({
|
|
|
2922
2936
|
"use strict";
|
|
2923
2937
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2924
2938
|
exports2.escrowDomainPrefixBytes = escrowDomainPrefixBytes;
|
|
2939
|
+
exports2.newEscrowDomain = newEscrowDomain;
|
|
2940
|
+
var errors_1 = require_errors2();
|
|
2925
2941
|
function escrowDomainPrefixBytes(domain) {
|
|
2926
2942
|
if (domain.clusterId.length !== 32) {
|
|
2927
|
-
throw new
|
|
2943
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.clusterId must be 32 bytes, got ${domain.clusterId.length}`);
|
|
2944
|
+
}
|
|
2945
|
+
if (domain.programId.isZero()) {
|
|
2946
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2928
2947
|
}
|
|
2929
2948
|
if (!Number.isInteger(domain.signatureDomainVersion) || domain.signatureDomainVersion < 1 || domain.signatureDomainVersion > 255) {
|
|
2930
|
-
throw new
|
|
2949
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${domain.signatureDomainVersion}`);
|
|
2931
2950
|
}
|
|
2932
2951
|
return [
|
|
2933
2952
|
new TextEncoder().encode("escrow"),
|
|
@@ -2936,6 +2955,25 @@ var require_escrow_domain = __commonJS({
|
|
|
2936
2955
|
domain.programId.toBytes()
|
|
2937
2956
|
];
|
|
2938
2957
|
}
|
|
2958
|
+
function newEscrowDomain(clusterName, signatureDomainVersion, programId) {
|
|
2959
|
+
const trimmed = clusterName.trim();
|
|
2960
|
+
if (trimmed.length === 0) {
|
|
2961
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain cluster name cannot be empty");
|
|
2962
|
+
}
|
|
2963
|
+
const encoded = new TextEncoder().encode(trimmed);
|
|
2964
|
+
if (encoded.length > 32) {
|
|
2965
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain cluster name "${trimmed}" exceeds 32 bytes`);
|
|
2966
|
+
}
|
|
2967
|
+
if (!Number.isInteger(signatureDomainVersion) || signatureDomainVersion < 1 || signatureDomainVersion > 255) {
|
|
2968
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${signatureDomainVersion}`);
|
|
2969
|
+
}
|
|
2970
|
+
if (programId.isZero()) {
|
|
2971
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2972
|
+
}
|
|
2973
|
+
const clusterId = new Uint8Array(32);
|
|
2974
|
+
clusterId.set(encoded);
|
|
2975
|
+
return { clusterId, signatureDomainVersion, programId };
|
|
2976
|
+
}
|
|
2939
2977
|
}
|
|
2940
2978
|
});
|
|
2941
2979
|
|
|
@@ -3134,7 +3172,7 @@ var require_dist4 = __commonJS({
|
|
|
3134
3172
|
"../contracts/svm/escrow-encoding/typescript/dist/index.js"(exports2) {
|
|
3135
3173
|
"use strict";
|
|
3136
3174
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
3137
|
-
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3175
|
+
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.InvalidEscrowDomainError = exports2.ZeroSourceAmountError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.newEscrowDomain = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3138
3176
|
var pubkey_1 = require_pubkey();
|
|
3139
3177
|
Object.defineProperty(exports2, "Pubkey", { enumerable: true, get: function() {
|
|
3140
3178
|
return pubkey_1.Pubkey;
|
|
@@ -3156,6 +3194,9 @@ var require_dist4 = __commonJS({
|
|
|
3156
3194
|
Object.defineProperty(exports2, "escrowDomainPrefixBytes", { enumerable: true, get: function() {
|
|
3157
3195
|
return escrow_domain_1.escrowDomainPrefixBytes;
|
|
3158
3196
|
} });
|
|
3197
|
+
Object.defineProperty(exports2, "newEscrowDomain", { enumerable: true, get: function() {
|
|
3198
|
+
return escrow_domain_1.newEscrowDomain;
|
|
3199
|
+
} });
|
|
3159
3200
|
var errors_1 = require_errors2();
|
|
3160
3201
|
Object.defineProperty(exports2, "EncodingError", { enumerable: true, get: function() {
|
|
3161
3202
|
return errors_1.EncodingError;
|
|
@@ -3193,6 +3234,12 @@ var require_dist4 = __commonJS({
|
|
|
3193
3234
|
Object.defineProperty(exports2, "ZeroDepositHashError", { enumerable: true, get: function() {
|
|
3194
3235
|
return errors_1.ZeroDepositHashError;
|
|
3195
3236
|
} });
|
|
3237
|
+
Object.defineProperty(exports2, "ZeroSourceAmountError", { enumerable: true, get: function() {
|
|
3238
|
+
return errors_1.ZeroSourceAmountError;
|
|
3239
|
+
} });
|
|
3240
|
+
Object.defineProperty(exports2, "InvalidEscrowDomainError", { enumerable: true, get: function() {
|
|
3241
|
+
return errors_1.InvalidEscrowDomainError;
|
|
3242
|
+
} });
|
|
3196
3243
|
Object.defineProperty(exports2, "InvalidPubkeyLengthError", { enumerable: true, get: function() {
|
|
3197
3244
|
return errors_1.InvalidPubkeyLengthError;
|
|
3198
3245
|
} });
|
|
@@ -4878,6 +4925,9 @@ var PaymentGatewayClient = class {
|
|
|
4878
4925
|
}
|
|
4879
4926
|
};
|
|
4880
4927
|
|
|
4928
|
+
// src/timeout-http-request.ts
|
|
4929
|
+
var import_axios2 = __toESM(require("axios"));
|
|
4930
|
+
|
|
4881
4931
|
// src/errors.ts
|
|
4882
4932
|
var GatewayTimeoutError = class extends Error {
|
|
4883
4933
|
constructor(baseUrl, timeoutMs) {
|
|
@@ -4941,6 +4991,12 @@ function isAxiosTimeout(error) {
|
|
|
4941
4991
|
if (failure.code === "ECONNABORTED" || failure.code === "ETIMEDOUT") return true;
|
|
4942
4992
|
return failure.code === "ERR_BAD_RESPONSE" && /stream has been aborted/i.test(failure.message ?? "");
|
|
4943
4993
|
}
|
|
4994
|
+
function dropPartialResponseOnTimeout(error) {
|
|
4995
|
+
if (isAxiosTimeout(error) && error !== null && typeof error === "object" && "response" in error) {
|
|
4996
|
+
delete error.response;
|
|
4997
|
+
}
|
|
4998
|
+
return error;
|
|
4999
|
+
}
|
|
4944
5000
|
function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
4945
5001
|
if (!isAxiosTimeout(error)) return error;
|
|
4946
5002
|
const configured = error.config?.timeout;
|
|
@@ -4948,6 +5004,11 @@ function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
|
4948
5004
|
}
|
|
4949
5005
|
|
|
4950
5006
|
// src/timeout-http-request.ts
|
|
5007
|
+
var timeoutAxios = import_axios2.default.create();
|
|
5008
|
+
timeoutAxios.interceptors.response.use(
|
|
5009
|
+
void 0,
|
|
5010
|
+
(error) => Promise.reject(dropPartialResponseOnTimeout(error))
|
|
5011
|
+
);
|
|
4951
5012
|
function withRequestTimeout(config2, timeouts) {
|
|
4952
5013
|
const request2 = new Interceptors();
|
|
4953
5014
|
for (const fn of config2?.interceptors?.request?._fns ?? []) request2.use(fn);
|
|
@@ -4963,7 +5024,7 @@ var TimeoutHttpRequest = class extends AxiosHttpRequest {
|
|
|
4963
5024
|
}
|
|
4964
5025
|
request(options) {
|
|
4965
5026
|
return new CancelablePromise((resolve2, reject, onCancel) => {
|
|
4966
|
-
const pending =
|
|
5027
|
+
const pending = request(this.config, options, timeoutAxios);
|
|
4967
5028
|
onCancel(() => pending.cancel());
|
|
4968
5029
|
pending.then(resolve2, (error) => {
|
|
4969
5030
|
const request2 = { method: options.method, url: options.url, wait: options.query?.wait };
|
|
@@ -5530,8 +5591,8 @@ var PaymentGatewayClient2 = class extends PaymentGatewayClient {
|
|
|
5530
5591
|
// reasonable against that type - would otherwise build an EIP-712 domain around a
|
|
5531
5592
|
// null verifyingContract.
|
|
5532
5593
|
permit2Contract: data.permit2_contract ?? void 0,
|
|
5533
|
-
// Which deposit witness the escrow on this chain pins
|
|
5534
|
-
// four-member
|
|
5594
|
+
// Which deposit witness the escrow on this chain pins. Absent means the
|
|
5595
|
+
// four-member witness — see ChainDefaults.depositWitnessVersion for why
|
|
5535
5596
|
// absence is the permissive default. EVM/Tron only; Solana uses the svm_* fields below.
|
|
5536
5597
|
depositWitnessVersion: data.deposit_witness_version ?? void 0,
|
|
5537
5598
|
// V3 Solana escrow domain separation. Present only for Solana
|
|
@@ -5717,7 +5778,7 @@ var PaymentGatewayClient2 = class extends PaymentGatewayClient {
|
|
|
5717
5778
|
};
|
|
5718
5779
|
|
|
5719
5780
|
// src/version.ts
|
|
5720
|
-
var PACKAGE_VERSION = true ? "3.0.
|
|
5781
|
+
var PACKAGE_VERSION = true ? "3.0.1" : "0.0.0-dev";
|
|
5721
5782
|
|
|
5722
5783
|
// src/cli/load-env.ts
|
|
5723
5784
|
var import_dotenv = require("dotenv");
|
|
@@ -5758,7 +5819,7 @@ function describePaymentOutcome(input) {
|
|
|
5758
5819
|
summary: `completed: ${payment} settled.${replay}`
|
|
5759
5820
|
};
|
|
5760
5821
|
}
|
|
5761
|
-
if (status === "failed"
|
|
5822
|
+
if (status === "failed") {
|
|
5762
5823
|
const reason = errorCode ? ` (${errorCode})` : "";
|
|
5763
5824
|
return {
|
|
5764
5825
|
exitCode: EXIT_TERMINAL_FAILURE,
|
|
@@ -5784,7 +5845,7 @@ program.name("payment-status").description("Fetch the status of a payment (no si
|
|
|
5784
5845
|
Example:
|
|
5785
5846
|
payment-status --gateway http://localhost:8080 0x<payment_id>
|
|
5786
5847
|
|
|
5787
|
-
Status values: pending |
|
|
5848
|
+
Status values: pending | finalizing | completed | failed
|
|
5788
5849
|
|
|
5789
5850
|
Output:
|
|
5790
5851
|
Response JSON -> stdout (for parsing/automation, e.g. | jq)
|
package/dist/cli/quote-status.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*
|
|
3
|
-
* Copyright
|
|
4
|
-
*
|
|
5
|
-
* Access and use are governed by the LICENSE file distributed with this package.
|
|
6
|
-
* Do not remove, alter, or obscure this notice.
|
|
3
|
+
* Copyright 2026 Atum Labs, Inc.
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
7
5
|
*/
|
|
8
6
|
"use strict";
|
|
9
7
|
var __create = Object.create;
|
|
@@ -12,11 +10,20 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
12
10
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
11
|
var __getProtoOf = Object.getPrototypeOf;
|
|
14
12
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
15
|
-
var __esm = (fn, res) => function __init() {
|
|
16
|
-
|
|
13
|
+
var __esm = (fn, res, err) => function __init() {
|
|
14
|
+
if (err) throw err[0];
|
|
15
|
+
try {
|
|
16
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
17
|
+
} catch (e) {
|
|
18
|
+
throw err = [e], e;
|
|
19
|
+
}
|
|
17
20
|
};
|
|
18
21
|
var __commonJS = (cb, mod) => function __require() {
|
|
19
|
-
|
|
22
|
+
try {
|
|
23
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
24
|
+
} catch (e) {
|
|
25
|
+
throw mod = 0, e;
|
|
26
|
+
}
|
|
20
27
|
};
|
|
21
28
|
var __copyProps = (to, from, except, desc) => {
|
|
22
29
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -2101,7 +2108,7 @@ var require_errors2 = __commonJS({
|
|
|
2101
2108
|
"../contracts/svm/escrow-encoding/typescript/dist/errors.js"(exports2) {
|
|
2102
2109
|
"use strict";
|
|
2103
2110
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2104
|
-
exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2111
|
+
exports2.InvalidEscrowDomainError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2105
2112
|
var EncodingError = class extends Error {
|
|
2106
2113
|
constructor(message) {
|
|
2107
2114
|
super(message);
|
|
@@ -2214,6 +2221,13 @@ var require_errors2 = __commonJS({
|
|
|
2214
2221
|
}
|
|
2215
2222
|
};
|
|
2216
2223
|
exports2.DestinationTooLongError = DestinationTooLongError;
|
|
2224
|
+
var InvalidEscrowDomainError = class extends EncodingError {
|
|
2225
|
+
constructor(message) {
|
|
2226
|
+
super(message);
|
|
2227
|
+
this.name = "InvalidEscrowDomainError";
|
|
2228
|
+
}
|
|
2229
|
+
};
|
|
2230
|
+
exports2.InvalidEscrowDomainError = InvalidEscrowDomainError;
|
|
2217
2231
|
}
|
|
2218
2232
|
});
|
|
2219
2233
|
|
|
@@ -2922,12 +2936,17 @@ var require_escrow_domain = __commonJS({
|
|
|
2922
2936
|
"use strict";
|
|
2923
2937
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2924
2938
|
exports2.escrowDomainPrefixBytes = escrowDomainPrefixBytes;
|
|
2939
|
+
exports2.newEscrowDomain = newEscrowDomain;
|
|
2940
|
+
var errors_1 = require_errors2();
|
|
2925
2941
|
function escrowDomainPrefixBytes(domain) {
|
|
2926
2942
|
if (domain.clusterId.length !== 32) {
|
|
2927
|
-
throw new
|
|
2943
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.clusterId must be 32 bytes, got ${domain.clusterId.length}`);
|
|
2944
|
+
}
|
|
2945
|
+
if (domain.programId.isZero()) {
|
|
2946
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2928
2947
|
}
|
|
2929
2948
|
if (!Number.isInteger(domain.signatureDomainVersion) || domain.signatureDomainVersion < 1 || domain.signatureDomainVersion > 255) {
|
|
2930
|
-
throw new
|
|
2949
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${domain.signatureDomainVersion}`);
|
|
2931
2950
|
}
|
|
2932
2951
|
return [
|
|
2933
2952
|
new TextEncoder().encode("escrow"),
|
|
@@ -2936,6 +2955,25 @@ var require_escrow_domain = __commonJS({
|
|
|
2936
2955
|
domain.programId.toBytes()
|
|
2937
2956
|
];
|
|
2938
2957
|
}
|
|
2958
|
+
function newEscrowDomain(clusterName, signatureDomainVersion, programId) {
|
|
2959
|
+
const trimmed = clusterName.trim();
|
|
2960
|
+
if (trimmed.length === 0) {
|
|
2961
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain cluster name cannot be empty");
|
|
2962
|
+
}
|
|
2963
|
+
const encoded = new TextEncoder().encode(trimmed);
|
|
2964
|
+
if (encoded.length > 32) {
|
|
2965
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain cluster name "${trimmed}" exceeds 32 bytes`);
|
|
2966
|
+
}
|
|
2967
|
+
if (!Number.isInteger(signatureDomainVersion) || signatureDomainVersion < 1 || signatureDomainVersion > 255) {
|
|
2968
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${signatureDomainVersion}`);
|
|
2969
|
+
}
|
|
2970
|
+
if (programId.isZero()) {
|
|
2971
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2972
|
+
}
|
|
2973
|
+
const clusterId = new Uint8Array(32);
|
|
2974
|
+
clusterId.set(encoded);
|
|
2975
|
+
return { clusterId, signatureDomainVersion, programId };
|
|
2976
|
+
}
|
|
2939
2977
|
}
|
|
2940
2978
|
});
|
|
2941
2979
|
|
|
@@ -3134,7 +3172,7 @@ var require_dist4 = __commonJS({
|
|
|
3134
3172
|
"../contracts/svm/escrow-encoding/typescript/dist/index.js"(exports2) {
|
|
3135
3173
|
"use strict";
|
|
3136
3174
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
3137
|
-
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3175
|
+
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.InvalidEscrowDomainError = exports2.ZeroSourceAmountError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.newEscrowDomain = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3138
3176
|
var pubkey_1 = require_pubkey();
|
|
3139
3177
|
Object.defineProperty(exports2, "Pubkey", { enumerable: true, get: function() {
|
|
3140
3178
|
return pubkey_1.Pubkey;
|
|
@@ -3156,6 +3194,9 @@ var require_dist4 = __commonJS({
|
|
|
3156
3194
|
Object.defineProperty(exports2, "escrowDomainPrefixBytes", { enumerable: true, get: function() {
|
|
3157
3195
|
return escrow_domain_1.escrowDomainPrefixBytes;
|
|
3158
3196
|
} });
|
|
3197
|
+
Object.defineProperty(exports2, "newEscrowDomain", { enumerable: true, get: function() {
|
|
3198
|
+
return escrow_domain_1.newEscrowDomain;
|
|
3199
|
+
} });
|
|
3159
3200
|
var errors_1 = require_errors2();
|
|
3160
3201
|
Object.defineProperty(exports2, "EncodingError", { enumerable: true, get: function() {
|
|
3161
3202
|
return errors_1.EncodingError;
|
|
@@ -3193,6 +3234,12 @@ var require_dist4 = __commonJS({
|
|
|
3193
3234
|
Object.defineProperty(exports2, "ZeroDepositHashError", { enumerable: true, get: function() {
|
|
3194
3235
|
return errors_1.ZeroDepositHashError;
|
|
3195
3236
|
} });
|
|
3237
|
+
Object.defineProperty(exports2, "ZeroSourceAmountError", { enumerable: true, get: function() {
|
|
3238
|
+
return errors_1.ZeroSourceAmountError;
|
|
3239
|
+
} });
|
|
3240
|
+
Object.defineProperty(exports2, "InvalidEscrowDomainError", { enumerable: true, get: function() {
|
|
3241
|
+
return errors_1.InvalidEscrowDomainError;
|
|
3242
|
+
} });
|
|
3196
3243
|
Object.defineProperty(exports2, "InvalidPubkeyLengthError", { enumerable: true, get: function() {
|
|
3197
3244
|
return errors_1.InvalidPubkeyLengthError;
|
|
3198
3245
|
} });
|
|
@@ -4878,6 +4925,9 @@ var PaymentGatewayClient = class {
|
|
|
4878
4925
|
}
|
|
4879
4926
|
};
|
|
4880
4927
|
|
|
4928
|
+
// src/timeout-http-request.ts
|
|
4929
|
+
var import_axios2 = __toESM(require("axios"));
|
|
4930
|
+
|
|
4881
4931
|
// src/errors.ts
|
|
4882
4932
|
var GatewayTimeoutError = class extends Error {
|
|
4883
4933
|
constructor(baseUrl, timeoutMs) {
|
|
@@ -4941,6 +4991,12 @@ function isAxiosTimeout(error) {
|
|
|
4941
4991
|
if (failure.code === "ECONNABORTED" || failure.code === "ETIMEDOUT") return true;
|
|
4942
4992
|
return failure.code === "ERR_BAD_RESPONSE" && /stream has been aborted/i.test(failure.message ?? "");
|
|
4943
4993
|
}
|
|
4994
|
+
function dropPartialResponseOnTimeout(error) {
|
|
4995
|
+
if (isAxiosTimeout(error) && error !== null && typeof error === "object" && "response" in error) {
|
|
4996
|
+
delete error.response;
|
|
4997
|
+
}
|
|
4998
|
+
return error;
|
|
4999
|
+
}
|
|
4944
5000
|
function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
4945
5001
|
if (!isAxiosTimeout(error)) return error;
|
|
4946
5002
|
const configured = error.config?.timeout;
|
|
@@ -4948,6 +5004,11 @@ function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
|
4948
5004
|
}
|
|
4949
5005
|
|
|
4950
5006
|
// src/timeout-http-request.ts
|
|
5007
|
+
var timeoutAxios = import_axios2.default.create();
|
|
5008
|
+
timeoutAxios.interceptors.response.use(
|
|
5009
|
+
void 0,
|
|
5010
|
+
(error) => Promise.reject(dropPartialResponseOnTimeout(error))
|
|
5011
|
+
);
|
|
4951
5012
|
function withRequestTimeout(config2, timeouts) {
|
|
4952
5013
|
const request2 = new Interceptors();
|
|
4953
5014
|
for (const fn of config2?.interceptors?.request?._fns ?? []) request2.use(fn);
|
|
@@ -4963,7 +5024,7 @@ var TimeoutHttpRequest = class extends AxiosHttpRequest {
|
|
|
4963
5024
|
}
|
|
4964
5025
|
request(options) {
|
|
4965
5026
|
return new CancelablePromise((resolve2, reject, onCancel) => {
|
|
4966
|
-
const pending =
|
|
5027
|
+
const pending = request(this.config, options, timeoutAxios);
|
|
4967
5028
|
onCancel(() => pending.cancel());
|
|
4968
5029
|
pending.then(resolve2, (error) => {
|
|
4969
5030
|
const request2 = { method: options.method, url: options.url, wait: options.query?.wait };
|
|
@@ -5530,8 +5591,8 @@ var PaymentGatewayClient2 = class extends PaymentGatewayClient {
|
|
|
5530
5591
|
// reasonable against that type - would otherwise build an EIP-712 domain around a
|
|
5531
5592
|
// null verifyingContract.
|
|
5532
5593
|
permit2Contract: data.permit2_contract ?? void 0,
|
|
5533
|
-
// Which deposit witness the escrow on this chain pins
|
|
5534
|
-
// four-member
|
|
5594
|
+
// Which deposit witness the escrow on this chain pins. Absent means the
|
|
5595
|
+
// four-member witness — see ChainDefaults.depositWitnessVersion for why
|
|
5535
5596
|
// absence is the permissive default. EVM/Tron only; Solana uses the svm_* fields below.
|
|
5536
5597
|
depositWitnessVersion: data.deposit_witness_version ?? void 0,
|
|
5537
5598
|
// V3 Solana escrow domain separation. Present only for Solana
|
|
@@ -5717,7 +5778,7 @@ var PaymentGatewayClient2 = class extends PaymentGatewayClient {
|
|
|
5717
5778
|
};
|
|
5718
5779
|
|
|
5719
5780
|
// src/version.ts
|
|
5720
|
-
var PACKAGE_VERSION = true ? "3.0.
|
|
5781
|
+
var PACKAGE_VERSION = true ? "3.0.1" : "0.0.0-dev";
|
|
5721
5782
|
|
|
5722
5783
|
// src/cli/load-env.ts
|
|
5723
5784
|
var import_dotenv = require("dotenv");
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*
|
|
3
|
-
* Copyright
|
|
4
|
-
*
|
|
5
|
-
* Access and use are governed by the LICENSE file distributed with this package.
|
|
6
|
-
* Do not remove, alter, or obscure this notice.
|
|
3
|
+
* Copyright 2026 Atum Labs, Inc.
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
7
5
|
*/
|
|
8
6
|
"use strict";
|
|
9
7
|
var __create = Object.create;
|
|
@@ -12,11 +10,20 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
12
10
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
11
|
var __getProtoOf = Object.getPrototypeOf;
|
|
14
12
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
15
|
-
var __esm = (fn, res) => function __init() {
|
|
16
|
-
|
|
13
|
+
var __esm = (fn, res, err) => function __init() {
|
|
14
|
+
if (err) throw err[0];
|
|
15
|
+
try {
|
|
16
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
17
|
+
} catch (e) {
|
|
18
|
+
throw err = [e], e;
|
|
19
|
+
}
|
|
17
20
|
};
|
|
18
21
|
var __commonJS = (cb, mod) => function __require() {
|
|
19
|
-
|
|
22
|
+
try {
|
|
23
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
24
|
+
} catch (e) {
|
|
25
|
+
throw mod = 0, e;
|
|
26
|
+
}
|
|
20
27
|
};
|
|
21
28
|
var __copyProps = (to, from, except, desc) => {
|
|
22
29
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -2101,7 +2108,7 @@ var require_errors2 = __commonJS({
|
|
|
2101
2108
|
"../contracts/svm/escrow-encoding/typescript/dist/errors.js"(exports2) {
|
|
2102
2109
|
"use strict";
|
|
2103
2110
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2104
|
-
exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2111
|
+
exports2.InvalidEscrowDomainError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroSourceAmountError = exports2.ZeroQuoteHashError = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = void 0;
|
|
2105
2112
|
var EncodingError = class extends Error {
|
|
2106
2113
|
constructor(message) {
|
|
2107
2114
|
super(message);
|
|
@@ -2214,6 +2221,13 @@ var require_errors2 = __commonJS({
|
|
|
2214
2221
|
}
|
|
2215
2222
|
};
|
|
2216
2223
|
exports2.DestinationTooLongError = DestinationTooLongError;
|
|
2224
|
+
var InvalidEscrowDomainError = class extends EncodingError {
|
|
2225
|
+
constructor(message) {
|
|
2226
|
+
super(message);
|
|
2227
|
+
this.name = "InvalidEscrowDomainError";
|
|
2228
|
+
}
|
|
2229
|
+
};
|
|
2230
|
+
exports2.InvalidEscrowDomainError = InvalidEscrowDomainError;
|
|
2217
2231
|
}
|
|
2218
2232
|
});
|
|
2219
2233
|
|
|
@@ -2922,12 +2936,17 @@ var require_escrow_domain = __commonJS({
|
|
|
2922
2936
|
"use strict";
|
|
2923
2937
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2924
2938
|
exports2.escrowDomainPrefixBytes = escrowDomainPrefixBytes;
|
|
2939
|
+
exports2.newEscrowDomain = newEscrowDomain;
|
|
2940
|
+
var errors_1 = require_errors2();
|
|
2925
2941
|
function escrowDomainPrefixBytes(domain) {
|
|
2926
2942
|
if (domain.clusterId.length !== 32) {
|
|
2927
|
-
throw new
|
|
2943
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.clusterId must be 32 bytes, got ${domain.clusterId.length}`);
|
|
2944
|
+
}
|
|
2945
|
+
if (domain.programId.isZero()) {
|
|
2946
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2928
2947
|
}
|
|
2929
2948
|
if (!Number.isInteger(domain.signatureDomainVersion) || domain.signatureDomainVersion < 1 || domain.signatureDomainVersion > 255) {
|
|
2930
|
-
throw new
|
|
2949
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${domain.signatureDomainVersion}`);
|
|
2931
2950
|
}
|
|
2932
2951
|
return [
|
|
2933
2952
|
new TextEncoder().encode("escrow"),
|
|
@@ -2936,6 +2955,25 @@ var require_escrow_domain = __commonJS({
|
|
|
2936
2955
|
domain.programId.toBytes()
|
|
2937
2956
|
];
|
|
2938
2957
|
}
|
|
2958
|
+
function newEscrowDomain(clusterName, signatureDomainVersion, programId) {
|
|
2959
|
+
const trimmed = clusterName.trim();
|
|
2960
|
+
if (trimmed.length === 0) {
|
|
2961
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain cluster name cannot be empty");
|
|
2962
|
+
}
|
|
2963
|
+
const encoded = new TextEncoder().encode(trimmed);
|
|
2964
|
+
if (encoded.length > 32) {
|
|
2965
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain cluster name "${trimmed}" exceeds 32 bytes`);
|
|
2966
|
+
}
|
|
2967
|
+
if (!Number.isInteger(signatureDomainVersion) || signatureDomainVersion < 1 || signatureDomainVersion > 255) {
|
|
2968
|
+
throw new errors_1.InvalidEscrowDomainError(`EscrowDomain.signatureDomainVersion must be an integer in 1..=255, got ${signatureDomainVersion}`);
|
|
2969
|
+
}
|
|
2970
|
+
if (programId.isZero()) {
|
|
2971
|
+
throw new errors_1.InvalidEscrowDomainError("EscrowDomain.programId cannot be zero");
|
|
2972
|
+
}
|
|
2973
|
+
const clusterId = new Uint8Array(32);
|
|
2974
|
+
clusterId.set(encoded);
|
|
2975
|
+
return { clusterId, signatureDomainVersion, programId };
|
|
2976
|
+
}
|
|
2939
2977
|
}
|
|
2940
2978
|
});
|
|
2941
2979
|
|
|
@@ -3134,7 +3172,7 @@ var require_dist4 = __commonJS({
|
|
|
3134
3172
|
"../contracts/svm/escrow-encoding/typescript/dist/index.js"(exports2) {
|
|
3135
3173
|
"use strict";
|
|
3136
3174
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
3137
|
-
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3175
|
+
exports2.DEPOSIT_COMPUTE_UNIT_LIMIT = exports2.REPLAY_BUCKETS = exports2.MAX_VALID_SLOT = exports2.REPLAY_SLOTS = exports2.generateNonce = exports2.computeRefundHashV2 = exports2.computeRefundHash = exports2.computeReleaseHashV2 = exports2.computeReleaseHash = exports2.computeReserveHashV3 = exports2.computeReserveHashV2 = exports2.computeReserveHash = exports2.MAX_DESTINATION_LEN = exports2.computeDestinationHash = exports2.computeDepositHashV2 = exports2.computeDepositHash = exports2.InvalidHexError = exports2.InvalidBase58Error = exports2.InvalidPubkeyLengthError = exports2.InvalidEscrowDomainError = exports2.ZeroSourceAmountError = exports2.ZeroDepositHashError = exports2.ZeroRecipientError = exports2.ZeroReleaserError = exports2.ZeroReserverError = exports2.ZeroAmountError = exports2.ZeroMintError = exports2.ZeroDepositorError = exports2.DestinationTooLongError = exports2.EmptyDestinationError = exports2.ZeroQuoteHashError = exports2.ZeroDepositRequestHashError = exports2.EncodingError = exports2.newEscrowDomain = exports2.escrowDomainPrefixBytes = exports2.isZeroBytes32 = exports2.stringToBytes = exports2.keccak256 = exports2.encodeU64LE = exports2.Pubkey = void 0;
|
|
3138
3176
|
var pubkey_1 = require_pubkey();
|
|
3139
3177
|
Object.defineProperty(exports2, "Pubkey", { enumerable: true, get: function() {
|
|
3140
3178
|
return pubkey_1.Pubkey;
|
|
@@ -3156,6 +3194,9 @@ var require_dist4 = __commonJS({
|
|
|
3156
3194
|
Object.defineProperty(exports2, "escrowDomainPrefixBytes", { enumerable: true, get: function() {
|
|
3157
3195
|
return escrow_domain_1.escrowDomainPrefixBytes;
|
|
3158
3196
|
} });
|
|
3197
|
+
Object.defineProperty(exports2, "newEscrowDomain", { enumerable: true, get: function() {
|
|
3198
|
+
return escrow_domain_1.newEscrowDomain;
|
|
3199
|
+
} });
|
|
3159
3200
|
var errors_1 = require_errors2();
|
|
3160
3201
|
Object.defineProperty(exports2, "EncodingError", { enumerable: true, get: function() {
|
|
3161
3202
|
return errors_1.EncodingError;
|
|
@@ -3193,6 +3234,12 @@ var require_dist4 = __commonJS({
|
|
|
3193
3234
|
Object.defineProperty(exports2, "ZeroDepositHashError", { enumerable: true, get: function() {
|
|
3194
3235
|
return errors_1.ZeroDepositHashError;
|
|
3195
3236
|
} });
|
|
3237
|
+
Object.defineProperty(exports2, "ZeroSourceAmountError", { enumerable: true, get: function() {
|
|
3238
|
+
return errors_1.ZeroSourceAmountError;
|
|
3239
|
+
} });
|
|
3240
|
+
Object.defineProperty(exports2, "InvalidEscrowDomainError", { enumerable: true, get: function() {
|
|
3241
|
+
return errors_1.InvalidEscrowDomainError;
|
|
3242
|
+
} });
|
|
3196
3243
|
Object.defineProperty(exports2, "InvalidPubkeyLengthError", { enumerable: true, get: function() {
|
|
3197
3244
|
return errors_1.InvalidPubkeyLengthError;
|
|
3198
3245
|
} });
|
|
@@ -4878,6 +4925,9 @@ var PaymentGatewayClient = class {
|
|
|
4878
4925
|
}
|
|
4879
4926
|
};
|
|
4880
4927
|
|
|
4928
|
+
// src/timeout-http-request.ts
|
|
4929
|
+
var import_axios2 = __toESM(require("axios"));
|
|
4930
|
+
|
|
4881
4931
|
// src/errors.ts
|
|
4882
4932
|
var GatewayTimeoutError = class extends Error {
|
|
4883
4933
|
constructor(baseUrl, timeoutMs) {
|
|
@@ -4941,6 +4991,12 @@ function isAxiosTimeout(error) {
|
|
|
4941
4991
|
if (failure.code === "ECONNABORTED" || failure.code === "ETIMEDOUT") return true;
|
|
4942
4992
|
return failure.code === "ERR_BAD_RESPONSE" && /stream has been aborted/i.test(failure.message ?? "");
|
|
4943
4993
|
}
|
|
4994
|
+
function dropPartialResponseOnTimeout(error) {
|
|
4995
|
+
if (isAxiosTimeout(error) && error !== null && typeof error === "object" && "response" in error) {
|
|
4996
|
+
delete error.response;
|
|
4997
|
+
}
|
|
4998
|
+
return error;
|
|
4999
|
+
}
|
|
4944
5000
|
function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
4945
5001
|
if (!isAxiosTimeout(error)) return error;
|
|
4946
5002
|
const configured = error.config?.timeout;
|
|
@@ -4948,6 +5004,11 @@ function translateTimeout(error, baseUrl, fallbackTimeoutMs) {
|
|
|
4948
5004
|
}
|
|
4949
5005
|
|
|
4950
5006
|
// src/timeout-http-request.ts
|
|
5007
|
+
var timeoutAxios = import_axios2.default.create();
|
|
5008
|
+
timeoutAxios.interceptors.response.use(
|
|
5009
|
+
void 0,
|
|
5010
|
+
(error) => Promise.reject(dropPartialResponseOnTimeout(error))
|
|
5011
|
+
);
|
|
4951
5012
|
function withRequestTimeout(config2, timeouts) {
|
|
4952
5013
|
const request2 = new Interceptors();
|
|
4953
5014
|
for (const fn of config2?.interceptors?.request?._fns ?? []) request2.use(fn);
|
|
@@ -4963,7 +5024,7 @@ var TimeoutHttpRequest = class extends AxiosHttpRequest {
|
|
|
4963
5024
|
}
|
|
4964
5025
|
request(options) {
|
|
4965
5026
|
return new CancelablePromise((resolve2, reject, onCancel) => {
|
|
4966
|
-
const pending =
|
|
5027
|
+
const pending = request(this.config, options, timeoutAxios);
|
|
4967
5028
|
onCancel(() => pending.cancel());
|
|
4968
5029
|
pending.then(resolve2, (error) => {
|
|
4969
5030
|
const request2 = { method: options.method, url: options.url, wait: options.query?.wait };
|
|
@@ -5530,8 +5591,8 @@ var PaymentGatewayClient2 = class extends PaymentGatewayClient {
|
|
|
5530
5591
|
// reasonable against that type - would otherwise build an EIP-712 domain around a
|
|
5531
5592
|
// null verifyingContract.
|
|
5532
5593
|
permit2Contract: data.permit2_contract ?? void 0,
|
|
5533
|
-
// Which deposit witness the escrow on this chain pins
|
|
5534
|
-
// four-member
|
|
5594
|
+
// Which deposit witness the escrow on this chain pins. Absent means the
|
|
5595
|
+
// four-member witness — see ChainDefaults.depositWitnessVersion for why
|
|
5535
5596
|
// absence is the permissive default. EVM/Tron only; Solana uses the svm_* fields below.
|
|
5536
5597
|
depositWitnessVersion: data.deposit_witness_version ?? void 0,
|
|
5537
5598
|
// V3 Solana escrow domain separation. Present only for Solana
|
|
@@ -5746,7 +5807,7 @@ function runCli(program2, ...parseArgs) {
|
|
|
5746
5807
|
}
|
|
5747
5808
|
|
|
5748
5809
|
// src/version.ts
|
|
5749
|
-
var PACKAGE_VERSION = true ? "3.0.
|
|
5810
|
+
var PACKAGE_VERSION = true ? "3.0.1" : "0.0.0-dev";
|
|
5750
5811
|
|
|
5751
5812
|
// src/cli/load-env.ts
|
|
5752
5813
|
var import_dotenv = require("dotenv");
|