xrpl 1.0.0-mpt-beta → 1.0.3-mpt-beta
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/build/xrpl-latest.js +528 -314
- package/build/xrpl-latest.js.map +1 -1
- package/dist/npm/Wallet/defaultFaucets.d.ts +1 -2
- package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/Wallet/defaultFaucets.js +0 -5
- package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/client/RequestManager.d.ts +5 -4
- package/dist/npm/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/client/RequestManager.js.map +1 -1
- package/dist/npm/client/connection.d.ts +2 -2
- package/dist/npm/client/connection.d.ts.map +1 -1
- package/dist/npm/client/connection.js.map +1 -1
- package/dist/npm/client/index.d.ts +4 -3
- package/dist/npm/client/index.d.ts.map +1 -1
- package/dist/npm/client/index.js +17 -10
- package/dist/npm/client/index.js.map +1 -1
- package/dist/npm/client/partialPayment.d.ts +2 -1
- package/dist/npm/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/client/partialPayment.js +10 -3
- package/dist/npm/client/partialPayment.js.map +1 -1
- package/dist/npm/models/common/index.d.ts +14 -1
- package/dist/npm/models/common/index.d.ts.map +1 -1
- package/dist/npm/models/common/index.js +4 -0
- package/dist/npm/models/common/index.js.map +1 -1
- package/dist/npm/models/ledger/AMM.d.ts +2 -2
- package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
- package/dist/npm/models/ledger/Amendments.d.ts +2 -2
- package/dist/npm/models/ledger/Amendments.d.ts.map +1 -1
- package/dist/npm/models/ledger/BaseLedgerEntry.d.ts +3 -3
- package/dist/npm/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
- package/dist/npm/models/ledger/DirectoryNode.d.ts +2 -2
- package/dist/npm/models/ledger/DirectoryNode.d.ts.map +1 -1
- package/dist/npm/models/ledger/FeeSettings.d.ts +2 -2
- package/dist/npm/models/ledger/FeeSettings.d.ts.map +1 -1
- package/dist/npm/models/ledger/Ledger.d.ts +10 -2
- package/dist/npm/models/ledger/Ledger.d.ts.map +1 -1
- package/dist/npm/models/ledger/LedgerEntry.d.ts +3 -2
- package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/models/ledger/LedgerHashes.d.ts +2 -2
- package/dist/npm/models/ledger/LedgerHashes.d.ts.map +1 -1
- package/dist/npm/models/ledger/NegativeUNL.d.ts +2 -2
- package/dist/npm/models/ledger/NegativeUNL.d.ts.map +1 -1
- package/dist/npm/models/ledger/Oracle.d.ts +12 -0
- package/dist/npm/models/ledger/Oracle.d.ts.map +1 -0
- package/dist/npm/models/ledger/Oracle.js +3 -0
- package/dist/npm/models/ledger/Oracle.js.map +1 -0
- package/dist/npm/models/ledger/RippleState.d.ts +2 -1
- package/dist/npm/models/ledger/RippleState.d.ts.map +1 -1
- package/dist/npm/models/ledger/RippleState.js +1 -0
- package/dist/npm/models/ledger/RippleState.js.map +1 -1
- package/dist/npm/models/ledger/index.d.ts +3 -2
- package/dist/npm/models/ledger/index.d.ts.map +1 -1
- package/dist/npm/models/ledger/index.js.map +1 -1
- package/dist/npm/models/methods/accountChannels.d.ts +1 -1
- package/dist/npm/models/methods/accountChannels.d.ts.map +1 -1
- package/dist/npm/models/methods/accountInfo.d.ts +17 -4
- package/dist/npm/models/methods/accountInfo.d.ts.map +1 -1
- package/dist/npm/models/methods/accountTx.d.ts +11 -5
- package/dist/npm/models/methods/accountTx.d.ts.map +1 -1
- package/dist/npm/models/methods/getAggregatePrice.d.ts +31 -0
- package/dist/npm/models/methods/getAggregatePrice.d.ts.map +1 -0
- package/dist/npm/models/methods/getAggregatePrice.js +3 -0
- package/dist/npm/models/methods/getAggregatePrice.js.map +1 -0
- package/dist/npm/models/methods/index.d.ts +14 -11
- package/dist/npm/models/methods/index.d.ts.map +1 -1
- package/dist/npm/models/methods/ledger.d.ts +17 -5
- package/dist/npm/models/methods/ledger.d.ts.map +1 -1
- package/dist/npm/models/methods/ledgerEntry.d.ts +5 -0
- package/dist/npm/models/methods/ledgerEntry.d.ts.map +1 -1
- package/dist/npm/models/methods/nftsByIssuer.d.ts +19 -0
- package/dist/npm/models/methods/nftsByIssuer.d.ts.map +1 -0
- package/dist/npm/models/methods/nftsByIssuer.js +3 -0
- package/dist/npm/models/methods/nftsByIssuer.js.map +1 -0
- package/dist/npm/models/methods/submitMultisigned.d.ts +16 -5
- package/dist/npm/models/methods/submitMultisigned.d.ts.map +1 -1
- package/dist/npm/models/methods/tx.d.ts +20 -8
- package/dist/npm/models/methods/tx.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMDeposit.d.ts +3 -1
- package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMDeposit.js +1 -0
- package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/models/transactions/index.d.ts +2 -0
- package/dist/npm/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/models/transactions/index.js.map +1 -1
- package/dist/npm/models/transactions/metadata.d.ts +6 -3
- package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/models/transactions/metadata.js.map +1 -1
- package/dist/npm/models/transactions/oracleDelete.d.ts +7 -0
- package/dist/npm/models/transactions/oracleDelete.d.ts.map +1 -0
- package/dist/npm/models/transactions/oracleDelete.js +10 -0
- package/dist/npm/models/transactions/oracleDelete.js.map +1 -0
- package/dist/npm/models/transactions/oracleSet.d.ts +13 -0
- package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -0
- package/dist/npm/models/transactions/oracleSet.js +59 -0
- package/dist/npm/models/transactions/oracleSet.js.map +1 -0
- package/dist/npm/models/transactions/payment.d.ts +6 -6
- package/dist/npm/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/models/transactions/payment.js +1 -1
- package/dist/npm/models/transactions/transaction.d.ts +3 -1
- package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/models/transactions/transaction.js +8 -0
- package/dist/npm/models/transactions/transaction.js.map +1 -1
- package/dist/npm/snippets/src/claimPayChannel.js +1 -1
- package/dist/npm/snippets/src/claimPayChannel.js.map +1 -1
- package/dist/npm/snippets/src/sendEscrow.js +1 -1
- package/dist/npm/snippets/src/sendEscrow.js.map +1 -1
- package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
- package/dist/npm/src/Wallet/defaultFaucets.d.ts +1 -2
- package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/src/Wallet/defaultFaucets.js +0 -5
- package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/src/client/RequestManager.d.ts +5 -4
- package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/src/client/RequestManager.js.map +1 -1
- package/dist/npm/src/client/connection.d.ts +2 -2
- package/dist/npm/src/client/connection.d.ts.map +1 -1
- package/dist/npm/src/client/connection.js.map +1 -1
- package/dist/npm/src/client/index.d.ts +4 -3
- package/dist/npm/src/client/index.d.ts.map +1 -1
- package/dist/npm/src/client/index.js +17 -10
- package/dist/npm/src/client/index.js.map +1 -1
- package/dist/npm/src/client/partialPayment.d.ts +2 -1
- package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/src/client/partialPayment.js +10 -3
- package/dist/npm/src/client/partialPayment.js.map +1 -1
- package/dist/npm/src/models/common/index.d.ts +14 -1
- package/dist/npm/src/models/common/index.d.ts.map +1 -1
- package/dist/npm/src/models/common/index.js +4 -0
- package/dist/npm/src/models/common/index.js.map +1 -1
- package/dist/npm/src/models/ledger/AMM.d.ts +2 -2
- package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Amendments.d.ts +2 -2
- package/dist/npm/src/models/ledger/Amendments.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts +3 -3
- package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/DirectoryNode.d.ts +2 -2
- package/dist/npm/src/models/ledger/DirectoryNode.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/FeeSettings.d.ts +2 -2
- package/dist/npm/src/models/ledger/FeeSettings.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Ledger.d.ts +10 -2
- package/dist/npm/src/models/ledger/Ledger.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts +3 -2
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/LedgerHashes.d.ts +2 -2
- package/dist/npm/src/models/ledger/LedgerHashes.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/NegativeUNL.d.ts +2 -2
- package/dist/npm/src/models/ledger/NegativeUNL.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Oracle.d.ts +12 -0
- package/dist/npm/src/models/ledger/Oracle.d.ts.map +1 -0
- package/dist/npm/src/models/ledger/Oracle.js +3 -0
- package/dist/npm/src/models/ledger/Oracle.js.map +1 -0
- package/dist/npm/src/models/ledger/RippleState.d.ts +2 -1
- package/dist/npm/src/models/ledger/RippleState.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/RippleState.js +1 -0
- package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
- package/dist/npm/src/models/ledger/index.d.ts +3 -2
- package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/index.js.map +1 -1
- package/dist/npm/src/models/methods/accountChannels.d.ts +1 -1
- package/dist/npm/src/models/methods/accountChannels.d.ts.map +1 -1
- package/dist/npm/src/models/methods/accountInfo.d.ts +17 -4
- package/dist/npm/src/models/methods/accountInfo.d.ts.map +1 -1
- package/dist/npm/src/models/methods/accountTx.d.ts +11 -5
- package/dist/npm/src/models/methods/accountTx.d.ts.map +1 -1
- package/dist/npm/src/models/methods/getAggregatePrice.d.ts +31 -0
- package/dist/npm/src/models/methods/getAggregatePrice.d.ts.map +1 -0
- package/dist/npm/src/models/methods/getAggregatePrice.js +3 -0
- package/dist/npm/src/models/methods/getAggregatePrice.js.map +1 -0
- package/dist/npm/src/models/methods/index.d.ts +14 -11
- package/dist/npm/src/models/methods/index.d.ts.map +1 -1
- package/dist/npm/src/models/methods/ledger.d.ts +17 -5
- package/dist/npm/src/models/methods/ledger.d.ts.map +1 -1
- package/dist/npm/src/models/methods/ledgerEntry.d.ts +5 -0
- package/dist/npm/src/models/methods/ledgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/methods/nftsByIssuer.d.ts +19 -0
- package/dist/npm/src/models/methods/nftsByIssuer.d.ts.map +1 -0
- package/dist/npm/src/models/methods/nftsByIssuer.js +3 -0
- package/dist/npm/src/models/methods/nftsByIssuer.js.map +1 -0
- package/dist/npm/src/models/methods/submitMultisigned.d.ts +16 -5
- package/dist/npm/src/models/methods/submitMultisigned.d.ts.map +1 -1
- package/dist/npm/src/models/methods/tx.d.ts +20 -8
- package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.d.ts +3 -1
- package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.js +1 -0
- package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/src/models/transactions/index.d.ts +2 -0
- package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/index.js.map +1 -1
- package/dist/npm/src/models/transactions/metadata.d.ts +6 -3
- package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/metadata.js.map +1 -1
- package/dist/npm/src/models/transactions/oracleDelete.d.ts +7 -0
- package/dist/npm/src/models/transactions/oracleDelete.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/oracleDelete.js +10 -0
- package/dist/npm/src/models/transactions/oracleDelete.js.map +1 -0
- package/dist/npm/src/models/transactions/oracleSet.d.ts +13 -0
- package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/oracleSet.js +59 -0
- package/dist/npm/src/models/transactions/oracleSet.js.map +1 -0
- package/dist/npm/src/models/transactions/payment.d.ts +6 -6
- package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/payment.js +1 -1
- package/dist/npm/src/models/transactions/transaction.d.ts +3 -1
- package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/transaction.js +8 -0
- package/dist/npm/src/models/transactions/transaction.js.map +1 -1
- package/dist/npm/src/sugar/autofill.d.ts +1 -1
- package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/src/sugar/autofill.js +2 -4
- package/dist/npm/src/sugar/autofill.js.map +1 -1
- package/dist/npm/src/sugar/getFeeXrp.d.ts +1 -1
- package/dist/npm/src/sugar/getFeeXrp.d.ts.map +1 -1
- package/dist/npm/src/sugar/getFeeXrp.js +3 -2
- package/dist/npm/src/sugar/getFeeXrp.js.map +1 -1
- package/dist/npm/src/sugar/submit.d.ts.map +1 -1
- package/dist/npm/src/sugar/submit.js.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.d.ts +4 -3
- package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
- package/dist/npm/src/utils/index.d.ts +2 -1
- package/dist/npm/src/utils/index.d.ts.map +1 -1
- package/dist/npm/src/utils/index.js.map +1 -1
- package/dist/npm/sugar/autofill.d.ts +1 -1
- package/dist/npm/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/sugar/autofill.js +2 -4
- package/dist/npm/sugar/autofill.js.map +1 -1
- package/dist/npm/sugar/getFeeXrp.d.ts +1 -1
- package/dist/npm/sugar/getFeeXrp.d.ts.map +1 -1
- package/dist/npm/sugar/getFeeXrp.js +3 -2
- package/dist/npm/sugar/getFeeXrp.js.map +1 -1
- package/dist/npm/sugar/submit.d.ts.map +1 -1
- package/dist/npm/sugar/submit.js.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.d.ts +4 -3
- package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
- package/dist/npm/utils/index.d.ts +2 -1
- package/dist/npm/utils/index.d.ts.map +1 -1
- package/dist/npm/utils/index.js.map +1 -1
- package/package.json +5 -5
- package/src/Wallet/defaultFaucets.ts +0 -6
- package/src/client/RequestManager.ts +17 -12
- package/src/client/connection.ts +7 -5
- package/src/client/index.ts +79 -21
- package/src/client/partialPayment.ts +38 -14
- package/src/models/common/index.ts +42 -1
- package/src/models/ledger/AMM.ts +2 -2
- package/src/models/ledger/Amendments.ts +2 -2
- package/src/models/ledger/BaseLedgerEntry.ts +9 -5
- package/src/models/ledger/DirectoryNode.ts +2 -2
- package/src/models/ledger/FeeSettings.ts +4 -2
- package/src/models/ledger/Ledger.ts +40 -8
- package/src/models/ledger/LedgerEntry.ts +3 -0
- package/src/models/ledger/LedgerHashes.ts +2 -4
- package/src/models/ledger/NegativeUNL.ts +2 -2
- package/src/models/ledger/Oracle.ts +43 -0
- package/src/models/ledger/RippleState.ts +2 -0
- package/src/models/ledger/index.ts +4 -1
- package/src/models/methods/accountChannels.ts +64 -1
- package/src/models/methods/accountInfo.ts +58 -12
- package/src/models/methods/accountTx.ts +49 -8
- package/src/models/methods/getAggregatePrice.ts +119 -0
- package/src/models/methods/index.ts +63 -23
- package/src/models/methods/ledger.ts +41 -5
- package/src/models/methods/ledgerEntry.ts +16 -0
- package/src/models/methods/nftsByIssuer.ts +68 -0
- package/src/models/methods/submitMultisigned.ts +48 -16
- package/src/models/methods/tx.ts +74 -22
- package/src/models/transactions/AMMDeposit.ts +2 -0
- package/src/models/transactions/index.ts +2 -0
- package/src/models/transactions/metadata.ts +4 -3
- package/src/models/transactions/oracleDelete.ts +32 -0
- package/src/models/transactions/oracleSet.ts +176 -0
- package/src/models/transactions/payment.ts +6 -6
- package/src/models/transactions/transaction.ts +12 -0
- package/src/sugar/autofill.ts +4 -10
- package/src/sugar/getFeeXrp.ts +6 -3
- package/src/sugar/submit.ts +5 -3
- package/src/utils/hashes/hashLedger.ts +8 -5
- package/src/utils/index.ts +2 -1
package/build/xrpl-latest.js
CHANGED
@@ -11,7 +11,8 @@ var xrpl;
|
|
11
11
|
"use strict";
|
12
12
|
|
13
13
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
14
|
-
exports.
|
14
|
+
exports.getHash = getHash;
|
15
|
+
exports.createCurve = createCurve;
|
15
16
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
16
17
|
const hmac_1 = __webpack_require__(/*! @noble/hashes/hmac */ "../../node_modules/@noble/hashes/hmac.js");
|
17
18
|
const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
|
@@ -24,12 +25,10 @@ function getHash(hash) {
|
|
24
25
|
randomBytes: utils_1.randomBytes,
|
25
26
|
};
|
26
27
|
}
|
27
|
-
exports.getHash = getHash;
|
28
28
|
function createCurve(curveDef, defHash) {
|
29
29
|
const create = (hash) => (0, weierstrass_js_1.weierstrass)({ ...curveDef, ...getHash(hash) });
|
30
30
|
return Object.freeze({ ...create(defHash), create });
|
31
31
|
}
|
32
|
-
exports.createCurve = createCurve;
|
33
32
|
|
34
33
|
|
35
34
|
/***/ }),
|
@@ -43,7 +42,8 @@ exports.createCurve = createCurve;
|
|
43
42
|
"use strict";
|
44
43
|
|
45
44
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
46
|
-
exports.
|
45
|
+
exports.wNAF = wNAF;
|
46
|
+
exports.validateBasic = validateBasic;
|
47
47
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
48
48
|
// Abelian group utilities
|
49
49
|
const modular_js_1 = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
@@ -181,7 +181,6 @@ function wNAF(c, bits) {
|
|
181
181
|
},
|
182
182
|
};
|
183
183
|
}
|
184
|
-
exports.wNAF = wNAF;
|
185
184
|
function validateBasic(curve) {
|
186
185
|
(0, modular_js_1.validateField)(curve.Fp);
|
187
186
|
(0, utils_js_1.validateObject)(curve, {
|
@@ -200,7 +199,6 @@ function validateBasic(curve) {
|
|
200
199
|
...{ p: curve.Fp.ORDER },
|
201
200
|
});
|
202
201
|
}
|
203
|
-
exports.validateBasic = validateBasic;
|
204
202
|
|
205
203
|
|
206
204
|
/***/ }),
|
@@ -214,13 +212,13 @@ exports.validateBasic = validateBasic;
|
|
214
212
|
"use strict";
|
215
213
|
|
216
214
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
217
|
-
exports.twistedEdwards =
|
215
|
+
exports.twistedEdwards = twistedEdwards;
|
218
216
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
219
217
|
// Twisted Edwards curve. The formula is: ax² + y² = 1 + dx²y²
|
218
|
+
const curve_js_1 = __webpack_require__(/*! ./curve.js */ "../../node_modules/@noble/curves/abstract/curve.js");
|
220
219
|
const modular_js_1 = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
221
220
|
const ut = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
222
221
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
223
|
-
const curve_js_1 = __webpack_require__(/*! ./curve.js */ "../../node_modules/@noble/curves/abstract/curve.js");
|
224
222
|
// Be friendly to bad ECMAScript parsers by not using bigint literals
|
225
223
|
// prettier-ignore
|
226
224
|
const _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _8n = BigInt(8);
|
@@ -639,7 +637,6 @@ function twistedEdwards(curveDef) {
|
|
639
637
|
utils,
|
640
638
|
};
|
641
639
|
}
|
642
|
-
exports.twistedEdwards = twistedEdwards;
|
643
640
|
|
644
641
|
|
645
642
|
/***/ }),
|
@@ -653,16 +650,13 @@ exports.twistedEdwards = twistedEdwards;
|
|
653
650
|
"use strict";
|
654
651
|
|
655
652
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
656
|
-
exports.
|
653
|
+
exports.expand_message_xmd = expand_message_xmd;
|
654
|
+
exports.expand_message_xof = expand_message_xof;
|
655
|
+
exports.hash_to_field = hash_to_field;
|
656
|
+
exports.isogenyMap = isogenyMap;
|
657
|
+
exports.createHasher = createHasher;
|
657
658
|
const modular_js_1 = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
658
659
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
659
|
-
function validateDST(dst) {
|
660
|
-
if (dst instanceof Uint8Array)
|
661
|
-
return dst;
|
662
|
-
if (typeof dst === 'string')
|
663
|
-
return (0, utils_js_1.utf8ToBytes)(dst);
|
664
|
-
throw new Error('DST must be Uint8Array or string');
|
665
|
-
}
|
666
660
|
// Octet Stream to Integer. "spec" implementation of os2ip is 2.5x slower vs bytesToNumberBE.
|
667
661
|
const os2ip = utils_js_1.bytesToNumberBE;
|
668
662
|
// Integer to Octet Stream (numberToBytesBE)
|
@@ -684,20 +678,16 @@ function strxor(a, b) {
|
|
684
678
|
}
|
685
679
|
return arr;
|
686
680
|
}
|
687
|
-
function
|
688
|
-
if (!(item instanceof Uint8Array))
|
689
|
-
throw new Error('Uint8Array expected');
|
690
|
-
}
|
691
|
-
function isNum(item) {
|
681
|
+
function anum(item) {
|
692
682
|
if (!Number.isSafeInteger(item))
|
693
683
|
throw new Error('number expected');
|
694
684
|
}
|
695
685
|
// Produces a uniformly random byte string using a cryptographic hash function H that outputs b bits
|
696
686
|
// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.1
|
697
687
|
function expand_message_xmd(msg, DST, lenInBytes, H) {
|
698
|
-
|
699
|
-
|
700
|
-
|
688
|
+
(0, utils_js_1.abytes)(msg);
|
689
|
+
(0, utils_js_1.abytes)(DST);
|
690
|
+
anum(lenInBytes);
|
701
691
|
// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3
|
702
692
|
if (DST.length > 255)
|
703
693
|
DST = H((0, utils_js_1.concatBytes)((0, utils_js_1.utf8ToBytes)('H2C-OVERSIZE-DST-'), DST));
|
@@ -718,16 +708,15 @@ function expand_message_xmd(msg, DST, lenInBytes, H) {
|
|
718
708
|
const pseudo_random_bytes = (0, utils_js_1.concatBytes)(...b);
|
719
709
|
return pseudo_random_bytes.slice(0, lenInBytes);
|
720
710
|
}
|
721
|
-
exports.expand_message_xmd = expand_message_xmd;
|
722
711
|
// Produces a uniformly random byte string using an extendable-output function (XOF) H.
|
723
712
|
// 1. The collision resistance of H MUST be at least k bits.
|
724
713
|
// 2. H MUST be an XOF that has been proved indifferentiable from
|
725
714
|
// a random oracle under a reasonable cryptographic assumption.
|
726
715
|
// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.2
|
727
716
|
function expand_message_xof(msg, DST, lenInBytes, k, H) {
|
728
|
-
|
729
|
-
|
730
|
-
|
717
|
+
(0, utils_js_1.abytes)(msg);
|
718
|
+
(0, utils_js_1.abytes)(DST);
|
719
|
+
anum(lenInBytes);
|
731
720
|
// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3
|
732
721
|
// DST = H('H2C-OVERSIZE-DST-' || a_very_long_DST, Math.ceil((lenInBytes * k) / 8));
|
733
722
|
if (DST.length > 255) {
|
@@ -744,7 +733,6 @@ function expand_message_xof(msg, DST, lenInBytes, k, H) {
|
|
744
733
|
.update(i2osp(DST.length, 1))
|
745
734
|
.digest());
|
746
735
|
}
|
747
|
-
exports.expand_message_xof = expand_message_xof;
|
748
736
|
/**
|
749
737
|
* Hashes arbitrary-length byte strings to a list of one or more elements of a finite field F
|
750
738
|
* https://www.rfc-editor.org/rfc/rfc9380#section-5.2
|
@@ -762,9 +750,9 @@ function hash_to_field(msg, count, options) {
|
|
762
750
|
hash: 'hash',
|
763
751
|
});
|
764
752
|
const { p, k, m, hash, expand, DST: _DST } = options;
|
765
|
-
|
766
|
-
|
767
|
-
const DST =
|
753
|
+
(0, utils_js_1.abytes)(msg);
|
754
|
+
anum(count);
|
755
|
+
const DST = typeof _DST === 'string' ? (0, utils_js_1.utf8ToBytes)(_DST) : _DST;
|
768
756
|
const log2p = p.toString(2).length;
|
769
757
|
const L = Math.ceil((log2p + k) / 8); // section 5.1 of ietf draft link above
|
770
758
|
const len_in_bytes = count * m * L;
|
@@ -794,7 +782,6 @@ function hash_to_field(msg, count, options) {
|
|
794
782
|
}
|
795
783
|
return u;
|
796
784
|
}
|
797
|
-
exports.hash_to_field = hash_to_field;
|
798
785
|
function isogenyMap(field, map) {
|
799
786
|
// Make same order as in spec
|
800
787
|
const COEFF = map.map((i) => Array.from(i).reverse());
|
@@ -805,7 +792,6 @@ function isogenyMap(field, map) {
|
|
805
792
|
return { x, y };
|
806
793
|
};
|
807
794
|
}
|
808
|
-
exports.isogenyMap = isogenyMap;
|
809
795
|
function createHasher(Point, mapToCurve, def) {
|
810
796
|
if (typeof mapToCurve !== 'function')
|
811
797
|
throw new Error('mapToCurve() must be defined');
|
@@ -828,9 +814,19 @@ function createHasher(Point, mapToCurve, def) {
|
|
828
814
|
P.assertValidity();
|
829
815
|
return P;
|
830
816
|
},
|
817
|
+
// Same as encodeToCurve, but without hash
|
818
|
+
mapToCurve(scalars) {
|
819
|
+
if (!Array.isArray(scalars))
|
820
|
+
throw new Error('mapToCurve: expected array of bigints');
|
821
|
+
for (const i of scalars)
|
822
|
+
if (typeof i !== 'bigint')
|
823
|
+
throw new Error(`mapToCurve: expected array of bigints, got ${i} in array`);
|
824
|
+
const P = Point.fromAffine(mapToCurve(scalars)).clearCofactor();
|
825
|
+
P.assertValidity();
|
826
|
+
return P;
|
827
|
+
},
|
831
828
|
};
|
832
829
|
}
|
833
|
-
exports.createHasher = createHasher;
|
834
830
|
|
835
831
|
|
836
832
|
/***/ }),
|
@@ -844,7 +840,26 @@ exports.createHasher = createHasher;
|
|
844
840
|
"use strict";
|
845
841
|
|
846
842
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
847
|
-
exports.
|
843
|
+
exports.isNegativeLE = void 0;
|
844
|
+
exports.mod = mod;
|
845
|
+
exports.pow = pow;
|
846
|
+
exports.pow2 = pow2;
|
847
|
+
exports.invert = invert;
|
848
|
+
exports.tonelliShanks = tonelliShanks;
|
849
|
+
exports.FpSqrt = FpSqrt;
|
850
|
+
exports.validateField = validateField;
|
851
|
+
exports.FpPow = FpPow;
|
852
|
+
exports.FpInvertBatch = FpInvertBatch;
|
853
|
+
exports.FpDiv = FpDiv;
|
854
|
+
exports.FpIsSquare = FpIsSquare;
|
855
|
+
exports.nLength = nLength;
|
856
|
+
exports.Field = Field;
|
857
|
+
exports.FpSqrtOdd = FpSqrtOdd;
|
858
|
+
exports.FpSqrtEven = FpSqrtEven;
|
859
|
+
exports.hashToPrivateScalar = hashToPrivateScalar;
|
860
|
+
exports.getFieldBytesLength = getFieldBytesLength;
|
861
|
+
exports.getMinHashLength = getMinHashLength;
|
862
|
+
exports.mapHashToField = mapHashToField;
|
848
863
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
849
864
|
// Utilities for modular arithmetics and finite fields
|
850
865
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
@@ -859,7 +874,6 @@ function mod(a, b) {
|
|
859
874
|
const result = a % b;
|
860
875
|
return result >= _0n ? result : b + result;
|
861
876
|
}
|
862
|
-
exports.mod = mod;
|
863
877
|
/**
|
864
878
|
* Efficiently raise num to power and do modular division.
|
865
879
|
* Unsafe in some contexts: uses ladder, so can expose bigint bits.
|
@@ -881,7 +895,6 @@ function pow(num, power, modulo) {
|
|
881
895
|
}
|
882
896
|
return res;
|
883
897
|
}
|
884
|
-
exports.pow = pow;
|
885
898
|
// Does x ^ (2 ^ power) mod p. pow2(30, 4) == 30 ^ (2 ^ 4)
|
886
899
|
function pow2(x, power, modulo) {
|
887
900
|
let res = x;
|
@@ -891,7 +904,6 @@ function pow2(x, power, modulo) {
|
|
891
904
|
}
|
892
905
|
return res;
|
893
906
|
}
|
894
|
-
exports.pow2 = pow2;
|
895
907
|
// Inverses number over modulo
|
896
908
|
function invert(number, modulo) {
|
897
909
|
if (number === _0n || modulo <= _0n) {
|
@@ -917,7 +929,6 @@ function invert(number, modulo) {
|
|
917
929
|
throw new Error('invert: does not exist');
|
918
930
|
return mod(x, modulo);
|
919
931
|
}
|
920
|
-
exports.invert = invert;
|
921
932
|
/**
|
922
933
|
* Tonelli-Shanks square root search algorithm.
|
923
934
|
* 1. https://eprint.iacr.org/2012/685.pdf (page 12)
|
@@ -982,7 +993,6 @@ function tonelliShanks(P) {
|
|
982
993
|
return x;
|
983
994
|
};
|
984
995
|
}
|
985
|
-
exports.tonelliShanks = tonelliShanks;
|
986
996
|
function FpSqrt(P) {
|
987
997
|
// NOTE: different algorithms can give different roots, it is up to user to decide which one they want.
|
988
998
|
// For example there is FpSqrtOdd/FpSqrtEven to choice root based on oddness (used for hash-to-curve).
|
@@ -1041,7 +1051,6 @@ function FpSqrt(P) {
|
|
1041
1051
|
// Other cases: Tonelli-Shanks algorithm
|
1042
1052
|
return tonelliShanks(P);
|
1043
1053
|
}
|
1044
|
-
exports.FpSqrt = FpSqrt;
|
1045
1054
|
// Little-endian check for first LE bit (last BE bit);
|
1046
1055
|
const isNegativeLE = (num, modulo) => (mod(num, modulo) & _1n) === _1n;
|
1047
1056
|
exports.isNegativeLE = isNegativeLE;
|
@@ -1064,7 +1073,6 @@ function validateField(field) {
|
|
1064
1073
|
}, initial);
|
1065
1074
|
return (0, utils_js_1.validateObject)(field, opts);
|
1066
1075
|
}
|
1067
|
-
exports.validateField = validateField;
|
1068
1076
|
// Generic field functions
|
1069
1077
|
/**
|
1070
1078
|
* Same as `pow` but for Fp: non-constant-time.
|
@@ -1089,7 +1097,6 @@ function FpPow(f, num, power) {
|
|
1089
1097
|
}
|
1090
1098
|
return p;
|
1091
1099
|
}
|
1092
|
-
exports.FpPow = FpPow;
|
1093
1100
|
/**
|
1094
1101
|
* Efficiently invert an array of Field elements.
|
1095
1102
|
* `inv(0)` will return `undefined` here: make sure to throw an error.
|
@@ -1114,11 +1121,9 @@ function FpInvertBatch(f, nums) {
|
|
1114
1121
|
}, inverted);
|
1115
1122
|
return tmp;
|
1116
1123
|
}
|
1117
|
-
exports.FpInvertBatch = FpInvertBatch;
|
1118
1124
|
function FpDiv(f, lhs, rhs) {
|
1119
1125
|
return f.mul(lhs, typeof rhs === 'bigint' ? invert(rhs, f.ORDER) : f.inv(rhs));
|
1120
1126
|
}
|
1121
|
-
exports.FpDiv = FpDiv;
|
1122
1127
|
// This function returns True whenever the value x is a square in the field F.
|
1123
1128
|
function FpIsSquare(f) {
|
1124
1129
|
const legendreConst = (f.ORDER - _1n) / _2n; // Integer arithmetic
|
@@ -1127,7 +1132,6 @@ function FpIsSquare(f) {
|
|
1127
1132
|
return f.eql(p, f.ZERO) || f.eql(p, f.ONE);
|
1128
1133
|
};
|
1129
1134
|
}
|
1130
|
-
exports.FpIsSquare = FpIsSquare;
|
1131
1135
|
// CURVE.n lengths
|
1132
1136
|
function nLength(n, nBitLength) {
|
1133
1137
|
// Bit size, byte size of CURVE.n
|
@@ -1135,7 +1139,6 @@ function nLength(n, nBitLength) {
|
|
1135
1139
|
const nByteLength = Math.ceil(_nBitLength / 8);
|
1136
1140
|
return { nBitLength: _nBitLength, nByteLength };
|
1137
1141
|
}
|
1138
|
-
exports.nLength = nLength;
|
1139
1142
|
/**
|
1140
1143
|
* Initializes a finite field over prime. **Non-primes are not supported.**
|
1141
1144
|
* Do not init in loop: slow. Very fragile: always run a benchmark on a change.
|
@@ -1198,21 +1201,18 @@ function Field(ORDER, bitLen, isLE = false, redef = {}) {
|
|
1198
1201
|
});
|
1199
1202
|
return Object.freeze(f);
|
1200
1203
|
}
|
1201
|
-
exports.Field = Field;
|
1202
1204
|
function FpSqrtOdd(Fp, elm) {
|
1203
1205
|
if (!Fp.isOdd)
|
1204
1206
|
throw new Error(`Field doesn't have isOdd`);
|
1205
1207
|
const root = Fp.sqrt(elm);
|
1206
1208
|
return Fp.isOdd(root) ? root : Fp.neg(root);
|
1207
1209
|
}
|
1208
|
-
exports.FpSqrtOdd = FpSqrtOdd;
|
1209
1210
|
function FpSqrtEven(Fp, elm) {
|
1210
1211
|
if (!Fp.isOdd)
|
1211
1212
|
throw new Error(`Field doesn't have isOdd`);
|
1212
1213
|
const root = Fp.sqrt(elm);
|
1213
1214
|
return Fp.isOdd(root) ? Fp.neg(root) : root;
|
1214
1215
|
}
|
1215
|
-
exports.FpSqrtEven = FpSqrtEven;
|
1216
1216
|
/**
|
1217
1217
|
* "Constant-time" private key generation utility.
|
1218
1218
|
* Same as mapKeyToField, but accepts less bytes (40 instead of 48 for 32-byte field).
|
@@ -1228,7 +1228,6 @@ function hashToPrivateScalar(hash, groupOrder, isLE = false) {
|
|
1228
1228
|
const num = isLE ? (0, utils_js_1.bytesToNumberLE)(hash) : (0, utils_js_1.bytesToNumberBE)(hash);
|
1229
1229
|
return mod(num, groupOrder - _1n) + _1n;
|
1230
1230
|
}
|
1231
|
-
exports.hashToPrivateScalar = hashToPrivateScalar;
|
1232
1231
|
/**
|
1233
1232
|
* Returns total number of bytes consumed by the field element.
|
1234
1233
|
* For example, 32 bytes for usual 256-bit weierstrass curve.
|
@@ -1241,7 +1240,6 @@ function getFieldBytesLength(fieldOrder) {
|
|
1241
1240
|
const bitLength = fieldOrder.toString(2).length;
|
1242
1241
|
return Math.ceil(bitLength / 8);
|
1243
1242
|
}
|
1244
|
-
exports.getFieldBytesLength = getFieldBytesLength;
|
1245
1243
|
/**
|
1246
1244
|
* Returns minimal amount of bytes that can be safely reduced
|
1247
1245
|
* by field order.
|
@@ -1253,7 +1251,6 @@ function getMinHashLength(fieldOrder) {
|
|
1253
1251
|
const length = getFieldBytesLength(fieldOrder);
|
1254
1252
|
return length + Math.ceil(length / 2);
|
1255
1253
|
}
|
1256
|
-
exports.getMinHashLength = getMinHashLength;
|
1257
1254
|
/**
|
1258
1255
|
* "Constant-time" private key generation utility.
|
1259
1256
|
* Can take (n + n/2) or more bytes of uniform input e.g. from CSPRNG or KDF
|
@@ -1279,7 +1276,6 @@ function mapHashToField(key, fieldOrder, isLE = false) {
|
|
1279
1276
|
const reduced = mod(num, fieldOrder - _1n) + _1n;
|
1280
1277
|
return isLE ? (0, utils_js_1.numberToBytesLE)(reduced, fieldLen) : (0, utils_js_1.numberToBytesBE)(reduced, fieldLen);
|
1281
1278
|
}
|
1282
|
-
exports.mapHashToField = mapHashToField;
|
1283
1279
|
|
1284
1280
|
|
1285
1281
|
/***/ }),
|
@@ -1293,7 +1289,7 @@ exports.mapHashToField = mapHashToField;
|
|
1293
1289
|
"use strict";
|
1294
1290
|
|
1295
1291
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
1296
|
-
exports.montgomery =
|
1292
|
+
exports.montgomery = montgomery;
|
1297
1293
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
1298
1294
|
const modular_js_1 = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
1299
1295
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
@@ -1412,18 +1408,16 @@ function montgomery(curveDef) {
|
|
1412
1408
|
function decodeUCoordinate(uEnc) {
|
1413
1409
|
// Section 5: When receiving such an array, implementations of X25519
|
1414
1410
|
// MUST mask the most significant bit in the final byte.
|
1415
|
-
// This is very ugly way, but it works because fieldLen-1 is outside of bounds for X448, so this becomes NOOP
|
1416
|
-
// fieldLen - scalaryBytes = 1 for X448 and = 0 for X25519
|
1417
1411
|
const u = (0, utils_js_1.ensureBytes)('u coordinate', uEnc, montgomeryBytes);
|
1418
|
-
|
1419
|
-
|
1420
|
-
u[fieldLen - 1] &= 127; // 0b0111_1111
|
1412
|
+
if (fieldLen === 32)
|
1413
|
+
u[31] &= 127; // 0b0111_1111
|
1421
1414
|
return (0, utils_js_1.bytesToNumberLE)(u);
|
1422
1415
|
}
|
1423
1416
|
function decodeScalar(n) {
|
1424
1417
|
const bytes = (0, utils_js_1.ensureBytes)('scalar', n);
|
1425
|
-
|
1426
|
-
|
1418
|
+
const len = bytes.length;
|
1419
|
+
if (len !== montgomeryBytes && len !== fieldLen)
|
1420
|
+
throw new Error(`Expected ${montgomeryBytes} or ${fieldLen} bytes, got ${len}`);
|
1427
1421
|
return (0, utils_js_1.bytesToNumberLE)(adjustScalarBytes(bytes));
|
1428
1422
|
}
|
1429
1423
|
function scalarMult(scalar, u) {
|
@@ -1450,7 +1444,6 @@ function montgomery(curveDef) {
|
|
1450
1444
|
GuBytes: GuBytes,
|
1451
1445
|
};
|
1452
1446
|
}
|
1453
|
-
exports.montgomery = montgomery;
|
1454
1447
|
|
1455
1448
|
|
1456
1449
|
/***/ }),
|
@@ -1464,23 +1457,50 @@ exports.montgomery = montgomery;
|
|
1464
1457
|
"use strict";
|
1465
1458
|
|
1466
1459
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
1467
|
-
exports.
|
1460
|
+
exports.bitMask = void 0;
|
1461
|
+
exports.isBytes = isBytes;
|
1462
|
+
exports.abytes = abytes;
|
1463
|
+
exports.bytesToHex = bytesToHex;
|
1464
|
+
exports.numberToHexUnpadded = numberToHexUnpadded;
|
1465
|
+
exports.hexToNumber = hexToNumber;
|
1466
|
+
exports.hexToBytes = hexToBytes;
|
1467
|
+
exports.bytesToNumberBE = bytesToNumberBE;
|
1468
|
+
exports.bytesToNumberLE = bytesToNumberLE;
|
1469
|
+
exports.numberToBytesBE = numberToBytesBE;
|
1470
|
+
exports.numberToBytesLE = numberToBytesLE;
|
1471
|
+
exports.numberToVarBytesBE = numberToVarBytesBE;
|
1472
|
+
exports.ensureBytes = ensureBytes;
|
1473
|
+
exports.concatBytes = concatBytes;
|
1474
|
+
exports.equalBytes = equalBytes;
|
1475
|
+
exports.utf8ToBytes = utf8ToBytes;
|
1476
|
+
exports.bitLen = bitLen;
|
1477
|
+
exports.bitGet = bitGet;
|
1478
|
+
exports.bitSet = bitSet;
|
1479
|
+
exports.createHmacDrbg = createHmacDrbg;
|
1480
|
+
exports.validateObject = validateObject;
|
1468
1481
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
1469
1482
|
// 100 lines of code in the file are duplicated from noble-hashes (utils).
|
1470
1483
|
// This is OK: `abstract` directory does not use noble-hashes.
|
1471
1484
|
// User may opt-in into using different hashing library. This way, noble-hashes
|
1472
1485
|
// won't be included into their bundle.
|
1473
|
-
const _0n = BigInt(0);
|
1474
|
-
const _1n = BigInt(1);
|
1475
|
-
const _2n = BigInt(2);
|
1476
|
-
|
1486
|
+
const _0n = /* @__PURE__ */ BigInt(0);
|
1487
|
+
const _1n = /* @__PURE__ */ BigInt(1);
|
1488
|
+
const _2n = /* @__PURE__ */ BigInt(2);
|
1489
|
+
function isBytes(a) {
|
1490
|
+
return (a instanceof Uint8Array ||
|
1491
|
+
(a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
|
1492
|
+
}
|
1493
|
+
function abytes(item) {
|
1494
|
+
if (!isBytes(item))
|
1495
|
+
throw new Error('Uint8Array expected');
|
1496
|
+
}
|
1497
|
+
// Array where index 0xf0 (240) is mapped to string 'f0'
|
1477
1498
|
const hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));
|
1478
1499
|
/**
|
1479
1500
|
* @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'
|
1480
1501
|
*/
|
1481
1502
|
function bytesToHex(bytes) {
|
1482
|
-
|
1483
|
-
throw new Error('Uint8Array expected');
|
1503
|
+
abytes(bytes);
|
1484
1504
|
// pre-caching improves the speed 6x
|
1485
1505
|
let hex = '';
|
1486
1506
|
for (let i = 0; i < bytes.length; i++) {
|
@@ -1488,64 +1508,67 @@ function bytesToHex(bytes) {
|
|
1488
1508
|
}
|
1489
1509
|
return hex;
|
1490
1510
|
}
|
1491
|
-
exports.bytesToHex = bytesToHex;
|
1492
1511
|
function numberToHexUnpadded(num) {
|
1493
1512
|
const hex = num.toString(16);
|
1494
1513
|
return hex.length & 1 ? `0${hex}` : hex;
|
1495
1514
|
}
|
1496
|
-
exports.numberToHexUnpadded = numberToHexUnpadded;
|
1497
1515
|
function hexToNumber(hex) {
|
1498
1516
|
if (typeof hex !== 'string')
|
1499
1517
|
throw new Error('hex string expected, got ' + typeof hex);
|
1500
1518
|
// Big Endian
|
1501
1519
|
return BigInt(hex === '' ? '0' : `0x${hex}`);
|
1502
1520
|
}
|
1503
|
-
|
1521
|
+
// We use optimized technique to convert hex string to byte array
|
1522
|
+
const asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };
|
1523
|
+
function asciiToBase16(char) {
|
1524
|
+
if (char >= asciis._0 && char <= asciis._9)
|
1525
|
+
return char - asciis._0;
|
1526
|
+
if (char >= asciis._A && char <= asciis._F)
|
1527
|
+
return char - (asciis._A - 10);
|
1528
|
+
if (char >= asciis._a && char <= asciis._f)
|
1529
|
+
return char - (asciis._a - 10);
|
1530
|
+
return;
|
1531
|
+
}
|
1504
1532
|
/**
|
1505
1533
|
* @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])
|
1506
1534
|
*/
|
1507
1535
|
function hexToBytes(hex) {
|
1508
1536
|
if (typeof hex !== 'string')
|
1509
1537
|
throw new Error('hex string expected, got ' + typeof hex);
|
1510
|
-
const
|
1511
|
-
|
1512
|
-
|
1513
|
-
|
1514
|
-
|
1515
|
-
|
1516
|
-
const
|
1517
|
-
const
|
1518
|
-
if (
|
1519
|
-
|
1520
|
-
|
1538
|
+
const hl = hex.length;
|
1539
|
+
const al = hl / 2;
|
1540
|
+
if (hl % 2)
|
1541
|
+
throw new Error('padded hex string expected, got unpadded hex of length ' + hl);
|
1542
|
+
const array = new Uint8Array(al);
|
1543
|
+
for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
|
1544
|
+
const n1 = asciiToBase16(hex.charCodeAt(hi));
|
1545
|
+
const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
|
1546
|
+
if (n1 === undefined || n2 === undefined) {
|
1547
|
+
const char = hex[hi] + hex[hi + 1];
|
1548
|
+
throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
|
1549
|
+
}
|
1550
|
+
array[ai] = n1 * 16 + n2;
|
1521
1551
|
}
|
1522
1552
|
return array;
|
1523
1553
|
}
|
1524
|
-
exports.hexToBytes = hexToBytes;
|
1525
1554
|
// BE: Big Endian, LE: Little Endian
|
1526
1555
|
function bytesToNumberBE(bytes) {
|
1527
1556
|
return hexToNumber(bytesToHex(bytes));
|
1528
1557
|
}
|
1529
|
-
exports.bytesToNumberBE = bytesToNumberBE;
|
1530
1558
|
function bytesToNumberLE(bytes) {
|
1531
|
-
|
1532
|
-
throw new Error('Uint8Array expected');
|
1559
|
+
abytes(bytes);
|
1533
1560
|
return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));
|
1534
1561
|
}
|
1535
|
-
exports.bytesToNumberLE = bytesToNumberLE;
|
1536
1562
|
function numberToBytesBE(n, len) {
|
1537
1563
|
return hexToBytes(n.toString(16).padStart(len * 2, '0'));
|
1538
1564
|
}
|
1539
|
-
exports.numberToBytesBE = numberToBytesBE;
|
1540
1565
|
function numberToBytesLE(n, len) {
|
1541
1566
|
return numberToBytesBE(n, len).reverse();
|
1542
1567
|
}
|
1543
|
-
exports.numberToBytesLE = numberToBytesLE;
|
1544
1568
|
// Unpadded, rarely used
|
1545
1569
|
function numberToVarBytesBE(n) {
|
1546
1570
|
return hexToBytes(numberToHexUnpadded(n));
|
1547
1571
|
}
|
1548
|
-
exports.numberToVarBytesBE = numberToVarBytesBE;
|
1549
1572
|
/**
|
1550
1573
|
* Takes hex string or Uint8Array, converts to Uint8Array.
|
1551
1574
|
* Validates output length.
|
@@ -1565,7 +1588,7 @@ function ensureBytes(title, hex, expectedLength) {
|
|
1565
1588
|
throw new Error(`${title} must be valid hex string, got "${hex}". Cause: ${e}`);
|
1566
1589
|
}
|
1567
1590
|
}
|
1568
|
-
else if (
|
1591
|
+
else if (isBytes(hex)) {
|
1569
1592
|
// Uint8Array.from() instead of hash.slice() because node.js Buffer
|
1570
1593
|
// is instance of Uint8Array, and its slice() creates **mutable** copy
|
1571
1594
|
res = Uint8Array.from(hex);
|
@@ -1578,32 +1601,33 @@ function ensureBytes(title, hex, expectedLength) {
|
|
1578
1601
|
throw new Error(`${title} expected ${expectedLength} bytes, got ${len}`);
|
1579
1602
|
return res;
|
1580
1603
|
}
|
1581
|
-
exports.ensureBytes = ensureBytes;
|
1582
1604
|
/**
|
1583
1605
|
* Copies several Uint8Arrays into one.
|
1584
1606
|
*/
|
1585
1607
|
function concatBytes(...arrays) {
|
1586
|
-
|
1587
|
-
let
|
1588
|
-
|
1589
|
-
|
1590
|
-
|
1591
|
-
|
1608
|
+
let sum = 0;
|
1609
|
+
for (let i = 0; i < arrays.length; i++) {
|
1610
|
+
const a = arrays[i];
|
1611
|
+
abytes(a);
|
1612
|
+
sum += a.length;
|
1613
|
+
}
|
1614
|
+
const res = new Uint8Array(sum);
|
1615
|
+
for (let i = 0, pad = 0; i < arrays.length; i++) {
|
1616
|
+
const a = arrays[i];
|
1617
|
+
res.set(a, pad);
|
1592
1618
|
pad += a.length;
|
1593
|
-
}
|
1594
|
-
return
|
1619
|
+
}
|
1620
|
+
return res;
|
1595
1621
|
}
|
1596
|
-
|
1597
|
-
function equalBytes(
|
1598
|
-
|
1599
|
-
if (b1.length !== b2.length)
|
1622
|
+
// Compares 2 u8a-s in kinda constant time
|
1623
|
+
function equalBytes(a, b) {
|
1624
|
+
if (a.length !== b.length)
|
1600
1625
|
return false;
|
1601
|
-
|
1602
|
-
|
1603
|
-
|
1604
|
-
return
|
1626
|
+
let diff = 0;
|
1627
|
+
for (let i = 0; i < a.length; i++)
|
1628
|
+
diff |= a[i] ^ b[i];
|
1629
|
+
return diff === 0;
|
1605
1630
|
}
|
1606
|
-
exports.equalBytes = equalBytes;
|
1607
1631
|
/**
|
1608
1632
|
* @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])
|
1609
1633
|
*/
|
@@ -1612,7 +1636,6 @@ function utf8ToBytes(str) {
|
|
1612
1636
|
throw new Error(`utf8ToBytes expected string, got ${typeof str}`);
|
1613
1637
|
return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809
|
1614
1638
|
}
|
1615
|
-
exports.utf8ToBytes = utf8ToBytes;
|
1616
1639
|
// Bit operations
|
1617
1640
|
/**
|
1618
1641
|
* Calculates amount of bits in a bigint.
|
@@ -1624,7 +1647,6 @@ function bitLen(n) {
|
|
1624
1647
|
;
|
1625
1648
|
return len;
|
1626
1649
|
}
|
1627
|
-
exports.bitLen = bitLen;
|
1628
1650
|
/**
|
1629
1651
|
* Gets single bit at position.
|
1630
1652
|
* NOTE: first bit position is 0 (same as arrays)
|
@@ -1633,14 +1655,12 @@ exports.bitLen = bitLen;
|
|
1633
1655
|
function bitGet(n, pos) {
|
1634
1656
|
return (n >> BigInt(pos)) & _1n;
|
1635
1657
|
}
|
1636
|
-
exports.bitGet = bitGet;
|
1637
1658
|
/**
|
1638
1659
|
* Sets single bit at position.
|
1639
1660
|
*/
|
1640
|
-
|
1661
|
+
function bitSet(n, pos, value) {
|
1641
1662
|
return n | ((value ? _1n : _0n) << BigInt(pos));
|
1642
|
-
}
|
1643
|
-
exports.bitSet = bitSet;
|
1663
|
+
}
|
1644
1664
|
/**
|
1645
1665
|
* Calculate mask for N bits. Not using ** operator with bigints because of old engines.
|
1646
1666
|
* Same as BigInt(`0b${Array(i).fill('1').join('')}`)
|
@@ -1708,14 +1728,13 @@ function createHmacDrbg(hashLen, qByteLen, hmacFn) {
|
|
1708
1728
|
};
|
1709
1729
|
return genUntil;
|
1710
1730
|
}
|
1711
|
-
exports.createHmacDrbg = createHmacDrbg;
|
1712
1731
|
// Validating curves and fields
|
1713
1732
|
const validatorFns = {
|
1714
1733
|
bigint: (val) => typeof val === 'bigint',
|
1715
1734
|
function: (val) => typeof val === 'function',
|
1716
1735
|
boolean: (val) => typeof val === 'boolean',
|
1717
1736
|
string: (val) => typeof val === 'string',
|
1718
|
-
stringOrUint8Array: (val) => typeof val === 'string' || val
|
1737
|
+
stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),
|
1719
1738
|
isSafeInteger: (val) => Number.isSafeInteger(val),
|
1720
1739
|
array: (val) => Array.isArray(val),
|
1721
1740
|
field: (val, object) => object.Fp.isValid(val),
|
@@ -1740,7 +1759,6 @@ function validateObject(object, validators, optValidators = {}) {
|
|
1740
1759
|
checkField(fieldName, type, true);
|
1741
1760
|
return object;
|
1742
1761
|
}
|
1743
|
-
exports.validateObject = validateObject;
|
1744
1762
|
// validate type tests
|
1745
1763
|
// const o: { a: number; b: number; c: number } = { a: 1, b: 5, c: 6 };
|
1746
1764
|
// const z0 = validateObject(o, { a: 'isSafeInteger' }, { c: 'bigint' }); // Ok!
|
@@ -1762,13 +1780,17 @@ exports.validateObject = validateObject;
|
|
1762
1780
|
"use strict";
|
1763
1781
|
|
1764
1782
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
1765
|
-
exports.
|
1783
|
+
exports.DER = void 0;
|
1784
|
+
exports.weierstrassPoints = weierstrassPoints;
|
1785
|
+
exports.weierstrass = weierstrass;
|
1786
|
+
exports.SWUFpSqrtRatio = SWUFpSqrtRatio;
|
1787
|
+
exports.mapToCurveSimpleSWU = mapToCurveSimpleSWU;
|
1766
1788
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
1767
1789
|
// Short Weierstrass curve. The formula is: y² = x³ + ax + b
|
1790
|
+
const curve_js_1 = __webpack_require__(/*! ./curve.js */ "../../node_modules/@noble/curves/abstract/curve.js");
|
1768
1791
|
const mod = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
1769
1792
|
const ut = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
1770
1793
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
1771
|
-
const curve_js_1 = __webpack_require__(/*! ./curve.js */ "../../node_modules/@noble/curves/abstract/curve.js");
|
1772
1794
|
function validatePointOpts(curve) {
|
1773
1795
|
const opts = (0, curve_js_1.validateBasic)(curve);
|
1774
1796
|
ut.validateObject(opts, {
|
@@ -1827,8 +1849,7 @@ exports.DER = {
|
|
1827
1849
|
// parse DER signature
|
1828
1850
|
const { Err: E } = exports.DER;
|
1829
1851
|
const data = typeof hex === 'string' ? h2b(hex) : hex;
|
1830
|
-
|
1831
|
-
throw new Error('ui8a expected');
|
1852
|
+
ut.abytes(data);
|
1832
1853
|
let l = data.length;
|
1833
1854
|
if (l < 2 || data[0] != 0x30)
|
1834
1855
|
throw new E('Invalid signature tag');
|
@@ -1905,7 +1926,7 @@ function weierstrassPoints(opts) {
|
|
1905
1926
|
function normPrivateKeyToScalar(key) {
|
1906
1927
|
const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n } = CURVE;
|
1907
1928
|
if (lengths && typeof key !== 'bigint') {
|
1908
|
-
if (key
|
1929
|
+
if (ut.isBytes(key))
|
1909
1930
|
key = ut.bytesToHex(key);
|
1910
1931
|
// Normalize to hex string, pad. E.g. P521 would norm 130-132 char hex to 132-char bytes
|
1911
1932
|
if (typeof key !== 'string' || !lengths.includes(key.length))
|
@@ -2286,7 +2307,6 @@ function weierstrassPoints(opts) {
|
|
2286
2307
|
isWithinCurveOrder,
|
2287
2308
|
};
|
2288
2309
|
}
|
2289
|
-
exports.weierstrassPoints = weierstrassPoints;
|
2290
2310
|
function validateOpts(curve) {
|
2291
2311
|
const opts = (0, curve_js_1.validateBasic)(curve);
|
2292
2312
|
ut.validateObject(opts, {
|
@@ -2337,7 +2357,14 @@ function weierstrass(curveDef) {
|
|
2337
2357
|
if (!isValidFieldElement(x))
|
2338
2358
|
throw new Error('Point is not on curve');
|
2339
2359
|
const y2 = weierstrassEquation(x); // y² = x³ + ax + b
|
2340
|
-
let y
|
2360
|
+
let y;
|
2361
|
+
try {
|
2362
|
+
y = Fp.sqrt(y2); // y = y² ^ (p+1)/4
|
2363
|
+
}
|
2364
|
+
catch (sqrtError) {
|
2365
|
+
const suffix = sqrtError instanceof Error ? ': ' + sqrtError.message : '';
|
2366
|
+
throw new Error('Point is not on curve' + suffix);
|
2367
|
+
}
|
2341
2368
|
const isYOdd = (y & _1n) === _1n;
|
2342
2369
|
// ECDSA
|
2343
2370
|
const isHeadOdd = (head & 1) === 1;
|
@@ -2484,7 +2511,7 @@ function weierstrass(curveDef) {
|
|
2484
2511
|
* Quick and dirty check for item being public key. Does not validate hex, or being on-curve.
|
2485
2512
|
*/
|
2486
2513
|
function isProbPub(item) {
|
2487
|
-
const arr = item
|
2514
|
+
const arr = ut.isBytes(item);
|
2488
2515
|
const str = typeof item === 'string';
|
2489
2516
|
const len = (arr || str) && item.length;
|
2490
2517
|
if (arr)
|
@@ -2564,7 +2591,7 @@ function weierstrass(curveDef) {
|
|
2564
2591
|
const d = normPrivateKeyToScalar(privateKey); // validate private key, convert to bigint
|
2565
2592
|
const seedArgs = [int2octets(d), int2octets(h1int)];
|
2566
2593
|
// extraEntropy. RFC6979 3.6: additional k' (optional).
|
2567
|
-
if (ent != null) {
|
2594
|
+
if (ent != null && ent !== false) {
|
2568
2595
|
// K = HMAC_K(V || 0x00 || int2octets(x) || bits2octets(h1) || k')
|
2569
2596
|
const e = ent === true ? randomBytes(Fp.BYTES) : ent; // generate random bytes OR pass as-is
|
2570
2597
|
seedArgs.push((0, utils_js_1.ensureBytes)('extraEntropy', e)); // check for being bytes
|
@@ -2645,7 +2672,7 @@ function weierstrass(curveDef) {
|
|
2645
2672
|
let _sig = undefined;
|
2646
2673
|
let P;
|
2647
2674
|
try {
|
2648
|
-
if (typeof sg === 'string' || sg
|
2675
|
+
if (typeof sg === 'string' || ut.isBytes(sg)) {
|
2649
2676
|
// Signature can be represented in 2 ways: compact (2*nByteLength) & DER (variable-length).
|
2650
2677
|
// Since DER can also be 2*nByteLength bytes, we check for it first.
|
2651
2678
|
try {
|
@@ -2697,7 +2724,6 @@ function weierstrass(curveDef) {
|
|
2697
2724
|
utils,
|
2698
2725
|
};
|
2699
2726
|
}
|
2700
|
-
exports.weierstrass = weierstrass;
|
2701
2727
|
/**
|
2702
2728
|
* Implementation of the Shallue and van de Woestijne method for any weierstrass curve.
|
2703
2729
|
* TODO: check if there is a way to merge this with uvRatio in Edwards; move to modular.
|
@@ -2776,7 +2802,6 @@ function SWUFpSqrtRatio(Fp, Z) {
|
|
2776
2802
|
// if (Fp.ORDER % _8n === _5n) // sqrt_ratio_5mod8
|
2777
2803
|
return sqrtRatio;
|
2778
2804
|
}
|
2779
|
-
exports.SWUFpSqrtRatio = SWUFpSqrtRatio;
|
2780
2805
|
/**
|
2781
2806
|
* Simplified Shallue-van de Woestijne-Ulas Method
|
2782
2807
|
* https://www.rfc-editor.org/rfc/rfc9380#section-6.6.2
|
@@ -2821,7 +2846,6 @@ function mapToCurveSimpleSWU(Fp, opts) {
|
|
2821
2846
|
return { x, y };
|
2822
2847
|
};
|
2823
2848
|
}
|
2824
|
-
exports.mapToCurveSimpleSWU = mapToCurveSimpleSWU;
|
2825
2849
|
|
2826
2850
|
|
2827
2851
|
/***/ }),
|
@@ -2835,15 +2859,17 @@ exports.mapToCurveSimpleSWU = mapToCurveSimpleSWU;
|
|
2835
2859
|
"use strict";
|
2836
2860
|
|
2837
2861
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
2838
|
-
exports.hash_to_ristretto255 = exports.hashToRistretto255 = exports.RistrettoPoint = exports.encodeToCurve = exports.hashToCurve = exports.
|
2862
|
+
exports.hash_to_ristretto255 = exports.hashToRistretto255 = exports.RistrettoPoint = exports.encodeToCurve = exports.hashToCurve = exports.edwardsToMontgomery = exports.x25519 = exports.ed25519ph = exports.ed25519ctx = exports.ed25519 = exports.ED25519_TORSION_SUBGROUP = void 0;
|
2863
|
+
exports.edwardsToMontgomeryPub = edwardsToMontgomeryPub;
|
2864
|
+
exports.edwardsToMontgomeryPriv = edwardsToMontgomeryPriv;
|
2839
2865
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
2840
2866
|
const sha512_1 = __webpack_require__(/*! @noble/hashes/sha512 */ "../../node_modules/@noble/hashes/sha512.js");
|
2841
2867
|
const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
|
2842
2868
|
const edwards_js_1 = __webpack_require__(/*! ./abstract/edwards.js */ "../../node_modules/@noble/curves/abstract/edwards.js");
|
2843
|
-
const
|
2869
|
+
const hash_to_curve_js_1 = __webpack_require__(/*! ./abstract/hash-to-curve.js */ "../../node_modules/@noble/curves/abstract/hash-to-curve.js");
|
2844
2870
|
const modular_js_1 = __webpack_require__(/*! ./abstract/modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
2871
|
+
const montgomery_js_1 = __webpack_require__(/*! ./abstract/montgomery.js */ "../../node_modules/@noble/curves/abstract/montgomery.js");
|
2845
2872
|
const utils_js_1 = __webpack_require__(/*! ./abstract/utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
2846
|
-
const hash_to_curve_js_1 = __webpack_require__(/*! ./abstract/hash-to-curve.js */ "../../node_modules/@noble/curves/abstract/hash-to-curve.js");
|
2847
2873
|
/**
|
2848
2874
|
* ed25519 Twisted Edwards curve with following addons:
|
2849
2875
|
* - X25519 ECDH
|
@@ -2852,12 +2878,14 @@ const hash_to_curve_js_1 = __webpack_require__(/*! ./abstract/hash-to-curve.js *
|
|
2852
2878
|
*/
|
2853
2879
|
const ED25519_P = BigInt('57896044618658097711785492504343953926634992332820282019728792003956564819949');
|
2854
2880
|
// √(-1) aka √(a) aka 2^((p-1)/4)
|
2855
|
-
const ED25519_SQRT_M1 = BigInt('19681161376707505956807079304988542015446066515923890162744021073123829784752');
|
2881
|
+
const ED25519_SQRT_M1 = /* @__PURE__ */ BigInt('19681161376707505956807079304988542015446066515923890162744021073123829784752');
|
2856
2882
|
// prettier-ignore
|
2857
|
-
const _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2),
|
2883
|
+
const _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _3n = BigInt(3);
|
2858
2884
|
// prettier-ignore
|
2859
|
-
const
|
2885
|
+
const _5n = BigInt(5), _8n = BigInt(8);
|
2860
2886
|
function ed25519_pow_2_252_3(x) {
|
2887
|
+
// prettier-ignore
|
2888
|
+
const _10n = BigInt(10), _20n = BigInt(20), _40n = BigInt(40), _80n = BigInt(80);
|
2861
2889
|
const P = ED25519_P;
|
2862
2890
|
const x2 = (x * x) % P;
|
2863
2891
|
const b2 = (x2 * x) % P; // x^3, 11
|
@@ -2917,10 +2945,10 @@ exports.ED25519_TORSION_SUBGROUP = [
|
|
2917
2945
|
'0000000000000000000000000000000000000000000000000000000000000000',
|
2918
2946
|
'c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa',
|
2919
2947
|
];
|
2920
|
-
const Fp = (0, modular_js_1.Field)(ED25519_P, undefined, true);
|
2921
|
-
const ed25519Defaults = {
|
2948
|
+
const Fp = /* @__PURE__ */ (() => (0, modular_js_1.Field)(ED25519_P, undefined, true))();
|
2949
|
+
const ed25519Defaults = /* @__PURE__ */ (() => ({
|
2922
2950
|
// Param: a
|
2923
|
-
a: BigInt(-1),
|
2951
|
+
a: BigInt(-1), // Fp.create(-1) is proper; our way still works and is faster
|
2924
2952
|
// d is equal to -121665/121666 over finite field.
|
2925
2953
|
// Negative number is P - number, and division is invert(number, P)
|
2926
2954
|
d: BigInt('37095705934669439343138083508754565189542113879843219016388785533085940283555'),
|
@@ -2930,7 +2958,7 @@ const ed25519Defaults = {
|
|
2930
2958
|
// 2n**252n + 27742317777372353535851937790883648493n;
|
2931
2959
|
n: BigInt('7237005577332262213973186563042994240857116359379907606001950938285454250989'),
|
2932
2960
|
// Cofactor
|
2933
|
-
h:
|
2961
|
+
h: _8n,
|
2934
2962
|
// Base point (x, y) aka generator point
|
2935
2963
|
Gx: BigInt('15112221349535400772501151409588531511454012693041857206046113283949847762202'),
|
2936
2964
|
Gy: BigInt('46316835694926478169428394003475163141307993866256225615783033603165251855960'),
|
@@ -2941,33 +2969,32 @@ const ed25519Defaults = {
|
|
2941
2969
|
// Ratio of u to v. Allows us to combine inversion and square root. Uses algo from RFC8032 5.1.3.
|
2942
2970
|
// Constant-time, u/√v
|
2943
2971
|
uvRatio,
|
2944
|
-
};
|
2945
|
-
exports.ed25519 = (0, edwards_js_1.twistedEdwards)(ed25519Defaults);
|
2972
|
+
}))();
|
2973
|
+
exports.ed25519 = (() => (0, edwards_js_1.twistedEdwards)(ed25519Defaults))();
|
2946
2974
|
function ed25519_domain(data, ctx, phflag) {
|
2947
2975
|
if (ctx.length > 255)
|
2948
2976
|
throw new Error('Context is too big');
|
2949
2977
|
return (0, utils_1.concatBytes)((0, utils_1.utf8ToBytes)('SigEd25519 no Ed25519 collisions'), new Uint8Array([phflag ? 1 : 0, ctx.length]), ctx, data);
|
2950
2978
|
}
|
2951
|
-
exports.ed25519ctx = (0, edwards_js_1.twistedEdwards)({
|
2979
|
+
exports.ed25519ctx = (() => (0, edwards_js_1.twistedEdwards)({
|
2952
2980
|
...ed25519Defaults,
|
2953
2981
|
domain: ed25519_domain,
|
2954
|
-
});
|
2955
|
-
exports.ed25519ph = (0, edwards_js_1.twistedEdwards)({
|
2956
|
-
...ed25519Defaults,
|
2982
|
+
}))();
|
2983
|
+
exports.ed25519ph = (() => (0, edwards_js_1.twistedEdwards)(Object.assign({}, ed25519Defaults, {
|
2957
2984
|
domain: ed25519_domain,
|
2958
2985
|
prehash: sha512_1.sha512,
|
2959
|
-
});
|
2986
|
+
})))();
|
2960
2987
|
exports.x25519 = (() => (0, montgomery_js_1.montgomery)({
|
2961
2988
|
P: ED25519_P,
|
2962
2989
|
a: BigInt(486662),
|
2963
|
-
montgomeryBits: 255,
|
2990
|
+
montgomeryBits: 255, // n is 253 bits
|
2964
2991
|
nByteLength: 32,
|
2965
2992
|
Gu: BigInt(9),
|
2966
2993
|
powPminus2: (x) => {
|
2967
2994
|
const P = ED25519_P;
|
2968
2995
|
// x^(p-2) aka x^(2^255-21)
|
2969
2996
|
const { pow_p_5_8, b2 } = ed25519_pow_2_252_3(x);
|
2970
|
-
return (0, modular_js_1.mod)((0, modular_js_1.pow2)(pow_p_5_8,
|
2997
|
+
return (0, modular_js_1.mod)((0, modular_js_1.pow2)(pow_p_5_8, _3n, P) * b2, P);
|
2971
2998
|
},
|
2972
2999
|
adjustScalarBytes,
|
2973
3000
|
randomBytes: utils_1.randomBytes,
|
@@ -2986,7 +3013,6 @@ function edwardsToMontgomeryPub(edwardsPub) {
|
|
2986
3013
|
const _1n = BigInt(1);
|
2987
3014
|
return Fp.toBytes(Fp.create((_1n + y) * Fp.inv(_1n - y)));
|
2988
3015
|
}
|
2989
|
-
exports.edwardsToMontgomeryPub = edwardsToMontgomeryPub;
|
2990
3016
|
exports.edwardsToMontgomery = edwardsToMontgomeryPub; // deprecated
|
2991
3017
|
/**
|
2992
3018
|
* Converts ed25519 secret key to x25519 secret key.
|
@@ -2999,17 +3025,16 @@ function edwardsToMontgomeryPriv(edwardsPriv) {
|
|
2999
3025
|
const hashed = ed25519Defaults.hash(edwardsPriv.subarray(0, 32));
|
3000
3026
|
return ed25519Defaults.adjustScalarBytes(hashed).subarray(0, 32);
|
3001
3027
|
}
|
3002
|
-
exports.edwardsToMontgomeryPriv = edwardsToMontgomeryPriv;
|
3003
3028
|
// Hash To Curve Elligator2 Map (NOTE: different from ristretto255 elligator)
|
3004
3029
|
// NOTE: very important part is usage of FpSqrtEven for ELL2_C1_EDWARDS, since
|
3005
3030
|
// SageMath returns different root first and everything falls apart
|
3006
|
-
const ELL2_C1 = (Fp.ORDER +
|
3007
|
-
const ELL2_C2 = Fp.pow(_2n, ELL2_C1); // 2. c2 = 2^c1
|
3008
|
-
const ELL2_C3 = Fp.sqrt(Fp.neg(Fp.ONE)); // 3. c3 = sqrt(-1)
|
3009
|
-
const ELL2_C4 = (Fp.ORDER - BigInt(5)) / BigInt(8); // 4. c4 = (q - 5) / 8 # Integer arithmetic
|
3010
|
-
const ELL2_J = BigInt(486662);
|
3031
|
+
const ELL2_C1 = /* @__PURE__ */ (() => (Fp.ORDER + _3n) / _8n)(); // 1. c1 = (q + 3) / 8 # Integer arithmetic
|
3032
|
+
const ELL2_C2 = /* @__PURE__ */ (() => Fp.pow(_2n, ELL2_C1))(); // 2. c2 = 2^c1
|
3033
|
+
const ELL2_C3 = /* @__PURE__ */ (() => Fp.sqrt(Fp.neg(Fp.ONE)))(); // 3. c3 = sqrt(-1)
|
3011
3034
|
// prettier-ignore
|
3012
3035
|
function map_to_curve_elligator2_curve25519(u) {
|
3036
|
+
const ELL2_C4 = (Fp.ORDER - _5n) / _8n; // 4. c4 = (q - 5) / 8 # Integer arithmetic
|
3037
|
+
const ELL2_J = BigInt(486662);
|
3013
3038
|
let tv1 = Fp.sqr(u); // 1. tv1 = u^2
|
3014
3039
|
tv1 = Fp.mul(tv1, _2n); // 2. tv1 = 2 * tv1
|
3015
3040
|
let xd = Fp.add(tv1, Fp.ONE); // 3. xd = tv1 + 1 # Nonzero: -1 is square (mod p), tv1 is not
|
@@ -3050,7 +3075,7 @@ function map_to_curve_elligator2_curve25519(u) {
|
|
3050
3075
|
y = Fp.cmov(y, Fp.neg(y), e3 !== e4); // 38. y = CMOV(y, -y, e3 XOR e4)
|
3051
3076
|
return { xMn: xn, xMd: xd, yMn: y, yMd: _1n }; // 39. return (xn, xd, y, 1)
|
3052
3077
|
}
|
3053
|
-
const ELL2_C1_EDWARDS = (0, modular_js_1.FpSqrtEven)(Fp, Fp.neg(BigInt(486664))); // sgn0(c1) MUST equal 0
|
3078
|
+
const ELL2_C1_EDWARDS = /* @__PURE__ */ (() => (0, modular_js_1.FpSqrtEven)(Fp, Fp.neg(BigInt(486664))))(); // sgn0(c1) MUST equal 0
|
3054
3079
|
function map_to_curve_elligator2_edwards25519(u) {
|
3055
3080
|
const { xMn, xMd, yMn, yMd } = map_to_curve_elligator2_curve25519(u); // 1. (xMn, xMd, yMn, yMd) =
|
3056
3081
|
// map_to_curve_elligator2_curve25519(u)
|
@@ -3086,16 +3111,16 @@ function assertRstPoint(other) {
|
|
3086
3111
|
// √(-1) aka √(a) aka 2^((p-1)/4)
|
3087
3112
|
const SQRT_M1 = ED25519_SQRT_M1;
|
3088
3113
|
// √(ad - 1)
|
3089
|
-
const SQRT_AD_MINUS_ONE = BigInt('25063068953384623474111414158702152701244531502492656460079210482610430750235');
|
3114
|
+
const SQRT_AD_MINUS_ONE = /* @__PURE__ */ BigInt('25063068953384623474111414158702152701244531502492656460079210482610430750235');
|
3090
3115
|
// 1 / √(a-d)
|
3091
|
-
const INVSQRT_A_MINUS_D = BigInt('54469307008909316920995813868745141605393597292927456921205312896311721017578');
|
3116
|
+
const INVSQRT_A_MINUS_D = /* @__PURE__ */ BigInt('54469307008909316920995813868745141605393597292927456921205312896311721017578');
|
3092
3117
|
// 1-d²
|
3093
|
-
const ONE_MINUS_D_SQ = BigInt('1159843021668779879193775521855586647937357759715417654439879720876111806838');
|
3118
|
+
const ONE_MINUS_D_SQ = /* @__PURE__ */ BigInt('1159843021668779879193775521855586647937357759715417654439879720876111806838');
|
3094
3119
|
// (d-1)²
|
3095
|
-
const D_MINUS_ONE_SQ = BigInt('40440834346308536858101042469323190826248399146238708352240133220865137265952');
|
3120
|
+
const D_MINUS_ONE_SQ = /* @__PURE__ */ BigInt('40440834346308536858101042469323190826248399146238708352240133220865137265952');
|
3096
3121
|
// Calculates 1/√(number)
|
3097
3122
|
const invertSqrt = (number) => uvRatio(_1n, number);
|
3098
|
-
const MAX_255B = BigInt('0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff');
|
3123
|
+
const MAX_255B = /* @__PURE__ */ BigInt('0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff');
|
3099
3124
|
const bytes255ToNumberLE = (bytes) => exports.ed25519.CURVE.Fp.create((0, utils_js_1.bytesToNumberLE)(bytes) & MAX_255B);
|
3100
3125
|
// Computes Elligator map for Ristretto
|
3101
3126
|
// https://ristretto.group/formulas/elligator.html
|
@@ -3253,6 +3278,12 @@ class RistPoint {
|
|
3253
3278
|
multiplyUnsafe(scalar) {
|
3254
3279
|
return new RistPoint(this.ep.multiplyUnsafe(scalar));
|
3255
3280
|
}
|
3281
|
+
double() {
|
3282
|
+
return new RistPoint(this.ep.double());
|
3283
|
+
}
|
3284
|
+
negate() {
|
3285
|
+
return new RistPoint(this.ep.negate());
|
3286
|
+
}
|
3256
3287
|
}
|
3257
3288
|
exports.RistrettoPoint = (() => {
|
3258
3289
|
if (!RistPoint.BASE)
|
@@ -3288,11 +3319,11 @@ exports.encodeToCurve = exports.hashToCurve = exports.schnorr = exports.secp256k
|
|
3288
3319
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
3289
3320
|
const sha256_1 = __webpack_require__(/*! @noble/hashes/sha256 */ "../../node_modules/@noble/hashes/sha256.js");
|
3290
3321
|
const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
|
3322
|
+
const _shortw_utils_js_1 = __webpack_require__(/*! ./_shortw_utils.js */ "../../node_modules/@noble/curves/_shortw_utils.js");
|
3323
|
+
const hash_to_curve_js_1 = __webpack_require__(/*! ./abstract/hash-to-curve.js */ "../../node_modules/@noble/curves/abstract/hash-to-curve.js");
|
3291
3324
|
const modular_js_1 = __webpack_require__(/*! ./abstract/modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
|
3292
|
-
const weierstrass_js_1 = __webpack_require__(/*! ./abstract/weierstrass.js */ "../../node_modules/@noble/curves/abstract/weierstrass.js");
|
3293
3325
|
const utils_js_1 = __webpack_require__(/*! ./abstract/utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
|
3294
|
-
const
|
3295
|
-
const _shortw_utils_js_1 = __webpack_require__(/*! ./_shortw_utils.js */ "../../node_modules/@noble/curves/_shortw_utils.js");
|
3326
|
+
const weierstrass_js_1 = __webpack_require__(/*! ./abstract/weierstrass.js */ "../../node_modules/@noble/curves/abstract/weierstrass.js");
|
3296
3327
|
const secp256k1P = BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f');
|
3297
3328
|
const secp256k1N = BigInt('0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141');
|
3298
3329
|
const _1n = BigInt(1);
|
@@ -3328,15 +3359,15 @@ function sqrtMod(y) {
|
|
3328
3359
|
}
|
3329
3360
|
const Fp = (0, modular_js_1.Field)(secp256k1P, undefined, undefined, { sqrt: sqrtMod });
|
3330
3361
|
exports.secp256k1 = (0, _shortw_utils_js_1.createCurve)({
|
3331
|
-
a: BigInt(0),
|
3332
|
-
b: BigInt(7),
|
3333
|
-
Fp,
|
3334
|
-
n: secp256k1N,
|
3362
|
+
a: BigInt(0), // equation params: a, b
|
3363
|
+
b: BigInt(7), // Seem to be rigid: bitcointalk.org/index.php?topic=289795.msg3183975#msg3183975
|
3364
|
+
Fp, // Field's prime: 2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n
|
3365
|
+
n: secp256k1N, // Curve order, total count of valid points in the field
|
3335
3366
|
// Base point (x, y) aka generator point
|
3336
3367
|
Gx: BigInt('55066263022277343669578718895168534326250603453777594175500187360389116729240'),
|
3337
3368
|
Gy: BigInt('32670510020758816978083085130507043184471273380659243275938904335757337482424'),
|
3338
|
-
h: BigInt(1),
|
3339
|
-
lowS: true,
|
3369
|
+
h: BigInt(1), // Cofactor
|
3370
|
+
lowS: true, // Allow only low-S signatures by default in sign() and verify()
|
3340
3371
|
/**
|
3341
3372
|
* secp256k1 belongs to Koblitz curves: it has efficiently computable endomorphism.
|
3342
3373
|
* Endomorphism uses 2x less RAM, speeds up precomputation by 2x and ECDH / key recovery by 20%.
|
@@ -3551,29 +3582,35 @@ exports.encodeToCurve = (() => htf.encodeToCurve)();
|
|
3551
3582
|
"use strict";
|
3552
3583
|
|
3553
3584
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
3554
|
-
exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = void 0;
|
3585
|
+
exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = exports.isBytes = void 0;
|
3555
3586
|
function number(n) {
|
3556
3587
|
if (!Number.isSafeInteger(n) || n < 0)
|
3557
|
-
throw new Error(`
|
3588
|
+
throw new Error(`positive integer expected, not ${n}`);
|
3558
3589
|
}
|
3559
3590
|
exports.number = number;
|
3560
3591
|
function bool(b) {
|
3561
3592
|
if (typeof b !== 'boolean')
|
3562
|
-
throw new Error(`
|
3593
|
+
throw new Error(`boolean expected, not ${b}`);
|
3563
3594
|
}
|
3564
3595
|
exports.bool = bool;
|
3596
|
+
// copied from utils
|
3597
|
+
function isBytes(a) {
|
3598
|
+
return (a instanceof Uint8Array ||
|
3599
|
+
(a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
|
3600
|
+
}
|
3601
|
+
exports.isBytes = isBytes;
|
3565
3602
|
function bytes(b, ...lengths) {
|
3566
|
-
if (!(b
|
3567
|
-
throw new Error('
|
3603
|
+
if (!isBytes(b))
|
3604
|
+
throw new Error('Uint8Array expected');
|
3568
3605
|
if (lengths.length > 0 && !lengths.includes(b.length))
|
3569
|
-
throw new Error(`
|
3606
|
+
throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);
|
3570
3607
|
}
|
3571
3608
|
exports.bytes = bytes;
|
3572
|
-
function hash(
|
3573
|
-
if (typeof
|
3609
|
+
function hash(h) {
|
3610
|
+
if (typeof h !== 'function' || typeof h.create !== 'function')
|
3574
3611
|
throw new Error('Hash should be wrapped by utils.wrapConstructor');
|
3575
|
-
number(
|
3576
|
-
number(
|
3612
|
+
number(h.outputLen);
|
3613
|
+
number(h.blockLen);
|
3577
3614
|
}
|
3578
3615
|
exports.hash = hash;
|
3579
3616
|
function exists(instance, checkFinished = true) {
|
@@ -3597,16 +3634,16 @@ exports["default"] = assert;
|
|
3597
3634
|
|
3598
3635
|
/***/ }),
|
3599
3636
|
|
3600
|
-
/***/ "../../node_modules/@noble/hashes/
|
3601
|
-
|
3602
|
-
!*** ../../node_modules/@noble/hashes/
|
3603
|
-
|
3637
|
+
/***/ "../../node_modules/@noble/hashes/_md.js":
|
3638
|
+
/*!***********************************************!*\
|
3639
|
+
!*** ../../node_modules/@noble/hashes/_md.js ***!
|
3640
|
+
\***********************************************/
|
3604
3641
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
3605
3642
|
|
3606
3643
|
"use strict";
|
3607
3644
|
|
3608
3645
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
3609
|
-
exports.
|
3646
|
+
exports.HashMD = exports.Maj = exports.Chi = void 0;
|
3610
3647
|
const _assert_js_1 = __webpack_require__(/*! ./_assert.js */ "../../node_modules/@noble/hashes/_assert.js");
|
3611
3648
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
|
3612
3649
|
// Polyfill for Safari 14
|
@@ -3622,8 +3659,17 @@ function setBigUint64(view, byteOffset, value, isLE) {
|
|
3622
3659
|
view.setUint32(byteOffset + h, wh, isLE);
|
3623
3660
|
view.setUint32(byteOffset + l, wl, isLE);
|
3624
3661
|
}
|
3625
|
-
//
|
3626
|
-
|
3662
|
+
// Choice: a ? b : c
|
3663
|
+
const Chi = (a, b, c) => (a & b) ^ (~a & c);
|
3664
|
+
exports.Chi = Chi;
|
3665
|
+
// Majority function, true if any two inpust is true
|
3666
|
+
const Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);
|
3667
|
+
exports.Maj = Maj;
|
3668
|
+
/**
|
3669
|
+
* Merkle-Damgard hash construction base class.
|
3670
|
+
* Could be used to create MD5, RIPEMD, SHA1, SHA2.
|
3671
|
+
*/
|
3672
|
+
class HashMD extends utils_js_1.Hash {
|
3627
3673
|
constructor(blockLen, outputLen, padOffset, isLE) {
|
3628
3674
|
super();
|
3629
3675
|
this.blockLen = blockLen;
|
@@ -3675,7 +3721,8 @@ class SHA2 extends utils_js_1.Hash {
|
|
3675
3721
|
// append the bit '1' to the message
|
3676
3722
|
buffer[pos++] = 0b10000000;
|
3677
3723
|
this.buffer.subarray(pos).fill(0);
|
3678
|
-
// we have less than padOffset left in buffer, so we cannot put length in
|
3724
|
+
// we have less than padOffset left in buffer, so we cannot put length in
|
3725
|
+
// current block, need process it and pad again
|
3679
3726
|
if (this.padOffset > blockLen - pos) {
|
3680
3727
|
this.process(view, 0);
|
3681
3728
|
pos = 0;
|
@@ -3720,7 +3767,7 @@ class SHA2 extends utils_js_1.Hash {
|
|
3720
3767
|
return to;
|
3721
3768
|
}
|
3722
3769
|
}
|
3723
|
-
exports.
|
3770
|
+
exports.HashMD = HashMD;
|
3724
3771
|
|
3725
3772
|
|
3726
3773
|
/***/ }),
|
@@ -4038,12 +4085,12 @@ exports.pbkdf2Async = pbkdf2Async;
|
|
4038
4085
|
|
4039
4086
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
4040
4087
|
exports.ripemd160 = exports.RIPEMD160 = void 0;
|
4041
|
-
const
|
4088
|
+
const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
|
4042
4089
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
|
4043
4090
|
// https://homes.esat.kuleuven.be/~bosselae/ripemd160.html
|
4044
4091
|
// https://homes.esat.kuleuven.be/~bosselae/ripemd160/pdf/AB-9601/AB-9601.pdf
|
4045
4092
|
const Rho = /* @__PURE__ */ new Uint8Array([7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8]);
|
4046
|
-
const Id = /* @__PURE__ */ Uint8Array
|
4093
|
+
const Id = /* @__PURE__ */ new Uint8Array(new Array(16).fill(0).map((_, i) => i));
|
4047
4094
|
const Pi = /* @__PURE__ */ Id.map((i) => (9 * i + 5) % 16);
|
4048
4095
|
let idxL = [Id];
|
4049
4096
|
let idxR = [Pi];
|
@@ -4065,8 +4112,6 @@ const Kl = /* @__PURE__ */ new Uint32Array([
|
|
4065
4112
|
const Kr = /* @__PURE__ */ new Uint32Array([
|
4066
4113
|
0x50a28be6, 0x5c4dd124, 0x6d703ef3, 0x7a6d76e9, 0x00000000,
|
4067
4114
|
]);
|
4068
|
-
// The rotate left (circular left shift) operation for uint32
|
4069
|
-
const rotl = (word, shift) => (word << shift) | (word >>> (32 - shift));
|
4070
4115
|
// It's called f() in spec.
|
4071
4116
|
function f(group, x, y, z) {
|
4072
4117
|
if (group === 0)
|
@@ -4081,8 +4126,8 @@ function f(group, x, y, z) {
|
|
4081
4126
|
return x ^ (y | ~z);
|
4082
4127
|
}
|
4083
4128
|
// Temporary buffer, not used to store anything between runs
|
4084
|
-
const
|
4085
|
-
class RIPEMD160 extends
|
4129
|
+
const R_BUF = /* @__PURE__ */ new Uint32Array(16);
|
4130
|
+
class RIPEMD160 extends _md_js_1.HashMD {
|
4086
4131
|
constructor() {
|
4087
4132
|
super(64, 20, 8, true);
|
4088
4133
|
this.h0 = 0x67452301 | 0;
|
@@ -4104,7 +4149,7 @@ class RIPEMD160 extends _sha2_js_1.SHA2 {
|
|
4104
4149
|
}
|
4105
4150
|
process(view, offset) {
|
4106
4151
|
for (let i = 0; i < 16; i++, offset += 4)
|
4107
|
-
|
4152
|
+
R_BUF[i] = view.getUint32(offset, true);
|
4108
4153
|
// prettier-ignore
|
4109
4154
|
let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el;
|
4110
4155
|
// Instead of iterating 0 to 80, we split it into 5 groups
|
@@ -4115,20 +4160,20 @@ class RIPEMD160 extends _sha2_js_1.SHA2 {
|
|
4115
4160
|
const rl = idxL[group], rr = idxR[group]; // prettier-ignore
|
4116
4161
|
const sl = shiftsL[group], sr = shiftsR[group]; // prettier-ignore
|
4117
4162
|
for (let i = 0; i < 16; i++) {
|
4118
|
-
const tl = (rotl(al + f(group, bl, cl, dl) +
|
4119
|
-
al = el, el = dl, dl = rotl(cl, 10) | 0, cl = bl, bl = tl; // prettier-ignore
|
4163
|
+
const tl = ((0, utils_js_1.rotl)(al + f(group, bl, cl, dl) + R_BUF[rl[i]] + hbl, sl[i]) + el) | 0;
|
4164
|
+
al = el, el = dl, dl = (0, utils_js_1.rotl)(cl, 10) | 0, cl = bl, bl = tl; // prettier-ignore
|
4120
4165
|
}
|
4121
4166
|
// 2 loops are 10% faster
|
4122
4167
|
for (let i = 0; i < 16; i++) {
|
4123
|
-
const tr = (rotl(ar + f(rGroup, br, cr, dr) +
|
4124
|
-
ar = er, er = dr, dr = rotl(cr, 10) | 0, cr = br, br = tr; // prettier-ignore
|
4168
|
+
const tr = ((0, utils_js_1.rotl)(ar + f(rGroup, br, cr, dr) + R_BUF[rr[i]] + hbr, sr[i]) + er) | 0;
|
4169
|
+
ar = er, er = dr, dr = (0, utils_js_1.rotl)(cr, 10) | 0, cr = br, br = tr; // prettier-ignore
|
4125
4170
|
}
|
4126
4171
|
}
|
4127
4172
|
// Add the compressed chunk to the current hash value
|
4128
4173
|
this.set((this.h1 + cl + dr) | 0, (this.h2 + dl + er) | 0, (this.h3 + el + ar) | 0, (this.h4 + al + br) | 0, (this.h0 + bl + cr) | 0);
|
4129
4174
|
}
|
4130
4175
|
roundClean() {
|
4131
|
-
|
4176
|
+
R_BUF.fill(0);
|
4132
4177
|
}
|
4133
4178
|
destroy() {
|
4134
4179
|
this.destroyed = true;
|
@@ -4156,14 +4201,10 @@ exports.ripemd160 = (0, utils_js_1.wrapConstructor)(() => new RIPEMD160());
|
|
4156
4201
|
|
4157
4202
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
4158
4203
|
exports.sha224 = exports.sha256 = void 0;
|
4159
|
-
const
|
4204
|
+
const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
|
4160
4205
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
|
4161
4206
|
// SHA2-256 need to try 2^128 hashes to execute birthday attack.
|
4162
4207
|
// BTC network is doing 2^67 hashes/sec as per early 2023.
|
4163
|
-
// Choice: a ? b : c
|
4164
|
-
const Chi = (a, b, c) => (a & b) ^ (~a & c);
|
4165
|
-
// Majority function, true if any two inpust is true
|
4166
|
-
const Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);
|
4167
4208
|
// Round constants:
|
4168
4209
|
// first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)
|
4169
4210
|
// prettier-ignore
|
@@ -4177,27 +4218,28 @@ const SHA256_K = /* @__PURE__ */ new Uint32Array([
|
|
4177
4218
|
0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
|
4178
4219
|
0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
|
4179
4220
|
]);
|
4180
|
-
// Initial state
|
4221
|
+
// Initial state:
|
4222
|
+
// first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19
|
4181
4223
|
// prettier-ignore
|
4182
|
-
const
|
4224
|
+
const SHA256_IV = /* @__PURE__ */ new Uint32Array([
|
4183
4225
|
0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19
|
4184
4226
|
]);
|
4185
4227
|
// Temporary buffer, not used to store anything between runs
|
4186
4228
|
// Named this way because it matches specification.
|
4187
4229
|
const SHA256_W = /* @__PURE__ */ new Uint32Array(64);
|
4188
|
-
class SHA256 extends
|
4230
|
+
class SHA256 extends _md_js_1.HashMD {
|
4189
4231
|
constructor() {
|
4190
4232
|
super(64, 32, 8, false);
|
4191
4233
|
// We cannot use array here since array allows indexing by variable
|
4192
4234
|
// which means optimizer/compiler cannot use registers.
|
4193
|
-
this.A =
|
4194
|
-
this.B =
|
4195
|
-
this.C =
|
4196
|
-
this.D =
|
4197
|
-
this.E =
|
4198
|
-
this.F =
|
4199
|
-
this.G =
|
4200
|
-
this.H =
|
4235
|
+
this.A = SHA256_IV[0] | 0;
|
4236
|
+
this.B = SHA256_IV[1] | 0;
|
4237
|
+
this.C = SHA256_IV[2] | 0;
|
4238
|
+
this.D = SHA256_IV[3] | 0;
|
4239
|
+
this.E = SHA256_IV[4] | 0;
|
4240
|
+
this.F = SHA256_IV[5] | 0;
|
4241
|
+
this.G = SHA256_IV[6] | 0;
|
4242
|
+
this.H = SHA256_IV[7] | 0;
|
4201
4243
|
}
|
4202
4244
|
get() {
|
4203
4245
|
const { A, B, C, D, E, F, G, H } = this;
|
@@ -4229,9 +4271,9 @@ class SHA256 extends _sha2_js_1.SHA2 {
|
|
4229
4271
|
let { A, B, C, D, E, F, G, H } = this;
|
4230
4272
|
for (let i = 0; i < 64; i++) {
|
4231
4273
|
const sigma1 = (0, utils_js_1.rotr)(E, 6) ^ (0, utils_js_1.rotr)(E, 11) ^ (0, utils_js_1.rotr)(E, 25);
|
4232
|
-
const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;
|
4274
|
+
const T1 = (H + sigma1 + (0, _md_js_1.Chi)(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;
|
4233
4275
|
const sigma0 = (0, utils_js_1.rotr)(A, 2) ^ (0, utils_js_1.rotr)(A, 13) ^ (0, utils_js_1.rotr)(A, 22);
|
4234
|
-
const T2 = (sigma0 + Maj(A, B, C)) | 0;
|
4276
|
+
const T2 = (sigma0 + (0, _md_js_1.Maj)(A, B, C)) | 0;
|
4235
4277
|
H = G;
|
4236
4278
|
G = F;
|
4237
4279
|
F = E;
|
@@ -4295,7 +4337,7 @@ exports.sha224 = (0, utils_js_1.wrapConstructor)(() => new SHA224());
|
|
4295
4337
|
|
4296
4338
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
4297
4339
|
exports.sha384 = exports.sha512_256 = exports.sha512_224 = exports.sha512 = exports.SHA512 = void 0;
|
4298
|
-
const
|
4340
|
+
const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
|
4299
4341
|
const _u64_js_1 = __webpack_require__(/*! ./_u64.js */ "../../node_modules/@noble/hashes/_u64.js");
|
4300
4342
|
const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
|
4301
4343
|
// Round contants (first 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409):
|
@@ -4325,7 +4367,7 @@ const [SHA512_Kh, SHA512_Kl] = /* @__PURE__ */ (() => _u64_js_1.default.split([
|
|
4325
4367
|
// Temporary buffer, not used to store anything between runs
|
4326
4368
|
const SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);
|
4327
4369
|
const SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);
|
4328
|
-
class SHA512 extends
|
4370
|
+
class SHA512 extends _md_js_1.HashMD {
|
4329
4371
|
constructor() {
|
4330
4372
|
super(128, 64, 16, false);
|
4331
4373
|
// We cannot use array here since array allows indexing by variable which means optimizer/compiler cannot use registers.
|
@@ -4540,15 +4582,22 @@ exports.sha384 = (0, utils_js_1.wrapConstructor)(() => new SHA384());
|
|
4540
4582
|
|
4541
4583
|
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
4542
4584
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
4543
|
-
exports.randomBytes = exports.wrapXOFConstructorWithOpts = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.isLE = exports.rotr = exports.createView = exports.u32 = exports.u8 = void 0;
|
4585
|
+
exports.randomBytes = exports.wrapXOFConstructorWithOpts = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.byteSwap32 = exports.byteSwapIfBE = exports.byteSwap = exports.isLE = exports.rotl = exports.rotr = exports.createView = exports.u32 = exports.u8 = exports.isBytes = void 0;
|
4544
4586
|
// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.
|
4545
4587
|
// node.js versions earlier than v19 don't declare it in global scope.
|
4546
4588
|
// For node.js, package.json#exports field mapping rewrites import
|
4547
4589
|
// from `crypto` to `cryptoNode`, which imports native module.
|
4548
4590
|
// Makes the utils un-importable in browsers without a bundler.
|
4549
|
-
// Once node.js 18 is deprecated, we can just drop the import.
|
4591
|
+
// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.
|
4550
4592
|
const crypto_1 = __webpack_require__(/*! @noble/hashes/crypto */ "../../node_modules/@noble/hashes/crypto.js");
|
4551
|
-
const
|
4593
|
+
const _assert_js_1 = __webpack_require__(/*! ./_assert.js */ "../../node_modules/@noble/hashes/_assert.js");
|
4594
|
+
// export { isBytes } from './_assert.js';
|
4595
|
+
// We can't reuse isBytes from _assert, because somehow this causes huge perf issues
|
4596
|
+
function isBytes(a) {
|
4597
|
+
return (a instanceof Uint8Array ||
|
4598
|
+
(a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
|
4599
|
+
}
|
4600
|
+
exports.isBytes = isBytes;
|
4552
4601
|
// Cast array to different type
|
4553
4602
|
const u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);
|
4554
4603
|
exports.u8 = u8;
|
@@ -4560,18 +4609,32 @@ exports.createView = createView;
|
|
4560
4609
|
// The rotate right (circular right shift) operation for uint32
|
4561
4610
|
const rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift);
|
4562
4611
|
exports.rotr = rotr;
|
4563
|
-
//
|
4564
|
-
|
4612
|
+
// The rotate left (circular left shift) operation for uint32
|
4613
|
+
const rotl = (word, shift) => (word << shift) | ((word >>> (32 - shift)) >>> 0);
|
4614
|
+
exports.rotl = rotl;
|
4565
4615
|
exports.isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;
|
4566
|
-
|
4567
|
-
|
4616
|
+
// The byte swap operation for uint32
|
4617
|
+
const byteSwap = (word) => ((word << 24) & 0xff000000) |
|
4618
|
+
((word << 8) & 0xff0000) |
|
4619
|
+
((word >>> 8) & 0xff00) |
|
4620
|
+
((word >>> 24) & 0xff);
|
4621
|
+
exports.byteSwap = byteSwap;
|
4622
|
+
// Conditionally byte swap if on a big-endian platform
|
4623
|
+
exports.byteSwapIfBE = exports.isLE ? (n) => n : (n) => (0, exports.byteSwap)(n);
|
4624
|
+
// In place byte swap for Uint32Array
|
4625
|
+
function byteSwap32(arr) {
|
4626
|
+
for (let i = 0; i < arr.length; i++) {
|
4627
|
+
arr[i] = (0, exports.byteSwap)(arr[i]);
|
4628
|
+
}
|
4629
|
+
}
|
4630
|
+
exports.byteSwap32 = byteSwap32;
|
4631
|
+
// Array where index 0xf0 (240) is mapped to string 'f0'
|
4568
4632
|
const hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));
|
4569
4633
|
/**
|
4570
4634
|
* @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'
|
4571
4635
|
*/
|
4572
4636
|
function bytesToHex(bytes) {
|
4573
|
-
|
4574
|
-
throw new Error('Uint8Array expected');
|
4637
|
+
(0, _assert_js_1.bytes)(bytes);
|
4575
4638
|
// pre-caching improves the speed 6x
|
4576
4639
|
let hex = '';
|
4577
4640
|
for (let i = 0; i < bytes.length; i++) {
|
@@ -4580,23 +4643,36 @@ function bytesToHex(bytes) {
|
|
4580
4643
|
return hex;
|
4581
4644
|
}
|
4582
4645
|
exports.bytesToHex = bytesToHex;
|
4646
|
+
// We use optimized technique to convert hex string to byte array
|
4647
|
+
const asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };
|
4648
|
+
function asciiToBase16(char) {
|
4649
|
+
if (char >= asciis._0 && char <= asciis._9)
|
4650
|
+
return char - asciis._0;
|
4651
|
+
if (char >= asciis._A && char <= asciis._F)
|
4652
|
+
return char - (asciis._A - 10);
|
4653
|
+
if (char >= asciis._a && char <= asciis._f)
|
4654
|
+
return char - (asciis._a - 10);
|
4655
|
+
return;
|
4656
|
+
}
|
4583
4657
|
/**
|
4584
4658
|
* @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])
|
4585
4659
|
*/
|
4586
4660
|
function hexToBytes(hex) {
|
4587
4661
|
if (typeof hex !== 'string')
|
4588
4662
|
throw new Error('hex string expected, got ' + typeof hex);
|
4589
|
-
const
|
4590
|
-
|
4591
|
-
|
4592
|
-
|
4593
|
-
|
4594
|
-
|
4595
|
-
const
|
4596
|
-
const
|
4597
|
-
if (
|
4598
|
-
|
4599
|
-
|
4663
|
+
const hl = hex.length;
|
4664
|
+
const al = hl / 2;
|
4665
|
+
if (hl % 2)
|
4666
|
+
throw new Error('padded hex string expected, got unpadded hex of length ' + hl);
|
4667
|
+
const array = new Uint8Array(al);
|
4668
|
+
for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
|
4669
|
+
const n1 = asciiToBase16(hex.charCodeAt(hi));
|
4670
|
+
const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
|
4671
|
+
if (n1 === undefined || n2 === undefined) {
|
4672
|
+
const char = hex[hi] + hex[hi + 1];
|
4673
|
+
throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
|
4674
|
+
}
|
4675
|
+
array[ai] = n1 * 16 + n2;
|
4600
4676
|
}
|
4601
4677
|
return array;
|
4602
4678
|
}
|
@@ -4637,8 +4713,7 @@ exports.utf8ToBytes = utf8ToBytes;
|
|
4637
4713
|
function toBytes(data) {
|
4638
4714
|
if (typeof data === 'string')
|
4639
4715
|
data = utf8ToBytes(data);
|
4640
|
-
|
4641
|
-
throw new Error(`expected Uint8Array, got ${typeof data}`);
|
4716
|
+
(0, _assert_js_1.bytes)(data);
|
4642
4717
|
return data;
|
4643
4718
|
}
|
4644
4719
|
exports.toBytes = toBytes;
|
@@ -4646,15 +4721,19 @@ exports.toBytes = toBytes;
|
|
4646
4721
|
* Copies several Uint8Arrays into one.
|
4647
4722
|
*/
|
4648
4723
|
function concatBytes(...arrays) {
|
4649
|
-
|
4650
|
-
let
|
4651
|
-
|
4652
|
-
|
4653
|
-
|
4654
|
-
|
4724
|
+
let sum = 0;
|
4725
|
+
for (let i = 0; i < arrays.length; i++) {
|
4726
|
+
const a = arrays[i];
|
4727
|
+
(0, _assert_js_1.bytes)(a);
|
4728
|
+
sum += a.length;
|
4729
|
+
}
|
4730
|
+
const res = new Uint8Array(sum);
|
4731
|
+
for (let i = 0, pad = 0; i < arrays.length; i++) {
|
4732
|
+
const a = arrays[i];
|
4733
|
+
res.set(a, pad);
|
4655
4734
|
pad += a.length;
|
4656
|
-
}
|
4657
|
-
return
|
4735
|
+
}
|
4736
|
+
return res;
|
4658
4737
|
}
|
4659
4738
|
exports.concatBytes = concatBytes;
|
4660
4739
|
// For runtime check if class implements interface
|
@@ -4724,7 +4803,7 @@ exports.randomBytes = randomBytes;
|
|
4724
4803
|
|
4725
4804
|
/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
4726
4805
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
4727
|
-
exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64urlnopad = exports.base64url = exports.base64 = exports.base32crockford = exports.base32hex = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0;
|
4806
|
+
exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.createBase58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64urlnopad = exports.base64url = exports.base64nopad = exports.base64 = exports.base32crockford = exports.base32hexnopad = exports.base32hex = exports.base32nopad = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0;
|
4728
4807
|
// Utilities
|
4729
4808
|
/**
|
4730
4809
|
* @__NO_SIDE_EFFECTS__
|
@@ -4734,18 +4813,21 @@ function assertNumber(n) {
|
|
4734
4813
|
throw new Error(`Wrong integer: ${n}`);
|
4735
4814
|
}
|
4736
4815
|
exports.assertNumber = assertNumber;
|
4816
|
+
function isBytes(a) {
|
4817
|
+
return (a instanceof Uint8Array ||
|
4818
|
+
(a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
|
4819
|
+
}
|
4737
4820
|
/**
|
4738
4821
|
* @__NO_SIDE_EFFECTS__
|
4739
4822
|
*/
|
4740
4823
|
function chain(...args) {
|
4824
|
+
const id = (a) => a;
|
4741
4825
|
// Wrap call in closure so JIT can inline calls
|
4742
4826
|
const wrap = (a, b) => (c) => a(b(c));
|
4743
4827
|
// Construct chain of args[-1].encode(args[-2].encode([...]))
|
4744
|
-
const encode =
|
4745
|
-
.reverse()
|
4746
|
-
.reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), undefined);
|
4828
|
+
const encode = args.map((x) => x.encode).reduceRight(wrap, id);
|
4747
4829
|
// Construct chain of args[0].decode(args[1].decode(...))
|
4748
|
-
const decode = args.
|
4830
|
+
const decode = args.map((x) => x.decode).reduce(wrap, id);
|
4749
4831
|
return { encode, decode };
|
4750
4832
|
}
|
4751
4833
|
/**
|
@@ -4945,13 +5027,13 @@ function radix(num) {
|
|
4945
5027
|
assertNumber(num);
|
4946
5028
|
return {
|
4947
5029
|
encode: (bytes) => {
|
4948
|
-
if (!(bytes
|
5030
|
+
if (!isBytes(bytes))
|
4949
5031
|
throw new Error('radix.encode input should be Uint8Array');
|
4950
5032
|
return convertRadix(Array.from(bytes), 2 ** 8, num);
|
4951
5033
|
},
|
4952
5034
|
decode: (digits) => {
|
4953
5035
|
if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))
|
4954
|
-
throw new Error('radix.decode input should be array of
|
5036
|
+
throw new Error('radix.decode input should be array of numbers');
|
4955
5037
|
return Uint8Array.from(convertRadix(digits, num, 2 ** 8));
|
4956
5038
|
},
|
4957
5039
|
};
|
@@ -4969,13 +5051,13 @@ function radix2(bits, revPadding = false) {
|
|
4969
5051
|
throw new Error('radix2: carry overflow');
|
4970
5052
|
return {
|
4971
5053
|
encode: (bytes) => {
|
4972
|
-
if (!(bytes
|
5054
|
+
if (!isBytes(bytes))
|
4973
5055
|
throw new Error('radix2.encode input should be Uint8Array');
|
4974
5056
|
return convertRadix2(Array.from(bytes), 8, bits, !revPadding);
|
4975
5057
|
},
|
4976
5058
|
decode: (digits) => {
|
4977
5059
|
if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))
|
4978
|
-
throw new Error('radix2.decode input should be array of
|
5060
|
+
throw new Error('radix2.decode input should be array of numbers');
|
4979
5061
|
return Uint8Array.from(convertRadix2(digits, bits, 8, revPadding));
|
4980
5062
|
},
|
4981
5063
|
};
|
@@ -5002,7 +5084,7 @@ function checksum(len, fn) {
|
|
5002
5084
|
throw new Error('checksum fn should be function');
|
5003
5085
|
return {
|
5004
5086
|
encode(data) {
|
5005
|
-
if (!(data
|
5087
|
+
if (!isBytes(data))
|
5006
5088
|
throw new Error('checksum.encode: input should be Uint8Array');
|
5007
5089
|
const checksum = fn(data).slice(0, len);
|
5008
5090
|
const res = new Uint8Array(data.length + len);
|
@@ -5011,7 +5093,7 @@ function checksum(len, fn) {
|
|
5011
5093
|
return res;
|
5012
5094
|
},
|
5013
5095
|
decode(data) {
|
5014
|
-
if (!(data
|
5096
|
+
if (!isBytes(data))
|
5015
5097
|
throw new Error('checksum.decode: input should be Uint8Array');
|
5016
5098
|
const payload = data.slice(0, -len);
|
5017
5099
|
const newChecksum = fn(payload).slice(0, len);
|
@@ -5023,14 +5105,20 @@ function checksum(len, fn) {
|
|
5023
5105
|
},
|
5024
5106
|
};
|
5025
5107
|
}
|
5026
|
-
|
5108
|
+
// prettier-ignore
|
5109
|
+
exports.utils = {
|
5110
|
+
alphabet, chain, checksum, convertRadix, convertRadix2, radix, radix2, join, padding,
|
5111
|
+
};
|
5027
5112
|
// RFC 4648 aka RFC 3548
|
5028
5113
|
// ---------------------
|
5029
5114
|
exports.base16 = chain(radix2(4), alphabet('0123456789ABCDEF'), join(''));
|
5030
5115
|
exports.base32 = chain(radix2(5), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'), padding(5), join(''));
|
5116
|
+
exports.base32nopad = chain(radix2(5), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'), join(''));
|
5031
5117
|
exports.base32hex = chain(radix2(5), alphabet('0123456789ABCDEFGHIJKLMNOPQRSTUV'), padding(5), join(''));
|
5118
|
+
exports.base32hexnopad = chain(radix2(5), alphabet('0123456789ABCDEFGHIJKLMNOPQRSTUV'), join(''));
|
5032
5119
|
exports.base32crockford = chain(radix2(5), alphabet('0123456789ABCDEFGHJKMNPQRSTVWXYZ'), join(''), normalize((s) => s.toUpperCase().replace(/O/g, '0').replace(/[IL]/g, '1')));
|
5033
5120
|
exports.base64 = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'), padding(6), join(''));
|
5121
|
+
exports.base64nopad = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'), join(''));
|
5034
5122
|
exports.base64url = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'), padding(6), join(''));
|
5035
5123
|
exports.base64urlnopad = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'), join(''));
|
5036
5124
|
// base58 code
|
@@ -5067,8 +5155,10 @@ exports.base58xmr = {
|
|
5067
5155
|
return Uint8Array.from(res);
|
5068
5156
|
},
|
5069
5157
|
};
|
5070
|
-
const
|
5071
|
-
exports.
|
5158
|
+
const createBase58check = (sha256) => chain(checksum(4, (data) => sha256(sha256(data))), exports.base58);
|
5159
|
+
exports.createBase58check = createBase58check;
|
5160
|
+
// legacy export, bad name
|
5161
|
+
exports.base58check = exports.createBase58check;
|
5072
5162
|
const BECH_ALPHABET = /* @__PURE__ */ chain(alphabet('qpzry9x8gf2tvdw0s3jn54khce6mua7l'), join(''));
|
5073
5163
|
const POLYMOD_GENERATORS = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3];
|
5074
5164
|
/**
|
@@ -5119,6 +5209,8 @@ function genBech32(encoding) {
|
|
5119
5209
|
throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`);
|
5120
5210
|
if (!Array.isArray(words) || (words.length && typeof words[0] !== 'number'))
|
5121
5211
|
throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`);
|
5212
|
+
if (prefix.length === 0)
|
5213
|
+
throw new TypeError(`Invalid prefix length ${prefix.length}`);
|
5122
5214
|
const actualLength = prefix.length + 7 + words.length;
|
5123
5215
|
if (limit !== false && actualLength > limit)
|
5124
5216
|
throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`);
|
@@ -5135,17 +5227,16 @@ function genBech32(encoding) {
|
|
5135
5227
|
const lowered = str.toLowerCase();
|
5136
5228
|
if (str !== lowered && str !== str.toUpperCase())
|
5137
5229
|
throw new Error(`String must be lowercase or uppercase`);
|
5138
|
-
|
5139
|
-
const sepIndex = str.lastIndexOf('1');
|
5230
|
+
const sepIndex = lowered.lastIndexOf('1');
|
5140
5231
|
if (sepIndex === 0 || sepIndex === -1)
|
5141
5232
|
throw new Error(`Letter "1" must be present between prefix and data only`);
|
5142
|
-
const prefix =
|
5143
|
-
const
|
5144
|
-
if (
|
5233
|
+
const prefix = lowered.slice(0, sepIndex);
|
5234
|
+
const data = lowered.slice(sepIndex + 1);
|
5235
|
+
if (data.length < 6)
|
5145
5236
|
throw new Error('Data must be at least 6 characters long');
|
5146
|
-
const words = BECH_ALPHABET.decode(
|
5237
|
+
const words = BECH_ALPHABET.decode(data).slice(0, -6);
|
5147
5238
|
const sum = bechChecksum(prefix, words, ENCODING_CONST);
|
5148
|
-
if (!
|
5239
|
+
if (!data.endsWith(sum))
|
5149
5240
|
throw new Error(`Invalid checksum in ${str}: expected "${sum}"`);
|
5150
5241
|
return { prefix, words };
|
5151
5242
|
}
|
@@ -5175,7 +5266,7 @@ const coderTypeError = 'Invalid encoding type. Available types: utf8, hex, base1
|
|
5175
5266
|
const bytesToString = (type, bytes) => {
|
5176
5267
|
if (typeof type !== 'string' || !CODERS.hasOwnProperty(type))
|
5177
5268
|
throw new TypeError(coderTypeError);
|
5178
|
-
if (!(bytes
|
5269
|
+
if (!isBytes(bytes))
|
5179
5270
|
throw new TypeError('bytesToString() expects Uint8Array');
|
5180
5271
|
return CODERS[type].encode(bytes);
|
5181
5272
|
};
|
@@ -5215,7 +5306,7 @@ const secp256k1_1 = __webpack_require__(/*! @noble/curves/secp256k1 */ "../../no
|
|
5215
5306
|
const modular_1 = __webpack_require__(/*! @noble/curves/abstract/modular */ "../../node_modules/@noble/curves/abstract/modular.js");
|
5216
5307
|
const base_1 = __webpack_require__(/*! @scure/base */ "../../node_modules/@scure/base/lib/index.js");
|
5217
5308
|
const Point = secp256k1_1.secp256k1.ProjectivePoint;
|
5218
|
-
const base58check = (0, base_1.
|
5309
|
+
const base58check = (0, base_1.createBase58check)(sha256_1.sha256);
|
5219
5310
|
function bytesToNumber(bytes) {
|
5220
5311
|
return BigInt(`0x${(0, utils_1.bytesToHex)(bytes)}`);
|
5221
5312
|
}
|
@@ -5317,7 +5408,7 @@ class HDKey {
|
|
5317
5408
|
}
|
5318
5409
|
this.versions = opt.versions || BITCOIN_VERSIONS;
|
5319
5410
|
this.depth = opt.depth || 0;
|
5320
|
-
this.chainCode = opt.chainCode;
|
5411
|
+
this.chainCode = opt.chainCode || null;
|
5321
5412
|
this.index = opt.index || 0;
|
5322
5413
|
this.parentFingerprint = opt.parentFingerprint || 0;
|
5323
5414
|
if (!this.depth) {
|
@@ -5499,6 +5590,7 @@ const isJapanese = (wordlist) => wordlist[0] === '\u3042\u3044\u3053\u304f\u3057
|
|
5499
5590
|
// Normalization replaces equivalent sequences of characters
|
5500
5591
|
// so that any two texts that are equivalent will be reduced
|
5501
5592
|
// to the same sequence of code points, called the normal form of the original text.
|
5593
|
+
// https://tonsky.me/blog/unicode/#why-is-a----
|
5502
5594
|
function nfkd(str) {
|
5503
5595
|
if (typeof str !== 'string')
|
5504
5596
|
throw new TypeError(`Invalid mnemonic type: ${typeof str}`);
|
@@ -5512,7 +5604,7 @@ function normalize(str) {
|
|
5512
5604
|
return { nfkd: norm, words };
|
5513
5605
|
}
|
5514
5606
|
function assertEntropy(entropy) {
|
5515
|
-
_assert_1.
|
5607
|
+
(0, _assert_1.bytes)(entropy, 16, 20, 24, 28, 32);
|
5516
5608
|
}
|
5517
5609
|
/**
|
5518
5610
|
* Generate x random words. Uses Cryptographically-Secure Random Number Generator.
|
@@ -5523,7 +5615,7 @@ function assertEntropy(entropy) {
|
|
5523
5615
|
* // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
|
5524
5616
|
*/
|
5525
5617
|
function generateMnemonic(wordlist, strength = 128) {
|
5526
|
-
_assert_1.
|
5618
|
+
(0, _assert_1.number)(strength);
|
5527
5619
|
if (strength % 32 !== 0 || strength > 256)
|
5528
5620
|
throw new TypeError('Invalid entropy');
|
5529
5621
|
return entropyToMnemonic((0, utils_1.randomBytes)(strength / 8), wordlist);
|
@@ -5538,7 +5630,7 @@ const calcChecksum = (entropy) => {
|
|
5538
5630
|
};
|
5539
5631
|
function getCoder(wordlist) {
|
5540
5632
|
if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== 'string')
|
5541
|
-
throw new Error('
|
5633
|
+
throw new Error('Wordlist: expected array of 2048 strings');
|
5542
5634
|
wordlist.forEach((i) => {
|
5543
5635
|
if (typeof i !== 'string')
|
5544
5636
|
throw new Error(`Wordlist: non-string element: ${i}`);
|
@@ -7850,6 +7942,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
7850
7942
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
7851
7943
|
exports.randomBytes = exports.stringToHex = exports.hexToString = exports.hexToBytes = exports.bytesToHex = void 0;
|
7852
7944
|
const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
|
7945
|
+
const shared_1 = __webpack_require__(/*! ./shared */ "../../node_modules/@xrplf/isomorphic/dist/utils/shared.js");
|
7853
7946
|
/* eslint-disable func-style -- Typed to ensure uniformity between node and browser implementations and docs */
|
7854
7947
|
const bytesToHex = (bytes) => {
|
7855
7948
|
const hex = (0, utils_1.bytesToHex)(bytes instanceof Uint8Array ? bytes : Uint8Array.from(bytes));
|
@@ -7860,6 +7953,9 @@ exports.bytesToHex = bytesToHex;
|
|
7860
7953
|
const hexToBytes = (hex) => {
|
7861
7954
|
const len = hex.length;
|
7862
7955
|
const array = new Uint8Array(len / 2);
|
7956
|
+
if (!shared_1.HEX_REGEX.test(hex)) {
|
7957
|
+
throw new Error('Invalid hex string');
|
7958
|
+
}
|
7863
7959
|
for (let i = 0; i < array.length; i++) {
|
7864
7960
|
const j = i * 2;
|
7865
7961
|
const hexByte = hex.slice(j, j + 2);
|
@@ -7896,8 +7992,9 @@ __exportStar(__webpack_require__(/*! ./shared */ "../../node_modules/@xrplf/isom
|
|
7896
7992
|
"use strict";
|
7897
7993
|
|
7898
7994
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
7899
|
-
exports.equal = exports.concat = void 0;
|
7995
|
+
exports.equal = exports.concat = exports.HEX_REGEX = void 0;
|
7900
7996
|
const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
|
7997
|
+
exports.HEX_REGEX = /^[A-F0-9]*$/iu;
|
7901
7998
|
function concat(views) {
|
7902
7999
|
return (0, utils_1.concatBytes)(...views);
|
7903
8000
|
}
|
@@ -13637,13 +13734,13 @@ class BinaryParser {
|
|
13637
13734
|
if (type === 0) {
|
13638
13735
|
type = this.readUInt8();
|
13639
13736
|
if (type === 0 || type < 16) {
|
13640
|
-
throw new Error(
|
13737
|
+
throw new Error(`Cannot read FieldOrdinal, type_code ${type} out of range`);
|
13641
13738
|
}
|
13642
13739
|
}
|
13643
13740
|
if (nth === 0) {
|
13644
13741
|
nth = this.readUInt8();
|
13645
13742
|
if (nth === 0 || nth < 16) {
|
13646
|
-
throw new Error(
|
13743
|
+
throw new Error(`Cannot read FieldOrdinal, field_code ${nth} out of range`);
|
13647
13744
|
}
|
13648
13745
|
}
|
13649
13746
|
return (type << 16) | nth;
|
@@ -14468,6 +14565,9 @@ class Blob extends serialized_type_1.SerializedType {
|
|
14468
14565
|
return value;
|
14469
14566
|
}
|
14470
14567
|
if (typeof value === 'string') {
|
14568
|
+
if (!/^[A-F0-9]*$/iu.test(value)) {
|
14569
|
+
throw new Error('Cannot construct Blob from a non-hex string');
|
14570
|
+
}
|
14471
14571
|
return new Blob((0, utils_1.hexToBytes)(value));
|
14472
14572
|
}
|
14473
14573
|
throw new Error('Cannot construct Blob from value given');
|
@@ -15369,7 +15469,10 @@ const OBJECT_END_MARKER = Uint8Array.from([0xe1]);
|
|
15369
15469
|
* TypeGuard for Array<JsonObject>
|
15370
15470
|
*/
|
15371
15471
|
function isObjects(args) {
|
15372
|
-
return (Array.isArray(args) &&
|
15472
|
+
return (Array.isArray(args) &&
|
15473
|
+
args.every((arg) => typeof arg === 'object' &&
|
15474
|
+
Object.keys(arg).length === 1 &&
|
15475
|
+
typeof Object.values(arg)[0] === 'object'));
|
15373
15476
|
}
|
15374
15477
|
/**
|
15375
15478
|
* Class for serializing and deserializing Arrays of Objects
|
@@ -16749,18 +16852,13 @@ var FaucetNetwork;
|
|
16749
16852
|
(function (FaucetNetwork) {
|
16750
16853
|
FaucetNetwork["Testnet"] = "faucet.altnet.rippletest.net";
|
16751
16854
|
FaucetNetwork["Devnet"] = "faucet.devnet.rippletest.net";
|
16752
|
-
FaucetNetwork["HooksV3Testnet"] = "hooks-testnet-v3.xrpl-labs.com";
|
16753
16855
|
})(FaucetNetwork || (exports.FaucetNetwork = FaucetNetwork = {}));
|
16754
16856
|
exports.FaucetNetworkPaths = {
|
16755
16857
|
[FaucetNetwork.Testnet]: '/accounts',
|
16756
16858
|
[FaucetNetwork.Devnet]: '/accounts',
|
16757
|
-
[FaucetNetwork.HooksV3Testnet]: '/accounts',
|
16758
16859
|
};
|
16759
16860
|
function getFaucetHost(client) {
|
16760
16861
|
const connectionUrl = client.url;
|
16761
|
-
if (connectionUrl.includes('hooks-testnet-v3')) {
|
16762
|
-
return FaucetNetwork.HooksV3Testnet;
|
16763
|
-
}
|
16764
16862
|
if (connectionUrl.includes('altnet') || connectionUrl.includes('testnet')) {
|
16765
16863
|
return FaucetNetwork.Testnet;
|
16766
16864
|
}
|
@@ -17913,6 +18011,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
17913
18011
|
exports.Client = void 0;
|
17914
18012
|
const eventemitter3_1 = __webpack_require__(/*! eventemitter3 */ "../../node_modules/eventemitter3/index.js");
|
17915
18013
|
const errors_1 = __webpack_require__(/*! ../errors */ "./dist/npm/errors.js");
|
18014
|
+
const common_1 = __webpack_require__(/*! ../models/common */ "./dist/npm/models/common/index.js");
|
17916
18015
|
const flags_1 = __webpack_require__(/*! ../models/utils/flags */ "./dist/npm/models/utils/flags.js");
|
17917
18016
|
const sugar_1 = __webpack_require__(/*! ../sugar */ "./dist/npm/sugar/index.js");
|
17918
18017
|
const autofill_1 = __webpack_require__(/*! ../sugar/autofill */ "./dist/npm/sugar/autofill.js");
|
@@ -17957,6 +18056,7 @@ class Client extends eventemitter3_1.EventEmitter {
|
|
17957
18056
|
constructor(server, options = {}) {
|
17958
18057
|
var _a, _b;
|
17959
18058
|
super();
|
18059
|
+
this.apiVersion = common_1.DEFAULT_API_VERSION;
|
17960
18060
|
if (typeof server !== 'string' || !/wss?(?:\+unix)?:\/\//u.exec(server)) {
|
17961
18061
|
throw new errors_1.ValidationError('server URI must start with `wss://`, `ws://`, `wss+unix://`, or `ws+unix://`.');
|
17962
18062
|
}
|
@@ -18003,11 +18103,12 @@ class Client extends eventemitter3_1.EventEmitter {
|
|
18003
18103
|
return this.connection.getUrl();
|
18004
18104
|
}
|
18005
18105
|
request(req) {
|
18106
|
+
var _a;
|
18006
18107
|
return __awaiter(this, void 0, void 0, function* () {
|
18007
|
-
const
|
18008
|
-
?
|
18009
|
-
|
18010
|
-
|
18108
|
+
const request = Object.assign(Object.assign({}, req), { account: typeof req.account === 'string'
|
18109
|
+
? (0, sugar_1.ensureClassicAddress)(req.account)
|
18110
|
+
: undefined, api_version: (_a = req.api_version) !== null && _a !== void 0 ? _a : this.apiVersion });
|
18111
|
+
const response = yield this.connection.request(request);
|
18011
18112
|
(0, partialPayment_1.handlePartialPayment)(req.command, response);
|
18012
18113
|
return response;
|
18013
18114
|
});
|
@@ -18033,7 +18134,6 @@ class Client extends eventemitter3_1.EventEmitter {
|
|
18033
18134
|
const countTo = request.limit == null ? Infinity : request.limit;
|
18034
18135
|
let count = 0;
|
18035
18136
|
let marker = request.marker;
|
18036
|
-
let lastBatchLength;
|
18037
18137
|
const results = [];
|
18038
18138
|
do {
|
18039
18139
|
const countRemaining = clamp(countTo - count, MIN_LIMIT, MAX_LIMIT);
|
@@ -18048,12 +18148,8 @@ class Client extends eventemitter3_1.EventEmitter {
|
|
18048
18148
|
results.push(singleResponse);
|
18049
18149
|
if (Array.isArray(collectedData)) {
|
18050
18150
|
count += collectedData.length;
|
18051
|
-
lastBatchLength = collectedData.length;
|
18052
|
-
}
|
18053
|
-
else {
|
18054
|
-
lastBatchLength = 0;
|
18055
18151
|
}
|
18056
|
-
} while (Boolean(marker) && count < countTo
|
18152
|
+
} while (Boolean(marker) && count < countTo);
|
18057
18153
|
return results;
|
18058
18154
|
});
|
18059
18155
|
}
|
@@ -18109,6 +18205,15 @@ class Client extends eventemitter3_1.EventEmitter {
|
|
18109
18205
|
if (tx.TransactionType === 'AccountDelete') {
|
18110
18206
|
promises.push((0, autofill_1.checkAccountDeleteBlockers)(this, tx));
|
18111
18207
|
}
|
18208
|
+
if (tx.TransactionType === 'Payment' && tx.DeliverMax != null) {
|
18209
|
+
if (tx.Amount == null) {
|
18210
|
+
tx.Amount = tx.DeliverMax;
|
18211
|
+
}
|
18212
|
+
if (tx.Amount != null && tx.Amount !== tx.DeliverMax) {
|
18213
|
+
return Promise.reject(new errors_1.ValidationError('PaymentTransaction: Amount and DeliverMax fields must be identical when both are provided'));
|
18214
|
+
}
|
18215
|
+
delete tx.DeliverMax;
|
18216
|
+
}
|
18112
18217
|
return Promise.all(promises).then(() => tx);
|
18113
18218
|
});
|
18114
18219
|
}
|
@@ -18294,21 +18399,28 @@ function isPartialPayment(tx, metadata) {
|
|
18294
18399
|
return false;
|
18295
18400
|
}
|
18296
18401
|
const delivered = meta.delivered_amount;
|
18297
|
-
const amount = tx.
|
18402
|
+
const amount = tx.DeliverMax;
|
18298
18403
|
if (delivered === undefined) {
|
18299
18404
|
return false;
|
18300
18405
|
}
|
18301
18406
|
return !amountsEqual(delivered, amount);
|
18302
18407
|
}
|
18303
18408
|
function txHasPartialPayment(response) {
|
18304
|
-
return isPartialPayment(response.result, response.result.meta);
|
18409
|
+
return isPartialPayment(response.result.tx_json, response.result.meta);
|
18305
18410
|
}
|
18306
18411
|
function txEntryHasPartialPayment(response) {
|
18307
18412
|
return isPartialPayment(response.result.tx_json, response.result.metadata);
|
18308
18413
|
}
|
18309
18414
|
function accountTxHasPartialPayment(response) {
|
18310
18415
|
const { transactions } = response.result;
|
18311
|
-
const foo = transactions.some((tx) =>
|
18416
|
+
const foo = transactions.some((tx) => {
|
18417
|
+
if (tx.tx_json != null) {
|
18418
|
+
const transaction = tx;
|
18419
|
+
return isPartialPayment(transaction.tx_json, transaction.meta);
|
18420
|
+
}
|
18421
|
+
const transaction = tx;
|
18422
|
+
return isPartialPayment(transaction.tx, transaction.meta);
|
18423
|
+
});
|
18312
18424
|
return foo;
|
18313
18425
|
}
|
18314
18426
|
function hasPartialPayment(command, response) {
|
@@ -18482,6 +18594,10 @@ __exportStar(__webpack_require__(/*! ./Wallet/signer */ "./dist/npm/Wallet/signe
|
|
18482
18594
|
"use strict";
|
18483
18595
|
|
18484
18596
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
18597
|
+
exports.DEFAULT_API_VERSION = exports.RIPPLED_API_V2 = exports.RIPPLED_API_V1 = void 0;
|
18598
|
+
exports.RIPPLED_API_V1 = 1;
|
18599
|
+
exports.RIPPLED_API_V2 = 2;
|
18600
|
+
exports.DEFAULT_API_VERSION = exports.RIPPLED_API_V2;
|
18485
18601
|
|
18486
18602
|
|
18487
18603
|
/***/ }),
|
@@ -18649,6 +18765,7 @@ var RippleStateFlags;
|
|
18649
18765
|
RippleStateFlags[RippleStateFlags["lsfHighNoRipple"] = 2097152] = "lsfHighNoRipple";
|
18650
18766
|
RippleStateFlags[RippleStateFlags["lsfLowFreeze"] = 4194304] = "lsfLowFreeze";
|
18651
18767
|
RippleStateFlags[RippleStateFlags["lsfHighFreeze"] = 8388608] = "lsfHighFreeze";
|
18768
|
+
RippleStateFlags[RippleStateFlags["lsfAMMNode"] = 16777216] = "lsfAMMNode";
|
18652
18769
|
})(RippleStateFlags || (exports.RippleStateFlags = RippleStateFlags = {}));
|
18653
18770
|
|
18654
18771
|
|
@@ -18872,6 +18989,7 @@ var AMMDepositFlags;
|
|
18872
18989
|
AMMDepositFlags[AMMDepositFlags["tfTwoAsset"] = 1048576] = "tfTwoAsset";
|
18873
18990
|
AMMDepositFlags[AMMDepositFlags["tfOneAssetLPToken"] = 2097152] = "tfOneAssetLPToken";
|
18874
18991
|
AMMDepositFlags[AMMDepositFlags["tfLimitLPToken"] = 4194304] = "tfLimitLPToken";
|
18992
|
+
AMMDepositFlags[AMMDepositFlags["tfTwoAssetIfEmpty"] = 8388608] = "tfTwoAssetIfEmpty";
|
18875
18993
|
})(AMMDepositFlags || (exports.AMMDepositFlags = AMMDepositFlags = {}));
|
18876
18994
|
function validateAMMDeposit(tx) {
|
18877
18995
|
(0, common_1.validateBaseTransaction)(tx);
|
@@ -20290,6 +20408,95 @@ function validateOfferCreate(tx) {
|
|
20290
20408
|
exports.validateOfferCreate = validateOfferCreate;
|
20291
20409
|
|
20292
20410
|
|
20411
|
+
/***/ }),
|
20412
|
+
|
20413
|
+
/***/ "./dist/npm/models/transactions/oracleDelete.js":
|
20414
|
+
/*!******************************************************!*\
|
20415
|
+
!*** ./dist/npm/models/transactions/oracleDelete.js ***!
|
20416
|
+
\******************************************************/
|
20417
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
20418
|
+
|
20419
|
+
"use strict";
|
20420
|
+
|
20421
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
20422
|
+
exports.validateOracleDelete = void 0;
|
20423
|
+
const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
|
20424
|
+
function validateOracleDelete(tx) {
|
20425
|
+
(0, common_1.validateBaseTransaction)(tx);
|
20426
|
+
(0, common_1.validateRequiredField)(tx, 'OracleDocumentID', common_1.isNumber);
|
20427
|
+
}
|
20428
|
+
exports.validateOracleDelete = validateOracleDelete;
|
20429
|
+
|
20430
|
+
|
20431
|
+
/***/ }),
|
20432
|
+
|
20433
|
+
/***/ "./dist/npm/models/transactions/oracleSet.js":
|
20434
|
+
/*!***************************************************!*\
|
20435
|
+
!*** ./dist/npm/models/transactions/oracleSet.js ***!
|
20436
|
+
\***************************************************/
|
20437
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
20438
|
+
|
20439
|
+
"use strict";
|
20440
|
+
|
20441
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
20442
|
+
exports.validateOracleSet = void 0;
|
20443
|
+
const errors_1 = __webpack_require__(/*! ../../errors */ "./dist/npm/errors.js");
|
20444
|
+
const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
|
20445
|
+
const PRICE_DATA_SERIES_MAX_LENGTH = 10;
|
20446
|
+
const SCALE_MAX = 10;
|
20447
|
+
function validateOracleSet(tx) {
|
20448
|
+
(0, common_1.validateBaseTransaction)(tx);
|
20449
|
+
(0, common_1.validateRequiredField)(tx, 'OracleDocumentID', common_1.isNumber);
|
20450
|
+
(0, common_1.validateRequiredField)(tx, 'LastUpdateTime', common_1.isNumber);
|
20451
|
+
(0, common_1.validateOptionalField)(tx, 'Provider', common_1.isString);
|
20452
|
+
(0, common_1.validateOptionalField)(tx, 'URI', common_1.isString);
|
20453
|
+
(0, common_1.validateOptionalField)(tx, 'AssetClass', common_1.isString);
|
20454
|
+
(0, common_1.validateRequiredField)(tx, 'PriceDataSeries', (value) => {
|
20455
|
+
if (!Array.isArray(value)) {
|
20456
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must be an array');
|
20457
|
+
}
|
20458
|
+
if (value.length > PRICE_DATA_SERIES_MAX_LENGTH) {
|
20459
|
+
throw new errors_1.ValidationError(`OracleSet: PriceDataSeries must have at most ${PRICE_DATA_SERIES_MAX_LENGTH} PriceData objects`);
|
20460
|
+
}
|
20461
|
+
for (const priceData of value) {
|
20462
|
+
if (typeof priceData !== 'object') {
|
20463
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must be an array of objects');
|
20464
|
+
}
|
20465
|
+
if (priceData.PriceData == null) {
|
20466
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `PriceData` object');
|
20467
|
+
}
|
20468
|
+
if (Object.keys(priceData).length !== 1) {
|
20469
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must only have a single PriceData object');
|
20470
|
+
}
|
20471
|
+
if (typeof priceData.PriceData.BaseAsset !== 'string') {
|
20472
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `BaseAsset` string');
|
20473
|
+
}
|
20474
|
+
if (typeof priceData.PriceData.QuoteAsset !== 'string') {
|
20475
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `QuoteAsset` string');
|
20476
|
+
}
|
20477
|
+
if ((priceData.PriceData.AssetPrice == null) !==
|
20478
|
+
(priceData.PriceData.Scale == null)) {
|
20479
|
+
throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have both `AssetPrice` and `Scale` if any are present');
|
20480
|
+
}
|
20481
|
+
if ('AssetPrice' in priceData.PriceData &&
|
20482
|
+
!(0, common_1.isNumber)(priceData.PriceData.AssetPrice)) {
|
20483
|
+
throw new errors_1.ValidationError('OracleSet: invalid field AssetPrice');
|
20484
|
+
}
|
20485
|
+
if ('Scale' in priceData.PriceData &&
|
20486
|
+
!(0, common_1.isNumber)(priceData.PriceData.Scale)) {
|
20487
|
+
throw new errors_1.ValidationError('OracleSet: invalid field Scale');
|
20488
|
+
}
|
20489
|
+
if (priceData.PriceData.Scale < 0 ||
|
20490
|
+
priceData.PriceData.Scale > SCALE_MAX) {
|
20491
|
+
throw new errors_1.ValidationError(`OracleSet: Scale must be in range 0-${SCALE_MAX}`);
|
20492
|
+
}
|
20493
|
+
}
|
20494
|
+
return true;
|
20495
|
+
});
|
20496
|
+
}
|
20497
|
+
exports.validateOracleSet = validateOracleSet;
|
20498
|
+
|
20499
|
+
|
20293
20500
|
/***/ }),
|
20294
20501
|
|
20295
20502
|
/***/ "./dist/npm/models/transactions/payment.js":
|
@@ -20307,7 +20514,7 @@ const utils_1 = __webpack_require__(/*! ../utils */ "./dist/npm/models/utils/ind
|
|
20307
20514
|
const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
|
20308
20515
|
var PaymentFlags;
|
20309
20516
|
(function (PaymentFlags) {
|
20310
|
-
PaymentFlags[PaymentFlags["
|
20517
|
+
PaymentFlags[PaymentFlags["tfNoRippleDirect"] = 65536] = "tfNoRippleDirect";
|
20311
20518
|
PaymentFlags[PaymentFlags["tfPartialPayment"] = 131072] = "tfPartialPayment";
|
20312
20519
|
PaymentFlags[PaymentFlags["tfLimitQuality"] = 262144] = "tfLimitQuality";
|
20313
20520
|
})(PaymentFlags || (exports.PaymentFlags = PaymentFlags = {}));
|
@@ -20666,6 +20873,8 @@ const NFTokenCreateOffer_1 = __webpack_require__(/*! ./NFTokenCreateOffer */ "./
|
|
20666
20873
|
const NFTokenMint_1 = __webpack_require__(/*! ./NFTokenMint */ "./dist/npm/models/transactions/NFTokenMint.js");
|
20667
20874
|
const offerCancel_1 = __webpack_require__(/*! ./offerCancel */ "./dist/npm/models/transactions/offerCancel.js");
|
20668
20875
|
const offerCreate_1 = __webpack_require__(/*! ./offerCreate */ "./dist/npm/models/transactions/offerCreate.js");
|
20876
|
+
const oracleDelete_1 = __webpack_require__(/*! ./oracleDelete */ "./dist/npm/models/transactions/oracleDelete.js");
|
20877
|
+
const oracleSet_1 = __webpack_require__(/*! ./oracleSet */ "./dist/npm/models/transactions/oracleSet.js");
|
20669
20878
|
const payment_1 = __webpack_require__(/*! ./payment */ "./dist/npm/models/transactions/payment.js");
|
20670
20879
|
const paymentChannelClaim_1 = __webpack_require__(/*! ./paymentChannelClaim */ "./dist/npm/models/transactions/paymentChannelClaim.js");
|
20671
20880
|
const paymentChannelCreate_1 = __webpack_require__(/*! ./paymentChannelCreate */ "./dist/npm/models/transactions/paymentChannelCreate.js");
|
@@ -20819,6 +21028,12 @@ function validate(transaction) {
|
|
20819
21028
|
case 'OfferCreate':
|
20820
21029
|
(0, offerCreate_1.validateOfferCreate)(tx);
|
20821
21030
|
break;
|
21031
|
+
case 'OracleDelete':
|
21032
|
+
(0, oracleDelete_1.validateOracleDelete)(tx);
|
21033
|
+
break;
|
21034
|
+
case 'OracleSet':
|
21035
|
+
(0, oracleSet_1.validateOracleSet)(tx);
|
21036
|
+
break;
|
20822
21037
|
case 'Payment':
|
20823
21038
|
(0, payment_1.validatePayment)(tx);
|
20824
21039
|
break;
|
@@ -21051,7 +21266,6 @@ const getFeeXrp_1 = __importDefault(__webpack_require__(/*! ./getFeeXrp */ "./di
|
|
21051
21266
|
const LEDGER_OFFSET = 20;
|
21052
21267
|
const RESTRICTED_NETWORKS = 1024;
|
21053
21268
|
const REQUIRED_NETWORKID_VERSION = '1.11.0';
|
21054
|
-
const HOOKS_TESTNET_ID = 21338;
|
21055
21269
|
function isNotLaterRippledVersion(source, target) {
|
21056
21270
|
if (source === target) {
|
21057
21271
|
return true;
|
@@ -21094,9 +21308,8 @@ function isNotLaterRippledVersion(source, target) {
|
|
21094
21308
|
function txNeedsNetworkID(client) {
|
21095
21309
|
if (client.networkID !== undefined &&
|
21096
21310
|
client.networkID > RESTRICTED_NETWORKS) {
|
21097
|
-
if (
|
21098
|
-
isNotLaterRippledVersion(REQUIRED_NETWORKID_VERSION, client.buildVersion))
|
21099
|
-
client.networkID === HOOKS_TESTNET_ID) {
|
21311
|
+
if (client.buildVersion &&
|
21312
|
+
isNotLaterRippledVersion(REQUIRED_NETWORKID_VERSION, client.buildVersion)) {
|
21100
21313
|
return true;
|
21101
21314
|
}
|
21102
21315
|
}
|
@@ -21278,8 +21491,9 @@ function getFeeXrp(client, cushion) {
|
|
21278
21491
|
var _a;
|
21279
21492
|
return __awaiter(this, void 0, void 0, function* () {
|
21280
21493
|
const feeCushion = cushion !== null && cushion !== void 0 ? cushion : client.feeCushion;
|
21281
|
-
const serverInfo = (yield client.request({
|
21282
|
-
|
21494
|
+
const serverInfo = (yield client.request({
|
21495
|
+
command: 'server_info',
|
21496
|
+
})).result.info;
|
21283
21497
|
const baseFee = (_a = serverInfo.validated_ledger) === null || _a === void 0 ? void 0 : _a.base_fee_xrp;
|
21284
21498
|
if (baseFee == null) {
|
21285
21499
|
throw new errors_1.XrplError('getFeeXrp: Could not get base_fee_xrp from server_info');
|
@@ -22932,7 +23146,7 @@ exports.xrpToDrops = xrpToDrops;
|
|
22932
23146
|
/***/ ((module) => {
|
22933
23147
|
|
22934
23148
|
"use strict";
|
22935
|
-
module.exports = /*#__PURE__*/JSON.parse('{"TYPES":{"Done":-1,"Unknown":-2,"NotPresent":0,"UInt16":1,"UInt32":2,"UInt64":3,"Hash128":4,"Hash256":5,"Amount":6,"Blob":7,"AccountID":8,"STObject":14,"STArray":15,"UInt8":16,"Hash160":17,"PathSet":18,"Vector256":19,"UInt96":20,"Hash192":21,"UInt384":22,"UInt512":23,"Issue":24,"XChainBridge":25,"Transaction":10001,"LedgerEntry":10002,"Validation":10003,"Metadata":10004},"LEDGER_ENTRY_TYPES":{"Invalid":-1,"AccountRoot":97,"DirectoryNode":100,"RippleState":114,"Ticket":84,"SignerList":83,"Offer":111,"Bridge":105,"LedgerHashes":104,"Amendments":102,"XChainOwnedClaimID":113,"XChainOwnedCreateAccountClaimID":116,"FeeSettings":115,"Escrow":117,"PayChannel":120,"Check":67,"DepositPreauth":112,"NegativeUNL":78,"NFTokenPage":80,"NFTokenOffer":55,"AMM":121,"DID":73,"MPTokenIssuance":126,"MPToken":127,"Any":-3,"Child":-2,"Nickname":110,"Contract":99,"GeneratorMap":103},"FIELDS":[["Generic",{"nth":0,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["Invalid",{"nth":-1,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["ObjectEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ArrayEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["hash",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["index",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["taker_gets_funded",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["taker_pays_funded",{"nth":259,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["LedgerEntry",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"LedgerEntry"}],["Transaction",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Transaction"}],["Validation",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Validation"}],["Metadata",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Metadata"}],["CloseResolution",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Method",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TransactionResult",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TickSize",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["UNLModifyDisabling",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["HookResult",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["WasLockingChainSend",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["AssetScale",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["LedgerEntryType",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransactionType",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["SignerWeight",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransferFee",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TradingFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["DiscountedFee",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["Version",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookStateChangeCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookEmitCount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookExecutionIndex",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookApiVersion",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["NetworkID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Flags",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SourceTag",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Sequence",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["PreviousTxnLgrSeq",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LedgerSequence",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CloseTime",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ParentCloseTime",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SigningTime",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Expiration",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransferRate",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["WalletSize",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OwnerCount",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["DestinationTag",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityIn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityOut",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityIn",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityOut",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityIn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityOut",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["StampEscrow",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BondAmount",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LoadFee",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OfferSequence",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstLedgerSequence",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastLedgerSequence",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransactionIndex",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OperationLimit",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReferenceFeeUnits",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveBase",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveIncrement",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SetFlag",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ClearFlag",{"nth":34,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerQuorum",{"nth":35,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CancelAfter",{"nth":36,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FinishAfter",{"nth":37,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerListID",{"nth":38,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SettleDelay",{"nth":39,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketCount",{"nth":40,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketSequence",{"nth":41,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["NFTokenTaxon",{"nth":42,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["MintedNFTokens",{"nth":43,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BurnedNFTokens",{"nth":44,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HookStateCount",{"nth":45,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["EmitGeneration",{"nth":46,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["VoteWeight",{"nth":48,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstNFTokenSequence",{"nth":50,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["IndexNext",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["IndexPrevious",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BookNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OwnerNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BaseFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ExchangeRate",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LowNode",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HighNode",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["DestinationNode",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["Cookie",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ServerVersion",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["NFTokenOfferNode",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmitBurden",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookOn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookInstructionCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookReturnCode",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ReferenceCount",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainClaimID",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountCreateCount",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountClaimCount",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["MaximumAmount",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OutstandingAmount",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LockedAmount",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["MPTAmount",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmailHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash128"}],["TakerPaysCurrency",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerPaysIssuer",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsCurrency",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsIssuer",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["MPTokenIssuanceID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash192"}],["LedgerHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ParentHash",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["TransactionHash",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountHash",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousTxnID",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["LedgerIndex",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["WalletLocator",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["RootIndex",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountTxnID",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenID",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitParentTxnID",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitNonce",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitHookHash",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AMMID",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["BookDirectory",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["InvoiceID",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Nickname",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amendment",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Digest",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Channel",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ConsensusHash",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["CheckID",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ValidatedHash",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousPageMin",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NextPageMin",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenBuyOffer",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenSellOffer",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookStateKey",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookHash",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookNamespace",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookSetTxnID",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amount",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Balance",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LimitAmount",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerPays",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerGets",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LowLimit",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["HighLimit",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Fee",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SendMax",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliverMin",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Amount2",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMin",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMax",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinimumOffer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["RippleEscrow",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliveredAmount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["NFTokenBrokerFee",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BaseFeeDrops",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveBaseDrops",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveIncrementDrops",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenOut",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenIn",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["EPrice",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Price",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SignatureReward",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinAccountCreateAmount",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenBalance",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["PublicKey",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MessageKey",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["SigningPubKey",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["TxnSignature",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["URI",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Signature",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["Domain",{"nth":7,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["FundCode",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["RemoveCode",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ExpireCode",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["CreateCode",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoType",{"nth":12,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoData",{"nth":13,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoFormat",{"nth":14,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Fulfillment",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Condition",{"nth":17,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MasterSignature",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["UNLModifyValidator",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToDisable",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToReEnable",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookStateData",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookReturnString",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterName",{"nth":24,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterValue",{"nth":25,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["DIDDocument",{"nth":26,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Data",{"nth":27,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MPTokenMetadata",{"nth":28,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Account",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Owner",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Destination",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Issuer",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Authorize",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Unauthorize",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["RegularKey",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["NFTokenMinter",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["EmitCallback",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["MPTokenHolder",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["HookAccount",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainSource",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainDestination",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationSignerAccount",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationRewardAccount",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["LockingChainDoor",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["IssuingChainDoor",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Indexes",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Hashes",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Amendments",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["NFTokenOffers",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Paths",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"PathSet"}],["LockingChainIssue",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["IssuingChainIssue",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset2",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["XChainBridge",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"XChainBridge"}],["TransactionMetaData",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["CreatedNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DeletedNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ModifiedNode",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PreviousFields",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["FinalFields",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NewFields",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["TemplateEntry",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Memo",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["SignerEntry",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NFToken",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmitDetails",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Hook",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Majority",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DisabledValidator",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmittedTxn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookExecution",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookDefinition",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookParameter",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookGrant",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["VoteEntry",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuctionSlot",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuthAccount",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimProofSig",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountProofSig",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimAttestationCollectionElement",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountAttestationCollectionElement",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signers",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":false,"type":"STArray"}],["SignerEntries",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Template",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Necessary",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Sufficient",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AffectedNodes",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Memos",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["NFTokens",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Hooks",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["VoteSlots",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Majorities",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["DisabledValidators",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookExecutions",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookParameters",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookGrants",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainClaimAttestations",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainCreateAccountAttestations",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AuthAccounts",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}]],"TRANSACTION_RESULTS":{"telLOCAL_ERROR":-399,"telBAD_DOMAIN":-398,"telBAD_PATH_COUNT":-397,"telBAD_PUBLIC_KEY":-396,"telFAILED_PROCESSING":-395,"telINSUF_FEE_P":-394,"telNO_DST_PARTIAL":-393,"telCAN_NOT_QUEUE":-392,"telCAN_NOT_QUEUE_BALANCE":-391,"telCAN_NOT_QUEUE_BLOCKS":-390,"telCAN_NOT_QUEUE_BLOCKED":-389,"telCAN_NOT_QUEUE_FEE":-388,"telCAN_NOT_QUEUE_FULL":-387,"telWRONG_NETWORK":-386,"telREQUIRES_NETWORK_ID":-385,"telNETWORK_ID_MAKES_TX_NON_CANONICAL":-384,"temMALFORMED":-299,"temBAD_AMOUNT":-298,"temBAD_CURRENCY":-297,"temBAD_EXPIRATION":-296,"temBAD_FEE":-295,"temBAD_ISSUER":-294,"temBAD_LIMIT":-293,"temBAD_OFFER":-292,"temBAD_PATH":-291,"temBAD_PATH_LOOP":-290,"temBAD_REGKEY":-289,"temBAD_SEND_XRP_LIMIT":-288,"temBAD_SEND_XRP_MAX":-287,"temBAD_SEND_XRP_NO_DIRECT":-286,"temBAD_SEND_XRP_PARTIAL":-285,"temBAD_SEND_XRP_PATHS":-284,"temBAD_SEQUENCE":-283,"temBAD_SIGNATURE":-282,"temBAD_SRC_ACCOUNT":-281,"temBAD_TRANSFER_RATE":-280,"temDST_IS_SRC":-279,"temDST_NEEDED":-278,"temINVALID":-277,"temINVALID_FLAG":-276,"temREDUNDANT":-275,"temRIPPLE_EMPTY":-274,"temDISABLED":-273,"temBAD_SIGNER":-272,"temBAD_QUORUM":-271,"temBAD_WEIGHT":-270,"temBAD_TICK_SIZE":-269,"temINVALID_ACCOUNT_ID":-268,"temCANNOT_PREAUTH_SELF":-267,"temINVALID_COUNT":-266,"temUNCERTAIN":-265,"temUNKNOWN":-264,"temSEQ_AND_TICKET":-263,"temBAD_NFTOKEN_TRANSFER_FEE":-262,"temBAD_MPTOKEN_TRANSFER_FEE":-261,"temBAD_AMM_TOKENS":-260,"temXCHAIN_EQUAL_DOOR_ACCOUNTS":-259,"temXCHAIN_BAD_PROOF":-258,"temXCHAIN_BRIDGE_BAD_ISSUES":-257,"temXCHAIN_BRIDGE_NONDOOR_OWNER":-256,"temXCHAIN_BRIDGE_BAD_MIN_ACCOUNT_CREATE_AMOUNT":-255,"temXCHAIN_BRIDGE_BAD_REWARD_AMOUNT":-254,"temEMPTY_DID":-253,"tefFAILURE":-199,"tefALREADY":-198,"tefBAD_ADD_AUTH":-197,"tefBAD_AUTH":-196,"tefBAD_LEDGER":-195,"tefCREATED":-194,"tefEXCEPTION":-193,"tefINTERNAL":-192,"tefNO_AUTH_REQUIRED":-191,"tefPAST_SEQ":-190,"tefWRONG_PRIOR":-189,"tefMASTER_DISABLED":-188,"tefMAX_LEDGER":-187,"tefBAD_SIGNATURE":-186,"tefBAD_QUORUM":-185,"tefNOT_MULTI_SIGNING":-184,"tefBAD_AUTH_MASTER":-183,"tefINVARIANT_FAILED":-182,"tefTOO_BIG":-181,"tefNO_TICKET":-180,"tefNFTOKEN_IS_NOT_TRANSFERABLE":-179,"terRETRY":-99,"terFUNDS_SPENT":-98,"terINSUF_FEE_B":-97,"terNO_ACCOUNT":-96,"terNO_AUTH":-95,"terNO_LINE":-94,"terOWNERS":-93,"terPRE_SEQ":-92,"terLAST":-91,"terNO_RIPPLE":-90,"terQUEUED":-89,"terPRE_TICKET":-88,"terNO_AMM":-87,"terSUBMITTED":-86,"tesSUCCESS":0,"tecCLAIM":100,"tecPATH_PARTIAL":101,"tecUNFUNDED_ADD":102,"tecUNFUNDED_OFFER":103,"tecUNFUNDED_PAYMENT":104,"tecFAILED_PROCESSING":105,"tecDIR_FULL":121,"tecINSUF_RESERVE_LINE":122,"tecINSUF_RESERVE_OFFER":123,"tecNO_DST":124,"tecNO_DST_INSUF_XRP":125,"tecNO_LINE_INSUF_RESERVE":126,"tecNO_LINE_REDUNDANT":127,"tecPATH_DRY":128,"tecUNFUNDED":129,"tecNO_ALTERNATIVE_KEY":130,"tecNO_REGULAR_KEY":131,"tecOWNERS":132,"tecNO_ISSUER":133,"tecNO_AUTH":134,"tecNO_LINE":135,"tecINSUFF_FEE":136,"tecFROZEN":137,"tecNO_TARGET":138,"tecNO_PERMISSION":139,"tecNO_ENTRY":140,"tecINSUFFICIENT_RESERVE":141,"tecNEED_MASTER_KEY":142,"tecDST_TAG_NEEDED":143,"tecINTERNAL":144,"tecOVERSIZE":145,"tecCRYPTOCONDITION_ERROR":146,"tecINVARIANT_FAILED":147,"tecEXPIRED":148,"tecDUPLICATE":149,"tecKILLED":150,"tecHAS_OBLIGATIONS":151,"tecTOO_SOON":152,"tecHOOK_REJECTED":153,"tecMAX_SEQUENCE_REACHED":154,"tecNO_SUITABLE_NFTOKEN_PAGE":155,"tecNFTOKEN_BUY_SELL_MISMATCH":156,"tecNFTOKEN_OFFER_TYPE_MISMATCH":157,"tecCANT_ACCEPT_OWN_NFTOKEN_OFFER":158,"tecINSUFFICIENT_FUNDS":159,"tecOBJECT_NOT_FOUND":160,"tecINSUFFICIENT_PAYMENT":161,"tecUNFUNDED_AMM":162,"tecAMM_BALANCE":163,"tecAMM_FAILED":164,"tecAMM_INVALID_TOKENS":165,"tecAMM_EMPTY":166,"tecAMM_NOT_EMPTY":167,"tecAMM_ACCOUNT":168,"tecINCOMPLETE":169,"tecXCHAIN_BAD_TRANSFER_ISSUE":170,"tecXCHAIN_NO_CLAIM_ID":171,"tecXCHAIN_BAD_CLAIM_ID":172,"tecXCHAIN_CLAIM_NO_QUORUM":173,"tecXCHAIN_PROOF_UNKNOWN_KEY":174,"tecXCHAIN_CREATE_ACCOUNT_NONXRP_ISSUE":175,"tecXCHAIN_WRONG_CHAIN":176,"tecXCHAIN_REWARD_MISMATCH":177,"tecXCHAIN_NO_SIGNERS_LIST":178,"tecXCHAIN_SENDING_ACCOUNT_MISMATCH":179,"tecXCHAIN_INSUFF_CREATE_AMOUNT":180,"tecXCHAIN_ACCOUNT_CREATE_PAST":181,"tecXCHAIN_ACCOUNT_CREATE_TOO_MANY":182,"tecXCHAIN_PAYMENT_FAILED":183,"tecXCHAIN_SELF_COMMIT":184,"tecXCHAIN_BAD_PUBLIC_KEY_ACCOUNT_PAIR":185,"tecXCHAIN_CREATE_ACCOUNT_DISABLED":186,"tecEMPTY_DID":187,"tecMPTOKEN_EXISTS":188,"tecMPT_MAX_AMOUNT_EXCEEDED":189,"tecMPT_LOCKED":190},"TRANSACTION_TYPES":{"Invalid":-1,"Payment":0,"EscrowCreate":1,"EscrowFinish":2,"AccountSet":3,"EscrowCancel":4,"SetRegularKey":5,"NickNameSet":6,"OfferCreate":7,"OfferCancel":8,"Contract":9,"TicketCreate":10,"TicketCancel":11,"SignerListSet":12,"PaymentChannelCreate":13,"PaymentChannelFund":14,"PaymentChannelClaim":15,"CheckCreate":16,"CheckCash":17,"CheckCancel":18,"DepositPreauth":19,"TrustSet":20,"AccountDelete":21,"SetHook":22,"NFTokenMint":25,"NFTokenBurn":26,"NFTokenCreateOffer":27,"NFTokenCancelOffer":28,"NFTokenAcceptOffer":29,"Clawback":30,"AMMCreate":35,"AMMDeposit":36,"AMMWithdraw":37,"AMMVote":38,"AMMBid":39,"AMMDelete":40,"XChainCreateClaimID":41,"XChainCommit":42,"XChainClaim":43,"XChainAccountCreateCommit":44,"XChainAddClaimAttestation":45,"XChainAddAccountCreateAttestation":46,"XChainModifyBridge":47,"XChainCreateBridge":48,"DIDSet":49,"DIDDelete":50,"MPTokenIssuanceCreate":51,"MPTokenIssuanceDestroy":52,"MPTokenAuthorize":53,"MPTokenIssuanceSet":54,"EnableAmendment":100,"SetFee":101,"UNLModify":102}}');
|
23149
|
+
module.exports = /*#__PURE__*/JSON.parse('{"TYPES":{"Done":-1,"Unknown":-2,"NotPresent":0,"UInt16":1,"UInt32":2,"UInt64":3,"Hash128":4,"Hash256":5,"Amount":6,"Blob":7,"AccountID":8,"STObject":14,"STArray":15,"UInt8":16,"Hash160":17,"PathSet":18,"Vector256":19,"UInt96":20,"Hash192":21,"UInt384":22,"UInt512":23,"Issue":24,"XChainBridge":25,"Currency":26,"Transaction":10001,"LedgerEntry":10002,"Validation":10003,"Metadata":10004},"LEDGER_ENTRY_TYPES":{"Invalid":-1,"AccountRoot":97,"DirectoryNode":100,"RippleState":114,"Ticket":84,"SignerList":83,"Offer":111,"Bridge":105,"LedgerHashes":104,"Amendments":102,"XChainOwnedClaimID":113,"XChainOwnedCreateAccountClaimID":116,"FeeSettings":115,"Escrow":117,"PayChannel":120,"Check":67,"DepositPreauth":112,"NegativeUNL":78,"NFTokenPage":80,"NFTokenOffer":55,"AMM":121,"DID":73,"Oracle":128,"MPTokenIssuance":126,"MPToken":127,"Any":-3,"Child":-2,"Nickname":110,"Contract":99,"GeneratorMap":103},"FIELDS":[["Generic",{"nth":0,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["Invalid",{"nth":-1,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["ObjectEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ArrayEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["hash",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["index",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["taker_gets_funded",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["taker_pays_funded",{"nth":259,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["LedgerEntry",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"LedgerEntry"}],["Transaction",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Transaction"}],["Validation",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Validation"}],["Metadata",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Metadata"}],["CloseResolution",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Method",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TransactionResult",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Scale",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TickSize",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["UNLModifyDisabling",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["HookResult",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["WasLockingChainSend",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["AssetScale",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["LedgerEntryType",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransactionType",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["SignerWeight",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransferFee",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TradingFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["DiscountedFee",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["Version",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookStateChangeCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookEmitCount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookExecutionIndex",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookApiVersion",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["NetworkID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Flags",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SourceTag",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Sequence",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["PreviousTxnLgrSeq",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LedgerSequence",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CloseTime",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ParentCloseTime",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SigningTime",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Expiration",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransferRate",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["WalletSize",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OwnerCount",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["DestinationTag",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastUpdateTime",{"nth":15,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityIn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityOut",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityIn",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityOut",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityIn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityOut",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["StampEscrow",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BondAmount",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LoadFee",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OfferSequence",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstLedgerSequence",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastLedgerSequence",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransactionIndex",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OperationLimit",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReferenceFeeUnits",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveBase",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveIncrement",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SetFlag",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ClearFlag",{"nth":34,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerQuorum",{"nth":35,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CancelAfter",{"nth":36,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FinishAfter",{"nth":37,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerListID",{"nth":38,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SettleDelay",{"nth":39,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketCount",{"nth":40,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketSequence",{"nth":41,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["NFTokenTaxon",{"nth":42,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["MintedNFTokens",{"nth":43,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BurnedNFTokens",{"nth":44,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HookStateCount",{"nth":45,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["EmitGeneration",{"nth":46,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["VoteWeight",{"nth":48,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstNFTokenSequence",{"nth":50,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OracleDocumentID",{"nth":51,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["IndexNext",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["IndexPrevious",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BookNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OwnerNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BaseFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ExchangeRate",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LowNode",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HighNode",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["DestinationNode",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["Cookie",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ServerVersion",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["NFTokenOfferNode",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmitBurden",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookOn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookInstructionCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookReturnCode",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ReferenceCount",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainClaimID",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountCreateCount",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountClaimCount",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["AssetPrice",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["MaximumAmount",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OutstandingAmount",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LockedAmount",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["MPTAmount",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmailHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash128"}],["TakerPaysCurrency",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerPaysIssuer",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsCurrency",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsIssuer",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["MPTokenIssuanceID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash192"}],["LedgerHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ParentHash",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["TransactionHash",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountHash",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousTxnID",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["LedgerIndex",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["WalletLocator",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["RootIndex",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountTxnID",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenID",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitParentTxnID",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitNonce",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitHookHash",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AMMID",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["BookDirectory",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["InvoiceID",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Nickname",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amendment",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Digest",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Channel",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ConsensusHash",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["CheckID",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ValidatedHash",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousPageMin",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NextPageMin",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenBuyOffer",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenSellOffer",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookStateKey",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookHash",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookNamespace",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookSetTxnID",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amount",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Balance",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LimitAmount",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerPays",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerGets",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LowLimit",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["HighLimit",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Fee",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SendMax",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliverMin",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Amount2",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMin",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMax",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinimumOffer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["RippleEscrow",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliveredAmount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["NFTokenBrokerFee",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BaseFeeDrops",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveBaseDrops",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveIncrementDrops",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenOut",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenIn",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["EPrice",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Price",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SignatureReward",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinAccountCreateAmount",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenBalance",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["PublicKey",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MessageKey",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["SigningPubKey",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["TxnSignature",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["URI",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Signature",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["Domain",{"nth":7,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["FundCode",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["RemoveCode",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ExpireCode",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["CreateCode",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoType",{"nth":12,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoData",{"nth":13,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoFormat",{"nth":14,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Fulfillment",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Condition",{"nth":17,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MasterSignature",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["UNLModifyValidator",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToDisable",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToReEnable",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookStateData",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookReturnString",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterName",{"nth":24,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterValue",{"nth":25,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["DIDDocument",{"nth":26,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Data",{"nth":27,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["AssetClass",{"nth":28,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Provider",{"nth":29,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MPTokenMetadata",{"nth":30,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Account",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Owner",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Destination",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Issuer",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Authorize",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Unauthorize",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["RegularKey",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["NFTokenMinter",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["EmitCallback",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["MPTokenHolder",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["HookAccount",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainSource",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainDestination",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationSignerAccount",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationRewardAccount",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["LockingChainDoor",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["IssuingChainDoor",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Indexes",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Hashes",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Amendments",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["NFTokenOffers",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Paths",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"PathSet"}],["BaseAsset",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Currency"}],["QuoteAsset",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Currency"}],["LockingChainIssue",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["IssuingChainIssue",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset2",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["XChainBridge",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"XChainBridge"}],["TransactionMetaData",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["CreatedNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DeletedNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ModifiedNode",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PreviousFields",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["FinalFields",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NewFields",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["TemplateEntry",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Memo",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["SignerEntry",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NFToken",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmitDetails",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Hook",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Majority",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DisabledValidator",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmittedTxn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookExecution",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookDefinition",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookParameter",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookGrant",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["VoteEntry",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuctionSlot",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuthAccount",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimProofSig",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountProofSig",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimAttestationCollectionElement",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountAttestationCollectionElement",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PriceData",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signers",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":false,"type":"STArray"}],["SignerEntries",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Template",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Necessary",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Sufficient",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AffectedNodes",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Memos",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["NFTokens",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Hooks",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["VoteSlots",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Majorities",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["DisabledValidators",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookExecutions",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookParameters",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookGrants",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainClaimAttestations",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainCreateAccountAttestations",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["PriceDataSeries",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AuthAccounts",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}]],"TRANSACTION_RESULTS":{"telLOCAL_ERROR":-399,"telBAD_DOMAIN":-398,"telBAD_PATH_COUNT":-397,"telBAD_PUBLIC_KEY":-396,"telFAILED_PROCESSING":-395,"telINSUF_FEE_P":-394,"telNO_DST_PARTIAL":-393,"telCAN_NOT_QUEUE":-392,"telCAN_NOT_QUEUE_BALANCE":-391,"telCAN_NOT_QUEUE_BLOCKS":-390,"telCAN_NOT_QUEUE_BLOCKED":-389,"telCAN_NOT_QUEUE_FEE":-388,"telCAN_NOT_QUEUE_FULL":-387,"telWRONG_NETWORK":-386,"telREQUIRES_NETWORK_ID":-385,"telNETWORK_ID_MAKES_TX_NON_CANONICAL":-384,"telENV_RPC_FAILED":-383,"temMALFORMED":-299,"temBAD_AMOUNT":-298,"temBAD_CURRENCY":-297,"temBAD_EXPIRATION":-296,"temBAD_FEE":-295,"temBAD_ISSUER":-294,"temBAD_LIMIT":-293,"temBAD_OFFER":-292,"temBAD_PATH":-291,"temBAD_PATH_LOOP":-290,"temBAD_REGKEY":-289,"temBAD_SEND_XRP_LIMIT":-288,"temBAD_SEND_XRP_MAX":-287,"temBAD_SEND_XRP_NO_DIRECT":-286,"temBAD_SEND_XRP_PARTIAL":-285,"temBAD_SEND_XRP_PATHS":-284,"temBAD_SEQUENCE":-283,"temBAD_SIGNATURE":-282,"temBAD_SRC_ACCOUNT":-281,"temBAD_TRANSFER_RATE":-280,"temDST_IS_SRC":-279,"temDST_NEEDED":-278,"temINVALID":-277,"temINVALID_FLAG":-276,"temREDUNDANT":-275,"temRIPPLE_EMPTY":-274,"temDISABLED":-273,"temBAD_SIGNER":-272,"temBAD_QUORUM":-271,"temBAD_WEIGHT":-270,"temBAD_TICK_SIZE":-269,"temINVALID_ACCOUNT_ID":-268,"temCANNOT_PREAUTH_SELF":-267,"temINVALID_COUNT":-266,"temUNCERTAIN":-265,"temUNKNOWN":-264,"temSEQ_AND_TICKET":-263,"temBAD_NFTOKEN_TRANSFER_FEE":-262,"temBAD_MPTOKEN_TRANSFER_FEE":-261,"temBAD_AMM_TOKENS":-260,"temXCHAIN_EQUAL_DOOR_ACCOUNTS":-259,"temXCHAIN_BAD_PROOF":-258,"temXCHAIN_BRIDGE_BAD_ISSUES":-257,"temXCHAIN_BRIDGE_NONDOOR_OWNER":-256,"temXCHAIN_BRIDGE_BAD_MIN_ACCOUNT_CREATE_AMOUNT":-255,"temXCHAIN_BRIDGE_BAD_REWARD_AMOUNT":-254,"temEMPTY_DID":-253,"temARRAY_EMPTY":-252,"temARRAY_TOO_LARGE":-251,"temMPT_NOT_SUPPORTED":-250,"tefFAILURE":-199,"tefALREADY":-198,"tefBAD_ADD_AUTH":-197,"tefBAD_AUTH":-196,"tefBAD_LEDGER":-195,"tefCREATED":-194,"tefEXCEPTION":-193,"tefINTERNAL":-192,"tefNO_AUTH_REQUIRED":-191,"tefPAST_SEQ":-190,"tefWRONG_PRIOR":-189,"tefMASTER_DISABLED":-188,"tefMAX_LEDGER":-187,"tefBAD_SIGNATURE":-186,"tefBAD_QUORUM":-185,"tefNOT_MULTI_SIGNING":-184,"tefBAD_AUTH_MASTER":-183,"tefINVARIANT_FAILED":-182,"tefTOO_BIG":-181,"tefNO_TICKET":-180,"tefNFTOKEN_IS_NOT_TRANSFERABLE":-179,"terRETRY":-99,"terFUNDS_SPENT":-98,"terINSUF_FEE_B":-97,"terNO_ACCOUNT":-96,"terNO_AUTH":-95,"terNO_LINE":-94,"terOWNERS":-93,"terPRE_SEQ":-92,"terLAST":-91,"terNO_RIPPLE":-90,"terQUEUED":-89,"terPRE_TICKET":-88,"terNO_AMM":-87,"tesSUCCESS":0,"tecCLAIM":100,"tecPATH_PARTIAL":101,"tecUNFUNDED_ADD":102,"tecUNFUNDED_OFFER":103,"tecUNFUNDED_PAYMENT":104,"tecFAILED_PROCESSING":105,"tecDIR_FULL":121,"tecINSUF_RESERVE_LINE":122,"tecINSUF_RESERVE_OFFER":123,"tecNO_DST":124,"tecNO_DST_INSUF_XRP":125,"tecNO_LINE_INSUF_RESERVE":126,"tecNO_LINE_REDUNDANT":127,"tecPATH_DRY":128,"tecUNFUNDED":129,"tecNO_ALTERNATIVE_KEY":130,"tecNO_REGULAR_KEY":131,"tecOWNERS":132,"tecNO_ISSUER":133,"tecNO_AUTH":134,"tecNO_LINE":135,"tecINSUFF_FEE":136,"tecFROZEN":137,"tecNO_TARGET":138,"tecNO_PERMISSION":139,"tecNO_ENTRY":140,"tecINSUFFICIENT_RESERVE":141,"tecNEED_MASTER_KEY":142,"tecDST_TAG_NEEDED":143,"tecINTERNAL":144,"tecOVERSIZE":145,"tecCRYPTOCONDITION_ERROR":146,"tecINVARIANT_FAILED":147,"tecEXPIRED":148,"tecDUPLICATE":149,"tecKILLED":150,"tecHAS_OBLIGATIONS":151,"tecTOO_SOON":152,"tecHOOK_REJECTED":153,"tecMAX_SEQUENCE_REACHED":154,"tecNO_SUITABLE_NFTOKEN_PAGE":155,"tecNFTOKEN_BUY_SELL_MISMATCH":156,"tecNFTOKEN_OFFER_TYPE_MISMATCH":157,"tecCANT_ACCEPT_OWN_NFTOKEN_OFFER":158,"tecINSUFFICIENT_FUNDS":159,"tecOBJECT_NOT_FOUND":160,"tecINSUFFICIENT_PAYMENT":161,"tecUNFUNDED_AMM":162,"tecAMM_BALANCE":163,"tecAMM_FAILED":164,"tecAMM_INVALID_TOKENS":165,"tecAMM_EMPTY":166,"tecAMM_NOT_EMPTY":167,"tecAMM_ACCOUNT":168,"tecINCOMPLETE":169,"tecXCHAIN_BAD_TRANSFER_ISSUE":170,"tecXCHAIN_NO_CLAIM_ID":171,"tecXCHAIN_BAD_CLAIM_ID":172,"tecXCHAIN_CLAIM_NO_QUORUM":173,"tecXCHAIN_PROOF_UNKNOWN_KEY":174,"tecXCHAIN_CREATE_ACCOUNT_NONXRP_ISSUE":175,"tecXCHAIN_WRONG_CHAIN":176,"tecXCHAIN_REWARD_MISMATCH":177,"tecXCHAIN_NO_SIGNERS_LIST":178,"tecXCHAIN_SENDING_ACCOUNT_MISMATCH":179,"tecXCHAIN_INSUFF_CREATE_AMOUNT":180,"tecXCHAIN_ACCOUNT_CREATE_PAST":181,"tecXCHAIN_ACCOUNT_CREATE_TOO_MANY":182,"tecXCHAIN_PAYMENT_FAILED":183,"tecXCHAIN_SELF_COMMIT":184,"tecXCHAIN_BAD_PUBLIC_KEY_ACCOUNT_PAIR":185,"tecXCHAIN_CREATE_ACCOUNT_DISABLED":186,"tecEMPTY_DID":187,"tecINVALID_UPDATE_TIME":188,"tecTOKEN_PAIR_NOT_FOUND":189,"tecARRAY_EMPTY":190,"tecARRAY_TOO_LARGE":191,"tecMPTOKEN_EXISTS":192,"tecMPT_MAX_AMOUNT_EXCEEDED":193,"tecMPT_LOCKED":194,"tecMPT_NOT_SUPPORTED":195},"TRANSACTION_TYPES":{"Invalid":-1,"Payment":0,"EscrowCreate":1,"EscrowFinish":2,"AccountSet":3,"EscrowCancel":4,"SetRegularKey":5,"NickNameSet":6,"OfferCreate":7,"OfferCancel":8,"Contract":9,"TicketCreate":10,"TicketCancel":11,"SignerListSet":12,"PaymentChannelCreate":13,"PaymentChannelFund":14,"PaymentChannelClaim":15,"CheckCreate":16,"CheckCash":17,"CheckCancel":18,"DepositPreauth":19,"TrustSet":20,"AccountDelete":21,"SetHook":22,"NFTokenMint":25,"NFTokenBurn":26,"NFTokenCreateOffer":27,"NFTokenCancelOffer":28,"NFTokenAcceptOffer":29,"Clawback":30,"AMMCreate":35,"AMMDeposit":36,"AMMWithdraw":37,"AMMVote":38,"AMMBid":39,"AMMDelete":40,"XChainCreateClaimID":41,"XChainCommit":42,"XChainClaim":43,"XChainAccountCreateCommit":44,"XChainAddClaimAttestation":45,"XChainAddAccountCreateAttestation":46,"XChainModifyBridge":47,"XChainCreateBridge":48,"DIDSet":49,"DIDDelete":50,"OracleSet":51,"OracleDelete":52,"MPTokenIssuanceCreate":53,"MPTokenIssuanceDestroy":54,"MPTokenAuthorize":55,"MPTokenIssuanceSet":56,"EnableAmendment":100,"SetFee":101,"UNLModify":102}}');
|
22936
23150
|
|
22937
23151
|
/***/ }),
|
22938
23152
|
|