@bitgo-beta/utxo-lib 8.0.3-beta.52 → 8.0.3-beta.521
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -16
- package/dist/src/address.js +5 -5
- package/dist/src/addressFormat.d.ts +1 -1
- package/dist/src/addressFormat.d.ts.map +1 -1
- package/dist/src/addressFormat.js +9 -9
- package/dist/src/bitgo/Musig2.js +19 -19
- package/dist/src/bitgo/PsbtUtil.d.ts +17 -0
- package/dist/src/bitgo/PsbtUtil.d.ts.map +1 -1
- package/dist/src/bitgo/PsbtUtil.js +57 -3
- package/dist/src/bitgo/Unspent.d.ts +2 -2
- package/dist/src/bitgo/Unspent.d.ts.map +1 -1
- package/dist/src/bitgo/Unspent.js +3 -3
- package/dist/src/bitgo/UtxoPsbt.d.ts +16 -4
- package/dist/src/bitgo/UtxoPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/UtxoPsbt.js +118 -76
- package/dist/src/bitgo/UtxoTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/UtxoTransaction.js +9 -9
- package/dist/src/bitgo/bitcoincash/address.js +6 -6
- package/dist/src/bitgo/bitcoincash/index.js +6 -2
- package/dist/src/bitgo/dash/DashTransaction.js +3 -3
- package/dist/src/bitgo/dash/index.js +6 -2
- package/dist/src/bitgo/index.d.ts +3 -1
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +9 -3
- package/dist/src/bitgo/keyutil.d.ts +9 -0
- package/dist/src/bitgo/keyutil.d.ts.map +1 -1
- package/dist/src/bitgo/keyutil.js +24 -2
- package/dist/src/bitgo/legacysafe/index.d.ts +15 -0
- package/dist/src/bitgo/legacysafe/index.d.ts.map +1 -0
- package/dist/src/bitgo/legacysafe/index.js +61 -0
- package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts +1 -1
- package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/litecoin/LitecoinTransaction.js +2 -2
- package/dist/src/bitgo/litecoin/index.js +6 -2
- package/dist/src/bitgo/outputScripts.d.ts +7 -6
- package/dist/src/bitgo/outputScripts.d.ts.map +1 -1
- package/dist/src/bitgo/outputScripts.js +29 -14
- package/dist/src/bitgo/parseInput.d.ts +11 -7
- package/dist/src/bitgo/parseInput.d.ts.map +1 -1
- package/dist/src/bitgo/parseInput.js +23 -7
- package/dist/src/bitgo/psbt/fromHalfSigned.js +5 -5
- package/dist/src/bitgo/signature.d.ts +2 -2
- package/dist/src/bitgo/signature.d.ts.map +1 -1
- package/dist/src/bitgo/signature.js +17 -8
- package/dist/src/bitgo/transaction.d.ts +13 -0
- package/dist/src/bitgo/transaction.d.ts.map +1 -1
- package/dist/src/bitgo/transaction.js +31 -11
- package/dist/src/bitgo/transactionAmounts.d.ts +9 -0
- package/dist/src/bitgo/transactionAmounts.d.ts.map +1 -0
- package/dist/src/bitgo/transactionAmounts.js +33 -0
- package/dist/src/bitgo/types.d.ts +9 -2
- package/dist/src/bitgo/types.d.ts.map +1 -1
- package/dist/src/bitgo/types.js +11 -2
- package/dist/src/bitgo/wallet/Psbt.d.ts +48 -18
- package/dist/src/bitgo/wallet/Psbt.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/Psbt.js +129 -29
- package/dist/src/bitgo/wallet/Unspent.d.ts +23 -15
- package/dist/src/bitgo/wallet/Unspent.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/Unspent.js +59 -54
- package/dist/src/bitgo/wallet/WalletKeys.d.ts +1 -1
- package/dist/src/bitgo/wallet/WalletKeys.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/WalletOutput.d.ts +17 -1
- package/dist/src/bitgo/wallet/WalletOutput.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/WalletOutput.js +68 -27
- package/dist/src/bitgo/wallet/WalletScripts.js +2 -2
- package/dist/src/bitgo/wallet/WalletUnspentSigner.js +7 -7
- package/dist/src/bitgo/wallet/chains.d.ts +2 -2
- package/dist/src/bitgo/wallet/chains.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/index.d.ts +2 -0
- package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/index.js +8 -2
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts +50 -0
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.js +87 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts +32 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.js +125 -0
- package/dist/src/bitgo/zcash/ZcashPsbt.d.ts +0 -1
- package/dist/src/bitgo/zcash/ZcashPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashPsbt.js +5 -14
- package/dist/src/bitgo/zcash/ZcashTransaction.d.ts +1 -1
- package/dist/src/bitgo/zcash/ZcashTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashTransaction.js +15 -15
- package/dist/src/bitgo/zcash/ZcashTransactionBuilder.js +4 -4
- package/dist/src/bitgo/zcash/address.js +3 -3
- package/dist/src/bitgo/zcash/hashZip0244.d.ts +1 -1
- package/dist/src/bitgo/zcash/hashZip0244.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/hashZip0244.js +3 -3
- package/dist/src/bitgo/zcash/index.js +6 -2
- package/dist/src/index.js +6 -2
- package/dist/src/networks.d.ts +2 -2
- package/dist/src/networks.d.ts.map +1 -1
- package/dist/src/networks.js +47 -1
- package/dist/src/noble_ecc.d.ts +7 -7
- package/dist/src/noble_ecc.d.ts.map +1 -1
- package/dist/src/noble_ecc.js +4 -4
- package/dist/src/testutil/index.js +6 -2
- package/dist/src/testutil/keys.d.ts +4 -1
- package/dist/src/testutil/keys.d.ts.map +1 -1
- package/dist/src/testutil/keys.js +18 -3
- package/dist/src/testutil/mock.d.ts +1 -1
- package/dist/src/testutil/mock.d.ts.map +1 -1
- package/dist/src/testutil/mock.js +15 -15
- package/dist/src/testutil/psbt.d.ts +37 -15
- package/dist/src/testutil/psbt.d.ts.map +1 -1
- package/dist/src/testutil/psbt.js +41 -31
- package/dist/src/testutil/transaction.d.ts +15 -6
- package/dist/src/testutil/transaction.d.ts.map +1 -1
- package/dist/src/testutil/transaction.js +20 -20
- package/dist/src/transaction_builder.d.ts.map +1 -1
- package/dist/src/transaction_builder.js +12 -17
- package/package.json +7 -7
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isPsbt = exports.isPsbtInputFinalized = exports.getPsbtInputSignatureCount = exports.getPsbtInputProprietaryKeyVals = exports.ProprietaryKeySubtype = exports.PSBT_PROPRIETARY_IDENTIFIER = void 0;
|
|
3
|
+
exports.withUnsafeNonSegwit = exports.toPsbtBuffer = exports.isPsbt = exports.isPsbtInputFinalized = exports.getPsbtInputSignatureCount = exports.getPsbtInputProprietaryKeyVals = exports.ProprietaryKeySubtype = exports.PSBT_PROPRIETARY_IDENTIFIER = void 0;
|
|
4
4
|
const proprietaryKeyVal_1 = require("bip174/src/lib/proprietaryKeyVal");
|
|
5
5
|
/**
|
|
6
6
|
* bitgo proprietary key identifier
|
|
@@ -29,7 +29,7 @@ function getPsbtInputProprietaryKeyVals(input, keySearch) {
|
|
|
29
29
|
throw new Error('invalid proprietary key search filter combination. subtype is required');
|
|
30
30
|
}
|
|
31
31
|
const keyVals = input.unknownKeyVals.map(({ key, value }, i) => {
|
|
32
|
-
return { key: proprietaryKeyVal_1.decodeProprietaryKey(key), value };
|
|
32
|
+
return { key: (0, proprietaryKeyVal_1.decodeProprietaryKey)(key), value };
|
|
33
33
|
});
|
|
34
34
|
return keyVals.filter((keyVal) => {
|
|
35
35
|
return (keySearch === undefined ||
|
|
@@ -76,4 +76,58 @@ function isPsbt(data) {
|
|
|
76
76
|
return 5 <= data.length && data.readUInt32BE(0) === 0x70736274 && data.readUInt8(4) === 0xff;
|
|
77
77
|
}
|
|
78
78
|
exports.isPsbt = isPsbt;
|
|
79
|
-
|
|
79
|
+
/**
|
|
80
|
+
* First checks if the input is already a buffer that starts with the magic PSBT byte sequence.
|
|
81
|
+
* If not, it checks if the input is a base64- or hex-encoded string that starts with PSBT header.
|
|
82
|
+
*
|
|
83
|
+
* This function is useful when reading a file that could be in any of the above formats or when
|
|
84
|
+
* dealing with a request that could contain a hex or base64 encoded PSBT.
|
|
85
|
+
*
|
|
86
|
+
* @param data
|
|
87
|
+
* @return buffer that starts with the magic PSBT byte sequence
|
|
88
|
+
* @throws Error when conversion is not possible
|
|
89
|
+
*/
|
|
90
|
+
function toPsbtBuffer(data) {
|
|
91
|
+
if (Buffer.isBuffer(data)) {
|
|
92
|
+
// we are dealing with a buffer that looks like a psbt already
|
|
93
|
+
if (isPsbt(data)) {
|
|
94
|
+
return data;
|
|
95
|
+
}
|
|
96
|
+
// we could be dealing with a buffer that could be a hex or base64 encoded psbt
|
|
97
|
+
data = data.toString('ascii');
|
|
98
|
+
}
|
|
99
|
+
if (typeof data === 'string') {
|
|
100
|
+
const encodings = ['hex', 'base64'];
|
|
101
|
+
for (const encoding of encodings) {
|
|
102
|
+
let buffer;
|
|
103
|
+
try {
|
|
104
|
+
buffer = Buffer.from(data, encoding);
|
|
105
|
+
}
|
|
106
|
+
catch (e) {
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
if (isPsbt(buffer)) {
|
|
110
|
+
return buffer;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
throw new Error(`data is not in any of the following formats: ${encodings.join(', ')}`);
|
|
114
|
+
}
|
|
115
|
+
throw new Error('data must be a buffer or a string');
|
|
116
|
+
}
|
|
117
|
+
exports.toPsbtBuffer = toPsbtBuffer;
|
|
118
|
+
/**
|
|
119
|
+
* This function allows signing or validating a psbt with non-segwit inputs those do not contain nonWitnessUtxo.
|
|
120
|
+
*/
|
|
121
|
+
function withUnsafeNonSegwit(psbt, fn, unsafe = true) {
|
|
122
|
+
psbt.__CACHE.__UNSAFE_SIGN_NONSEGWIT = unsafe;
|
|
123
|
+
psbt.__CACHE.__WARN_UNSAFE_SIGN_NONSEGWIT = !unsafe;
|
|
124
|
+
try {
|
|
125
|
+
return fn();
|
|
126
|
+
}
|
|
127
|
+
finally {
|
|
128
|
+
psbt.__CACHE.__UNSAFE_SIGN_NONSEGWIT = false;
|
|
129
|
+
psbt.__CACHE.__WARN_UNSAFE_SIGN_NONSEGWIT = true;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
exports.withUnsafeNonSegwit = withUnsafeNonSegwit;
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHNidFV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYml0Z28vUHNidFV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0VBQXdGO0FBSXhGOztHQUVHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxPQUFPLENBQUM7QUFFbkQ7O0dBRUc7QUFDSCxJQUFZLHFCQUtYO0FBTEQsV0FBWSxxQkFBcUI7SUFDL0IsdUdBQThCLENBQUE7SUFDOUIsK0dBQWtDLENBQUE7SUFDbEMseUZBQXVCLENBQUE7SUFDdkIsNkZBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQUxXLHFCQUFxQixHQUFyQiw2QkFBcUIsS0FBckIsNkJBQXFCLFFBS2hDO0FBdUJEOzs7R0FHRztBQUNILFNBQWdCLDhCQUE4QixDQUM1QyxLQUFnQixFQUNoQixTQUFnQzs7SUFFaEMsSUFBSSxDQUFDLENBQUEsTUFBQSxLQUFLLENBQUMsY0FBYywwQ0FBRSxNQUFNLENBQUEsRUFBRTtRQUNqQyxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBQ0QsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDdEYsTUFBTSxJQUFJLEtBQUssQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO0tBQzNGO0lBQ0QsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUM3RCxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUEsd0NBQW9CLEVBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUMvQixPQUFPLENBQ0wsU0FB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QUU7WUFDaEMsSUFBSSxNQUFjLENBQUM7WUFDbkIsSUFBSTtnQkFDRixNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDdEM7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixTQUFTO2FBQ1Y7WUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDbEIsT0FBTyxNQUFNLENBQUM7YUFDZjtTQUNGO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDekY7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQTdCRCxvQ0E2QkM7QUFFRDs7R0FFRztBQUNILFNBQWdCLG1CQUFtQixDQUFJLElBQVUsRUFBRSxFQUFXLEVBQUUsTUFBTSxHQUFHLElBQUk7SUFDMUUsSUFBWSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsR0FBRyxNQUFNLENBQUM7SUFDdEQsSUFBWSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsR0FBRyxDQUFDLE1BQU0sQ0FBQztJQUM3RCxJQUFJO1FBQ0YsT0FBTyxFQUFFLEVBQUUsQ0FBQztLQUNiO1lBQVM7UUFDUCxJQUFZLENBQUMsT0FBTyxDQUFDLHVCQUF1QixHQUFHLEtBQUssQ0FBQztRQUNyRCxJQUFZLENBQUMsT0FBTyxDQUFDLDRCQUE0QixHQUFHLElBQUksQ0FBQztLQUMzRDtBQUNILENBQUM7QUFURCxrREFTQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlY29kZVByb3ByaWV0YXJ5S2V5LCBQcm9wcmlldGFyeUtleSB9IGZyb20gJ2JpcDE3NC9zcmMvbGliL3Byb3ByaWV0YXJ5S2V5VmFsJztcbmltcG9ydCB7IFBzYnRJbnB1dCB9IGZyb20gJ2JpcDE3NC9zcmMvbGliL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUHNidCB9IGZyb20gJ2JpdGNvaW5qcy1saWIvc3JjL3BzYnQnO1xuXG4vKipcbiAqIGJpdGdvIHByb3ByaWV0YXJ5IGtleSBpZGVudGlmaWVyXG4gKi9cbmV4cG9ydCBjb25zdCBQU0JUX1BST1BSSUVUQVJZX0lERU5USUZJRVIgPSAnQklUR08nO1xuXG4vKipcbiAqIHN1YnR5cGUgZm9yIHByb3ByaWV0YXJ5IGtleXMgdGhhdCBiaXRnbyB1c2VzXG4gKi9cbmV4cG9ydCBlbnVtIFByb3ByaWV0YXJ5S2V5U3VidHlwZSB7XG4gIFpFQ19DT05TRU5TVVNfQlJBTkNIX0lEID0gMHgwMCxcbiAgTVVTSUcyX1BBUlRJQ0lQQU5UX1BVQl9LRVlTID0gMHgwMSxcbiAgTVVTSUcyX1BVQl9OT05DRSA9IDB4MDIsXG4gIE1VU0lHMl9QQVJUSUFMX1NJRyA9IDB4MDMsXG59XG5cbi8qKlxuICogUHNidCBwcm9wcmlldGFyeSBrZXlkYXRhIG9iamVjdC5cbiAqIDxjb21wYWN0IHNpemUgdWludCBpZGVudGlmaWVyIGxlbmd0aD4gPGJ5dGVzIGlkZW50aWZpZXI+IDxjb21wYWN0IHNpemUgdWludCBzdWJ0eXBlPiA8Ynl0ZXMgc3Via2V5ZGF0YT5cbiAqID0+IDxieXRlcyB2YWx1ZWRhdGE+XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvcHJpZXRhcnlLZXlWYWx1ZSB7XG4gIGtleTogUHJvcHJpZXRhcnlLZXk7XG4gIHZhbHVlOiBCdWZmZXI7XG59XG5cbi8qKlxuICogUHNidCBwcm9wcmlldGFyeSBrZXlkYXRhIG9iamVjdCBzZWFyY2ggZmllbGRzLlxuICogPGNvbXBhY3Qgc2l6ZSB1aW50IGlkZW50aWZpZXIgbGVuZ3RoPiA8Ynl0ZXMgaWRlbnRpZmllcj4gPGNvbXBhY3Qgc2l6ZSB1aW50IHN1YnR5cGU+IDxieXRlcyBzdWJrZXlkYXRhPlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByb3ByaWV0YXJ5S2V5U2VhcmNoIHtcbiAgaWRlbnRpZmllcjogc3RyaW5nO1xuICBzdWJ0eXBlPzogbnVtYmVyO1xuICBrZXlkYXRhPzogQnVmZmVyO1xuICBpZGVudGlmaWVyRW5jb2Rpbmc/OiBCdWZmZXJFbmNvZGluZztcbn1cblxuLyoqXG4gKiBTZWFyY2ggYW55IGRhdGEgZnJvbSBwc2J0IHByb3ByaWV0YXJ5IGtleSB2YWx1ZSBhZ2FpbnN0IGtleWRhdGEuXG4gKiBEZWZhdWx0IGlkZW50aWZpZXJFbmNvZGluZyBpcyB1dGYtOCBmb3IgaWRlbnRpZmllci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFBzYnRJbnB1dFByb3ByaWV0YXJ5S2V5VmFscyhcbiAgaW5wdXQ6IFBzYnRJbnB1dCxcbiAga2V5U2VhcmNoPzogUHJvcHJpZXRhcnlLZXlTZWFyY2hcbik6IFByb3ByaWV0YXJ5S2V5VmFsdWVbXSB7XG4gIGlmICghaW5wdXQudW5rbm93bktleVZhbHM/Lmxlbmd0aCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuICBpZiAoa2V5U2VhcmNoICYmIGtleVNlYXJjaC5zdWJ0eXBlID09PSB1bmRlZmluZWQgJiYgQnVmZmVyLmlzQnVmZmVyKGtleVNlYXJjaC5rZXlkYXRhKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBwcm9wcmlldGFyeSBrZXkgc2VhcmNoIGZpbHRlciBjb21iaW5hdGlvbi4gc3VidHlwZSBpcyByZXF1aXJlZCcpO1xuICB9XG4gIGNvbnN0IGtleVZhbHMgPSBpbnB1dC51bmtub3duS2V5VmFscy5tYXAoKHsga2V5LCB2YWx1ZSB9LCBpKSA9PiB7XG4gICAgcmV0dXJuIHsga2V5OiBkZWNvZGVQcm9wcmlldGFyeUtleShrZXkpLCB2YWx1ZSB9O1xuICB9KTtcbiAgcmV0dXJuIGtleVZhbHMuZmlsdGVyKChrZXlWYWwpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAga2V5U2VhcmNoID09PSB1bmRlZmluZWQgfHxcbiAgICAgIChrZXlTZWFyY2guaWRlbnRpZmllciA9PT0ga2V5VmFsLmtleS5pZGVudGlmaWVyICYmXG4gICAgICAgIChrZXlTZWFyY2guc3VidHlwZSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgKGtleVNlYXJjaC5zdWJ0eXBlID09PSBrZXlWYWwua2V5LnN1YnR5cGUgJiZcbiAgICAgICAgICAgICghQnVmZmVyLmlzQnVmZmVyKGtleVNlYXJjaC5rZXlkYXRhKSB8fCBrZXlTZWFyY2gua2V5ZGF0YS5lcXVhbHMoa2V5VmFsLmtleS5rZXlkYXRhKSkpKSlcbiAgICApO1xuICB9KTtcbn1cblxuLyoqXG4gKiBAcmV0dXJuIHBhcnRpYWxTaWcvdGFwU2NyaXB0U2lnL01VU0lHMl9QQVJUSUFMX1NJRyBjb3VudCBpZmYgaW5wdXQgaXMgbm90IGZpbmFsaXplZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHNidElucHV0U2lnbmF0dXJlQ291bnQoaW5wdXQ6IFBzYnRJbnB1dCk6IG51bWJlciB7XG4gIGlmIChpc1BzYnRJbnB1dEZpbmFsaXplZChpbnB1dCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0lucHV0IGlzIGFscmVhZHkgZmluYWxpemVkJyk7XG4gIH1cbiAgcmV0dXJuIE1hdGgubWF4KFxuICAgIEFycmF5LmlzQXJyYXkoaW5wdXQucGFydGlhbFNpZykgPyBpbnB1dC5wYXJ0aWFsU2lnLmxlbmd0aCA6IDAsXG4gICAgQXJyYXkuaXNBcnJheShpbnB1dC50YXBTY3JpcHRTaWcpID8gaW5wdXQudGFwU2NyaXB0U2lnLmxlbmd0aCA6IDAsXG4gICAgZ2V0UHNidElucHV0UHJvcHJpZXRhcnlLZXlWYWxzKGlucHV0LCB7XG4gICAgICBpZGVudGlmaWVyOiBQU0JUX1BST1BSSUVUQVJZX0lERU5USUZJRVIsXG4gICAgICBzdWJ0eXBlOiBQcm9wcmlldGFyeUtleVN1YnR5cGUuTVVTSUcyX1BBUlRJQUxfU0lHLFxuICAgIH0pLmxlbmd0aFxuICApO1xufVxuXG4vKipcbiAqIEByZXR1cm4gdHJ1ZSBpZmYgUFNCVCBpbnB1dCBpcyBmaW5hbGl6ZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUHNidElucHV0RmluYWxpemVkKGlucHV0OiBQc2J0SW5wdXQpOiBib29sZWFuIHtcbiAgcmV0dXJuIEJ1ZmZlci5pc0J1ZmZlcihpbnB1dC5maW5hbFNjcmlwdFNpZykgfHwgQnVmZmVyLmlzQnVmZmVyKGlucHV0LmZpbmFsU2NyaXB0V2l0bmVzcyk7XG59XG5cbi8qKlxuICogQHJldHVybiB0cnVlIGlmZiBkYXRhIHN0YXJ0cyB3aXRoIG1hZ2ljIFBTQlQgYnl0ZSBzZXF1ZW5jZVxuICogQHBhcmFtIGRhdGEgYnl0ZSBhcnJheSBvciBoZXggc3RyaW5nXG4gKiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUHNidChkYXRhOiBCdWZmZXIgfCBzdHJpbmcpOiBib29sZWFuIHtcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYmlwcy9ibG9iL21hc3Rlci9iaXAtMDE3NC5tZWRpYXdpa2kjc3BlY2lmaWNhdGlvblxuICAvLyAweDcwNzM2Mjc0IC0gQVNDSUkgZm9yICdwc2J0Jy4gMHhmZiAtIHNlcGFyYXRvclxuICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgaWYgKGRhdGEubGVuZ3RoIDwgMTApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZGF0YSA9IEJ1ZmZlci5mcm9tKGRhdGEuc2xpY2UoMCwgMTApLCAnaGV4Jyk7XG4gIH1cbiAgcmV0dXJuIDUgPD0gZGF0YS5sZW5ndGggJiYgZGF0YS5yZWFkVUludDMyQkUoMCkgPT09IDB4NzA3MzYyNzQgJiYgZGF0YS5yZWFkVUludDgoNCkgPT09IDB4ZmY7XG59XG5cbi8qKlxuICogRmlyc3QgY2hlY2tzIGlmIHRoZSBpbnB1dCBpcyBhbHJlYWR5IGEgYnVmZmVyIHRoYXQgc3RhcnRzIHdpdGggdGhlIG1hZ2ljIFBTQlQgYnl0ZSBzZXF1ZW5jZS5cbiAqIElmIG5vdCwgaXQgY2hlY2tzIGlmIHRoZSBpbnB1dCBpcyBhIGJhc2U2NC0gb3IgaGV4LWVuY29kZWQgc3RyaW5nIHRoYXQgc3RhcnRzIHdpdGggUFNCVCBoZWFkZXIuXG4gKlxuICogVGhpcyBmdW5jdGlvbiBpcyB1c2VmdWwgd2hlbiByZWFkaW5nIGEgZmlsZSB0aGF0IGNvdWxkIGJlIGluIGFueSBvZiB0aGUgYWJvdmUgZm9ybWF0cyBvciB3aGVuXG4gKiBkZWFsaW5nIHdpdGggYSByZXF1ZXN0IHRoYXQgY291bGQgY29udGFpbiBhIGhleCBvciBiYXNlNjQgZW5jb2RlZCBQU0JULlxuICpcbiAqIEBwYXJhbSBkYXRhXG4gKiBAcmV0dXJuIGJ1ZmZlciB0aGF0IHN0YXJ0cyB3aXRoIHRoZSBtYWdpYyBQU0JUIGJ5dGUgc2VxdWVuY2VcbiAqIEB0aHJvd3MgRXJyb3Igd2hlbiBjb252ZXJzaW9uIGlzIG5vdCBwb3NzaWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Qc2J0QnVmZmVyKGRhdGE6IEJ1ZmZlciB8IHN0cmluZyk6IEJ1ZmZlciB7XG4gIGlmIChCdWZmZXIuaXNCdWZmZXIoZGF0YSkpIHtcbiAgICAvLyB3ZSBhcmUgZGVhbGluZyB3aXRoIGEgYnVmZmVyIHRoYXQgbG9va3MgbGlrZSBhIHBzYnQgYWxyZWFkeVxuICAgIGlmIChpc1BzYnQoZGF0YSkpIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cblxuICAgIC8vIHdlIGNvdWxkIGJlIGRlYWxpbmcgd2l0aCBhIGJ1ZmZlciB0aGF0IGNvdWxkIGJlIGEgaGV4IG9yIGJhc2U2NCBlbmNvZGVkIHBzYnRcbiAgICBkYXRhID0gZGF0YS50b1N0cmluZygnYXNjaWknKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25zdCBlbmNvZGluZ3MgPSBbJ2hleCcsICdiYXNlNjQnXSBhcyBjb25zdDtcbiAgICBmb3IgKGNvbnN0IGVuY29kaW5nIG9mIGVuY29kaW5ncykge1xuICAgICAgbGV0IGJ1ZmZlcjogQnVmZmVyO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYnVmZmVyID0gQnVmZmVyLmZyb20oZGF0YSwgZW5jb2RpbmcpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGlmIChpc1BzYnQoYnVmZmVyKSkge1xuICAgICAgICByZXR1cm4gYnVmZmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcihgZGF0YSBpcyBub3QgaW4gYW55IG9mIHRoZSBmb2xsb3dpbmcgZm9ybWF0czogJHtlbmNvZGluZ3Muam9pbignLCAnKX1gKTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcignZGF0YSBtdXN0IGJlIGEgYnVmZmVyIG9yIGEgc3RyaW5nJyk7XG59XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBhbGxvd3Mgc2lnbmluZyBvciB2YWxpZGF0aW5nIGEgcHNidCB3aXRoIG5vbi1zZWd3aXQgaW5wdXRzIHRob3NlIGRvIG5vdCBjb250YWluIG5vbldpdG5lc3NVdHhvLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aFVuc2FmZU5vblNlZ3dpdDxUPihwc2J0OiBQc2J0LCBmbjogKCkgPT4gVCwgdW5zYWZlID0gdHJ1ZSk6IFQge1xuICAocHNidCBhcyBhbnkpLl9fQ0FDSEUuX19VTlNBRkVfU0lHTl9OT05TRUdXSVQgPSB1bnNhZmU7XG4gIChwc2J0IGFzIGFueSkuX19DQUNIRS5fX1dBUk5fVU5TQUZFX1NJR05fTk9OU0VHV0lUID0gIXVuc2FmZTtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZm4oKTtcbiAgfSBmaW5hbGx5IHtcbiAgICAocHNidCBhcyBhbnkpLl9fQ0FDSEUuX19VTlNBRkVfU0lHTl9OT05TRUdXSVQgPSBmYWxzZTtcbiAgICAocHNidCBhcyBhbnkpLl9fQ0FDSEUuX19XQVJOX1VOU0FGRV9TSUdOX05PTlNFR1dJVCA9IHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -55,7 +55,7 @@ export declare function getOutputIdForInput(i: {
|
|
|
55
55
|
/**
|
|
56
56
|
* Reference to output of an existing transaction
|
|
57
57
|
*/
|
|
58
|
-
export
|
|
58
|
+
export type TxOutPoint = {
|
|
59
59
|
txid: string;
|
|
60
60
|
vout: number;
|
|
61
61
|
};
|
|
@@ -63,7 +63,7 @@ export declare type TxOutPoint = {
|
|
|
63
63
|
* Output reference and script data.
|
|
64
64
|
* Suitable for use for `txb.addInput()`
|
|
65
65
|
*/
|
|
66
|
-
export
|
|
66
|
+
export type PrevOutput<TNumber extends number | bigint = number> = TxOutPoint & TxOutput<TNumber> & {
|
|
67
67
|
prevTx?: Buffer;
|
|
68
68
|
};
|
|
69
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Unspent.d.ts","sourceRoot":"","sources":["../../../src/bitgo/Unspent.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IAC/D;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,CAAE,SAAQ,OAAO,CAAC,OAAO,CAAC;IACnG,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,QAAQ,SAAS,OAAO,CAAC,OAAO,CAAC,EACpG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAClB,CAAC,IAAI,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAEpC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAKlH;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACxD,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAUlB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAClE,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,GACX,iBAAiB,CAAC,OAAO,CAAC,CAK5B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAc1D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,UAAU,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAKlF;AAED;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"Unspent.d.ts","sourceRoot":"","sources":["../../../src/bitgo/Unspent.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ exports.isUnspentWithPrevTx = isUnspentWithPrevTx;
|
|
|
11
11
|
*/
|
|
12
12
|
function toOutput(u, network) {
|
|
13
13
|
return {
|
|
14
|
-
script: address_1.toOutputScript(u.address, network),
|
|
14
|
+
script: (0, address_1.toOutputScript)(u.address, network),
|
|
15
15
|
value: u.value,
|
|
16
16
|
};
|
|
17
17
|
}
|
|
@@ -26,7 +26,7 @@ function fromOutput(tx, vout) {
|
|
|
26
26
|
}
|
|
27
27
|
return {
|
|
28
28
|
id: formatOutputId({ txid: tx.getId(), vout }),
|
|
29
|
-
address: address_1.fromOutputScript(o.script, tx.network),
|
|
29
|
+
address: (0, address_1.fromOutputScript)(o.script, tx.network),
|
|
30
30
|
value: o.value,
|
|
31
31
|
};
|
|
32
32
|
}
|
|
@@ -135,4 +135,4 @@ function unspentSum(unspents, amountType = 'number') {
|
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
137
|
exports.unspentSum = unspentSum;
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5zcGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaXRnby9VbnNwZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHdDQUE4RDtBQTRCOUQsU0FBZ0IsbUJBQW1CLENBQ2pDLENBQW1CO0lBRW5CLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBRSxDQUFnQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ25FLENBQUM7QUFKRCxrREFJQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsUUFBUSxDQUFrQyxDQUFtQixFQUFFLE9BQWdCO0lBQzdGLE9BQU87UUFDTCxNQUFNLEVBQUUsd0JBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUMxQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7S0FDZixDQUFDO0FBQ0osQ0FBQztBQUxELDRCQUtDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixVQUFVLENBQ3hCLEVBQTRCLEVBQzVCLElBQVk7SUFFWixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLElBQUksQ0FBQyxDQUFDLEVBQUU7UUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBQ0QsT0FBTztRQUNMLEVBQUUsRUFBRSxjQUFjLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQzlDLE9BQU8sRUFBRSwwQkFBZ0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUM7UUFDL0MsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUFiRCxnQ0FhQztBQUVELFNBQWdCLG9CQUFvQixDQUNsQyxFQUE0QixFQUM1QixJQUFZO0lBRVosT0FBTztRQUNMLEdBQUcsVUFBVSxDQUFDLEVBQUUsRUFBRSxJ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QUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsWUFBWSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBa0IsQ0FBQyxDQUFDO0lBQzlFLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFQRCwwREFPQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLFVBQVUsQ0FDeEIsUUFBOEIsRUFDOUIsYUFBa0MsUUFBUTtJQUUxQyxJQUFJLFVBQVUsS0FBSyxRQUFRLEVBQUU7UUFDM0IsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFJLENBQUMsQ0FBQyxLQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBWSxDQUFDO0tBQ3JGO1NBQU07UUFDTCxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFJLENBQUMsQ0FBQyxLQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUVBQWlFLENBQUMsQ0FBQztTQUNwRjtRQUNELE9BQU8sR0FBYyxDQUFDO0tBQ3ZCO0FBQ0gsQ0FBQztBQWJELGdDQWFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHhPdXRwdXQgfSBmcm9tICdiaXRjb2luanMtbGliJztcbmltcG9ydCB7IE5ldHdvcmsgfSBmcm9tICcuLic7XG5pbXBvcnQgeyBmcm9tT3V0cHV0U2NyaXB0LCB0b091dHB1dFNjcmlwdCB9IGZyb20gJy4uL2FkZHJlc3MnO1xuaW1wb3J0IHsgVXR4b1RyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vVXR4b1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBVdHhvVHJhbnNhY3Rpb24gfSBmcm9tICcuL1V0eG9UcmFuc2FjdGlvbic7XG5cbi8qKlxuICogUHVibGljIHVuc3BlbnQgZGF0YSBpbiBCaXRHby1zcGVjaWZpYyByZXByZXNlbnRhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVbnNwZW50PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQgPSBudW1iZXI+IHtcbiAgLyoqXG4gICAqIEZvcm1hdDogJHt0eGlkfToke3ZvdXR9LlxuICAgKiBVc2UgYHBhcnNlT3V0cHV0SWQoaWQpYCB0byBwYXJzZS5cbiAgICovXG4gIGlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbmV0d29yay1zcGVjaWZpYyBlbmNvZGVkIGFkZHJlc3MuXG4gICAqIFVzZSBgdG9PdXRwdXRTY3JpcHQoYWRkcmVzcywgbmV0d29yaylgIHRvIG9idGFpbiBzY3JpcHRQdWJLZXkuXG4gICAqL1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgYW1vdW50IGluIHNhdG9zaGkuXG4gICAqL1xuICB2YWx1ZTogVE51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbnNwZW50V2l0aFByZXZUeDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiBleHRlbmRzIFVuc3BlbnQ8VE51bWJlcj4ge1xuICBwcmV2VHg6IEJ1ZmZlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVW5zcGVudFdpdGhQcmV2VHg8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludCwgVFVuc3BlbnQgZXh0ZW5kcyBVbnNwZW50PFROdW1iZXI+PihcbiAgdTogVW5zcGVudDxUTnVtYmVyPlxuKTogdSBpcyBUVW5zcGVudCAmIHsgcHJldlR4OiBCdWZmZXIgfSB7XG4gIHJldHVybiBCdWZmZXIuaXNCdWZmZXIoKHUgYXMgVW5zcGVudFdpdGhQcmV2VHg8VE51bWJlcj4pLnByZXZUeCk7XG59XG5cbi8qKlxuICogQHJldHVybiBUeE91dHB1dCBmcm9tIFVuc3BlbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvT3V0cHV0PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KHU6IFVuc3BlbnQ8VE51bWJlcj4sIG5ldHdvcms6IE5ldHdvcmspOiBUeE91dHB1dDxUTnVtYmVyPiB7XG4gIHJldHVybiB7XG4gICAgc2NyaXB0OiB0b091dHB1dFNjcmlwdCh1LmFkZHJlc3MsIG5ldHdvcmspLFxuICAgIHZhbHVlOiB1LnZhbHVlLFxuICB9O1xufVxuXG4vKipcbiAqIEByZXR1cm4gVW5zcGVudCBmcm9tIFR4T3V0cHV0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tT3V0cHV0PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICB0eDogVXR4b1RyYW5zYWN0aW9uPFROdW1iZXI+LFxuICB2b3V0OiBudW1iZXJcbik6IFVuc3BlbnQ8VE51bWJlcj4ge1xuICBjb25zdCBvID0gdHgub3V0c1t2b3V0XTtcbiAgaWYgKCFvKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHZvdXRgKTtcbiAgfVxuICByZXR1cm4ge1xuICAgIGlkOiBmb3JtYXRPdXRwdXRJZCh7IHR4aWQ6IHR4LmdldElkKCksIHZvdXQgfSksXG4gICAgYWRkcmVzczogZnJvbU91dHB1dFNjcmlwdChvLnNjcmlwdCwgdHgubmV0d29yayksXG4gICAgdmFsdWU6IG8udmFsdWUsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tT3V0cHV0V2l0aFByZXZUeDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdHg6IFV0eG9UcmFuc2FjdGlvbjxUTnVtYmVyPixcbiAgdm91dDogbnVtYmVyXG4pOiBVbnNwZW50V2l0aFByZXZUeDxUTnVtYmVyPiB7XG4gIHJldHVybiB7XG4gICAgLi4uZnJvbU91dHB1dCh0eCwgdm91dCksXG4gICAgcHJldlR4OiB0eC50b0J1ZmZlcigpLFxuICB9O1xufVxuXG4vKipcbiAqIEBwYXJhbSBvdXRwdXRJZFxuICogQHJldHVybiBUeE91dFBvaW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZU91dHB1dElkKG91dHB1dElkOiBzdHJpbmcpOiBUeE91dFBvaW50IHtcbiAgY29uc3QgcGFydHMgPSBvdXRwdXRJZC5zcGxpdCgnOicpO1xuICBpZiAocGFydHMubGVuZ3RoICE9PSAyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIG91dHB1dElkLCBtdXN0IGhhdmUgZm9ybWF0IHR4aWQ6dm91dGApO1xuICB9XG4gIGNvbnN0IFt0eGlkLCB2b3V0U3RyXSA9IHBhcnRzO1xuICBjb25zdCB2b3V0ID0gTnVtYmVyKHZvdXRTdHIpO1xuICBpZiAodHhpZC5sZW5ndGggIT09IDY0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHR4aWQgJHt0eGlkfSAke3R4aWQubGVuZ3RofWApO1xuICB9XG4gIGlmIChOdW1iZXIuaXNOYU4odm91dCkgfHwgdm91dCA8IDAgfHwgIU51bWJlci5pc1NhZmVJbnRlZ2VyKHZvdXQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHZvdXQ6IG11c3QgYmUgaW50ZWdlciA+PSAwYCk7XG4gIH1cbiAgcmV0dXJuIHsgdHhpZCwgdm91dCB9O1xufVxuXG4vKipcbiAqIEBwYXJhbSB0eGlkXG4gKiBAcGFyYW0gdm91dFxuICogQHJldHVybiBvdXRwdXRJZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0T3V0cHV0SWQoeyB0eGlkLCB2b3V0IH06IFR4T3V0UG9pbnQpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7dHhpZH06JHt2b3V0fWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPdXRwdXRJZEZvcklucHV0KGk6IHsgaGFzaDogQnVmZmVyOyBpbmRleDogbnVtYmVyIH0pOiBUeE91dFBvaW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eGlkOiBCdWZmZXIuZnJvbShpLmhhc2gpLnJldmVyc2UoKS50b1N0cmluZygnaGV4JyksXG4gICAgdm91dDogaS5pbmRleCxcbiAgfTtcbn1cblxuLyoqXG4gKiBSZWZlcmVuY2UgdG8gb3V0cHV0IG9mIGFuIGV4aXN0aW5nIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCB0eXBlIFR4T3V0UG9pbnQgPSB7XG4gIHR4aWQ6IHN0cmluZztcbiAgdm91dDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBPdXRwdXQgcmVmZXJlbmNlIGFuZCBzY3JpcHQgZGF0YS5cbiAqIFN1aXRhYmxlIGZvciB1c2UgZm9yIGB0eGIuYWRkSW5wdXQoKWBcbiAqL1xuZXhwb3J0IHR5cGUgUHJldk91dHB1dDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiA9IFR4T3V0UG9pbnQgJlxuICBUeE91dHB1dDxUTnVtYmVyPiAmIHtcbiAgICBwcmV2VHg/OiBCdWZmZXI7XG4gIH07XG5cbi8qKlxuICogQHJldHVybiBQcmV2T3V0cHV0IGZyb20gVW5zcGVudFxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9QcmV2T3V0cHV0PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICB1OiBVbnNwZW50PFROdW1iZXI+LFxuICBuZXR3b3JrOiBOZXR3b3JrXG4pOiBQcmV2T3V0cHV0PFROdW1iZXI+IHtcbiAgcmV0dXJuIHtcbiAgICAuLi5wYXJzZU91dHB1dElkKHUuaWQpLFxuICAgIC4uLnRvT3V0cHV0KHUsIG5ldHdvcmspLFxuICB9O1xufVxuXG4vKipcbiAqIEByZXR1cm4gUHJldk91dHB1dCB3aXRoIHByZXZUeCBmcm9tIFVuc3BlbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvUHJldk91dHB1dFdpdGhQcmV2VHg8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4oXG4gIHU6IFVuc3BlbnQ8VE51bWJlcj4gJiB7IHByZXZUeD86IHVua25vd24gfSxcbiAgbmV0d29yazogTmV0d29ya1xuKTogUHJldk91dHB1dDxUTnVtYmVyPiB7XG4gIGxldCBwcmV2VHg7XG4gIGlmICh0eXBlb2YgdS5wcmV2VHggPT09ICdzdHJpbmcnKSB7XG4gICAgcHJldlR4ID0gQnVmZmVyLmZyb20odS5wcmV2VHgsICdoZXgnKTtcbiAgfSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIodS5wcmV2VHgpKSB7XG4gICAgcHJldlR4ID0gdS5wcmV2VHg7XG4gIH0gZWxzZSBpZiAodS5wcmV2VHggIT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwcmV2VHggdHlwZSBmb3IgdW5zcGVudCAke3UucHJldlR4fWApO1xuICB9XG4gIHJldHVybiB7XG4gICAgLi4ucGFyc2VPdXRwdXRJZCh1LmlkKSxcbiAgICAuLi50b091dHB1dCh1LCBuZXR3b3JrKSxcbiAgICBwcmV2VHgsXG4gIH07XG59XG5cbi8qKlxuICogQHBhcmFtIHR4YlxuICogQHBhcmFtIHVcbiAqIEBwYXJhbSBzZXF1ZW5jZSAtIHNlcXVlbmNlSWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZFRvVHJhbnNhY3Rpb25CdWlsZGVyPFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICB0eGI6IFV0eG9UcmFuc2FjdGlvbkJ1aWxkZXI8VE51bWJlcj4sXG4gIHU6IFVuc3BlbnQ8VE51bWJlcj4sXG4gIHNlcXVlbmNlPzogbnVtYmVyXG4pOiB2b2lkIHtcbiAgY29uc3QgeyB0eGlkLCB2b3V0LCBzY3JpcHQsIHZhbHVlIH0gPSB0b1ByZXZPdXRwdXQodSwgdHhiLm5ldHdvcmsgYXMgTmV0d29yayk7XG4gIHR4Yi5hZGRJbnB1dCh0eGlkLCB2b3V0LCBzZXF1ZW5jZSwgc2NyaXB0LCB2YWx1ZSk7XG59XG5cbi8qKlxuICogU3VtIHRoZSB2YWx1ZXMgb2YgdGhlIHVuc3BlbnRzLlxuICogVGhyb3dzIGVycm9yIGlmIHN1bSBpcyBub3QgYSBzYWZlIGludGVnZXIgdmFsdWUsIG9yIGlmIHVuc3BlbnQgYW1vdW50IHR5cGVzIGRvIG5vdCBtYXRjaCBgYW1vdW50VHlwZWBcbiAqIEBwYXJhbSB1bnNwZW50cyAtIGFycmF5IG9mIHVuc3BlbnRzIHRvIHN1bVxuICogQHBhcmFtIGFtb3VudFR5cGUgLSBleHBlY3RlZCB2YWx1ZSB0eXBlIG9mIHVuc3BlbnRzXG4gKiBAcmV0dXJuIHVuc3BlbnRTdW0gLSB0eXBlIG1hdGNoZXMgYW1vdW50VHlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5zcGVudFN1bTxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdW5zcGVudHM6IHsgdmFsdWU6IFROdW1iZXIgfVtdLFxuICBhbW91bnRUeXBlOiAnbnVtYmVyJyB8ICdiaWdpbnQnID0gJ251bWJlcidcbik6IFROdW1iZXIge1xuICBpZiAoYW1vdW50VHlwZSA9PT0gJ2JpZ2ludCcpIHtcbiAgICByZXR1cm4gdW5zcGVudHMucmVkdWNlKChzdW0sIHUpID0+IHN1bSArICh1LnZhbHVlIGFzIGJpZ2ludCksIEJpZ0ludCgwKSkgYXMgVE51bWJlcjtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBzdW0gPSB1bnNwZW50cy5yZWR1Y2UoKHN1bSwgdSkgPT4gc3VtICsgKHUudmFsdWUgYXMgbnVtYmVyKSwgTnVtYmVyKDApKTtcbiAgICBpZiAoIU51bWJlci5pc1NhZmVJbnRlZ2VyKHN1bSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndW5zcGVudCBzdW0gaXMgbm90IGEgc2FmZSBpbnRlZ2VyIG51bWJlciwgY29uc2lkZXIgdXNpbmcgYmlnaW50Jyk7XG4gICAgfVxuICAgIHJldHVybiBzdW0gYXMgVE51bWJlcjtcbiAgfVxufVxuIl19
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5zcGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaXRnby9VbnNwZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHdDQUE4RDtBQTRCOUQsU0FBZ0IsbUJBQW1CLENBQ2pDLENBQW1CO0lBRW5CLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBRSxDQUFnQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ25FLENBQUM7QUFKRCxrREFJQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsUUFBUSxDQUFrQyxDQUFtQixFQUFFLE9BQWdCO0lBQzdGLE9BQU87UUFDTCxNQUFNLEVBQUUsSUFBQSx3QkFBYyxFQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQzFDLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztLQUNmLENBQUM7QUFDSixDQUFDO0FBTEQsNEJBS0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLFVBQVUsQ0FDeEIsRUFBNEIsRUFDNUIsSUFBWTtJQUVaLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsSUFBSSxDQUFDLENBQUMsRUFBRTtRQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDakM7SUFDRCxPQUFPO1FBQ0wsRUFBRSxFQUFFLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDOUMsT0FBTyxFQUFFLElBQUEsMEJBQWdCLEVBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDO1FBQy9DLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztLQUNmLENBQUM7QUFDSixDQUFDO0FBYkQsZ0NBYUM7QUFFRCxTQUFnQixvQkFBb0IsQ0FDbEMsRUFBNEIsRUFDNUIsSUFBWTtJQUVaLE9BQU87UUFDTCxHQUFHLFVBQVUsQ0FBQyxF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aUI7SUFFakIsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE9BQWtCLENBQUMsQ0FBQztJQUM5RSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBUEQsMERBT0M7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixVQUFVLENBQ3hCLFFBQThCLEVBQzlCLGFBQWtDLFFBQVE7SUFFMUMsSUFBSSxVQUFVLEtBQUssUUFBUSxFQUFFO1FBQzNCLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBSSxDQUFDLENBQUMsS0FBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztLQUNyRjtTQUFNO1FBQ0wsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBSSxDQUFDLENBQUMsS0FBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLGlFQUFpRSxDQUFDLENBQUM7U0FDcEY7UUFDRCxPQUFPLEdBQWMsQ0FBQztLQUN2QjtBQUNILENBQUM7QUFiRCxnQ0FhQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR4T3V0cHV0IH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgeyBOZXR3b3JrIH0gZnJvbSAnLi4nO1xuaW1wb3J0IHsgZnJvbU91dHB1dFNjcmlwdCwgdG9PdXRwdXRTY3JpcHQgfSBmcm9tICcuLi9hZGRyZXNzJztcbmltcG9ydCB7IFV0eG9UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL1V0eG9UcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVXR4b1RyYW5zYWN0aW9uIH0gZnJvbSAnLi9VdHhvVHJhbnNhY3Rpb24nO1xuXG4vKipcbiAqIFB1YmxpYyB1bnNwZW50IGRhdGEgaW4gQml0R28tc3BlY2lmaWMgcmVwcmVzZW50YXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVW5zcGVudDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiB7XG4gIC8qKlxuICAgKiBGb3JtYXQ6ICR7dHhpZH06JHt2b3V0fS5cbiAgICogVXNlIGBwYXJzZU91dHB1dElkKGlkKWAgdG8gcGFyc2UuXG4gICAqL1xuICBpZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5ldHdvcmstc3BlY2lmaWMgZW5jb2RlZCBhZGRyZXNzLlxuICAgKiBVc2UgYHRvT3V0cHV0U2NyaXB0KGFkZHJlc3MsIG5ldHdvcmspYCB0byBvYnRhaW4gc2NyaXB0UHViS2V5LlxuICAgKi9cbiAgYWRkcmVzczogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGFtb3VudCBpbiBzYXRvc2hpLlxuICAgKi9cbiAgdmFsdWU6IFROdW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zcGVudFdpdGhQcmV2VHg8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludCA9IG51bWJlcj4gZXh0ZW5kcyBVbnNwZW50PFROdW1iZXI+IHtcbiAgcHJldlR4OiBCdWZmZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Vuc3BlbnRXaXRoUHJldlR4PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQsIFRVbnNwZW50IGV4dGVuZHMgVW5zcGVudDxUTnVtYmVyPj4oXG4gIHU6IFVuc3BlbnQ8VE51bWJlcj5cbik6IHUgaXMgVFVuc3BlbnQgJiB7IHByZXZUeDogQnVmZmVyIH0ge1xuICByZXR1cm4gQnVmZmVyLmlzQnVmZmVyKCh1IGFzIFVuc3BlbnRXaXRoUHJldlR4PFROdW1iZXI+KS5wcmV2VHgpO1xufVxuXG4vKipcbiAqIEByZXR1cm4gVHhPdXRwdXQgZnJvbSBVbnNwZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b091dHB1dDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50Pih1OiBVbnNwZW50PFROdW1iZXI+LCBuZXR3b3JrOiBOZXR3b3JrKTogVHhPdXRwdXQ8VE51bWJlcj4ge1xuICByZXR1cm4ge1xuICAgIHNjcmlwdDogdG9PdXRwdXRTY3JpcHQodS5hZGRyZXNzLCBuZXR3b3JrKSxcbiAgICB2YWx1ZTogdS52YWx1ZSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAcmV0dXJuIFVuc3BlbnQgZnJvbSBUeE91dHB1dFxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbU91dHB1dDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdHg6IFV0eG9UcmFuc2FjdGlvbjxUTnVtYmVyPixcbiAgdm91dDogbnVtYmVyXG4pOiBVbnNwZW50PFROdW1iZXI+IHtcbiAgY29uc3QgbyA9IHR4Lm91dHNbdm91dF07XG4gIGlmICghbykge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCB2b3V0YCk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBpZDogZm9ybWF0T3V0cHV0SWQoeyB0eGlkOiB0eC5nZXRJZCgpLCB2b3V0IH0pLFxuICAgIGFkZHJlc3M6IGZyb21PdXRwdXRTY3JpcHQoby5zY3JpcHQsIHR4Lm5ldHdvcmspLFxuICAgIHZhbHVlOiBvLnZhbHVlLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJvbU91dHB1dFdpdGhQcmV2VHg8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4oXG4gIHR4OiBVdHhvVHJhbnNhY3Rpb248VE51bWJlcj4sXG4gIHZvdXQ6IG51bWJlclxuKTogVW5zcGVudFdpdGhQcmV2VHg8VE51bWJlcj4ge1xuICByZXR1cm4ge1xuICAgIC4uLmZyb21PdXRwdXQodHgsIHZvdXQpLFxuICAgIHByZXZUeDogdHgudG9CdWZmZXIoKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gb3V0cHV0SWRcbiAqIEByZXR1cm4gVHhPdXRQb2ludFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VPdXRwdXRJZChvdXRwdXRJZDogc3RyaW5nKTogVHhPdXRQb2ludCB7XG4gIGNvbnN0IHBhcnRzID0gb3V0cHV0SWQuc3BsaXQoJzonKTtcbiAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBvdXRwdXRJZCwgbXVzdCBoYXZlIGZvcm1hdCB0eGlkOnZvdXRgKTtcbiAgfVxuICBjb25zdCBbdHhpZCwgdm91dFN0cl0gPSBwYXJ0cztcbiAgY29uc3Qgdm91dCA9IE51bWJlcih2b3V0U3RyKTtcbiAgaWYgKHR4aWQubGVuZ3RoICE9PSA2NCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCB0eGlkICR7dHhpZH0gJHt0eGlkLmxlbmd0aH1gKTtcbiAgfVxuICBpZiAoTnVtYmVyLmlzTmFOKHZvdXQpIHx8IHZvdXQgPCAwIHx8ICFOdW1iZXIuaXNTYWZlSW50ZWdlcih2b3V0KSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCB2b3V0OiBtdXN0IGJlIGludGVnZXIgPj0gMGApO1xuICB9XG4gIHJldHVybiB7IHR4aWQsIHZvdXQgfTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gdHhpZFxuICogQHBhcmFtIHZvdXRcbiAqIEByZXR1cm4gb3V0cHV0SWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdE91dHB1dElkKHsgdHhpZCwgdm91dCB9OiBUeE91dFBvaW50KTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke3R4aWR9OiR7dm91dH1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3V0cHV0SWRGb3JJbnB1dChpOiB7IGhhc2g6IEJ1ZmZlcjsgaW5kZXg6IG51bWJlciB9KTogVHhPdXRQb2ludCB7XG4gIHJldHVybiB7XG4gICAgdHhpZDogQnVmZmVyLmZyb20oaS5oYXNoKS5yZXZlcnNlKCkudG9TdHJpbmcoJ2hleCcpLFxuICAgIHZvdXQ6IGkuaW5kZXgsXG4gIH07XG59XG5cbi8qKlxuICogUmVmZXJlbmNlIHRvIG91dHB1dCBvZiBhbiBleGlzdGluZyB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgdHlwZSBUeE91dFBvaW50ID0ge1xuICB0eGlkOiBzdHJpbmc7XG4gIHZvdXQ6IG51bWJlcjtcbn07XG5cbi8qKlxuICogT3V0cHV0IHJlZmVyZW5jZSBhbmQgc2NyaXB0IGRhdGEuXG4gKiBTdWl0YWJsZSBmb3IgdXNlIGZvciBgdHhiLmFkZElucHV0KClgXG4gKi9cbmV4cG9ydCB0eXBlIFByZXZPdXRwdXQ8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludCA9IG51bWJlcj4gPSBUeE91dFBvaW50ICZcbiAgVHhPdXRwdXQ8VE51bWJlcj4gJiB7XG4gICAgcHJldlR4PzogQnVmZmVyO1xuICB9O1xuXG4vKipcbiAqIEByZXR1cm4gUHJldk91dHB1dCBmcm9tIFVuc3BlbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvUHJldk91dHB1dDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdTogVW5zcGVudDxUTnVtYmVyPixcbiAgbmV0d29yazogTmV0d29ya1xuKTogUHJldk91dHB1dDxUTnVtYmVyPiB7XG4gIHJldHVybiB7XG4gICAgLi4ucGFyc2VPdXRwdXRJZCh1LmlkKSxcbiAgICAuLi50b091dHB1dCh1LCBuZXR3b3JrKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAcmV0dXJuIFByZXZPdXRwdXQgd2l0aCBwcmV2VHggZnJvbSBVbnNwZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1ByZXZPdXRwdXRXaXRoUHJldlR4PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICB1OiBVbnNwZW50PFROdW1iZXI+ICYgeyBwcmV2VHg/OiB1bmtub3duIH0sXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IFByZXZPdXRwdXQ8VE51bWJlcj4ge1xuICBsZXQgcHJldlR4O1xuICBpZiAodHlwZW9mIHUucHJldlR4ID09PSAnc3RyaW5nJykge1xuICAgIHByZXZUeCA9IEJ1ZmZlci5mcm9tKHUucHJldlR4LCAnaGV4Jyk7XG4gIH0gZWxzZSBpZiAoQnVmZmVyLmlzQnVmZmVyKHUucHJldlR4KSkge1xuICAgIHByZXZUeCA9IHUucHJldlR4O1xuICB9IGVsc2UgaWYgKHUucHJldlR4ICE9PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcHJldlR4IHR5cGUgZm9yIHVuc3BlbnQgJHt1LnByZXZUeH1gKTtcbiAgfVxuICByZXR1cm4ge1xuICAgIC4uLnBhcnNlT3V0cHV0SWQodS5pZCksXG4gICAgLi4udG9PdXRwdXQodSwgbmV0d29yayksXG4gICAgcHJldlR4LFxuICB9O1xufVxuXG4vKipcbiAqIEBwYXJhbSB0eGJcbiAqIEBwYXJhbSB1XG4gKiBAcGFyYW0gc2VxdWVuY2UgLSBzZXF1ZW5jZUlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGRUb1RyYW5zYWN0aW9uQnVpbGRlcjxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdHhiOiBVdHhvVHJhbnNhY3Rpb25CdWlsZGVyPFROdW1iZXI+LFxuICB1OiBVbnNwZW50PFROdW1iZXI+LFxuICBzZXF1ZW5jZT86IG51bWJlclxuKTogdm9pZCB7XG4gIGNvbnN0IHsgdHhpZCwgdm91dCwgc2NyaXB0LCB2YWx1ZSB9ID0gdG9QcmV2T3V0cHV0KHUsIHR4Yi5uZXR3b3JrIGFzIE5ldHdvcmspO1xuICB0eGIuYWRkSW5wdXQodHhpZCwgdm91dCwgc2VxdWVuY2UsIHNjcmlwdCwgdmFsdWUpO1xufVxuXG4vKipcbiAqIFN1bSB0aGUgdmFsdWVzIG9mIHRoZSB1bnNwZW50cy5cbiAqIFRocm93cyBlcnJvciBpZiBzdW0gaXMgbm90IGEgc2FmZSBpbnRlZ2VyIHZhbHVlLCBvciBpZiB1bnNwZW50IGFtb3VudCB0eXBlcyBkbyBub3QgbWF0Y2ggYGFtb3VudFR5cGVgXG4gKiBAcGFyYW0gdW5zcGVudHMgLSBhcnJheSBvZiB1bnNwZW50cyB0byBzdW1cbiAqIEBwYXJhbSBhbW91bnRUeXBlIC0gZXhwZWN0ZWQgdmFsdWUgdHlwZSBvZiB1bnNwZW50c1xuICogQHJldHVybiB1bnNwZW50U3VtIC0gdHlwZSBtYXRjaGVzIGFtb3VudFR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuc3BlbnRTdW08VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4oXG4gIHVuc3BlbnRzOiB7IHZhbHVlOiBUTnVtYmVyIH1bXSxcbiAgYW1vdW50VHlwZTogJ251bWJlcicgfCAnYmlnaW50JyA9ICdudW1iZXInXG4pOiBUTnVtYmVyIHtcbiAgaWYgKGFtb3VudFR5cGUgPT09ICdiaWdpbnQnKSB7XG4gICAgcmV0dXJuIHVuc3BlbnRzLnJlZHVjZSgoc3VtLCB1KSA9PiBzdW0gKyAodS52YWx1ZSBhcyBiaWdpbnQpLCBCaWdJbnQoMCkpIGFzIFROdW1iZXI7XG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgc3VtID0gdW5zcGVudHMucmVkdWNlKChzdW0sIHUpID0+IHN1bSArICh1LnZhbHVlIGFzIG51bWJlciksIE51bWJlcigwKSk7XG4gICAgaWYgKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihzdW0pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3Vuc3BlbnQgc3VtIGlzIG5vdCBhIHNhZmUgaW50ZWdlciBudW1iZXIsIGNvbnNpZGVyIHVzaW5nIGJpZ2ludCcpO1xuICAgIH1cbiAgICByZXR1cm4gc3VtIGFzIFROdW1iZXI7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import { Psbt as PsbtBase } from 'bip174';
|
|
3
3
|
import { Bip32Derivation, PsbtInput } from 'bip174/src/lib/interfaces';
|
|
4
4
|
import { BIP32Interface } from 'bip32';
|
|
5
|
-
import { HDSigner, Psbt, TxOutput, Network } from '..';
|
|
5
|
+
import { HDSigner, Signer, Psbt, TxOutput, Network } from '..';
|
|
6
6
|
import { UtxoTransaction } from './UtxoTransaction';
|
|
7
7
|
import { Triple } from './types';
|
|
8
8
|
import { ProprietaryKeySearch, ProprietaryKeyValue } from './PsbtUtil';
|
|
9
|
-
|
|
9
|
+
type SignatureParams = {
|
|
10
10
|
/** When true, and add the second (last) nonce and signature for a taproot key
|
|
11
11
|
* path spend deterministically. Throws an error if done for the first nonce/signature
|
|
12
12
|
* of a taproot keypath spend. Ignore for all other input types.
|
|
@@ -77,6 +77,14 @@ export declare class UtxoPsbt<Tx extends UtxoTransaction<bigint> = UtxoTransacti
|
|
|
77
77
|
static deriveKeyPairForInput(bip32: BIP32Interface, input: PsbtInput): Buffer | undefined;
|
|
78
78
|
get network(): Network;
|
|
79
79
|
toHex(): string;
|
|
80
|
+
/**
|
|
81
|
+
* It is expensive to attempt to compute every output address using psbt.txOutputs[outputIndex]
|
|
82
|
+
* to then just get the script. Here, we are doing the same thing as what txOutputs() does in
|
|
83
|
+
* bitcoinjs-lib, but without iterating over each output.
|
|
84
|
+
* @param outputIndex
|
|
85
|
+
* @returns output script at the given index
|
|
86
|
+
*/
|
|
87
|
+
getOutputScript(outputIndex: number): Buffer;
|
|
80
88
|
getNonWitnessPreviousTxids(): string[];
|
|
81
89
|
addNonWitnessUtxos(txBufs: Record<string, Buffer>): this;
|
|
82
90
|
static fromTransaction(transaction: UtxoTransaction<bigint>, prevOutputs: TxOutput<bigint>[]): UtxoPsbt;
|
|
@@ -98,6 +106,7 @@ export declare class UtxoPsbt<Tx extends UtxoTransaction<bigint> = UtxoTransacti
|
|
|
98
106
|
* @returns true if the input at inputIndex is a taproot
|
|
99
107
|
*/
|
|
100
108
|
isTaprootInput(inputIndex: number): boolean;
|
|
109
|
+
private isMultisigTaprootScript;
|
|
101
110
|
/**
|
|
102
111
|
* Mostly copied from bitcoinjs-lib/ts_src/psbt.ts
|
|
103
112
|
*/
|
|
@@ -141,9 +150,11 @@ export declare class UtxoPsbt<Tx extends UtxoTransaction<bigint> = UtxoTransacti
|
|
|
141
150
|
* @param rootNodes optional input root bip32 nodes to verify with. If it is not provided, globalXpub will be used.
|
|
142
151
|
* @return array of boolean values. True when corresponding index in `publicKeys` has signed the transaction.
|
|
143
152
|
* If no signature in the tx or no public key matching signature, the validation is considered as false.
|
|
153
|
+
* If rootNodes are not explicitly passed in, the return array will be unordered.
|
|
154
|
+
* Use getSortedRootNodes() instead if ordering is important.
|
|
144
155
|
*/
|
|
145
|
-
getSignatureValidationArray(inputIndex: number, { rootNodes }
|
|
146
|
-
rootNodes
|
|
156
|
+
getSignatureValidationArray(inputIndex: number, { rootNodes }: {
|
|
157
|
+
rootNodes: Triple<BIP32Interface> | undefined;
|
|
147
158
|
}): Triple<boolean>;
|
|
148
159
|
/**
|
|
149
160
|
* Mostly copied from bitcoinjs-lib/ts_src/psbt.ts
|
|
@@ -156,6 +167,7 @@ export declare class UtxoPsbt<Tx extends UtxoTransaction<bigint> = UtxoTransacti
|
|
|
156
167
|
sighashTypes?: number[] | undefined;
|
|
157
168
|
deterministic?: boolean | undefined;
|
|
158
169
|
}): this;
|
|
170
|
+
signInput(inputIndex: number, keyPair: Signer, sighashTypes?: number[]): this;
|
|
159
171
|
signInputHD(inputIndex: number, hdKeyPair: HDTaprootSigner | HDTaprootMusig2Signer, params?: number[] | Partial<SignatureParams>): this;
|
|
160
172
|
private getMusig2Participants;
|
|
161
173
|
private getMusig2Nonces;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UtxoPsbt.d.ts","sourceRoot":"","sources":["../../../src/bitgo/UtxoPsbt.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"UtxoPsbt.d.ts","sourceRoot":"","sources":["../../../src/bitgo/UtxoPsbt.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,SAAS,EAIV,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAgB,cAAc,EAAE,MAAM,OAAO,CAAC;AAIrD,OAAO,EAEL,QAAQ,EACR,MAAM,EACN,IAAI,EAGJ,QAAQ,EACR,OAAO,EAIR,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAyBpD,OAAO,EAAqB,MAAM,EAAS,MAAM,SAAS,CAAC;AAE3D,OAAO,EAGL,oBAAoB,EAEpB,mBAAmB,EAEpB,MAAM,YAAY,CAAC;AAEpB,KAAK,eAAe,GAAG;IACrB;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,4BAA4B;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAmCF,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC;IAC1C;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,QAAQ;IACrD;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAAC;CACjD;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAKD,qBAAa,QAAQ,CAAC,EAAE,SAAS,eAAe,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAE,SAAQ,IAAI;IAC9F,OAAO,CAAC,UAAU,CAA0B;IAE5C,SAAS,CAAC,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC;IAIjG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAO5D,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAa3D,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAItD;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAClB,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,eAAe,EAAE,EACnC,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAChC,cAAc,GAAG,SAAS;IA8B7B,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS;IAQzF,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,KAAK,IAAI,MAAM;IAIf;;;;;;OAMG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI5C,0BAA0B,IAAI,MAAM,EAAE;IActC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAiBxD,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ;IAsBvG,aAAa,IAAI,eAAe,CAAC,MAAM,CAAC;IAIxC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC;IAI1E,SAAS,KAAK,EAAE,IAAI,EAAE,CAErB;IAED,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAQrD;;;OAGG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAalD;;;OAGG;IACH,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAqBrD;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAgC3C,OAAO,CAAC,uBAAuB;IAS/B;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAezB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAoC9C;;;OAGG;IACH,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IA4BpD,gDAAgD,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAuB1E;;;;;;OAMG;IACH,6BAA6B,IAAI,OAAO;IAQxC;;OAEG;IACH,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,OAAO;IASnF;;OAEG;IACH,+BAA+B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO;IAiB7E,OAAO,CAAC,mBAAmB;IA6B3B;;;;;;;OAOG;IACH,sCAAsC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO;IAwCpF,gCAAgC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO;IA8C9E;;;;;;;OAOG;IACH,2BAA2B,CACzB,UAAU,EAAE,MAAM,EAClB,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;KAAE,GAC/D,MAAM,CAAC,OAAO,CAAC;IAqClB;;OAEG;IACH,eAAe,CACb,SAAS,EAAE,eAAe,GAAG,qBAAqB,EAClD,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,GAC3C,IAAI;IAqBP;;OAEG;IACH,kBAAkB,CAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,eAAe,GAAG,qBAAqB,EAClD,EAAE,YAAqE,EAAE,aAAqB,EAAE;;;KAAK,GACpG,IAAI;IAoDP,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAK7E,WAAW,CACT,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,eAAe,GAAG,qBAAqB,EAClD,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,GAC3C,IAAI;IASP,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,eAAe;IAWvB;;;;;;;;OAQG;IACH,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,EACpB,EAAE,YAAqE,EAAE,aAAqB,EAAE;;;KAAK,GACpG,IAAI;IAsEP,gBAAgB,CACd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,MAAM,EAAE,EACpB,YAAY,GAAE,MAAM,EAA2D,GAC9E,IAAI;IA8CP,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,oBAAoB;IAyD5B;;;OAGG;IACH,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,GAAG,IAAI;IAOxF;;;OAGG;IACH,mCAAmC,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,GAAG,IAAI;IAkBhG;;;OAGG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,EAAE;IAKlG;;;OAGG;IACH,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAqBvF,OAAO,CAAC,yBAAyB;IAuFjC,OAAO,CAAC,oBAAoB;IAwB5B;;;;;;;;;OASG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,cAAc,EAC9B,MAAM,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAA6B,GACjF,IAAI;IAIP;;;;;;;;;OASG;IACH,qBAAqB,CACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,MAAM,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAA6B,GACjF,IAAI;IAKP;;;;;;;OAOG;IACH,uBAAuB,CACrB,OAAO,EAAE,cAAc,EACvB,MAAM,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAA6B,GACjF,IAAI;IAIP;;;;;;;OAOG;IACH,yBAAyB,CACvB,OAAO,EAAE,cAAc,EACvB,MAAM,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAA6B,GACjF,IAAI;IAIP,KAAK,IAAI,IAAI;IAIb,kBAAkB,CAAC,eAAe,UAAO,GAAG,eAAe,CAAC,MAAM,CAAC;CAOpE"}
|