@bitgo/abstract-utxo 12.6.0 → 13.0.0
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/dist/cjs/src/abstractUtxoCoin.d.ts +7 -2
- package/dist/cjs/src/abstractUtxoCoin.d.ts.map +1 -1
- package/dist/cjs/src/abstractUtxoCoin.js +19 -34
- package/dist/cjs/src/address/fixedScript.d.ts +4 -4
- package/dist/cjs/src/address/fixedScript.d.ts.map +1 -1
- package/dist/cjs/src/address/fixedScript.js +4 -3
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts +2 -2
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -1
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.js +3 -4
- package/dist/cjs/src/impl/bch/bch.d.ts +15 -1
- package/dist/cjs/src/impl/bch/bch.d.ts.map +1 -1
- package/dist/cjs/src/impl/bch/bch.js +29 -5
- package/dist/cjs/src/impl/btc/index.d.ts +2 -0
- package/dist/cjs/src/impl/btc/index.d.ts.map +1 -1
- package/dist/cjs/src/impl/btc/index.js +3 -1
- package/dist/cjs/src/impl/btc/inscriptionBuilder.js +4 -4
- package/dist/cjs/src/impl/btc/tbtcstx.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtcstx.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcstx.js +18 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.d.ts +9 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.js +15 -0
- package/dist/cjs/src/impl/zec/address.d.ts +51 -0
- package/dist/cjs/src/impl/zec/address.d.ts.map +1 -1
- package/dist/cjs/src/impl/zec/address.js +103 -1
- package/dist/cjs/src/impl/zec/recipients.d.ts +4 -2
- package/dist/cjs/src/impl/zec/recipients.d.ts.map +1 -1
- package/dist/cjs/src/impl/zec/recipients.js +7 -3
- package/dist/cjs/src/impl/zec/types.d.ts +5 -2
- package/dist/cjs/src/impl/zec/types.d.ts.map +1 -1
- package/dist/cjs/src/impl/zec/types.js +1 -1
- package/dist/cjs/src/impl/zec/zec.d.ts +23 -2
- package/dist/cjs/src/impl/zec/zec.d.ts.map +1 -1
- package/dist/cjs/src/impl/zec/zec.js +61 -2
- package/dist/cjs/src/names.d.ts +5 -2
- package/dist/cjs/src/names.d.ts.map +1 -1
- package/dist/cjs/src/names.js +19 -1
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts +2 -2
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts.map +1 -1
- package/dist/cjs/src/recovery/backupKeyRecovery.js +5 -5
- package/dist/cjs/src/recovery/crossChainRecovery.d.ts.map +1 -1
- package/dist/cjs/src/recovery/crossChainRecovery.js +4 -4
- package/dist/cjs/src/transaction/decode.d.ts +2 -2
- package/dist/cjs/src/transaction/decode.d.ts.map +1 -1
- package/dist/cjs/src/transaction/decode.js +3 -2
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts +2 -2
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts.map +1 -1
- package/dist/cjs/src/transaction/descriptor/explainPsbt.js +6 -5
- package/dist/cjs/src/transaction/descriptor/parse.d.ts.map +1 -1
- package/dist/cjs/src/transaction/descriptor/parse.js +3 -4
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts.map +1 -1
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.js +2 -3
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.js +2 -3
- package/dist/cjs/src/transaction/explainTransaction.d.ts +3 -2
- package/dist/cjs/src/transaction/explainTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/explainTransaction.js +3 -2
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts +2 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -1
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.js +4 -1
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.js +11 -5
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts +4 -4
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts.map +1 -1
- package/dist/cjs/src/transaction/fixedScript/replayProtection.js +1 -1
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts +2 -2
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/fixedScript/signTransaction.js +1 -1
- package/dist/cjs/src/transaction/parseTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/parseTransaction.js +2 -3
- package/dist/cjs/src/transaction/recipient.d.ts +30 -4
- package/dist/cjs/src/transaction/recipient.d.ts.map +1 -1
- package/dist/cjs/src/transaction/recipient.js +48 -9
- package/dist/cjs/src/transaction/signTransaction.js +2 -2
- package/dist/cjs/src/transaction/verifyTransaction.d.ts.map +1 -1
- package/dist/cjs/src/transaction/verifyTransaction.js +2 -3
- package/dist/cjs/test/unit/bip322.js +14 -4
- package/dist/cjs/test/unit/customChangeWallet.js +3 -1
- package/dist/cjs/test/unit/descriptorAddress.d.ts.map +1 -1
- package/dist/cjs/test/unit/descriptorAddress.js +24 -4
- package/dist/cjs/test/unit/impl/bch/unit/bch.js +9 -1
- package/dist/cjs/test/unit/impl/zec/psbtDecode.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/psbtDecode.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/psbtDecode.js +69 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.js +329 -0
- package/dist/cjs/test/unit/impl/zec/unit/address.js +162 -1
- package/dist/cjs/test/unit/impl/zec/unit/resolvePsbtRecipients.js +7 -5
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.js +2 -2
- package/dist/cjs/test/unit/recovery/crossChainRecovery.js +2 -2
- package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.js +2 -2
- package/dist/cjs/test/unit/recovery/mock.d.ts.map +1 -1
- package/dist/cjs/test/unit/recovery/mock.js +5 -3
- package/dist/cjs/test/unit/tbtcstx.d.ts +2 -0
- package/dist/cjs/test/unit/tbtcstx.d.ts.map +1 -0
- package/dist/cjs/test/unit/tbtcstx.js +60 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.d.ts +2 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.js +61 -0
- package/dist/cjs/test/unit/transaction/addressCodec.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/addressCodec.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/addressCodec.js +30 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.js +9 -1
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.js +2 -1
- package/dist/cjs/test/unit/transaction.js +2 -2
- package/dist/cjs/test/unit/util/address.d.ts +2 -1
- package/dist/cjs/test/unit/util/address.d.ts.map +1 -1
- package/dist/cjs/test/unit/util/address.js +3 -2
- package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts.map +1 -1
- package/dist/cjs/test/unit/util/nockIndexerAPI.js +3 -4
- package/dist/cjs/test/unit/util/transaction.d.ts +1 -1
- package/dist/cjs/test/unit/util/transaction.d.ts.map +1 -1
- package/dist/cjs/test/unit/util/transaction.js +5 -4
- package/dist/cjs/test/unit/util/unspents.d.ts.map +1 -1
- package/dist/cjs/test/unit/util/unspents.js +3 -3
- package/dist/cjs/test/unit/util/utxoCoins.d.ts +2 -2
- package/dist/cjs/test/unit/util/utxoCoins.d.ts.map +1 -1
- package/dist/cjs/test/unit/util/utxoCoins.js +17 -33
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/abstractUtxoCoin.d.ts +7 -2
- package/dist/esm/abstractUtxoCoin.d.ts.map +1 -1
- package/dist/esm/abstractUtxoCoin.js +21 -36
- package/dist/esm/address/fixedScript.d.ts +4 -4
- package/dist/esm/address/fixedScript.d.ts.map +1 -1
- package/dist/esm/address/fixedScript.js +4 -3
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts +2 -2
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -1
- package/dist/esm/descriptor/assertDescriptorWalletAddress.js +3 -4
- package/dist/esm/impl/bch/bch.d.ts +15 -1
- package/dist/esm/impl/bch/bch.d.ts.map +1 -1
- package/dist/esm/impl/bch/bch.js +29 -5
- package/dist/esm/impl/btc/index.d.ts +2 -0
- package/dist/esm/impl/btc/index.d.ts.map +1 -1
- package/dist/esm/impl/btc/index.js +3 -1
- package/dist/esm/impl/btc/inscriptionBuilder.js +4 -4
- package/dist/esm/impl/btc/tbtcstx.d.ts +10 -0
- package/dist/esm/impl/btc/tbtcstx.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcstx.js +14 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.d.ts +9 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.js +11 -0
- package/dist/esm/impl/zec/address.d.ts +51 -0
- package/dist/esm/impl/zec/address.d.ts.map +1 -1
- package/dist/esm/impl/zec/address.js +102 -2
- package/dist/esm/impl/zec/recipients.d.ts +4 -2
- package/dist/esm/impl/zec/recipients.d.ts.map +1 -1
- package/dist/esm/impl/zec/recipients.js +7 -3
- package/dist/esm/impl/zec/types.d.ts +5 -2
- package/dist/esm/impl/zec/types.d.ts.map +1 -1
- package/dist/esm/impl/zec/types.js +1 -1
- package/dist/esm/impl/zec/zec.d.ts +23 -2
- package/dist/esm/impl/zec/zec.d.ts.map +1 -1
- package/dist/esm/impl/zec/zec.js +62 -3
- package/dist/esm/names.d.ts +5 -2
- package/dist/esm/names.d.ts.map +1 -1
- package/dist/esm/names.js +18 -1
- package/dist/esm/recovery/backupKeyRecovery.d.ts +2 -2
- package/dist/esm/recovery/backupKeyRecovery.d.ts.map +1 -1
- package/dist/esm/recovery/backupKeyRecovery.js +6 -6
- package/dist/esm/recovery/crossChainRecovery.d.ts.map +1 -1
- package/dist/esm/recovery/crossChainRecovery.js +4 -4
- package/dist/esm/transaction/decode.d.ts +2 -2
- package/dist/esm/transaction/decode.d.ts.map +1 -1
- package/dist/esm/transaction/decode.js +3 -2
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts +2 -2
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts.map +1 -1
- package/dist/esm/transaction/descriptor/explainPsbt.js +6 -5
- package/dist/esm/transaction/descriptor/parse.d.ts.map +1 -1
- package/dist/esm/transaction/descriptor/parse.js +3 -4
- package/dist/esm/transaction/descriptor/parseToAmountType.d.ts.map +1 -1
- package/dist/esm/transaction/descriptor/parseToAmountType.js +2 -3
- package/dist/esm/transaction/descriptor/verifyTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/descriptor/verifyTransaction.js +2 -3
- package/dist/esm/transaction/explainTransaction.d.ts +3 -2
- package/dist/esm/transaction/explainTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/explainTransaction.js +3 -2
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts +2 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -1
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.js +4 -1
- package/dist/esm/transaction/fixedScript/parseTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/fixedScript/parseTransaction.js +11 -5
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts +4 -4
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts.map +1 -1
- package/dist/esm/transaction/fixedScript/replayProtection.js +1 -1
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts +2 -2
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/fixedScript/signTransaction.js +1 -1
- package/dist/esm/transaction/parseTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/parseTransaction.js +2 -3
- package/dist/esm/transaction/recipient.d.ts +30 -4
- package/dist/esm/transaction/recipient.d.ts.map +1 -1
- package/dist/esm/transaction/recipient.js +48 -9
- package/dist/esm/transaction/signTransaction.js +2 -2
- package/dist/esm/transaction/verifyTransaction.d.ts.map +1 -1
- package/dist/esm/transaction/verifyTransaction.js +2 -3
- package/package.json +6 -5
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { descriptorWallet } from '@bitgo/wasm-utxo';
|
|
2
|
+
import { toWasmUtxoCoinName } from '../../names';
|
|
2
3
|
function sumValues(arr) {
|
|
3
4
|
return arr.reduce((sum, e) => sum + e.value, 0n);
|
|
4
5
|
}
|
|
5
|
-
function toRecipient(output
|
|
6
|
+
function toRecipient(output) {
|
|
6
7
|
const address = output.address ?? `scriptPubKey:${Buffer.from(output.script).toString('hex')}`;
|
|
7
8
|
return {
|
|
8
9
|
address,
|
|
@@ -23,7 +24,7 @@ function getInputSignatures(psbt) {
|
|
|
23
24
|
return Array.from({ length: psbt.inputCount() }, (_, i) => getInputSignaturesForInputIndex(psbt, i));
|
|
24
25
|
}
|
|
25
26
|
export function explainPsbt(psbt, descriptors, coinName) {
|
|
26
|
-
const parsedTransaction = descriptorWallet.parse(psbt, descriptors, coinName);
|
|
27
|
+
const parsedTransaction = descriptorWallet.parse(psbt, descriptors, toWasmUtxoCoinName(coinName));
|
|
27
28
|
const { inputs, outputs } = parsedTransaction;
|
|
28
29
|
const externalOutputs = outputs.filter((o) => o.scriptId === undefined);
|
|
29
30
|
const changeOutputs = outputs.filter((o) => o.scriptId !== undefined);
|
|
@@ -34,11 +35,11 @@ export function explainPsbt(psbt, descriptors, coinName) {
|
|
|
34
35
|
signatures: inputSignatures.reduce((a, b) => Math.min(a, b), Infinity),
|
|
35
36
|
locktime: psbt.lockTime(),
|
|
36
37
|
id: psbt.unsignedTxId(),
|
|
37
|
-
outputs: externalOutputs.map(
|
|
38
|
+
outputs: externalOutputs.map(toRecipient),
|
|
38
39
|
outputAmount: sumValues(externalOutputs).toString(),
|
|
39
|
-
changeOutputs: changeOutputs.map(
|
|
40
|
+
changeOutputs: changeOutputs.map(toRecipient),
|
|
40
41
|
changeAmount: sumValues(changeOutputs).toString(),
|
|
41
42
|
fee: fee.toString(),
|
|
42
43
|
};
|
|
43
44
|
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblBzYnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vZGVzY3JpcHRvci9leHBsYWluUHNidC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVEsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUcxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWtDLE1BQU0sYUFBYSxDQUFDO0FBRWpGLFNBQVMsU0FBUyxDQUFDLEdBQXdCO0lBQ3pDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ25ELENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxNQUFxQztJQUN4RCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxJQUFJLGdCQUFnQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUMvRixPQUFPO1FBQ0wsT0FBTztRQUNQLE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtLQUNoQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsK0JBQStCLENBQUMsSUFBVSxFQUFFLFVBQWtCO0lBQ3JFLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUMzQyxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDMUQsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ25DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xFLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNSLENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLElBQVU7SUFDcEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsK0JBQStCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkcsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQ3pCLElBQVUsRUFDVixXQUEyQyxFQUMzQyxRQUF5QztJQUV6QyxNQUFNLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEcsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQztJQUM5QyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUM7SUFDdEUsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxNQUFNLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRCxPQUFPO1FBQ0wsZUFBZTtRQUNmLFVBQVUsRUFBRSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDO1FBQ3RFLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1FBQ3pCLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFO1FBQ3ZCLE9BQU8sRUFBRSxlQUFlLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUN6QyxZQUFZLEVBQUUsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtRQUNuRCxhQUFhLEVBQUUsYUFBYSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7UUFDN0MsWUFBWSxFQUFFLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLEVBQUU7UUFDakQsR0FBRyxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUU7S0FDcEIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVHJhbnNhY3Rpb25SZWNpcGllbnQgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgUHNidCwgZGVzY3JpcHRvcldhbGxldCB9IGZyb20gJ0BiaXRnby93YXNtLXV0eG8nO1xuXG5pbXBvcnQgdHlwZSB7IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25EZXNjcmlwdG9yIH0gZnJvbSAnLi4vZml4ZWRTY3JpcHQvZXhwbGFpblRyYW5zYWN0aW9uJztcbmltcG9ydCB7IHRvV2FzbVV0eG9Db2luTmFtZSwgVXR4b0NvaW5OYW1lLCBXYXNtVXR4b0NvaW5OYW1lIH0gZnJvbSAnLi4vLi4vbmFtZXMnO1xuXG5mdW5jdGlvbiBzdW1WYWx1ZXMoYXJyOiB7IHZhbHVlOiBiaWdpbnQgfVtdKTogYmlnaW50IHtcbiAgcmV0dXJuIGFyci5yZWR1Y2UoKHN1bSwgZSkgPT4gc3VtICsgZS52YWx1ZSwgMG4pO1xufVxuXG5mdW5jdGlvbiB0b1JlY2lwaWVudChvdXRwdXQ6IGRlc2NyaXB0b3JXYWxsZXQuUGFyc2VkT3V0cHV0KTogSVRyYW5zYWN0aW9uUmVjaXBpZW50IHtcbiAgY29uc3QgYWRkcmVzcyA9IG91dHB1dC5hZGRyZXNzID8/IGBzY3JpcHRQdWJLZXk6JHtCdWZmZXIuZnJvbShvdXRwdXQuc2NyaXB0KS50b1N0cmluZygnaGV4Jyl9YDtcbiAgcmV0dXJuIHtcbiAgICBhZGRyZXNzLFxuICAgIGFtb3VudDogb3V0cHV0LnZhbHVlLnRvU3RyaW5nKCksXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldElucHV0U2lnbmF0dXJlc0ZvcklucHV0SW5kZXgocHNidDogUHNidCwgaW5wdXRJbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgaWYgKCFwc2J0Lmhhc1BhcnRpYWxTaWduYXR1cmVzKGlucHV0SW5kZXgpKSB7XG4gICAgcmV0dXJuIDA7XG4gIH1cbiAgY29uc3QgcGFydGlhbFNpZ3MgPSBwc2J0LmdldFBhcnRpYWxTaWduYXR1cmVzKGlucHV0SW5kZXgpO1xuICByZXR1cm4gcGFydGlhbFNpZ3MucmVkdWNlKChhZ2csIHApID0+IHtcbiAgICBjb25zdCB2YWxpZCA9IHBzYnQudmFsaWRhdGVTaWduYXR1cmVBdElucHV0KGlucHV0SW5kZXgsIHAucHVia2V5KTtcbiAgICByZXR1cm4gYWdnICsgKHZhbGlkID8gMSA6IDApO1xuICB9LCAwKTtcbn1cblxuZnVuY3Rpb24gZ2V0SW5wdXRTaWduYXR1cmVzKHBzYnQ6IFBzYnQpOiBudW1iZXJbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBwc2J0LmlucHV0Q291bnQoKSB9LCAoXywgaSkgPT4gZ2V0SW5wdXRTaWduYXR1cmVzRm9ySW5wdXRJbmRleChwc2J0LCBpKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBsYWluUHNidChcbiAgcHNidDogUHNidCxcbiAgZGVzY3JpcHRvcnM6IGRlc2NyaXB0b3JXYWxsZXQuRGVzY3JpcHRvck1hcCxcbiAgY29pbk5hbWU6IFV0eG9Db2luTmFtZSB8IFdhc21VdHhvQ29pbk5hbWVcbik6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25EZXNjcmlwdG9yIHtcbiAgY29uc3QgcGFyc2VkVHJhbnNhY3Rpb24gPSBkZXNjcmlwdG9yV2FsbGV0LnBhcnNlKHBzYnQsIGRlc2NyaXB0b3JzLCB0b1dhc21VdHhvQ29pbk5hbWUoY29pbk5hbWUpKTtcbiAgY29uc3QgeyBpbnB1dHMsIG91dHB1dHMgfSA9IHBhcnNlZFRyYW5zYWN0aW9uO1xuICBjb25zdCBleHRlcm5hbE91dHB1dHMgPSBvdXRwdXRzLmZpbHRlcigobykgPT4gby5zY3JpcHRJZCA9PT0gdW5kZWZpbmVkKTtcbiAgY29uc3QgY2hhbmdlT3V0cHV0cyA9IG91dHB1dHMuZmlsdGVyKChvKSA9PiBvLnNjcmlwdElkICE9PSB1bmRlZmluZWQpO1xuICBjb25zdCBmZWUgPSBzdW1WYWx1ZXMoaW5wdXRzKSAtIHN1bVZhbHVlcyhvdXRwdXRzKTtcbiAgY29uc3QgaW5wdXRTaWduYXR1cmVzID0gZ2V0SW5wdXRTaWduYXR1cmVzKHBzYnQpO1xuICByZXR1cm4ge1xuICAgIGlucHV0U2lnbmF0dXJlcyxcbiAgICBzaWduYXR1cmVzOiBpbnB1dFNpZ25hdHVyZXMucmVkdWNlKChhLCBiKSA9PiBNYXRoLm1pbihhLCBiKSwgSW5maW5pdHkpLFxuICAgIGxvY2t0aW1lOiBwc2J0LmxvY2tUaW1lKCksXG4gICAgaWQ6IHBzYnQudW5zaWduZWRUeElkKCksXG4gICAgb3V0cHV0czogZXh0ZXJuYWxPdXRwdXRzLm1hcCh0b1JlY2lwaWVudCksXG4gICAgb3V0cHV0QW1vdW50OiBzdW1WYWx1ZXMoZXh0ZXJuYWxPdXRwdXRzKS50b1N0cmluZygpLFxuICAgIGNoYW5nZU91dHB1dHM6IGNoYW5nZU91dHB1dHMubWFwKHRvUmVjaXBpZW50KSxcbiAgICBjaGFuZ2VBbW91bnQ6IHN1bVZhbHVlcyhjaGFuZ2VPdXRwdXRzKS50b1N0cmluZygpLFxuICAgIGZlZTogZmVlLnRvU3RyaW5nKCksXG4gIH07XG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAG3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAQ5C,KAAK,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG;IAC1D,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC;CACvB,CAAC;AAoDF,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;AAmBnG,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,IAAI,GAAG,UAAU,EACvB,aAAa,EAAE,gBAAgB,CAAC,aAAa,EAC7C,UAAU,EAAE,qBAAqB,EAAE,EACnC,YAAY,EAAE,YAAY,GACzB,mBAAmB,CAWrB;AAED,MAAM,MAAM,2BAA2B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,IAAI,qBAAqB,CAC9F,OAAO,EACP,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC,CAC5B,CAAC;AAEF,wBAAgB,KAAK,CACnB,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,uBAAuB,CAAC,MAAM,GAAG,MAAM,CAAC,EAChD,YAAY,GAAE,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAG3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAQ5C,KAAK,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG;IAC1D,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC;CACvB,CAAC;AAoDF,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;AAmBnG,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,IAAI,GAAG,UAAU,EACvB,aAAa,EAAE,gBAAgB,CAAC,aAAa,EAC7C,UAAU,EAAE,qBAAqB,EAAE,EACnC,YAAY,EAAE,YAAY,GACzB,mBAAmB,CAWrB;AAED,MAAM,MAAM,2BAA2B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,IAAI,qBAAqB,CAC9F,OAAO,EACP,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC,CAC5B,CAAC;AAEF,wBAAgB,KAAK,CACnB,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,uBAAuB,CAAC,MAAM,GAAG,MAAM,CAAC,EAChD,YAAY,GAAE,YAAgC,GAC7C,2BAA2B,CAAC,MAAM,CAAC,CAyBrC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Psbt, descriptorWallet } from '@bitgo/wasm-utxo';
|
|
2
2
|
import { getKeySignatures, toBip32Triple, UtxoNamedKeychains } from '../../keychains';
|
|
3
3
|
import { getDescriptorMapFromWallet, getPolicyForEnv } from '../../descriptor';
|
|
4
|
-
import { AddressCodec } from '../recipient';
|
|
5
4
|
import { outputDifferencesWithExpected } from '../outputDifference';
|
|
6
5
|
import { decodeDescriptorPsbt } from '../decode';
|
|
7
6
|
function sumValues(arr) {
|
|
@@ -16,7 +15,7 @@ function toRecipientOutput(recipient, addressCodec) {
|
|
|
16
15
|
};
|
|
17
16
|
}
|
|
18
17
|
function parseOutputsWithPsbt(psbt, descriptorMap, recipientOutputs, addressCodec) {
|
|
19
|
-
const parsed = descriptorWallet.parse(psbt, descriptorMap, addressCodec.
|
|
18
|
+
const parsed = descriptorWallet.parse(psbt, descriptorMap, addressCodec.wasmName);
|
|
20
19
|
const outputs = parsed.outputs.map((output) => ({
|
|
21
20
|
...output,
|
|
22
21
|
script: Buffer.from(output.script),
|
|
@@ -53,7 +52,7 @@ export function toBaseParsedTransactionOutputsFromPsbt(psbt, descriptorMap, reci
|
|
|
53
52
|
const wasmPsbt = psbt instanceof Psbt ? psbt : Psbt.deserialize(psbt);
|
|
54
53
|
return toBaseParsedTransactionOutputs(parseOutputsWithPsbt(wasmPsbt, descriptorMap, recipients.map((r) => toRecipientOutput(r, addressCodec)), addressCodec), addressCodec);
|
|
55
54
|
}
|
|
56
|
-
export function parse(coin, wallet, params, addressCodec =
|
|
55
|
+
export function parse(coin, wallet, params, addressCodec = coin.addressCodec) {
|
|
57
56
|
if (params.txParams.allowExternalChangeAddress) {
|
|
58
57
|
throw new Error('allowExternalChangeAddress is not supported for descriptor wallets');
|
|
59
58
|
}
|
|
@@ -79,4 +78,4 @@ export function parse(coin, wallet, params, addressCodec = new AddressCodec(coin
|
|
|
79
78
|
needsCustomChangeKeySignatureVerification: false,
|
|
80
79
|
};
|
|
81
80
|
}
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vZGVzY3JpcHRvci9wYXJzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSw2QkFBNkIsRUFBZ0MsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakQsU0FBUyxTQUFTLENBQUMsR0FBd0I7SUFDekMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQVFELFNBQVMsaUJBQWlCLENBQUMsU0FBZ0MsRUFBRSxZQUEwQjtJQUNyRixPQUFPO1FBQ0wsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPO1FBQzFCLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztRQUNwRSxNQUFNLEVBQUUsWUFBWSxDQUFDLGlDQUFpQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDekUsUUFBUSxFQUFFLFNBQVMsRUFBRSxrQ0FBa0M7S0FDeEQsQ0FBQztBQUNKLENBQUM7QUFRRCxTQUFTLG9CQUFv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QUFDLENBQUMsQ0FBQztJQUMvRyxPQUFPO1FBQ0wsR0FBRyxzQ0FBc0MsQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxZQUFZLENBQUM7UUFDNUYsU0FBUztRQUNULGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFO1FBQzdDLFlBQVksRUFBRSxTQUFTO1FBQ3ZCLHlDQUF5QyxFQUFFLEtBQUs7S0FDakQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVHJhbnNhY3Rpb25SZWNpcGllbnQgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgUHNidCwgZGVzY3JpcHRvcldhbGxldCB9IGZyb20gJ0BiaXRnby93YXNtLXV0eG8nO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBQYXJzZVRyYW5zYWN0aW9uT3B0aW9ucyB9IGZyb20gJy4uLy4uL2Fic3RyYWN0VXR4b0NvaW4nO1xuaW1wb3J0IHsgQmFzZU91dHB1dCwgQmFzZVBhcnNlZFRyYW5zYWN0aW9uLCBCYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0S2V5U2lnbmF0dXJlcywgdG9CaXAzMlRyaXBsZSwgVXR4b05hbWVkS2V5Y2hhaW5zIH0gZnJvbSAnLi4vLi4va2V5Y2hhaW5zJztcbmltcG9ydCB7IGdldERlc2NyaXB0b3JNYXBGcm9tV2FsbGV0LCBnZXRQb2xpY3lGb3JFbnYgfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9yJztcbmltcG9ydCB7IElEZXNjcmlwdG9yV2FsbGV0IH0gZnJvbSAnLi4vLi4vZGVzY3JpcHRvci9kZXNjcmlwdG9yV2FsbGV0JztcbmltcG9ydCB7IEFkZHJlc3NDb2RlYyB9IGZyb20gJy4uL3JlY2lwaWVudCc7XG5pbXBvcnQgeyBvdXRwdXREaWZmZXJlbmNlc1dpdGhFeHBlY3RlZCwgT3V0cHV0RGlmZmVyZW5jZVdpdGhFeHBlY3RlZCB9IGZyb20gJy4uL291dHB1dERpZmZlcmVuY2UnO1xuaW1wb3J0IHsgZGVjb2RlRGVzY3JpcHRvclBzYnQgfSBmcm9tICcuLi9kZWNvZGUnO1xuXG5mdW5jdGlvbiBzdW1WYWx1ZXMoYXJyOiB7IHZhbHVlOiBiaWdpbnQgfVtdKTogYmlnaW50IHtcbiAgcmV0dXJuIGFyci5yZWR1Y2UoKHN1bSwgZSkgPT4gc3VtICsgZS52YWx1ZSwgMG4pO1xufVxuXG50eXBlIFBhcnNlZE91dHB1dCA9IE9taXQ8ZGVzY3JpcHRvcldhbGxldC5QYXJzZWRPdXRwdXQsICdzY3JpcHQnPiAmIHsgc2NyaXB0OiBCdWZmZXIgfTtcblxuZXhwb3J0IHR5cGUgUmVjaXBpZW50T3V0cHV0ID0gT21pdDxQYXJzZWRPdXRwdXQsICd2YWx1ZSc+ICYge1xuICB2YWx1ZTogYmlnaW50IHwgJ21heCc7XG59O1xuXG5mdW5jdGlvbiB0b1JlY2lwaWVudE91dHB1dChyZWNpcGllbnQ6IElUcmFuc2FjdGlvblJlY2lwaWVudCwgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWMpOiBSZWNpcGllbnRPdXRwdXQge1xuICByZXR1cm4ge1xuICAgIGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzLFxuICAgIHZhbHVlOiByZWNpcGllbnQuYW1vdW50ID09PSAnbWF4JyA/ICdtYXgnIDogQmlnSW50KHJlY2lwaWVudC5hbW91bnQpLFxuICAgIHNjcmlwdDogYWRkcmVzc0NvZGVjLmZyb21FeHRlbmRlZEFkZHJlc3NGb3JtYXRUb1NjcmlwdChyZWNpcGllbnQuYWRkcmVzcyksXG4gICAgc2NyaXB0SWQ6IHVuZGVmaW5lZCwgLy8gUmVjaXBpZW50cyBhcmUgZXh0ZXJuYWwgb3V0cHV0c1xuICB9O1xufVxuXG4vLyBUT0RPKEJUQy0xNjk3KTogYWxsb3cgb3V0cHV0cyB3aXRoIGB2YWx1ZTogJ21heCdgIGhlcmVcbnR5cGUgUGFyc2VkT3V0cHV0cyA9IE91dHB1dERpZmZlcmVuY2VXaXRoRXhwZWN0ZWQ8UGFyc2VkT3V0cHV0LCBSZWNpcGllbnRPdXRwdXQ+ICYge1xuICBvdXRwdXRzOiBQYXJzZWRPdXRwdXRbXTtcbiAgY2hhbmdlT3V0cHV0czogUGFyc2VkT3V0cHV0W107XG59O1xuXG5mdW5jdGlvbiBwYXJzZU91dHB1dHNXaXRoUHNidChcbiAgcHNidDogUHNidCxcbiAgZGVzY3JpcHRvck1hcDogZGVzY3JpcHRvcldhbGxldC5EZXNjcmlwdG9yTWFwLFxuICByZWNpcGllbnRPdXRwdXRzOiBSZWNpcGllbnRPdXRwdXRbXSxcbiAgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWNcbik6IFBhcnNlZE91dHB1dHMge1xuICBjb25zdCBwYXJzZWQgPSBkZXNjcmlwdG9yV2FsbGV0LnBhcnNlKHBzYnQsIGRlc2NyaXB0b3JNYXAsIGFkZHJlc3NDb2RlYy5jb2luTmFtZSk7XG4gIGNvbnN0IG91dHB1dHM6IFBhcnNlZE91dHB1dFtdID0gcGFyc2VkLm91dHB1dHMubWFwKChvdXRwdXQpID0+ICh7XG4gICAgLi4ub3V0cHV0LFxuICAgIHNjcmlwdDogQnVmZmVyLmZyb20ob3V0cHV0LnNjcmlwdCksXG4gIH0pKTtcbiAgY29uc3QgY2hhbmdlT3V0cHV0cyA9IG91dHB1dHMuZmlsdGVyKChvKSA9PiBvLnNjcmlwdElkICE9PSB1bmRlZmluZWQpO1xuICBjb25zdCBvdXRwdXREaWZmcyA9IG91dHB1dERpZmZlcmVuY2VzV2l0aEV4cGVjdGVkKG91dHB1dHMsIHJlY2lwaWVudE91dHB1dHMpO1xuICByZXR1cm4ge1xuICAgIG91dHB1dHMsXG4gICAgY2hhbmdlT3V0cHV0cyxcbiAgICAuLi5vdXRwdXREaWZmcyxcbiAgfTtcbn1cblxuZnVuY3Rpb24gdG9CYXNlT3V0cHV0cyhvdXRwdXRzOiBQYXJzZWRPdXRwdXRbXSwgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWMpOiBCYXNlT3V0cHV0PGJpZ2ludD5bXTtcbmZ1bmN0aW9uIHRvQmFzZU91dHB1dHMob3V0cHV0czogUmVjaXBpZW50T3V0cHV0W10sIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjKTogQmFzZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz5bXTtcbmZ1bmN0aW9uIHRvQmFzZU91dHB1dHMoXG4gIG91dHB1dHM6IChQYXJzZWRPdXRwdXQgfCBSZWNpcGllbnRPdXRwdXQpW10sXG4gIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjXG4pOiBCYXNlT3V0cHV0PGJpZ2ludCB8ICdtYXgnPltdIHtcbiAgcmV0dXJuIG91dHB1dHMubWFwKFxuICAgIChvKTogQmFzZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz4gPT4gKHtcbiAgICAgIGFkZHJlc3M6IGFkZHJlc3NDb2RlYy50b0V4dGVuZGVkQWRkcmVzc0Zvcm1hdChvLnNjcmlwdCksXG4gICAgICBhbW91bnQ6IG8udmFsdWUgPT09ICdtYXgnID8gJ21heCcgOiBCaWdJbnQoby52YWx1ZSksXG4gICAgICBleHRlcm5hbDogby5zY3JpcHRJZCA9PT0gdW5kZWZpbmVkLFxuICAgIH0pXG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIFBhcnNlZE91dHB1dHNCaWdJbnQgPSBCYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzPGJpZ2ludCwgQmFzZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz4+O1xuXG5mdW5jdGlvbiB0b0Jhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHMoXG4gIHsgb3V0cHV0cywgY2hhbmdlT3V0cHV0cywgZXhwbGljaXRPdXRwdXRzLCBpbXBsaWNpdE91dHB1dHMsIG1pc3NpbmdPdXRwdXRzIH06IFBhcnNlZE91dHB1dHMsXG4gIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjXG4pOiBQYXJzZWRPdXRwdXRzQmlnSW50IHtcbiAgY29uc3QgZXhwbGljaXRFeHRlcm5hbE91dHB1dHMgPSBleHBsaWNpdE91dHB1dHMuZmlsdGVyKChvKSA9PiBvLnNjcmlwdElkID09PSB1bmRlZmluZWQpO1xuICBjb25zdCBpbXBsaWNpdEV4dGVybmFsT3V0cHV0cyA9IGltcGxpY2l0T3V0cHV0cy5maWx0ZXIoKG8pID0+IG8uc2NyaXB0SWQgPT09IHVuZGVmaW5lZCk7XG4gIHJldHVybiB7XG4gICAgb3V0cHV0czogdG9CYXNlT3V0cHV0cyhvdXRwdXRzLCBhZGRyZXNzQ29kZWMpLFxuICAgIGNoYW5nZU91dHB1dHM6IHRvQmFzZU91dHB1dHMoY2hhbmdlT3V0cHV0cywgYWRkcmVzc0NvZGVjKSxcbiAgICBleHBsaWNpdEV4dGVybmFsT3V0cHV0czogdG9CYXNlT3V0cHV0cyhleHBsaWNpdEV4dGVybmFsT3V0cHV0cywgYWRkcmVzc0NvZGVjKSxcbiAgICBleHBsaWNpdEV4dGVybmFsU3BlbmRBbW91bnQ6IHN1bVZhbHVlcyhleHBsaWNpdEV4dGVybmFsT3V0cHV0cyksXG4gICAgaW1wbGljaXRFeHRlcm5hbE91dHB1dHM6IHRvQmFzZU91dHB1dHMoaW1wbGljaXRFeHRlcm5hbE91dHB1dHMsIGFkZHJlc3NDb2RlYyksXG4gICAgaW1wbGljaXRFeHRlcm5hbFNwZW5kQW1vdW50OiBzdW1WYWx1ZXMoaW1wbGljaXRFeHRlcm5hbE91dHB1dHMpLFxuICAgIG1pc3NpbmdPdXRwdXRzOiB0b0Jhc2VPdXRwdXRzKG1pc3NpbmdPdXRwdXRzLCBhZGRyZXNzQ29kZWMpLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9CYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzRnJvbVBzYnQoXG4gIHBzYnQ6IFBzYnQgfCBVaW50OEFycmF5LFxuICBkZXNjcmlwdG9yTWFwOiBkZXNjcmlwdG9yV2FsbGV0LkRlc2NyaXB0b3JNYXAsXG4gIHJlY2lwaWVudHM6IElUcmFuc2FjdGlvblJlY2lwaWVudFtdLFxuICBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlY1xuKTogUGFyc2VkT3V0cHV0c0JpZ0ludCB7XG4gIGNvbnN0IHdhc21Qc2J0ID0gcHNidCBpbnN0YW5jZW9mIFBzYnQgPyBwc2J0IDogUHNidC5kZXNlcmlhbGl6ZShwc2J0KTtcbiAgcmV0dXJuIHRvQmFzZVBhcnNlZFRyYW5zYWN0aW9uT3V0cHV0cyhcbiAgICBwYXJzZU91dHB1dHNXaXRoUHNidChcbiAgICAgIHdhc21Qc2J0LFxuICAgICAgZGVzY3JpcHRvck1hcCxcbiAgICAgIHJlY2lwaWVudHMubWFwKChyKSA9PiB0b1JlY2lwaWVudE91dHB1dChyLCBhZGRyZXNzQ29kZWMpKSxcbiAgICAgIGFkZHJlc3NDb2RlY1xuICAgICksXG4gICAgYWRkcmVzc0NvZGVjXG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIFBhcnNlZERlc2NyaXB0b3JUcmFuc2FjdGlvbjxUQW1vdW50IGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PiA9IEJhc2VQYXJzZWRUcmFuc2FjdGlvbjxcbiAgVEFtb3VudCxcbiAgQmFzZU91dHB1dDxUQW1vdW50IHwgJ21heCc+XG4+O1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2UoXG4gIGNvaW46IEFic3RyYWN0VXR4b0NvaW4sXG4gIHdhbGxldDogSURlc2NyaXB0b3JXYWxsZXQsXG4gIHBhcmFtczogUGFyc2VUcmFuc2FjdGlvbk9wdGlvbnM8bnVtYmVyIHwgYmlnaW50PixcbiAgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWMgPSBuZXcgQWRkcmVzc0NvZGVjKGNvaW4ubmFtZSlcbik6IFBhcnNlZERlc2NyaXB0b3JUcmFuc2FjdGlvbjxiaWdpbnQ+IHtcbiAgaWYgKHBhcmFtcy50eFBhcmFtcy5hbGxvd0V4dGVybmFsQ2hhbmdlQWRkcmVzcykge1xuICAgIHRocm93IG5ldyBFcnJvcignYWxsb3dFeHRlcm5hbENoYW5nZUFkZHJlc3MgaXMgbm90IHN1cHBvcnRlZCBmb3IgZGVzY3JpcHRvciB3YWxsZXRzJyk7XG4gIH1cbiAgaWYgKHBhcmFtcy50eFBhcmFtcy5jaGFuZ2VBZGRyZXNzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjaGFuZ2VBZGRyZXNzIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGRlc2NyaXB0b3Igd2FsbGV0cycpO1xuICB9XG4gIGNvbnN0IGtleWNoYWlucyA9IHBhcmFtcy52ZXJpZmljYXRpb24/LmtleWNoYWlucztcbiAgaWYgKCFrZXljaGFpbnMgfHwgIVV0eG9OYW1lZEtleWNoYWlucy5pcyhrZXljaGFpbnMpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdrZXljaGFpbiBpcyByZXF1aXJlZCBmb3IgZGVzY3JpcHRvciB3YWxsZXRzJyk7XG4gIH1cbiAgY29uc3QgeyByZWNpcGllbnRzIH0gPSBwYXJhbXMudHhQYXJhbXM7XG4gIGlmICghcmVjaXBpZW50cykge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVjaXBpZW50cyBpcyByZXF1aXJlZCcpO1xuICB9XG4gIGNvbnN0IHdhc21Qc2J0ID0gZGVjb2RlRGVzY3JpcHRvclBzYnQocGFyYW1zLnR4UHJlYnVpbGQpO1xuICBjb25zdCB3YWxsZXRLZXlzID0gdG9CaXAzMlRyaXBsZShrZXljaGFpbnMpO1xuICBjb25zdCBkZXNjcmlwdG9yTWFwID0gZ2V0RGVzY3JpcHRvck1hcEZyb21XYWxsZXQod2FsbGV0LCB3YWxsZXRLZXlzLCBnZXRQb2xpY3lGb3JFbnYocGFyYW1zLndhbGxldC5iaXRnby5lbnYpKTtcbiAgcmV0dXJuIHtcbiAgICAuLi50b0Jhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHNGcm9tUHNidCh3YXNtUHNidCwgZGVzY3JpcHRvck1hcCwgcmVjaXBpZW50cywgYWRkcmVzc0NvZGVjKSxcbiAgICBrZXljaGFpbnMsXG4gICAga2V5U2lnbmF0dXJlczogZ2V0S2V5U2lnbmF0dXJlcyh3YWxsZXQpID8/IHt9LFxuICAgIGN1c3RvbUNoYW5nZTogdW5kZWZpbmVkLFxuICAgIG5lZWRzQ3VzdG9tQ2hhbmdlS2V5U2lnbmF0dXJlVmVyaWZpY2F0aW9uOiBmYWxzZSxcbiAgfTtcbn1cbiJdfQ==
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vZGVzY3JpcHRvci9wYXJzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUcvRSxPQUFPLEVBQUUsNkJBQTZCLEVBQWdDLE1BQU0scUJBQXFCLENBQUM7QUFDbEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpELFNBQVMsU0FBUyxDQUFDLEdBQXdCO0lBQ3pDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ25ELENBQUM7QUFRRCxTQUFTLGlCQUFpQixDQUFDLFNBQWdDLEVBQUUsWUFBMEI7SUFDckYsT0FBTztRQUNMLE9BQU8sRUFBRSxTQUFTLENBQUMsT0FBTztRQUMxQixLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFDcEUsTUFBTSxFQUFFLFlBQVksQ0FBQyxpQ0FBaUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQ3pFLFFBQVEsRUFBRSxTQUFTLEVBQUUsa0NBQWtDO0tBQ3hELENBQUM7QUFDSixDQUFDO0FBUUQsU0FBUyxvQkFBb0IsQ0FDM0IsSUFBVSxFQUNWLGFBQTZDLEVBQzdDLGdCQUFtQyxFQUNuQyxZQUEwQjtJQUUxQixNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEYsTUFBTSxPQUFPLEdBQW1CLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlELEdBQUcsTUFBTTtRQUNULE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7S0FDbkMsQ0FBQyxDQUFDLENBQUM7SUFDSixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sV0FBVyxHQUFHLDZCQUE2QixDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzdFLE9BQU87UUFDTCxPQUFPO1FBQ1AsYUFBYTtRQUNiLEdBQUcsV0FBVztLQUNmLENBQUM7QUFDSixDQUFDO0FBSUQsU0FBUyxhQUFhLENBQ3BCLE9BQTJDLEVBQzNDLFlBQTBCO0lBRTFCLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FDaEIsQ0FBQyxDQUFDLEVBQThCLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sRUFBRSxZQUFZLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN2RCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDbkQsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLEtBQUssU0FBUztLQUNuQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFJRCxTQUFTLDhCQUE4QixDQUNyQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQWlCLEVBQzNGLFlBQTBCO0lBRTFCLE1BQU0sdUJBQXVCLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQztJQUN4RixNQUFNLHVCQUF1QixHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUM7SUFDeEYsT0FBTztRQUNMLE9BQU8sRUFBRSxhQUFhLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQztRQUM3QyxhQUFhLEVBQUUsYUFBYSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUM7UUFDekQsdUJBQXVCLEVBQUUsYUFBYSxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQztRQUM3RSwyQkFBMkIsRUFBRSxTQUFTLENBQUMsdUJBQXVCLENBQUM7UUFDL0QsdUJBQXVCLEVBQUUsYUFBYSxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQztRQUM3RSwyQkFBMkIsRUFBRSxTQUFTLENBQUMsdUJBQXVCLENBQUM7UUFDL0QsY0FBYyxFQUFFLGFBQWEsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDO0tBQzVELENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHNDQUFzQyxDQUNwRCxJQUF1QixFQUN2QixhQUE2QyxFQUM3QyxVQUFtQyxFQUNuQyxZQUEwQjtJQUUxQixNQUFNLFFBQVEsR0FBRyxJQUFJLFlBQVksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEUsT0FBTyw4QkFBOEIsQ0FDbkMsb0JBQW9CLENBQ2xCLFFBQVEsRUFDUixhQUFhLEVBQ2IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQ3pELFlBQVksQ0FDYixFQUNELFlBQVksQ0FDYixDQUFDO0FBQ0osQ0FBQztBQU9ELE1BQU0sVUFBVSxLQUFLLENBQ25CLElBQXNCLEVBQ3RCLE1BQXlCLEVBQ3pCLE1BQWdELEVBQ2hELGVBQTZCLElBQUksQ0FBQyxZQUFZO0lBRTlDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQy9DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBQ0QsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBQ0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7SUFDakQsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1FBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBQ0QsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7SUFDdkMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsTUFBTSxRQUFRLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pELE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1QyxNQUFNLGFBQWEsR0FBRywwQkFBMEIsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9HLE9BQU87UUFDTCxHQUFHLHNDQUFzQyxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFlBQVksQ0FBQztRQUM1RixTQUFTO1FBQ1QsYUFBYSxFQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUU7UUFDN0MsWUFBWSxFQUFFLFNBQVM7UUFDdkIseUNBQXlDLEVBQUUsS0FBSztLQUNqRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUcmFuc2FjdGlvblJlY2lwaWVudCB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBQc2J0LCBkZXNjcmlwdG9yV2FsbGV0IH0gZnJvbSAnQGJpdGdvL3dhc20tdXR4byc7XG5cbmltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4sIFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBCYXNlT3V0cHV0LCBCYXNlUGFyc2VkVHJhbnNhY3Rpb24sIEJhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRLZXlTaWduYXR1cmVzLCB0b0JpcDMyVHJpcGxlLCBVdHhvTmFtZWRLZXljaGFpbnMgfSBmcm9tICcuLi8uLi9rZXljaGFpbnMnO1xuaW1wb3J0IHsgZ2V0RGVzY3JpcHRvck1hcEZyb21XYWxsZXQsIGdldFBvbGljeUZvckVudiB9IGZyb20gJy4uLy4uL2Rlc2NyaXB0b3InO1xuaW1wb3J0IHsgSURlc2NyaXB0b3JXYWxsZXQgfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9yL2Rlc2NyaXB0b3JXYWxsZXQnO1xuaW1wb3J0IHsgQWRkcmVzc0NvZGVjIH0gZnJvbSAnLi4vcmVjaXBpZW50JztcbmltcG9ydCB7IG91dHB1dERpZmZlcmVuY2VzV2l0aEV4cGVjdGVkLCBPdXRwdXREaWZmZXJlbmNlV2l0aEV4cGVjdGVkIH0gZnJvbSAnLi4vb3V0cHV0RGlmZmVyZW5jZSc7XG5pbXBvcnQgeyBkZWNvZGVEZXNjcmlwdG9yUHNidCB9IGZyb20gJy4uL2RlY29kZSc7XG5cbmZ1bmN0aW9uIHN1bVZhbHVlcyhhcnI6IHsgdmFsdWU6IGJpZ2ludCB9W10pOiBiaWdpbnQge1xuICByZXR1cm4gYXJyLnJlZHVjZSgoc3VtLCBlKSA9PiBzdW0gKyBlLnZhbHVlLCAwbik7XG59XG5cbnR5cGUgUGFyc2VkT3V0cHV0ID0gT21pdDxkZXNjcmlwdG9yV2FsbGV0LlBhcnNlZE91dHB1dCwgJ3NjcmlwdCc+ICYgeyBzY3JpcHQ6IEJ1ZmZlciB9O1xuXG5leHBvcnQgdHlwZSBSZWNpcGllbnRPdXRwdXQgPSBPbWl0PFBhcnNlZE91dHB1dCwgJ3ZhbHVlJz4gJiB7XG4gIHZhbHVlOiBiaWdpbnQgfCAnbWF4Jztcbn07XG5cbmZ1bmN0aW9uIHRvUmVjaXBpZW50T3V0cHV0KHJlY2lwaWVudDogSVRyYW5zYWN0aW9uUmVjaXBpZW50LCBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlYyk6IFJlY2lwaWVudE91dHB1dCB7XG4gIHJldHVybiB7XG4gICAgYWRkcmVzczogcmVjaXBpZW50LmFkZHJlc3MsXG4gICAgdmFsdWU6IHJlY2lwaWVudC5hbW91bnQgPT09ICdtYXgnID8gJ21heCcgOiBCaWdJbnQocmVjaXBpZW50LmFtb3VudCksXG4gICAgc2NyaXB0OiBhZGRyZXNzQ29kZWMuZnJvbUV4dGVuZGVkQWRkcmVzc0Zvcm1hdFRvU2NyaXB0KHJlY2lwaWVudC5hZGRyZXNzKSxcbiAgICBzY3JpcHRJZDogdW5kZWZpbmVkLCAvLyBSZWNpcGllbnRzIGFyZSBleHRlcm5hbCBvdXRwdXRzXG4gIH07XG59XG5cbi8vIFRPRE8oQlRDLTE2OTcpOiBhbGxvdyBvdXRwdXRzIHdpdGggYHZhbHVlOiAnbWF4J2AgaGVyZVxudHlwZSBQYXJzZWRPdXRwdXRzID0gT3V0cHV0RGlmZmVyZW5jZVdpdGhFeHBlY3RlZDxQYXJzZWRPdXRwdXQsIFJlY2lwaWVudE91dHB1dD4gJiB7XG4gIG91dHB1dHM6IFBhcnNlZE91dHB1dFtdO1xuICBjaGFuZ2VPdXRwdXRzOiBQYXJzZWRPdXRwdXRbXTtcbn07XG5cbmZ1bmN0aW9uIHBhcnNlT3V0cHV0c1dpdGhQc2J0KFxuICBwc2J0OiBQc2J0LFxuICBkZXNjcmlwdG9yTWFwOiBkZXNjcmlwdG9yV2FsbGV0LkRlc2NyaXB0b3JNYXAsXG4gIHJlY2lwaWVudE91dHB1dHM6IFJlY2lwaWVudE91dHB1dFtdLFxuICBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlY1xuKTogUGFyc2VkT3V0cHV0cyB7XG4gIGNvbnN0IHBhcnNlZCA9IGRlc2NyaXB0b3JXYWxsZXQucGFyc2UocHNidCwgZGVzY3JpcHRvck1hcCwgYWRkcmVzc0NvZGVjLndhc21OYW1lKTtcbiAgY29uc3Qgb3V0cHV0czogUGFyc2VkT3V0cHV0W10gPSBwYXJzZWQub3V0cHV0cy5tYXAoKG91dHB1dCkgPT4gKHtcbiAgICAuLi5vdXRwdXQsXG4gICAgc2NyaXB0OiBCdWZmZXIuZnJvbShvdXRwdXQuc2NyaXB0KSxcbiAgfSkpO1xuICBjb25zdCBjaGFuZ2VPdXRwdXRzID0gb3V0cHV0cy5maWx0ZXIoKG8pID0+IG8uc2NyaXB0SWQgIT09IHVuZGVmaW5lZCk7XG4gIGNvbnN0IG91dHB1dERpZmZzID0gb3V0cHV0RGlmZmVyZW5jZXNXaXRoRXhwZWN0ZWQob3V0cHV0cywgcmVjaXBpZW50T3V0cHV0cyk7XG4gIHJldHVybiB7XG4gICAgb3V0cHV0cyxcbiAgICBjaGFuZ2VPdXRwdXRzLFxuICAgIC4uLm91dHB1dERpZmZzLFxuICB9O1xufVxuXG5mdW5jdGlvbiB0b0Jhc2VPdXRwdXRzKG91dHB1dHM6IFBhcnNlZE91dHB1dFtdLCBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlYyk6IEJhc2VPdXRwdXQ8YmlnaW50PltdO1xuZnVuY3Rpb24gdG9CYXNlT3V0cHV0cyhvdXRwdXRzOiBSZWNpcGllbnRPdXRwdXRbXSwgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWMpOiBCYXNlT3V0cHV0PGJpZ2ludCB8ICdtYXgnPltdO1xuZnVuY3Rpb24gdG9CYXNlT3V0cHV0cyhcbiAgb3V0cHV0czogKFBhcnNlZE91dHB1dCB8IFJlY2lwaWVudE91dHB1dClbXSxcbiAgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWNcbik6IEJhc2VPdXRwdXQ8YmlnaW50IHwgJ21heCc+W10ge1xuICByZXR1cm4gb3V0cHV0cy5tYXAoXG4gICAgKG8pOiBCYXNlT3V0cHV0PGJpZ2ludCB8ICdtYXgnPiA9PiAoe1xuICAgICAgYWRkcmVzczogYWRkcmVzc0NvZGVjLnRvRXh0ZW5kZWRBZGRyZXNzRm9ybWF0KG8uc2NyaXB0KSxcbiAgICAgIGFtb3VudDogby52YWx1ZSA9PT0gJ21heCcgPyAnbWF4JyA6IEJpZ0ludChvLnZhbHVlKSxcbiAgICAgIGV4dGVybmFsOiBvLnNjcmlwdElkID09PSB1bmRlZmluZWQsXG4gICAgfSlcbiAgKTtcbn1cblxuZXhwb3J0IHR5cGUgUGFyc2VkT3V0cHV0c0JpZ0ludCA9IEJhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHM8YmlnaW50LCBCYXNlT3V0cHV0PGJpZ2ludCB8ICdtYXgnPj47XG5cbmZ1bmN0aW9uIHRvQmFzZVBhcnNlZFRyYW5zYWN0aW9uT3V0cHV0cyhcbiAgeyBvdXRwdXRzLCBjaGFuZ2VPdXRwdXRzLCBleHBsaWNpdE91dHB1dHMsIGltcGxpY2l0T3V0cHV0cywgbWlzc2luZ091dHB1dHMgfTogUGFyc2VkT3V0cHV0cyxcbiAgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWNcbik6IFBhcnNlZE91dHB1dHNCaWdJbnQge1xuICBjb25zdCBleHBsaWNpdEV4dGVybmFsT3V0cHV0cyA9IGV4cGxpY2l0T3V0cHV0cy5maWx0ZXIoKG8pID0+IG8uc2NyaXB0SWQgPT09IHVuZGVmaW5lZCk7XG4gIGNvbnN0IGltcGxpY2l0RXh0ZXJuYWxPdXRwdXRzID0gaW1wbGljaXRPdXRwdXRzLmZpbHRlcigobykgPT4gby5zY3JpcHRJZCA9PT0gdW5kZWZpbmVkKTtcbiAgcmV0dXJuIHtcbiAgICBvdXRwdXRzOiB0b0Jhc2VPdXRwdXRzKG91dHB1dHMsIGFkZHJlc3NDb2RlYyksXG4gICAgY2hhbmdlT3V0cHV0czogdG9CYXNlT3V0cHV0cyhjaGFuZ2VPdXRwdXRzLCBhZGRyZXNzQ29kZWMpLFxuICAgIGV4cGxpY2l0RXh0ZXJuYWxPdXRwdXRzOiB0b0Jhc2VPdXRwdXRzKGV4cGxpY2l0RXh0ZXJuYWxPdXRwdXRzLCBhZGRyZXNzQ29kZWMpLFxuICAgIGV4cGxpY2l0RXh0ZXJuYWxTcGVuZEFtb3VudDogc3VtVmFsdWVzKGV4cGxpY2l0RXh0ZXJuYWxPdXRwdXRzKSxcbiAgICBpbXBsaWNpdEV4dGVybmFsT3V0cHV0czogdG9CYXNlT3V0cHV0cyhpbXBsaWNpdEV4dGVybmFsT3V0cHV0cywgYWRkcmVzc0NvZGVjKSxcbiAgICBpbXBsaWNpdEV4dGVybmFsU3BlbmRBbW91bnQ6IHN1bVZhbHVlcyhpbXBsaWNpdEV4dGVybmFsT3V0cHV0cyksXG4gICAgbWlzc2luZ091dHB1dHM6IHRvQmFzZU91dHB1dHMobWlzc2luZ091dHB1dHMsIGFkZHJlc3NDb2RlYyksXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0Jhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHNGcm9tUHNidChcbiAgcHNidDogUHNidCB8IFVpbnQ4QXJyYXksXG4gIGRlc2NyaXB0b3JNYXA6IGRlc2NyaXB0b3JXYWxsZXQuRGVzY3JpcHRvck1hcCxcbiAgcmVjaXBpZW50czogSVRyYW5zYWN0aW9uUmVjaXBpZW50W10sXG4gIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjXG4pOiBQYXJzZWRPdXRwdXRzQmlnSW50IHtcbiAgY29uc3Qgd2FzbVBzYnQgPSBwc2J0IGluc3RhbmNlb2YgUHNidCA/IHBzYnQgOiBQc2J0LmRlc2VyaWFsaXplKHBzYnQpO1xuICByZXR1cm4gdG9CYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzKFxuICAgIHBhcnNlT3V0cHV0c1dpdGhQc2J0KFxuICAgICAgd2FzbVBzYnQsXG4gICAgICBkZXNjcmlwdG9yTWFwLFxuICAgICAgcmVjaXBpZW50cy5tYXAoKHIpID0+IHRvUmVjaXBpZW50T3V0cHV0KHIsIGFkZHJlc3NDb2RlYykpLFxuICAgICAgYWRkcmVzc0NvZGVjXG4gICAgKSxcbiAgICBhZGRyZXNzQ29kZWNcbiAgKTtcbn1cblxuZXhwb3J0IHR5cGUgUGFyc2VkRGVzY3JpcHRvclRyYW5zYWN0aW9uPFRBbW91bnQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+ID0gQmFzZVBhcnNlZFRyYW5zYWN0aW9uPFxuICBUQW1vdW50LFxuICBCYXNlT3V0cHV0PFRBbW91bnQgfCAnbWF4Jz5cbj47XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZShcbiAgY29pbjogQWJzdHJhY3RVdHhvQ29pbixcbiAgd2FsbGV0OiBJRGVzY3JpcHRvcldhbGxldCxcbiAgcGFyYW1zOiBQYXJzZVRyYW5zYWN0aW9uT3B0aW9uczxudW1iZXIgfCBiaWdpbnQ+LFxuICBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlYyA9IGNvaW4uYWRkcmVzc0NvZGVjXG4pOiBQYXJzZWREZXNjcmlwdG9yVHJhbnNhY3Rpb248YmlnaW50PiB7XG4gIGlmIChwYXJhbXMudHhQYXJhbXMuYWxsb3dFeHRlcm5hbENoYW5nZUFkZHJlc3MpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2FsbG93RXh0ZXJuYWxDaGFuZ2VBZGRyZXNzIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGRlc2NyaXB0b3Igd2FsbGV0cycpO1xuICB9XG4gIGlmIChwYXJhbXMudHhQYXJhbXMuY2hhbmdlQWRkcmVzcykge1xuICAgIHRocm93IG5ldyBFcnJvcignY2hhbmdlQWRkcmVzcyBpcyBub3Qgc3VwcG9ydGVkIGZvciBkZXNjcmlwdG9yIHdhbGxldHMnKTtcbiAgfVxuICBjb25zdCBrZXljaGFpbnMgPSBwYXJhbXMudmVyaWZpY2F0aW9uPy5rZXljaGFpbnM7XG4gIGlmICgha2V5Y2hhaW5zIHx8ICFVdHhvTmFtZWRLZXljaGFpbnMuaXMoa2V5Y2hhaW5zKSkge1xuICAgIHRocm93IG5ldyBFcnJvcigna2V5Y2hhaW4gaXMgcmVxdWlyZWQgZm9yIGRlc2NyaXB0b3Igd2FsbGV0cycpO1xuICB9XG4gIGNvbnN0IHsgcmVjaXBpZW50cyB9ID0gcGFyYW1zLnR4UGFyYW1zO1xuICBpZiAoIXJlY2lwaWVudHMpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlY2lwaWVudHMgaXMgcmVxdWlyZWQnKTtcbiAgfVxuICBjb25zdCB3YXNtUHNidCA9IGRlY29kZURlc2NyaXB0b3JQc2J0KHBhcmFtcy50eFByZWJ1aWxkKTtcbiAgY29uc3Qgd2FsbGV0S2V5cyA9IHRvQmlwMzJUcmlwbGUoa2V5Y2hhaW5zKTtcbiAgY29uc3QgZGVzY3JpcHRvck1hcCA9IGdldERlc2NyaXB0b3JNYXBGcm9tV2FsbGV0KHdhbGxldCwgd2FsbGV0S2V5cywgZ2V0UG9saWN5Rm9yRW52KHBhcmFtcy53YWxsZXQuYml0Z28uZW52KSk7XG4gIHJldHVybiB7XG4gICAgLi4udG9CYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzRnJvbVBzYnQod2FzbVBzYnQsIGRlc2NyaXB0b3JNYXAsIHJlY2lwaWVudHMsIGFkZHJlc3NDb2RlYyksXG4gICAga2V5Y2hhaW5zLFxuICAgIGtleVNpZ25hdHVyZXM6IGdldEtleVNpZ25hdHVyZXMod2FsbGV0KSA/PyB7fSxcbiAgICBjdXN0b21DaGFuZ2U6IHVuZGVmaW5lZCxcbiAgICBuZWVkc0N1c3RvbUNoYW5nZUtleVNpZ25hdHVyZVZlcmlmaWNhdGlvbjogZmFsc2UsXG4gIH07XG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseToAmountType.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/parseToAmountType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAS,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAE7D,KAAK,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAYjG;AAED,KAAK,iBAAiB,GAAG;IACvB,oBAAoB,EAAE,UAAU,CAAC;IACjC,mBAAmB,EAAE,UAAU,CAAC;CACjC,CAAC;AAyCF,wBAAgB,oCAAoC,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,EAC3F,GAAG,EAAE,2BAA2B,CAAC,MAAM,CAAC,EACxC,MAAM,EAAE,iBAAiB,GACxB,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAIzC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/D,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,uBAAuB,CAAC,OAAO,CAAC,EACxC,YAAY,GAAE,
|
|
1
|
+
{"version":3,"file":"parseToAmountType.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/parseToAmountType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAS,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAE7D,KAAK,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAYjG;AAED,KAAK,iBAAiB,GAAG;IACvB,oBAAoB,EAAE,UAAU,CAAC;IACjC,mBAAmB,EAAE,UAAU,CAAC;CACjC,CAAC;AAyCF,wBAAgB,oCAAoC,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,EAC3F,GAAG,EAAE,2BAA2B,CAAC,MAAM,CAAC,EACxC,MAAM,EAAE,iBAAiB,GACxB,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAIzC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/D,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,uBAAuB,CAAC,OAAO,CAAC,EACxC,YAAY,GAAE,YAAgC,GAC7C,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAKpD"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { AddressCodec } from '../recipient';
|
|
2
1
|
import { parse } from './parse';
|
|
3
2
|
export function toAmountType(v, t) {
|
|
4
3
|
if (v === 'max') {
|
|
@@ -47,10 +46,10 @@ function entryToTNumber(k, v, params) {
|
|
|
47
46
|
export function parsedDescriptorTransactionToTNumber(obj, params) {
|
|
48
47
|
return Object.fromEntries(Object.entries(obj).map(([k, v]) => entryToTNumber(k, v, params)));
|
|
49
48
|
}
|
|
50
|
-
export function parseToAmountType(coin, wallet, params, addressCodec =
|
|
49
|
+
export function parseToAmountType(coin, wallet, params, addressCodec = coin.addressCodec) {
|
|
51
50
|
return parsedDescriptorTransactionToTNumber(parse(coin, wallet, params, addressCodec), {
|
|
52
51
|
amountTypeAggregate: coin.amountType,
|
|
53
52
|
amountTypeBaseOutput: 'string',
|
|
54
53
|
});
|
|
55
54
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VUb0Ftb3VudFR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vZGVzY3JpcHRvci9wYXJzZVRvQW1vdW50VHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsS0FBSyxFQUErQixNQUFNLFNBQVMsQ0FBQztBQUk3RCxNQUFNLFVBQVUsWUFBWSxDQUFDLENBQTJCLEVBQUUsQ0FBYTtJQUNyRSxJQUFJLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQztRQUNoQixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFDRCxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ1YsS0FBSyxRQUFRO1lBQ1gsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsS0FBSyxRQUFRO1lBQ1gsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsS0FBSyxRQUFRO1lBQ1gsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckIsQ0FBQztBQUNILENBQUM7QUFPRCxTQUFTLG1CQUFtQixDQUMxQixNQUFrQyxFQUNsQyxVQUFzQjtJQUV0QixPQUFPO1FBQ0wsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1FBQ3ZCLE1BQU0sRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQVk7UUFDMUQsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO0tBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxjQUFjLENBR3JCLENBQUksRUFBRSxDQUFJLEVBQUUsTUFBeUI7SUFDckMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNWLEtBQUssU0FBUyxDQUFDO1FBQ2YsS0FBSyxlQUFlLENBQUM7UUFDckIsS0FBSyx5QkFBeUIsQ0FBQztRQUMvQixLQUFLLHlCQUF5QixDQUFDO1FBQy9CLEtBQUssZ0JBQWdCO1lBQ25CLElBQUksQ0FBQyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUNwQixPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQU0sQ0FBQyxDQUFDO1lBQ3JGLENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEMsS0FBSyw2QkFBNkIsQ0FBQztRQUNuQyxLQUFLLDZCQUE2QjtZQUNoQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDckMsQ0FBQztZQUNELE9BQU8sQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsbUJBQW1CLENBQU0sQ0FBQyxDQUFDO1FBQy9EO1lBQ0UsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxvQ0FBb0MsQ0FDbEQsR0FBd0MsRUFDeEMsTUFBeUI7SUFFekIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBOEMsRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FDcEUsQ0FBQztBQUMvQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixJQUFzQixFQUN0QixNQUF5QixFQUN6QixNQUF3QyxFQUN4QyxlQUE2QixJQUFJLENBQUMsWUFBWTtJQUU5QyxPQUFPLG9DQUFvQyxDQUE4QixLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUU7UUFDbEgsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLFVBQVU7UUFDcEMsb0JBQW9CLEVBQUUsUUFBUTtLQUMvQixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiwgUGFyc2VUcmFuc2FjdGlvbk9wdGlvbnMgfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcbmltcG9ydCB7IEJhc2VPdXRwdXQsIEJhc2VQYXJzZWRUcmFuc2FjdGlvbiB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IElEZXNjcmlwdG9yV2FsbGV0IH0gZnJvbSAnLi4vLi4vZGVzY3JpcHRvci9kZXNjcmlwdG9yV2FsbGV0JztcbmltcG9ydCB7IEFkZHJlc3NDb2RlYyB9IGZyb20gJy4uL3JlY2lwaWVudCc7XG5cbmltcG9ydCB7IHBhcnNlLCBQYXJzZWREZXNjcmlwdG9yVHJhbnNhY3Rpb24gfSBmcm9tICcuL3BhcnNlJztcblxudHlwZSBBbW91bnRUeXBlID0gJ251bWJlcicgfCAnYmlnaW50JyB8ICdzdHJpbmcnO1xuXG5leHBvcnQgZnVuY3Rpb24gdG9BbW91bnRUeXBlKHY6IG51bWJlciB8IGJpZ2ludCB8IHN0cmluZywgdDogQW1vdW50VHlwZSk6IG51bWJlciB8IGJpZ2ludCB8IHN0cmluZyB7XG4gIGlmICh2ID09PSAnbWF4Jykge1xuICAgIHJldHVybiB2O1xuICB9XG4gIHN3aXRjaCAodCkge1xuICAgIGNhc2UgJ251bWJlcic6XG4gICAgICByZXR1cm4gTnVtYmVyKHYpO1xuICAgIGNhc2UgJ2JpZ2ludCc6XG4gICAgICByZXR1cm4gQmlnSW50KHYpO1xuICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICByZXR1cm4gU3RyaW5nKHYpO1xuICB9XG59XG5cbnR5cGUgQW1vdW50VHlwZU9wdGlvbnMgPSB7XG4gIGFtb3VudFR5cGVCYXNlT3V0cHV0OiBBbW91bnRUeXBlO1xuICBhbW91bnRUeXBlQWdncmVnYXRlOiBBbW91bnRUeXBlO1xufTtcblxuZnVuY3Rpb24gYmFzZU91dHB1dFRvVE51bWJlcjxUQW1vdW50IGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgb3V0cHV0OiBCYXNlT3V0cHV0PGJpZ2ludCB8ICdtYXgnPixcbiAgYW1vdW50VHlwZTogQW1vdW50VHlwZVxuKTogQmFzZU91dHB1dDxUQW1vdW50PiB7XG4gIHJldHVybiB7XG4gICAgYWRkcmVzczogb3V0cHV0LmFkZHJlc3MsXG4gICAgYW1vdW50OiB0b0Ftb3VudFR5cGUob3V0cHV0LmFtb3VudCwgYW1vdW50VHlwZSkgYXMgVEFtb3VudCxcbiAgICBleHRlcm5hbDogb3V0cHV0LmV4dGVybmFsLFxuICB9O1xufVxuXG5mdW5jdGlvbiBlbnRyeVRvVE51bWJlcjxcbiAgSyBleHRlbmRzIGtleW9mIFBhcnNlZERlc2NyaXB0b3JUcmFuc2FjdGlvbjxiaWdpbnQ+LFxuICBWIGV4dGVuZHMgUGFyc2VkRGVzY3JpcHRvclRyYW5zYWN0aW9uPGJpZ2ludD5bS11cbj4oazogSywgdjogViwgcGFyYW1zOiBBbW91bnRUeXBlT3B0aW9ucyk6IFtLLCBWXSB7XG4gIHN3aXRjaCAoaykge1xuICAgIGNhc2UgJ291dHB1dHMnOlxuICAgIGNhc2UgJ2NoYW5nZU91dHB1dHMnOlxuICAgIGNhc2UgJ2V4cGxpY2l0RXh0ZXJuYWxPdXRwdXRzJzpcbiAgICBjYXNlICdpbXBsaWNpdEV4dGVybmFsT3V0cHV0cyc6XG4gICAgY2FzZSAnbWlzc2luZ091dHB1dHMnOlxuICAgICAgaWYgKHYgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gW2ssIHZdO1xuICAgICAgfVxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHtcbiAgICAgICAgcmV0dXJuIFtrLCB2Lm1hcCgobykgPT4gYmFzZU91dHB1dFRvVE51bWJlcihvLCBwYXJhbXMuYW1vdW50VHlwZUJhc2VPdXRwdXQpKSBhcyBWXTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYXJyYXknKTtcbiAgICBjYXNlICdleHBsaWNpdEV4dGVybmFsU3BlbmRBbW91bnQnOlxuICAgIGNhc2UgJ2ltcGxpY2l0RXh0ZXJuYWxTcGVuZEFtb3VudCc6XG4gICAgICBpZiAodHlwZW9mIHYgIT09ICdiaWdpbnQnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYmlnaW50Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gW2ssIHRvQW1vdW50VHlwZSh2LCBwYXJhbXMuYW1vdW50VHlwZUFnZ3JlZ2F0ZSkgYXMgVl07XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBbaywgdl07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlZERlc2NyaXB0b3JUcmFuc2FjdGlvblRvVE51bWJlcjxUQW1vdW50IGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50LCBUT3V0cHV0PihcbiAgb2JqOiBQYXJzZWREZXNjcmlwdG9yVHJhbnNhY3Rpb248YmlnaW50PixcbiAgcGFyYW1zOiBBbW91bnRUeXBlT3B0aW9uc1xuKTogQmFzZVBhcnNlZFRyYW5zYWN0aW9uPFRBbW91bnQsIFRPdXRwdXQ+IHtcbiAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICBPYmplY3QuZW50cmllcyhvYmopLm1hcCgoW2ssIHZdKSA9PiBlbnRyeVRvVE51bWJlcihrIGFzIGtleW9mIFBhcnNlZERlc2NyaXB0b3JUcmFuc2FjdGlvbjxiaWdpbnQ+LCB2LCBwYXJhbXMpKVxuICApIGFzIEJhc2VQYXJzZWRUcmFuc2FjdGlvbjxUQW1vdW50LCBUT3V0cHV0Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlVG9BbW91bnRUeXBlPFRBbW91bnQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICBjb2luOiBBYnN0cmFjdFV0eG9Db2luLFxuICB3YWxsZXQ6IElEZXNjcmlwdG9yV2FsbGV0LFxuICBwYXJhbXM6IFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zPFRBbW91bnQ+LFxuICBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlYyA9IGNvaW4uYWRkcmVzc0NvZGVjXG4pOiBCYXNlUGFyc2VkVHJhbnNhY3Rpb248VEFtb3VudCwgQmFzZU91dHB1dDxzdHJpbmc+PiB7XG4gIHJldHVybiBwYXJzZWREZXNjcmlwdG9yVHJhbnNhY3Rpb25Ub1ROdW1iZXI8VEFtb3VudCwgQmFzZU91dHB1dDxzdHJpbmc+PihwYXJzZShjb2luLCB3YWxsZXQsIHBhcmFtcywgYWRkcmVzc0NvZGVjKSwge1xuICAgIGFtb3VudFR5cGVBZ2dyZWdhdGU6IGNvaW4uYW1vdW50VHlwZSxcbiAgICBhbW91bnRUeXBlQmFzZU91dHB1dDogJ3N0cmluZycsXG4gIH0pO1xufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verifyTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/verifyTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAoC,MAAM,iBAAiB,CAAC;AAC1F,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK5C,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACnC,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;gBAA5C,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;CAGhE;AAED,qBAAa,4BAA6B,SAAQ,eAAe;IAC5C,uBAAuB,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;gBAArD,uBAAuB,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;CAGzE;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IACxC,MAAM,EAAE,eAAe,EAAE;gBAAzB,MAAM,EAAE,eAAe,EAAE;CAG7C;AAED,wBAAgB,8BAA8B,CAC5C,aAAa,EAAE,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,GAC9E,IAAI,CAcN;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,IAAI,GAAG,UAAU,EACvB,WAAW,EAAE,gBAAgB,CAAC,aAAa,EAC3C,UAAU,EAAE,qBAAqB,EAAE,EACnC,YAAY,EAAE,YAAY,GACzB,IAAI,CAEN;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACrE,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,aAAa,EAAE,gBAAgB,CAAC,aAAa,EAC7C,YAAY,GAAE,
|
|
1
|
+
{"version":3,"file":"verifyTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/descriptor/verifyTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAoC,MAAM,iBAAiB,CAAC;AAC1F,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK5C,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACnC,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;gBAA5C,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;CAGhE;AAED,qBAAa,4BAA6B,SAAQ,eAAe;IAC5C,uBAAuB,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;gBAArD,uBAAuB,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE;CAGzE;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IACxC,MAAM,EAAE,eAAe,EAAE;gBAAzB,MAAM,EAAE,eAAe,EAAE;CAG7C;AAED,wBAAgB,8BAA8B,CAC5C,aAAa,EAAE,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,GAC9E,IAAI,CAcN;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,IAAI,GAAG,UAAU,EACvB,WAAW,EAAE,gBAAgB,CAAC,aAAa,EAC3C,UAAU,EAAE,qBAAqB,EAAE,EACnC,YAAY,EAAE,YAAY,GACzB,IAAI,CAEN;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACrE,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,aAAa,EAAE,gBAAgB,CAAC,aAAa,EAC7C,YAAY,GAAE,YAAgC,GAC7C,OAAO,CAAC,OAAO,CAAC,CAiDlB"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { TxIntentMismatchError } from '@bitgo/sdk-core';
|
|
2
|
-
import { AddressCodec } from '../recipient';
|
|
3
2
|
import { decodeDescriptorPsbt } from '../decode';
|
|
4
3
|
import { toBaseParsedTransactionOutputsFromPsbt } from './parse';
|
|
5
4
|
export class ValidationError extends Error {
|
|
@@ -55,7 +54,7 @@ export function assertValidTransaction(psbt, descriptors, recipients, addressCod
|
|
|
55
54
|
* @returns {boolean} True if verification passes
|
|
56
55
|
* @throws {TxIntentMismatchError} if transaction validation fails
|
|
57
56
|
*/
|
|
58
|
-
export async function verifyTransaction(coin, params, descriptorMap, addressCodec =
|
|
57
|
+
export async function verifyTransaction(coin, params, descriptorMap, addressCodec = coin.addressCodec) {
|
|
59
58
|
let psbt;
|
|
60
59
|
try {
|
|
61
60
|
psbt = decodeDescriptorPsbt(params.txPrebuild);
|
|
@@ -78,4 +77,4 @@ export async function verifyTransaction(coin, params, descriptorMap, addressCode
|
|
|
78
77
|
assertExpectedOutputDifference(parsedOutputs);
|
|
79
78
|
return true;
|
|
80
79
|
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5VHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vZGVzY3JpcHRvci92ZXJpZnlUcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXlCLHFCQUFxQixFQUFhLE1BQU0saUJBQWlCLENBQUM7QUFNMUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpELE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVqRSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxLQUFLO0lBQ3hDLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUFDdEQsWUFBbUIsY0FBNEM7UUFDN0QsS0FBSyxDQUFDLDBCQUEwQixjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUR6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBOEI7SUFFL0QsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGVBQWU7SUFDL0QsWUFBbUIsdUJBQXFEO1FBQ3RFLEtBQUssQ0FBQywrQ0FBK0MsdUJBQXVCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUR2RSw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQThCO0lBRXhFLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxlQUFlO0lBQzNELFlBQW1CLE1BQXlCO1FBQzFDLEtBQUssQ0FBQyxxQ0FBcUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFENUMsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7SUFFNUMsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLDhCQUE4QixDQUM1QyxhQUErRTtJQUUvRSxNQUFNLE1BQU0sR0FBc0IsRUFBRSxDQUFDO0lBQ3JD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RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUU5QyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVHJhbnNhY3Rpb25SZWNpcGllbnQsIFR4SW50ZW50TWlzbWF0Y2hFcnJvciwgSUJhc2VDb2luIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB0eXBlIHsgUHNidCwgZGVzY3JpcHRvcldhbGxldCB9IGZyb20gJ0BiaXRnby93YXNtLXV0eG8nO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMgfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcbmltcG9ydCB7IEJhc2VPdXRwdXQsIEJhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBBZGRyZXNzQ29kZWMgfSBmcm9tICcuLi9yZWNpcGllbnQnO1xuaW1wb3J0IHsgZGVjb2RlRGVzY3JpcHRvclBzYnQgfSBmcm9tICcuLi9kZWNvZGUnO1xuXG5pbXBvcnQgeyB0b0Jhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHNGcm9tUHNidCB9IGZyb20gJy4vcGFyc2UnO1xuXG5leHBvcnQgY2xhc3MgVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXJyb3JNaXNzaW5nT3V0cHV0cyBleHRlbmRzIFZhbGlkYXRpb25FcnJvciB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBtaXNzaW5nT3V0cHV0czogQmFzZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz5bXSkge1xuICAgIHN1cGVyKGBtaXNzaW5nIG91dHB1dHMgKGNvdW50PSR7bWlzc2luZ091dHB1dHMubGVuZ3RofSlgKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXJyb3JJbXBsaWNpdEV4dGVybmFsT3V0cHV0cyBleHRlbmRzIFZhbGlkYXRpb25FcnJvciB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpbXBsaWNpdEV4dGVybmFsT3V0cHV0czogQmFzZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz5bXSkge1xuICAgIHN1cGVyKGB1bmV4cGVjdGVkIGltcGxpY2l0IGV4dGVybmFsIG91dHB1dHMgKGNvdW50PSR7aW1wbGljaXRFeHRlcm5hbE91dHB1dHMubGVuZ3RofSlgKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQWdncmVnYXRlVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgVmFsaWRhdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IocHVibGljIGVycm9yczogVmFsaWRhdGlvbkVycm9yW10pIHtcbiAgICBzdXBlcihgYWdncmVnYXRlIHZhbGlkYXRpb24gZXJyb3IgKGNvdW50PSR7ZXJyb3JzLmxlbmd0aH0pYCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEV4cGVjdGVkT3V0cHV0RGlmZmVyZW5jZShcbiAgcGFyc2VkT3V0cHV0czogQmFzZVBhcnNlZFRyYW5zYWN0aW9uT3V0cHV0czxiaWdpbnQsIEJhc2VPdXRwdXQ8YmlnaW50IHwgJ21heCc+PlxuKTogdm9pZCB7XG4gIGNvbnN0IGVycm9yczogVmFsaWRhdGlvbkVycm9yW10gPSBbXTtcbiAgaWYgKHBhcnNlZE91dHB1dHMubWlzc2luZ091dHB1dHMubGVuZ3RoID4gMCkge1xuICAgIGVycm9ycy5wdXNoKG5ldyBFcnJvck1pc3NpbmdPdXRwdXRzKHBhcnNlZE91dHB1dHMubWlzc2luZ091dHB1dHMpKTtcbiAgfVxuICBpZiAocGFyc2VkT3V0cHV0cy5pbXBsaWNpdEV4dGVybmFsT3V0cHV0cy5sZW5ndGggPiAwKSB7XG4gICAgLy8gRklYTUU6IGZvciBwYXlnbyB3ZSBuZWVkIHRvIHJlbGF4IHRoaXMgYSBsaXR0bGUgYml0XG4gICAgZXJyb3JzLnB1c2gobmV3IEVycm9ySW1wbGljaXRFeHRlcm5hbE91dHB1dHMocGFyc2VkT3V0cHV0cy5pbXBsaWNpdEV4dGVybmFsT3V0cHV0cykpO1xuICB9XG4gIGlmIChlcnJvcnMubGVuZ3RoID4gMCkge1xuICAgIC8vIEZJWE1FKEJUQy0xNjg4KTogZW5hYmxlIEVTMjAyMVxuICAgIC8vIHRocm93IG5ldyBBZ2dyZWdhdGVFcnJvcihlcnJvcnMpO1xuICAgIHRocm93IG5ldyBBZ2dyZWdhdGVWYWxpZGF0aW9uRXJyb3IoZXJyb3JzKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0VmFsaWRUcmFuc2FjdGlvbihcbiAgcHNidDogUHNidCB8IFVpbnQ4QXJyYXksXG4gIGRlc2NyaXB0b3JzOiBkZXNjcmlwdG9yV2FsbGV0LkRlc2NyaXB0b3JNYXAsXG4gIHJlY2lwaWVudHM6IElUcmFuc2FjdGlvblJlY2lwaWVudFtdLFxuICBhZGRyZXNzQ29kZWM6IEFkZHJlc3NDb2RlY1xuKTogdm9pZCB7XG4gIGFzc2VydEV4cGVjdGVkT3V0cHV0RGlmZmVyZW5jZSh0b0Jhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHNGcm9tUHNidChwc2J0LCBkZXNjcmlwdG9ycywgcmVjaXBpZW50cywgYWRkcmVzc0NvZGVjKSk7XG59XG5cbi8qKlxuICogV3JhcHBlciBhcm91bmQgYXNzZXJ0VmFsaWRUcmFuc2FjdGlvbiB0aGF0IHJldHVybnMgYSBib29sZWFuIGluc3RlYWQgb2YgdGhyb3dpbmcuXG4gKlxuICogV2UgZm9sbG93IHRoZSBBYnN0cmFjdFV0eG9Db2luIGludGVyZmFjZSBoZXJlIHdoaWNoIGlzIGEgYml0IGNvbmZ1c2VkIC0gdGhlIHJldHVybiB2YWx1ZSBpcyBhIGJvb2xlYW4gYnV0IHdlXG4gKiBhbHNvIHRocm93IGVycm9ycyAoYmVjYXVzZSB3ZSBhY3R1YWxseSB3YW50IHRvIGtub3cgd2hhdCB3ZW50IHdyb25nKS5cbiAqXG4gKiBAcGFyYW0gY29pblxuICogQHBhcmFtIHBhcmFtc1xuICogQHBhcmFtIGRlc2NyaXB0b3JNYXBcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZlcmlmaWNhdGlvbiBwYXNzZXNcbiAqIEB0aHJvd3Mge1R4SW50ZW50TWlzbWF0Y2hFcnJvcn0gaWYgdHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmVyaWZ5VHJhbnNhY3Rpb248VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4oXG4gIGNvaW46IEFic3RyYWN0VXR4b0NvaW4sXG4gIHBhcmFtczogVmVyaWZ5VHJhbnNhY3Rpb25PcHRpb25zPFROdW1iZXI+LFxuICBkZXNjcmlwdG9yTWFwOiBkZXNjcmlwdG9yV2FsbGV0LkRlc2NyaXB0b3JNYXAsXG4gIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjID0gY29pbi5hZGRyZXNzQ29kZWNcbik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBsZXQgcHNidDogUHNidDtcbiAgdHJ5IHtcbiAgICBwc2J0ID0gZGVjb2RlRGVzY3JpcHRvclBzYnQocGFyYW1zLnR4UHJlYnVpbGQpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc3QgdHhFeHBsYW5hdGlvbiA9IGF3YWl0IFR4SW50ZW50TWlzbWF0Y2hFcnJvci50cnlHZXRUeEV4cGxhbmF0aW9uKFxuICAgICAgY29pbiBhcyB1bmtub3duIGFzIElCYXNlQ29pbixcbiAgICAgIHBhcmFtcy50eFByZWJ1aWxkXG4gICAgKTtcbiAgICBjb25zdCBlcnJvckRldGFpbCA9IGUgaW5zdGFuY2VvZiBFcnJvciA/IGUubWVzc2FnZSA6IFN0cmluZyhlKTtcbiAgICB0aHJvdyBuZXcgVHhJbnRlbnRNaXNtYXRjaEVycm9yKFxuICAgICAgYHVuZXhwZWN0ZWQgdHJhbnNhY3Rpb24gdHlwZTogJHtlcnJvckRldGFpbH1gLFxuICAgICAgcGFyYW1zLnJlcUlkLFxuICAgICAgW3BhcmFtcy50eFBhcmFtc10sXG4gICAgICBwYXJhbXMudHhQcmVidWlsZC50eEhleCxcbiAgICAgIHR4RXhwbGFuYXRpb25cbiAgICApO1xuICB9XG5cbiAgYXNzZXJ0VmFsaWRUcmFuc2FjdGlvbihwc2J0LCBkZXNjcmlwdG9yTWFwLCBwYXJhbXMudHhQYXJhbXMucmVjaXBpZW50cyA/PyBbXSwgYWRkcmVzc0NvZGVjKTtcblxuICBjb25zdCBwYXJzZWRPdXRwdXRzID0gdG9CYXNlUGFyc2VkVHJhbnNhY3Rpb25PdXRwdXRzRnJvbVBzYnQoXG4gICAgcHNidCxcbiAgICBkZXNjcmlwdG9yTWFwLFxuICAgIHBhcmFtcy50eFBhcmFtcy5yZWNpcGllbnRzID8/IFtdLFxuICAgIGFkZHJlc3NDb2RlY1xuICApO1xuXG4gIGlmIChwYXJhbXMudHhQYXJhbXMucXIpIHtcbiAgICBjb25zdCBhbGxFeHRlcm5hbE91dHB1dHMgPSBbLi4ucGFyc2VkT3V0cHV0cy5leHBsaWNpdEV4dGVybmFsT3V0cHV0cywgLi4ucGFyc2VkT3V0cHV0cy5pbXBsaWNpdEV4dGVybmFsT3V0cHV0c107XG4gICAgaWYgKGFsbEV4dGVybmFsT3V0cHV0cy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCB0eEV4cGxhbmF0aW9uID0gYXdhaXQgVHhJbnRlbnRNaXNtYXRjaEVycm9yLnRyeUdldFR4RXhwbGFuYXRpb24oXG4gICAgICAgIGNvaW4gYXMgdW5rbm93biBhcyBJQmFzZUNvaW4sXG4gICAgICAgIHBhcmFtcy50eFByZWJ1aWxkXG4gICAgICApO1xuICAgICAgdGhyb3cgbmV3IFR4SW50ZW50TWlzbWF0Y2hFcnJvcihcbiAgICAgICAgJ3F1YW50dW0tcmVzaXN0YW50IHN3ZWVwIHRyYW5zYWN0aW9ucyBtdXN0IG9ubHkgY29udGFpbiB3YWxsZXQtaW50ZXJuYWwgb3V0cHV0cycsXG4gICAgICAgIHBhcmFtcy5yZXFJZCxcbiAgICAgICAgW3BhcmFtcy50eFBhcmFtc10sXG4gICAgICAgIHBhcmFtcy50eFByZWJ1aWxkLnR4SGV4LFxuICAgICAgICB0eEV4cGxhbmF0aW9uXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGFzc2VydEV4cGVjdGVkT3V0cHV0RGlmZmVyZW5jZShwYXJzZWRPdXRwdXRzKTtcblxuICByZXR1cm4gdHJ1ZTtcbn1cbiJdfQ==
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { fixedScriptWallet, Psbt as WasmPsbt } from '@bitgo/wasm-utxo';
|
|
2
2
|
import { IWallet, Triple } from '@bitgo/sdk-core';
|
|
3
|
-
import { UtxoCoinName } from '../names';
|
|
3
|
+
import { UtxoCoinName, WasmUtxoCoinName } from '../names';
|
|
4
4
|
import type { Unspent } from '../unspent';
|
|
5
5
|
import type { TransactionExplanationUtxolibPsbt, TransactionExplanationWasm } from './fixedScript/explainTransaction';
|
|
6
|
+
import type { AddressCodec } from './recipient';
|
|
6
7
|
/**
|
|
7
8
|
* Decompose a raw transaction into useful information, such as the total amounts,
|
|
8
9
|
* change amounts, and transaction outputs.
|
|
@@ -14,5 +15,5 @@ export declare function explainTx<TNumber extends number | bigint>(tx: fixedScri
|
|
|
14
15
|
txInfo?: {
|
|
15
16
|
unspents?: Unspent<TNumber>[];
|
|
16
17
|
};
|
|
17
|
-
}, coinName: UtxoCoinName): TransactionExplanationUtxolibPsbt | TransactionExplanationWasm;
|
|
18
|
+
}, coinName: UtxoCoinName | WasmUtxoCoinName, addressCodec: AddressCodec): TransactionExplanationUtxolibPsbt | TransactionExplanationWasm;
|
|
18
19
|
//# sourceMappingURL=explainTransaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explainTransaction.d.ts","sourceRoot":"","sources":["../../../src/transaction/explainTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAY,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAK5D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"explainTransaction.d.ts","sourceRoot":"","sources":["../../../src/transaction/explainTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAY,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAK5D,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,KAAK,EAAE,iCAAiC,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAGtH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACvD,EAAE,EAAE,iBAAiB,CAAC,SAAS,GAAG,QAAQ,EAC1C,MAAM,EAAE;IACN,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAA;KAAE,CAAC;CAC5C,EACD,QAAQ,EAAE,YAAY,GAAG,gBAAgB,EACzC,YAAY,EAAE,YAAY,GACzB,iCAAiC,GAAG,0BAA0B,CAiChE"}
|
|
@@ -10,7 +10,7 @@ import * as descriptor from './descriptor';
|
|
|
10
10
|
* Decompose a raw transaction into useful information, such as the total amounts,
|
|
11
11
|
* change amounts, and transaction outputs.
|
|
12
12
|
*/
|
|
13
|
-
export function explainTx(tx, params, coinName) {
|
|
13
|
+
export function explainTx(tx, params, coinName, addressCodec) {
|
|
14
14
|
if (params.wallet && isDescriptorWallet(params.wallet)) {
|
|
15
15
|
if (!(tx instanceof WasmPsbt)) {
|
|
16
16
|
throw new Error('descriptor wallets require PSBT format transactions');
|
|
@@ -32,6 +32,7 @@ export function explainTx(tx, params, coinName) {
|
|
|
32
32
|
throw new Error('pub triple must be valid triple or RootWalletKeys');
|
|
33
33
|
}
|
|
34
34
|
return fixedScript.explainPsbtWasm(tx, walletXpubs, {
|
|
35
|
+
addressCodec,
|
|
35
36
|
replayProtection: {
|
|
36
37
|
publicKeys: getReplayProtectionPubkeys(coinName),
|
|
37
38
|
},
|
|
@@ -45,4 +46,4 @@ export function explainTx(tx, params, coinName) {
|
|
|
45
46
|
throw new Error('unsupported transaction type');
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyYW5zYWN0aW9uL2V4cGxhaW5UcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxJQUFJLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQW1CLE1BQU0saUJBQWlCLENBQUM7QUFFNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBSS9ELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTVFLE9BQU8sS0FBSyxXQUFXLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxVQUFVLE1BQU0sY0FBYyxDQUFDO0FBRTNDOzs7R0FHRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEVBQTBDLEVBQzFDLE1BS0MsRUFDRCxRQUF5QyxFQUN6QyxZQUEwQjtJQUUxQixJQUFJLE1BQU0sQ0FBQyxNQUFNLElBQUksa0JBQWtCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLENBQUMsRUFBRSxZQUFZLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7UUFDbkUsQ0FBQztRQUNELE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsTUFBTSxXQUFXLEdBQUcsMEJBQTBCLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDcEgsT0FBTyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELElBQUksRUFBRSxZQUFZLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxNQUFNLFdBQVcsR0FBK0IsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBRSxJQUF1QixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDdEcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELENBQUMsQ0FBQztRQUN2RSxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7WUFDbEQsWUFBWTtZQUNaLGdCQUFnQixFQUFFO2dCQUNoQixVQUFVLEVBQUUsMEJBQTBCLENBQUMsUUFBUSxDQUFDO2FBQ2pEO1lBQ0QsdUJBQXVCLEVBQUUsTUFBTSxDQUFDLGlCQUFpQjtTQUNsRCxDQUFDLENBQUM7SUFDTCxDQUFDO1NBQU0sSUFBSSxFQUFFLFlBQVksUUFBUSxFQUFFLENBQUM7UUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBQzlFLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZml4ZWRTY3JpcHRXYWxsZXQsIFBzYnQgYXMgV2FzbVBzYnQgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcbmltcG9ydCB7IGlzVHJpcGxlLCBJV2FsbGV0LCBUcmlwbGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuXG5pbXBvcnQgeyBnZXREZXNjcmlwdG9yTWFwRnJvbVdhbGxldCwgaXNEZXNjcmlwdG9yV2FsbGV0IH0gZnJvbSAnLi4vZGVzY3JpcHRvcic7XG5pbXBvcnQgeyB0b0JpcDMyVHJpcGxlIH0gZnJvbSAnLi4va2V5Y2hhaW5zJztcbmltcG9ydCB7IGdldFBvbGljeUZvckVudiB9IGZyb20gJy4uL2Rlc2NyaXB0b3IvdmFsaWRhdGVQb2xpY3knO1xuaW1wb3J0IHsgVXR4b0NvaW5OYW1lLCBXYXNtVXR4b0NvaW5OYW1lIH0gZnJvbSAnLi4vbmFtZXMnO1xuaW1wb3J0IHR5cGUgeyBVbnNwZW50IH0gZnJvbSAnLi4vdW5zcGVudCc7XG5cbmltcG9ydCB7IGdldFJlcGxheVByb3RlY3Rpb25QdWJrZXlzIH0gZnJvbSAnLi9maXhlZFNjcmlwdC9yZXBsYXlQcm90ZWN0aW9uJztcbmltcG9ydCB0eXBlIHsgVHJhbnNhY3Rpb25FeHBsYW5hdGlvblV0eG9saWJQc2J0LCBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uV2FzbSB9IGZyb20gJy4vZml4ZWRTY3JpcHQvZXhwbGFpblRyYW5zYWN0aW9uJztcbmltcG9ydCAqIGFzIGZpeGVkU2NyaXB0IGZyb20gJy4vZml4ZWRTY3JpcHQnO1xuaW1wb3J0ICogYXMgZGVzY3JpcHRvciBmcm9tICcuL2Rlc2NyaXB0b3InO1xuaW1wb3J0IHR5cGUgeyBBZGRyZXNzQ29kZWMgfSBmcm9tICcuL3JlY2lwaWVudCc7XG4vKipcbiAqIERlY29tcG9zZSBhIHJhdyB0cmFuc2FjdGlvbiBpbnRvIHVzZWZ1bCBpbmZvcm1hdGlvbiwgc3VjaCBhcyB0aGUgdG90YWwgYW1vdW50cyxcbiAqIGNoYW5nZSBhbW91bnRzLCBhbmQgdHJhbnNhY3Rpb24gb3V0cHV0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGxhaW5UeDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgdHg6IGZpeGVkU2NyaXB0V2FsbGV0LkJpdEdvUHNidCB8IFdhc21Qc2J0LFxuICBwYXJhbXM6IHtcbiAgICB3YWxsZXQ/OiBJV2FsbGV0O1xuICAgIHB1YnM/OiBzdHJpbmdbXTtcbiAgICBjdXN0b21DaGFuZ2VYcHVicz86IFRyaXBsZTxzdHJpbmc+O1xuICAgIHR4SW5mbz86IHsgdW5zcGVudHM/OiBVbnNwZW50PFROdW1iZXI+W10gfTtcbiAgfSxcbiAgY29pbk5hbWU6IFV0eG9Db2luTmFtZSB8IFdhc21VdHhvQ29pbk5hbWUsXG4gIGFkZHJlc3NDb2RlYzogQWRkcmVzc0NvZGVjXG4pOiBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uVXR4b2xpYlBzYnQgfCBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uV2FzbSB7XG4gIGlmIChwYXJhbXMud2FsbGV0ICYmIGlzRGVzY3JpcHRvcldhbGxldChwYXJhbXMud2FsbGV0KSkge1xuICAgIGlmICghKHR4IGluc3RhbmNlb2YgV2FzbVBzYnQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Rlc2NyaXB0b3Igd2FsbGV0cyByZXF1aXJlIFBTQlQgZm9ybWF0IHRyYW5zYWN0aW9ucycpO1xuICAgIH1cbiAgICBpZiAoIXBhcmFtcy5wdWJzIHx8ICFpc1RyaXBsZShwYXJhbXMucHVicykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncHViIHRyaXBsZSBpcyByZXF1aXJlZCBmb3IgZGVzY3JpcHRvciB3YWxsZXRzJyk7XG4gICAgfVxuICAgIGNvbnN0IHdhbGxldEtleXMgPSB0b0JpcDMyVHJpcGxlKHBhcmFtcy5wdWJzKTtcbiAgICBjb25zdCBkZXNjcmlwdG9ycyA9IGdldERlc2NyaXB0b3JNYXBGcm9tV2FsbGV0KHBhcmFtcy53YWxsZXQsIHdhbGxldEtleXMsIGdldFBvbGljeUZvckVudihwYXJhbXMud2FsbGV0LmJpdGdvLmVudikpO1xuICAgIHJldHVybiBkZXNjcmlwdG9yLmV4cGxhaW5Qc2J0KHR4LCBkZXNjcmlwdG9ycywgY29pbk5hbWUpO1xuICB9XG4gIGlmICh0eCBpbnN0YW5jZW9mIGZpeGVkU2NyaXB0V2FsbGV0LkJpdEdvUHNidCkge1xuICAgIGNvbnN0IHB1YnMgPSBwYXJhbXMucHVicztcbiAgICBpZiAoIXB1YnMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncHViIHRyaXBsZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBjb25zdCB3YWxsZXRYcHViczogVHJpcGxlPHN0cmluZz4gfCB1bmRlZmluZWQgPSBpc1RyaXBsZShwdWJzKSA/IChwdWJzIGFzIFRyaXBsZTxzdHJpbmc+KSA6IHVuZGVmaW5lZDtcbiAgICBpZiAoIXdhbGxldFhwdWJzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3B1YiB0cmlwbGUgbXVzdCBiZSB2YWxpZCB0cmlwbGUgb3IgUm9vdFdhbGxldEtleXMnKTtcbiAgICB9XG4gICAgcmV0dXJuIGZpeGVkU2NyaXB0LmV4cGxhaW5Qc2J0V2FzbSh0eCwgd2FsbGV0WHB1YnMsIHtcbiAgICAgIGFkZHJlc3NDb2RlYyxcbiAgICAgIHJlcGxheVByb3RlY3Rpb246IHtcbiAgICAgICAgcHVibGljS2V5czogZ2V0UmVwbGF5UHJvdGVjdGlvblB1YmtleXMoY29pbk5hbWUpLFxuICAgICAgfSxcbiAgICAgIGN1c3RvbUNoYW5nZVdhbGxldFhwdWJzOiBwYXJhbXMuY3VzdG9tQ2hhbmdlWHB1YnMsXG4gICAgfSk7XG4gIH0gZWxzZSBpZiAodHggaW5zdGFuY2VvZiBXYXNtUHNidCkge1xuICAgIHRocm93IG5ldyBFcnJvcignZGVzY3JpcHRvciBQc2J0IGlzIG9ubHkgc3VwcG9ydGVkIGZvciBkZXNjcmlwdG9yIHdhbGxldHMnKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Vuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGUnKTtcbiAgfVxufVxuIl19
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { fixedScriptWallet } from '@bitgo/wasm-utxo';
|
|
2
2
|
import { Triple } from '@bitgo/sdk-core';
|
|
3
3
|
import type { FixedScriptWalletOutput, Output, BitGoPsbt } from '../types';
|
|
4
|
+
import { AddressCodec } from '../recipient';
|
|
4
5
|
import type { TransactionExplanationWasm } from './explainTransaction';
|
|
5
6
|
interface ExplainPsbtWasmParams {
|
|
7
|
+
addressCodec: AddressCodec;
|
|
6
8
|
replayProtection: {
|
|
7
9
|
checkSignature?: boolean;
|
|
8
10
|
publicKeys: Buffer[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explainPsbtWasm.d.ts","sourceRoot":"","sources":["../../../../src/transaction/fixedScript/explainPsbtWasm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAU,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"explainPsbtWasm.d.ts","sourceRoot":"","sources":["../../../../src/transaction/fixedScript/explainPsbtWasm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAU,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAkCvE,UAAU,qBAAqB;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE;QAChB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;IACF,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC,cAAc,CAAC;CAC7E;AAED,MAAM,WAAW,cAAc,CAAC,OAAO,GAAG,MAAM;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC5C,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1B,aAAa,EAAE,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,mBAAmB,EAAE,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;IACvD,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAqBD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,iBAAiB,CAAC,cAAc,EAC7C,MAAM,EAAE,qBAAqB,GAC5B,4BAA4B,CAgD9B;AAuBD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC,cAAc,EAC9D,MAAM,EAAE,qBAAqB,GAC5B,0BAA0B,CAmB5B;AAED,MAAM,WAAW,gCAAgC;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,gCAAgC,CAC9C,YAAY,EAAE,4BAA4B,EAAE,GAC3C,gCAAgC,CA4BlC"}
|
|
@@ -43,6 +43,9 @@ export function explainPsbtWasmBigInt(psbt, walletXpubs, params) {
|
|
|
43
43
|
: undefined;
|
|
44
44
|
const customChangeOutputs = [];
|
|
45
45
|
parsed.outputs.forEach((output, i) => {
|
|
46
|
+
if (!params.addressCodec.isMatchingScript(output)) {
|
|
47
|
+
throw new Error(`Output ${i} address ${output.address} does not match its raw script`);
|
|
48
|
+
}
|
|
46
49
|
const parseCustomChangeOutput = parsedCustomChangeOutputs?.[i];
|
|
47
50
|
if (isParsedWalletOutput(output)) {
|
|
48
51
|
changeOutputs.push(toChangeOutputBigInt(output));
|
|
@@ -141,4 +144,4 @@ export function aggregateTransactionExplanations(explanations) {
|
|
|
141
144
|
fee,
|
|
142
145
|
};
|
|
143
146
|
}
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblBzYnRXYXNtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zYWN0aW9uL2ZpeGVkU2NyaXB0L2V4cGxhaW5Qc2J0V2FzbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFRN0QsU0FBUyxlQUFlLENBQUMsTUFBa0I7SUFDekMsT0FBTyxnQkFBZ0IsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztBQUMvRCxDQUFDO0FBS0QsU0FBUyxvQkFBb0IsQ0FBQyxNQUFpRDtJQUM3RSxPQUFPLE1BQU0sQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDO0FBQ2xDLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLE1BQWlEO0lBQy9FLE9BQU8sTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7QUFDbEMsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsTUFBMEI7SUFDdEQsT0FBTztRQUNMLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3pELE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSztRQUNwQixLQUFLLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1FBQzVCLEtBQUssRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDNUIsUUFBUSxFQUFFLEtBQUs7S0FDaEIsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLE1BQTRCO0lBQzFELE9BQU87UUFDTCxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN6RCxNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUs7UUFDcEIsUUFBUSxFQUFFLElB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QkFBaUIsSUFBSSxDQUFDLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztRQUM1QyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUNiLFdBQVcsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQzdCLFlBQVksSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDO1FBQy9CLFlBQVksSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxPQUFPO1FBQ0wsVUFBVTtRQUNWLFdBQVc7UUFDWCxpQkFBaUI7UUFDakIsV0FBVztRQUNYLFlBQVk7UUFDWixZQUFZO1FBQ1osR0FBRztLQUNKLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZml4ZWRTY3JpcHRXYWxsZXQsIGJpcDMyMiB9IGZyb20gJ0BiaXRnby93YXNtLXV0eG8nO1xuaW1wb3J0IHsgVHJpcGxlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcblxuaW1wb3J0IHR5cGUgeyBGaXhlZFNjcmlwdFdhbGxldE91dHB1dCwgT3V0cHV0LCBCaXRHb1BzYnQgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IEJpcDMyMk1lc3NhZ2UgfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcblxuaW1wb3J0IHR5cGUgeyBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uV2FzbSB9IGZyb20gJy4vZXhwbGFpblRyYW5zYWN0aW9uJztcblxuZnVuY3Rpb24gc2NyaXB0VG9BZGRyZXNzKHNjcmlwdDogVWludDhBcnJheSk6IHN0cmluZyB7XG4gIHJldHVybiBgc2NyaXB0UHViS2V5OiR7QnVmZmVyLmZyb20oc2NyaXB0KS50b1N0cmluZygnaGV4Jyl9YDtcbn1cblxudHlwZSBQYXJzZWRXYWxsZXRPdXRwdXQgPSBmaXhlZFNjcmlwdFdhbGxldC5QYXJzZWRPdXRwdXQgJiB7IHNjcmlwdElkOiBmaXhlZFNjcmlwdFdhbGxldC5TY3JpcHRJZCB9O1xudHlwZSBQYXJzZWRFeHRlcm5hbE91dHB1dCA9IGZpeGVkU2NyaXB0V2FsbGV0LlBhcnNlZE91dHB1dCAmIHsgc2NyaXB0SWQ6IG51bGwgfTtcblxuZnVuY3Rpb24gaXNQYXJzZWRXYWxsZXRPdXRwdXQob3V0cHV0OiBQYXJzZWRXYWxsZXRPdXRwdXQgfCBQYXJzZWRFeHRlcm5hbE91dHB1dCk6IG91dHB1dCBpcyBQYXJzZWRXYWxsZXRPdXRwdXQge1xuICByZXR1cm4gb3V0cHV0LnNjcmlwdElkICE9PSBudWxsO1xufVxuXG5mdW5jdGlvbiBpc1BhcnNlZEV4dGVybmFsT3V0cHV0KG91dHB1dDogUGFyc2VkV2FsbGV0T3V0cHV0IHwgUGFyc2VkRXh0ZXJuYWxPdXRwdXQpOiBvdXRwdXQgaXMgUGFyc2VkRXh0ZXJuYWxPdXRwdXQge1xuICByZXR1cm4gb3V0cHV0LnNjcmlwdElkID09PSBudWxsO1xufVxuXG5mdW5jdGlvbiB0b0NoYW5nZU91dHB1dEJpZ0ludChvdXRwdXQ6IFBhcnNlZFdhbGxldE91dHB1dCk6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD4ge1xuICByZXR1cm4ge1xuICAgIGFkZHJlc3M6IG91dHB1dC5hZGRyZXNzID8/IHNjcmlwdFRvQWRkcmVzcyhvdXRwdXQuc2NyaXB0KSxcbiAgICBhbW91bnQ6IG91dHB1dC52YWx1ZSxcbiAgICBjaGFpbjogb3V0cHV0LnNjcmlwdElkLmNoYWluLFxuICAgIGluZGV4OiBvdXRwdXQuc2NyaXB0SWQuaW5kZXgsXG4gICAgZXh0ZXJuYWw6IGZhbHNlLFxuICB9O1xufVxuXG5mdW5jdGlvbiB0b0V4dGVybmFsT3V0cHV0QmlnSW50KG91dHB1dDogUGFyc2VkRXh0ZXJuYWxPdXRwdXQpOiBPdXRwdXQ8YmlnaW50PiB7XG4gIHJldHVybiB7XG4gICAgYWRkcmVzczogb3V0cHV0LmFkZHJlc3MgPz8gc2NyaXB0VG9BZGRyZXNzKG91dHB1dC5zY3JpcHQpLFxuICAgIGFtb3VudDogb3V0cHV0LnZhbHVlLFxuICAgIGV4dGVybmFsOiB0cnVlLFxuICB9O1xufVxuXG5pbnRlcmZhY2UgRXhwbGFpblBzYnRXYXNtUGFyYW1zIHtcbiAgcmVwbGF5UHJvdGVjdGlvbjoge1xuICAgIGNoZWNrU2lnbmF0dXJlPzogYm9vbGVhbjtcbiAgICBwdWJsaWNLZXlzOiBCdWZmZXJbXTtcbiAgfTtcbiAgY3VzdG9tQ2hhbmdlV2FsbGV0WHB1YnM/OiBUcmlwbGU8c3RyaW5nPiB8IGZpeGVkU2NyaXB0V2FsbGV0LlJvb3RXYWxsZXRLZXlzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4cGxhaW5lZElucHV0PFRBbW91bnQgPSBiaWdpbnQ+IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICB2YWx1ZTogVEFtb3VudDtcbiAgc2NyaXB0SWQ6IGZpeGVkU2NyaXB0V2FsbGV0LlNjcmlwdElkIHwgbnVsbDtcbiAgc2lnbmVkQnk6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb25CaWdJbnQge1xuICBpZDogc3RyaW5nO1xuICBpbnB1dHM6IEV4cGxhaW5lZElucHV0W107XG4gIGlucHV0QW1vdW50OiBiaWdpbnQ7XG4gIG91dHB1dHM6IE91dHB1dDxiaWdpbnQ+W107XG4gIGNoYW5nZU91dHB1dHM6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD5bXTtcbiAgY3VzdG9tQ2hhbmdlT3V0cHV0czogRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQ8YmlnaW50PltdO1xuICBvdXRwdXRBbW91bnQ6IGJpZ2ludDtcbiAgY2hhbmdlQW1vdW50OiBiaWdpbnQ7XG4gIGN1c3RvbUNoYW5nZUFtb3VudDogYmlnaW50O1xuICBmZWU6IGJpZ2ludDtcbn1cblxuZnVuY3Rpb24gZ2V0U2lnbmVkQnlGb3JJbnB1dChcbiAgcHNidDogQml0R29Qc2J0LFxuICBpbnB1dEluZGV4OiBudW1iZXIsXG4gIHdhbGxldFhwdWJzOiBmaXhlZFNjcmlwdFdhbGxldC5Sb290V2FsbGV0S2V5cyxcbiAgcmVwbGF5UHJvdGVjdGlvblB1YmxpY0tleXM6IEJ1ZmZlcltdLFxuICBzY3JpcHRJZDogZml4ZWRTY3JpcHRXYWxsZXQuU2NyaXB0SWQgfCBudWxsXG4pOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSB7XG4gIGlmIChzY3JpcHRJZCAhPT0gbnVsbCkge1xuICAgIHJldHVybiB7XG4gICAgICB1c2VyOiBwc2J0LnZlcmlmeVNpZ25hdHVyZShpbnB1dEluZGV4LCB3YWxsZXRYcHVicy51c2VyS2V5KCkpLFxuICAgICAgYmFja3VwOiBwc2J0LnZlcmlmeVNpZ25hdHVyZShpbnB1dEluZGV4LCB3YWxsZXRYcHVicy5iYWNrdXBLZXkoKSksXG4gICAgICBiaXRnbzogcHNidC52ZXJpZnlTaWduYXR1cmUoaW5wdXRJbmRleCwgd2FsbGV0WHB1YnMuYml0Z29LZXkoKSksXG4gICAgfTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIHJlcGxheVByb3RlY3Rpb25QdWJsaWNLZXlzLm1hcCgoa2V5LCBqKSA9PiBbYHJlcGxheVByb3RlY3Rpb24ke2p9YCwgcHNidC52ZXJpZnlTaWduYXR1cmUoaW5wdXRJbmRleCwga2V5KV0pXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBsYWluUHNidFdhc21CaWdJbnQoXG4gIHBzYnQ6IEJpdEdvUHNidCxcbiAgd2FsbGV0WHB1YnM6IGZpeGVkU2NyaXB0V2FsbGV0LlJvb3RXYWxsZXRLZXlzLFxuICBwYXJhbXM6IEV4cGxhaW5Qc2J0V2FzbVBhcmFtc1xuKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbkJpZ0ludCB7XG4gIGNvbnN0IHBhcnNlZCA9IHBzYnQucGFyc2VUcmFuc2FjdGlvbldpdGhXYWxsZXRLZXlzKHdhbGxldFhwdWJzLCB7IHJlcGxheVByb3RlY3Rpb246IHBhcmFtcy5yZXBsYXlQcm90ZWN0aW9uIH0pO1xuXG4gIGNvbnN0IGNoYW5nZU91dHB1dHM6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD5bXSA9IFtdO1xuICBjb25zdCBvdXRwdXRzOiBPdXRwdXQ8YmlnaW50PltdID0gW107XG4gIGNvbnN0IHBhcnNlZEN1c3RvbUNoYW5nZU91dHB1dHMgPSBwYXJhbXMuY3VzdG9tQ2hhbmdlV2FsbGV0WHB1YnNcbiAgICA/IHBzYnQucGFyc2VPdXRwdXRzV2l0aFdhbGxldEtleXMocGFyYW1zLmN1c3RvbUNoYW5nZVdhbGxldFhwdWJzKVxuICAgIDogdW5kZWZpbmVkO1xuXG4gIGNvbnN0IGN1c3RvbUNoYW5nZU91dHB1dHM6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD5bXSA9IFtdO1xuXG4gIHBhcnNlZC5vdXRwdXRzLmZvckVhY2goKG91dHB1dCwgaSkgPT4ge1xuICAgIGNvbnN0IHBhcnNlQ3VzdG9tQ2hhbmdlT3V0cHV0ID0gcGFyc2VkQ3VzdG9tQ2hhbmdlT3V0cHV0cz8uW2ldO1xuICAgIGlmIChpc1BhcnNlZFdhbGxldE91dHB1dChvdXRwdXQpKSB7XG4gICAgICBjaGFuZ2VPdXRwdXRzLnB1c2godG9DaGFuZ2VPdXRwdXRCaWdJbnQob3V0cHV0KSk7XG4gICAgfSBlbHNlIGlmIChwYXJzZUN1c3RvbUNoYW5nZU91dHB1dCAmJiBpc1BhcnNlZFdhbGxldE91dHB1dChwYXJzZUN1c3RvbUNoYW5nZU91dHB1dCkpIHtcbiAgICAgIGN1c3RvbUNoYW5nZU91dHB1dHMucHVzaCh0b0NoYW5nZU91dHB1dEJpZ0ludChwYXJzZUN1c3RvbUNoYW5nZU91dHB1dCkpO1xuICAgIH0gZWxzZSBpZiAoaXNQYXJzZWRFeHRlcm5hbE91dHB1dChvdXRwdXQpKSB7XG4gICAgICBvdXRwdXRzLnB1c2godG9FeHRlcm5hbE91dHB1dEJpZ0ludChvdXRwdXQpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIG91dHB1dCcpO1xuICAgIH1cbiAgfSk7XG5cbiAgY29uc3QgaW5wdXRzID0gcGFyc2VkLmlucHV0cy5tYXAoKGlucHV0LCBpKSA9PiAoe1xuICAgIGFkZHJlc3M6IGlucHV0LmFkZHJlc3MsXG4gICAgdmFsdWU6IGlucHV0LnZhbHVlLFxuICAgIHNjcmlwdElkOiBpbnB1dC5zY3JpcHRJZCxcbiAgICBzaWduZWRCeTogZ2V0U2lnbmVkQnlGb3JJbnB1dChwc2J0LCBpLCB3YWxsZXRYcHVicywgcGFyYW1zLnJlcGxheVByb3RlY3Rpb24ucHVibGljS2V5cywgaW5wdXQuc2NyaXB0SWQpLFxuICB9KSk7XG4gIGNvbnN0IGlucHV0QW1vdW50ID0gaW5wdXRzLnJlZHVjZSgoc3VtLCBpbnB1dCkgPT4gc3VtICsgaW5wdXQudmFsdWUsIDBuKTtcbiAgY29uc3Qgb3V0cHV0QW1vdW50ID0gb3V0cHV0cy5yZWR1Y2UoKHN1bSwgb3V0cHV0KSA9PiBzdW0gKyBvdXRwdXQuYW1vdW50LCAwbik7XG4gIGNvbnN0IGNoYW5nZUFtb3VudCA9IGNoYW5nZU91dHB1dHMucmVkdWNlKChzdW0sIG91dHB1dCkgPT4gc3VtICsgb3V0cHV0LmFtb3VudCwgMG4pO1xuICBjb25zdCBjdXN0b21DaGFuZ2VBbW91bnQgPSBjdXN0b21DaGFuZ2VPdXRwdXRzLnJlZHVjZSgoc3VtLCBvdXRwdXQpID0+IHN1bSArIG91dHB1dC5hbW91bnQsIDBuKTtcblxuICByZXR1cm4ge1xuICAgIGlkOiBwc2J0LnVuc2lnbmVkVHhJZCgpLFxuICAgIGlucHV0cyxcbiAgICBpbnB1dEFtb3VudCxcbiAgICBvdXRwdXRzLFxuICAgIGNoYW5nZU91dHB1dHMsXG4gICAgY3VzdG9tQ2hhbmdlT3V0cHV0cyxcbiAgICBvdXRwdXRBbW91bnQsXG4gICAgY2hhbmdlQW1vdW50LFxuICAgIGN1c3RvbUNoYW5nZUFtb3VudCxcbiAgICBmZWU6IHBhcnNlZC5taW5lckZlZSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gc3RyaW5naWZ5T3V0cHV0KG91dHB1dDogT3V0cHV0PGJpZ2ludD4pOiBPdXRwdXQge1xuICByZXR1cm4geyAuLi5vdXRwdXQsIGFtb3VudDogb3V0cHV0LmFtb3VudC50b1N0cmluZygpIH07XG59XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeUNoYW5nZU91dHB1dChvdXRwdXQ6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD4pOiBGaXhlZFNjcmlwdFdhbGxldE91dHB1dCB7XG4gIHJldHVybiB7IC4uLm91dHB1dCwgYW1vdW50OiBvdXRwdXQuYW1vdW50LnRvU3RyaW5nKCkgfTtcbn1cblxuZnVuY3Rpb24gZXh0cmFjdEJpcDMyMk1lc3NhZ2VzKHBzYnQ6IEJpdEdvUHNidCwgaW5wdXRzOiBFeHBsYWluZWRJbnB1dFtdKTogeyBtZXNzYWdlczogQmlwMzIyTWVzc2FnZVtdIHwgdW5kZWZpbmVkIH0ge1xuICBjb25zdCBtZXNzYWdlczogQmlwMzIyTWVzc2FnZVtdID0gaW5wdXRzLmZsYXRNYXAoKGlucHV0LCBpKSA9PiB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGJpcDMyMi5nZXRCaXAzMjJNZXNzYWdlKHBzYnQsIGkpO1xuICAgIHJldHVybiBtZXNzYWdlID8gW3sgbWVzc2FnZSwgYWRkcmVzczogaW5wdXQuYWRkcmVzcyB9XSA6IFtdO1xuICB9KTtcblxuICBpZiAobWVzc2FnZXMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIHsgbWVzc2FnZXM6IHVuZGVmaW5lZCB9O1xuICB9XG5cbiAgcmV0dXJuIHsgbWVzc2FnZXMgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4cGxhaW5Qc2J0V2FzbShcbiAgcHNidDogQml0R29Qc2J0LFxuICB3YWxsZXRYcHViczogVHJpcGxlPHN0cmluZz4gfCBmaXhlZFNjcmlwdFdhbGxldC5Sb290V2FsbGV0S2V5cyxcbiAgcGFyYW1zOiBFeHBsYWluUHNidFdhc21QYXJhbXNcbik6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25XYXNtIHtcbiAgY29uc3QgcmVzdWx0ID0gZXhwbGFpblBzYnRXYXNtQmlnSW50KHBzYnQsIGZpeGVkU2NyaXB0V2FsbGV0LlJvb3RXYWxsZXRLZXlzLmZyb20od2FsbGV0WHB1YnMpLCBwYXJhbXMpO1xuICBjb25zdCBpbnB1dHMgPSByZXN1bHQuaW5wdXRzLm1hcCgoaSkgPT4gKHsgYWRkcmVzczogaS5hZGRyZXNzLCB2YWx1ZTogaS52YWx1ZS50b1N0cmluZygpLCBzaWduZWRCeTogaS5zaWduZWRCeSB9KSk7XG5cbiAgY29uc3QgeyBtZXNzYWdlcyB9ID0gZXh0cmFjdEJpcDMyMk1lc3NhZ2VzKHBzYnQsIHJlc3VsdC5pbnB1dHMpO1xuXG4gIHJldHVybiB7XG4gICAgaWQ6IHJlc3VsdC5pZCxcbiAgICBpbnB1dHMsXG4gICAgaW5wdXRBbW91bnQ6IHJlc3VsdC5pbnB1dEFtb3VudC50b1N0cmluZygpLFxuICAgIG91dHB1dEFtb3VudDogcmVzdWx0Lm91dHB1dEFtb3VudC50b1N0cmluZygpLFxuICAgIGNoYW5nZUFtb3VudDogcmVzdWx0LmNoYW5nZUFtb3VudC50b1N0cmluZygpLFxuICAgIGN1c3RvbUNoYW5nZUFtb3VudDogcmVzdWx0LmN1c3RvbUNoYW5nZUFtb3VudC50b1N0cmluZygpLFxuICAgIG91dHB1dHM6IHJlc3VsdC5vdXRwdXRzLm1hcChzdHJpbmdpZnlPdXRwdXQpLFxuICAgIGNoYW5nZU91dHB1dHM6IHJlc3VsdC5jaGFuZ2VPdXRwdXRzLm1hcChzdHJpbmdpZnlDaGFuZ2VPdXRwdXQpLFxuICAgIGN1c3RvbUNoYW5nZU91dHB1dHM6IHJlc3VsdC5jdXN0b21DaGFuZ2VPdXRwdXRzLm1hcChzdHJpbmdpZnlDaGFuZ2VPdXRwdXQpLFxuICAgIGZlZTogcmVzdWx0LmZlZS50b1N0cmluZygpLFxuICAgIG1lc3NhZ2VzLFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFnZ3JlZ2F0ZWRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgaW5wdXRDb3VudDogbnVtYmVyO1xuICBvdXRwdXRDb3VudDogbnVtYmVyO1xuICBjaGFuZ2VPdXRwdXRDb3VudDogbnVtYmVyO1xuICBpbnB1dEFtb3VudDogYmlnaW50O1xuICBvdXRwdXRBbW91bnQ6IGJpZ2ludDtcbiAgY2hhbmdlQW1vdW50OiBiaWdpbnQ7XG4gIGZlZTogYmlnaW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWdncmVnYXRlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbnMoXG4gIGV4cGxhbmF0aW9uczogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbkJpZ0ludFtdXG4pOiBBZ2dyZWdhdGVkVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIGxldCBpbnB1dENvdW50ID0gMDtcbiAgbGV0IG91dHB1dENvdW50ID0gMDtcbiAgbGV0IGNoYW5nZU91dHB1dENvdW50ID0gMDtcbiAgbGV0IGZlZSA9IDBuO1xuICBsZXQgaW5wdXRBbW91bnQgPSAwbjtcbiAgbGV0IG91dHB1dEFtb3VudCA9IDBuO1xuICBsZXQgY2hhbmdlQW1vdW50ID0gMG47XG5cbiAgZm9yIChjb25zdCBlIG9mIGV4cGxhbmF0aW9ucykge1xuICAgIGlucHV0Q291bnQgKz0gZS5pbnB1dHMubGVuZ3RoO1xuICAgIG91dHB1dENvdW50ICs9IGUub3V0cHV0cy5sZW5ndGg7XG4gICAgY2hhbmdlT3V0cHV0Q291bnQgKz0gZS5jaGFuZ2VPdXRwdXRzLmxlbmd0aDtcbiAgICBmZWUgKz0gZS5mZWU7XG4gICAgaW5wdXRBbW91bnQgKz0gZS5pbnB1dEFtb3VudDtcbiAgICBvdXRwdXRBbW91bnQgKz0gZS5vdXRwdXRBbW91bnQ7XG4gICAgY2hhbmdlQW1vdW50ICs9IGUuY2hhbmdlQW1vdW50O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBpbnB1dENvdW50LFxuICAgIG91dHB1dENvdW50LFxuICAgIGNoYW5nZU91dHB1dENvdW50LFxuICAgIGlucHV0QW1vdW50LFxuICAgIG91dHB1dEFtb3VudCxcbiAgICBjaGFuZ2VBbW91bnQsXG4gICAgZmVlLFxuICB9O1xufVxuIl19
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblBzYnRXYXNtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zYWN0aW9uL2ZpeGVkU2NyaXB0L2V4cGxhaW5Qc2J0V2FzbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFRN0QsU0FBUyxlQUFlLENBQUMsTUFBa0I7SUFDekMsT0FBTyxnQkFBZ0IsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztBQUMvRCxDQUFDO0FBS0QsU0FBUyxvQkFBb0IsQ0FBQyxNQUFpRDtJQUM3RSxPQUFPLE1BQU0sQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDO0FBQ2xDLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLE1BQWlEO0lBQy9FLE9BQU8sTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7QUFDbEMsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsTUFBMEI7SUFDdEQsT0FBTztRQUNMLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3pELE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSztRQUNwQixLQUFLLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1FBQzVCLEtBQUssRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDNUIsUUFBUSxFQUFFLEtBQUs7S0FDaEIsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLE1BQTRCO0lBQzFELE9BQU87UUFDTCxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN6RCxNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUs7UUFDcEIsUUFBUSxFQUFFLElB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LEVBQUUsQ0FBQztJQUV0QixLQUFLLE1BQU0sQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFVBQVUsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM5QixXQUFXLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDaEMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUM7UUFDNUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDYixXQUFXLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUM3QixZQUFZLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUMvQixZQUFZLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUNqQyxDQUFDO0lBRUQsT0FBTztRQUNMLFVBQVU7UUFDVixXQUFXO1FBQ1gsaUJBQWlCO1FBQ2pCLFdBQVc7UUFDWCxZQUFZO1FBQ1osWUFBWTtRQUNaLEdBQUc7S0FDSixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpeGVkU2NyaXB0V2FsbGV0LCBiaXAzMjIgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcbmltcG9ydCB7IFRyaXBsZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5cbmltcG9ydCB0eXBlIHsgRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQsIE91dHB1dCwgQml0R29Qc2J0IH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBCaXAzMjJNZXNzYWdlIH0gZnJvbSAnLi4vLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBBZGRyZXNzQ29kZWMgfSBmcm9tICcuLi9yZWNpcGllbnQnO1xuXG5pbXBvcnQgdHlwZSB7IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25XYXNtIH0gZnJvbSAnLi9leHBsYWluVHJhbnNhY3Rpb24nO1xuZnVuY3Rpb24gc2NyaXB0VG9BZGRyZXNzKHNjcmlwdDogVWludDhBcnJheSk6IHN0cmluZyB7XG4gIHJldHVybiBgc2NyaXB0UHViS2V5OiR7QnVmZmVyLmZyb20oc2NyaXB0KS50b1N0cmluZygnaGV4Jyl9YDtcbn1cblxudHlwZSBQYXJzZWRXYWxsZXRPdXRwdXQgPSBmaXhlZFNjcmlwdFdhbGxldC5QYXJzZWRPdXRwdXQgJiB7IHNjcmlwdElkOiBmaXhlZFNjcmlwdFdhbGxldC5TY3JpcHRJZCB9O1xudHlwZSBQYXJzZWRFeHRlcm5hbE91dHB1dCA9IGZpeGVkU2NyaXB0V2FsbGV0LlBhcnNlZE91dHB1dCAmIHsgc2NyaXB0SWQ6IG51bGwgfTtcblxuZnVuY3Rpb24gaXNQYXJzZWRXYWxsZXRPdXRwdXQob3V0cHV0OiBQYXJzZWRXYWxsZXRPdXRwdXQgfCBQYXJzZWRFeHRlcm5hbE91dHB1dCk6IG91dHB1dCBpcyBQYXJzZWRXYWxsZXRPdXRwdXQge1xuICByZXR1cm4gb3V0cHV0LnNjcmlwdElkICE9PSBudWxsO1xufVxuXG5mdW5jdGlvbiBpc1BhcnNlZEV4dGVybmFsT3V0cHV0KG91dHB1dDogUGFyc2VkV2FsbGV0T3V0cHV0IHwgUGFyc2VkRXh0ZXJuYWxPdXRwdXQpOiBvdXRwdXQgaXMgUGFyc2VkRXh0ZXJuYWxPdXRwdXQge1xuICByZXR1cm4gb3V0cHV0LnNjcmlwdElkID09PSBudWxsO1xufVxuXG5mdW5jdGlvbiB0b0NoYW5nZU91dHB1dEJpZ0ludChvdXRwdXQ6IFBhcnNlZFdhbGxldE91dHB1dCk6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD4ge1xuICByZXR1cm4ge1xuICAgIGFkZHJlc3M6IG91dHB1dC5hZGRyZXNzID8/IHNjcmlwdFRvQWRkcmVzcyhvdXRwdXQuc2NyaXB0KSxcbiAgICBhbW91bnQ6IG91dHB1dC52YWx1ZSxcbiAgICBjaGFpbjogb3V0cHV0LnNjcmlwdElkLmNoYWluLFxuICAgIGluZGV4OiBvdXRwdXQuc2NyaXB0SWQuaW5kZXgsXG4gICAgZXh0ZXJuYWw6IGZhbHNlLFxuICB9O1xufVxuXG5mdW5jdGlvbiB0b0V4dGVybmFsT3V0cHV0QmlnSW50KG91dHB1dDogUGFyc2VkRXh0ZXJuYWxPdXRwdXQpOiBPdXRwdXQ8YmlnaW50PiB7XG4gIHJldHVybiB7XG4gICAgYWRkcmVzczogb3V0cHV0LmFkZHJlc3MgPz8gc2NyaXB0VG9BZGRyZXNzKG91dHB1dC5zY3JpcHQpLFxuICAgIGFtb3VudDogb3V0cHV0LnZhbHVlLFxuICAgIGV4dGVybmFsOiB0cnVlLFxuICB9O1xufVxuXG5pbnRlcmZhY2UgRXhwbGFpblBzYnRXYXNtUGFyYW1zIHtcbiAgYWRkcmVzc0NvZGVjOiBBZGRyZXNzQ29kZWM7XG4gIHJlcGxheVByb3RlY3Rpb246IHtcbiAgICBjaGVja1NpZ25hdHVyZT86IGJvb2xlYW47XG4gICAgcHVibGljS2V5czogQnVmZmVyW107XG4gIH07XG4gIGN1c3RvbUNoYW5nZVdhbGxldFhwdWJzPzogVHJpcGxlPHN0cmluZz4gfCBmaXhlZFNjcmlwdFdhbGxldC5Sb290V2FsbGV0S2V5cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHBsYWluZWRJbnB1dDxUQW1vdW50ID0gYmlnaW50PiB7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgdmFsdWU6IFRBbW91bnQ7XG4gIHNjcmlwdElkOiBmaXhlZFNjcmlwdFdhbGxldC5TY3JpcHRJZCB8IG51bGw7XG4gIHNpZ25lZEJ5OiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uQmlnSW50IHtcbiAgaWQ6IHN0cmluZztcbiAgaW5wdXRzOiBFeHBsYWluZWRJbnB1dFtdO1xuICBpbnB1dEFtb3VudDogYmlnaW50O1xuICBvdXRwdXRzOiBPdXRwdXQ8YmlnaW50PltdO1xuICBjaGFuZ2VPdXRwdXRzOiBGaXhlZFNjcmlwdFdhbGxldE91dHB1dDxiaWdpbnQ+W107XG4gIGN1c3RvbUNoYW5nZU91dHB1dHM6IEZpeGVkU2NyaXB0V2FsbGV0T3V0cHV0PGJpZ2ludD5bXTtcbiAgb3V0cHV0QW1vdW50OiBiaWdpbnQ7XG4gIGNoYW5nZUFtb3VudDogYmlnaW50O1xuICBjdXN0b21DaGFuZ2VBbW91bnQ6IGJpZ2ludDtcbiAgZmVlOiBiaWdpbnQ7XG59XG5cbmZ1bmN0aW9uIGdldFNpZ25lZEJ5Rm9ySW5wdXQoXG4gIHBzYnQ6IEJpdEdvUHNidCxcbiAgaW5wdXRJbmRleDogbnVtYmVyLFxuICB3YWxsZXRYcHViczogZml4ZWRTY3JpcHRXYWxsZXQuUm9vdFdhbGxldEtleXMsXG4gIHJlcGxheVByb3RlY3Rpb25QdWJsaWNLZXlzOiBCdWZmZXJbXSxcbiAgc2NyaXB0SWQ6IGZpeGVkU2NyaXB0V2FsbGV0LlNjcmlwdElkIHwgbnVsbFxuKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0ge1xuICBpZiAoc2NyaXB0SWQgIT09IG51bGwpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdXNlcjogcHNidC52ZXJpZnlTaWduYXR1cmUoaW5wdXRJbmRleCwgd2FsbGV0WHB1YnMudXNlcktleSgpKSxcbiAgICAgIGJhY2t1cDogcHNidC52ZXJpZnlTaWduYXR1cmUoaW5wdXRJbmRleCwgd2FsbGV0WHB1YnMuYmFja3VwS2V5KCkpLFxuICAgICAgYml0Z286IHBzYnQudmVyaWZ5U2lnbmF0dXJlKGlucHV0SW5kZXgsIHdhbGxldFhwdWJzLmJpdGdvS2V5KCkpLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICByZXBsYXlQcm90ZWN0aW9uUHVibGljS2V5cy5tYXAoKGtleSwgaikgPT4gW2ByZXBsYXlQcm90ZWN0aW9uJHtqfWAsIHBzYnQudmVyaWZ5U2lnbmF0dXJlKGlucHV0SW5kZXgsIGtleSldKVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXhwbGFpblBzYnRXYXNtQmlnSW50KFxuICBwc2J0OiBCaXRHb1BzYnQsXG4gIHdhbGxldFhwdWJzOiBmaXhlZFNjcmlwdFdhbGxldC5Sb290V2FsbGV0S2V5cyxcbiAgcGFyYW1zOiBFeHBsYWluUHNidFdhc21QYXJhbXNcbik6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25CaWdJbnQge1xuICBjb25zdCBwYXJzZWQgPSBwc2J0LnBhcnNlVHJhbnNhY3Rpb25XaXRoV2FsbGV0S2V5cyh3YWxsZXRYcHVicywgeyByZXBsYXlQcm90ZWN0aW9uOiBwYXJhbXMucmVwbGF5UHJvdGVjdGlvbiB9KTtcblxuICBjb25zdCBjaGFuZ2VPdXRwdXRzOiBGaXhlZFNjcmlwdFdhbGxldE91dHB1dDxiaWdpbnQ+W10gPSBbXTtcbiAgY29uc3Qgb3V0cHV0czogT3V0cHV0PGJpZ2ludD5bXSA9IFtdO1xuICBjb25zdCBwYXJzZWRDdXN0b21DaGFuZ2VPdXRwdXRzID0gcGFyYW1zLmN1c3RvbUNoYW5nZVdhbGxldFhwdWJzXG4gICAgPyBwc2J0LnBhcnNlT3V0cHV0c1dpdGhXYWxsZXRLZXlzKHBhcmFtcy5jdXN0b21DaGFuZ2VXYWxsZXRYcHVicylcbiAgICA6IHVuZGVmaW5lZDtcbiAgY29uc3QgY3VzdG9tQ2hhbmdlT3V0cHV0czogRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQ8YmlnaW50PltdID0gW107XG4gIHBhcnNlZC5vdXRwdXRzLmZvckVhY2goKG91dHB1dCwgaSkgPT4ge1xuICAgIGlmICghcGFyYW1zLmFkZHJlc3NDb2RlYy5pc01hdGNoaW5nU2NyaXB0KG91dHB1dCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgT3V0cHV0ICR7aX0gYWRkcmVzcyAke291dHB1dC5hZGRyZXNzfSBkb2VzIG5vdCBtYXRjaCBpdHMgcmF3IHNjcmlwdGApO1xuICAgIH1cbiAgICBjb25zdCBwYXJzZUN1c3RvbUNoYW5nZU91dHB1dCA9IHBhcnNlZEN1c3RvbUNoYW5nZU91dHB1dHM/LltpXTtcbiAgICBpZiAoaXNQYXJzZWRXYWxsZXRPdXRwdXQob3V0cHV0KSkge1xuICAgICAgY2hhbmdlT3V0cHV0cy5wdXNoKHRvQ2hhbmdlT3V0cHV0QmlnSW50KG91dHB1dCkpO1xuICAgIH0gZWxzZSBpZiAocGFyc2VDdXN0b21DaGFuZ2VPdXRwdXQgJiYgaXNQYXJzZWRXYWxsZXRPdXRwdXQocGFyc2VDdXN0b21DaGFuZ2VPdXRwdXQpKSB7XG4gICAgICBjdXN0b21DaGFuZ2VPdXRwdXRzLnB1c2godG9DaGFuZ2VPdXRwdXRCaWdJbnQocGFyc2VDdXN0b21DaGFuZ2VPdXRwdXQpKTtcbiAgICB9IGVsc2UgaWYgKGlzUGFyc2VkRXh0ZXJuYWxPdXRwdXQob3V0cHV0KSkge1xuICAgICAgb3V0cHV0cy5wdXNoKHRvRXh0ZXJuYWxPdXRwdXRCaWdJbnQob3V0cHV0KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBvdXRwdXQnKTtcbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0IGlucHV0cyA9IHBhcnNlZC5pbnB1dHMubWFwKChpbnB1dCwgaSkgPT4gKHtcbiAgICBhZGRyZXNzOiBpbnB1dC5hZGRyZXNzLFxuICAgIHZhbHVlOiBpbnB1dC52YWx1ZSxcbiAgICBzY3JpcHRJZDogaW5wdXQuc2NyaXB0SWQsXG4gICAgc2lnbmVkQnk6IGdldFNpZ25lZEJ5Rm9ySW5wdXQocHNidCwgaSwgd2FsbGV0WHB1YnMsIHBhcmFtcy5yZXBsYXlQcm90ZWN0aW9uLnB1YmxpY0tleXMsIGlucHV0LnNjcmlwdElkKSxcbiAgfSkpO1xuICBjb25zdCBpbnB1dEFtb3VudCA9IGlucHV0cy5yZWR1Y2UoKHN1bSwgaW5wdXQpID0+IHN1bSArIGlucHV0LnZhbHVlLCAwbik7XG4gIGNvbnN0IG91dHB1dEFtb3VudCA9IG91dHB1dHMucmVkdWNlKChzdW0sIG91dHB1dCkgPT4gc3VtICsgb3V0cHV0LmFtb3VudCwgMG4pO1xuICBjb25zdCBjaGFuZ2VBbW91bnQgPSBjaGFuZ2VPdXRwdXRzLnJlZHVjZSgoc3VtLCBvdXRwdXQpID0+IHN1bSArIG91dHB1dC5hbW91bnQsIDBuKTtcbiAgY29uc3QgY3VzdG9tQ2hhbmdlQW1vdW50ID0gY3VzdG9tQ2hhbmdlT3V0cHV0cy5yZWR1Y2UoKHN1bSwgb3V0cHV0KSA9PiBzdW0gKyBvdXRwdXQuYW1vdW50LCAwbik7XG5cbiAgcmV0dXJuIHtcbiAgICBpZDogcHNidC51bnNpZ25lZFR4SWQoKSxcbiAgICBpbnB1dHMsXG4gICAgaW5wdXRBbW91bnQsXG4gICAgb3V0cHV0cyxcbiAgICBjaGFuZ2VPdXRwdXRzLFxuICAgIGN1c3RvbUNoYW5nZU91dHB1dHMsXG4gICAgb3V0cHV0QW1vdW50LFxuICAgIGNoYW5nZUFtb3VudCxcbiAgICBjdXN0b21DaGFuZ2VBbW91bnQsXG4gICAgZmVlOiBwYXJzZWQubWluZXJGZWUsXG4gIH07XG59XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeU91dHB1dChvdXRwdXQ6IE91dHB1dDxiaWdpbnQ+KTogT3V0cHV0IHtcbiAgcmV0dXJuIHsgLi4ub3V0cHV0LCBhbW91bnQ6IG91dHB1dC5hbW91bnQudG9TdHJpbmcoKSB9O1xufVxuXG5mdW5jdGlvbiBzdHJpbmdpZnlDaGFuZ2VPdXRwdXQob3V0cHV0OiBGaXhlZFNjcmlwdFdhbGxldE91dHB1dDxiaWdpbnQ+KTogRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQge1xuICByZXR1cm4geyAuLi5vdXRwdXQsIGFtb3VudDogb3V0cHV0LmFtb3VudC50b1N0cmluZygpIH07XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RCaXAzMjJNZXNzYWdlcyhwc2J0OiBCaXRHb1BzYnQsIGlucHV0czogRXhwbGFpbmVkSW5wdXRbXSk6IHsgbWVzc2FnZXM6IEJpcDMyMk1lc3NhZ2VbXSB8IHVuZGVmaW5lZCB9IHtcbiAgY29uc3QgbWVzc2FnZXM6IEJpcDMyMk1lc3NhZ2VbXSA9IGlucHV0cy5mbGF0TWFwKChpbnB1dCwgaSkgPT4ge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBiaXAzMjIuZ2V0QmlwMzIyTWVzc2FnZShwc2J0LCBpKTtcbiAgICByZXR1cm4gbWVzc2FnZSA/IFt7IG1lc3NhZ2UsIGFkZHJlc3M6IGlucHV0LmFkZHJlc3MgfV0gOiBbXTtcbiAgfSk7XG5cbiAgaWYgKG1lc3NhZ2VzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB7IG1lc3NhZ2VzOiB1bmRlZmluZWQgfTtcbiAgfVxuXG4gIHJldHVybiB7IG1lc3NhZ2VzIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBsYWluUHNidFdhc20oXG4gIHBzYnQ6IEJpdEdvUHNidCxcbiAgd2FsbGV0WHB1YnM6IFRyaXBsZTxzdHJpbmc+IHwgZml4ZWRTY3JpcHRXYWxsZXQuUm9vdFdhbGxldEtleXMsXG4gIHBhcmFtczogRXhwbGFpblBzYnRXYXNtUGFyYW1zXG4pOiBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uV2FzbSB7XG4gIGNvbnN0IHJlc3VsdCA9IGV4cGxhaW5Qc2J0V2FzbUJpZ0ludChwc2J0LCBmaXhlZFNjcmlwdFdhbGxldC5Sb290V2FsbGV0S2V5cy5mcm9tKHdhbGxldFhwdWJzKSwgcGFyYW1zKTtcbiAgY29uc3QgaW5wdXRzID0gcmVzdWx0LmlucHV0cy5tYXAoKGkpID0+ICh7IGFkZHJlc3M6IGkuYWRkcmVzcywgdmFsdWU6IGkudmFsdWUudG9TdHJpbmcoKSwgc2lnbmVkQnk6IGkuc2lnbmVkQnkgfSkpO1xuXG4gIGNvbnN0IHsgbWVzc2FnZXMgfSA9IGV4dHJhY3RCaXAzMjJNZXNzYWdlcyhwc2J0LCByZXN1bHQuaW5wdXRzKTtcblxuICByZXR1cm4ge1xuICAgIGlkOiByZXN1bHQuaWQsXG4gICAgaW5wdXRzLFxuICAgIGlucHV0QW1vdW50OiByZXN1bHQuaW5wdXRBbW91bnQudG9TdHJpbmcoKSxcbiAgICBvdXRwdXRBbW91bnQ6IHJlc3VsdC5vdXRwdXRBbW91bnQudG9TdHJpbmcoKSxcbiAgICBjaGFuZ2VBbW91bnQ6IHJlc3VsdC5jaGFuZ2VBbW91bnQudG9TdHJpbmcoKSxcbiAgICBjdXN0b21DaGFuZ2VBbW91bnQ6IHJlc3VsdC5jdXN0b21DaGFuZ2VBbW91bnQudG9TdHJpbmcoKSxcbiAgICBvdXRwdXRzOiByZXN1bHQub3V0cHV0cy5tYXAoc3RyaW5naWZ5T3V0cHV0KSxcbiAgICBjaGFuZ2VPdXRwdXRzOiByZXN1bHQuY2hhbmdlT3V0cHV0cy5tYXAoc3RyaW5naWZ5Q2hhbmdlT3V0cHV0KSxcbiAgICBjdXN0b21DaGFuZ2VPdXRwdXRzOiByZXN1bHQuY3VzdG9tQ2hhbmdlT3V0cHV0cy5tYXAoc3RyaW5naWZ5Q2hhbmdlT3V0cHV0KSxcbiAgICBmZWU6IHJlc3VsdC5mZWUudG9TdHJpbmcoKSxcbiAgICBtZXNzYWdlcyxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZ2dyZWdhdGVkVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIGlucHV0Q291bnQ6IG51bWJlcjtcbiAgb3V0cHV0Q291bnQ6IG51bWJlcjtcbiAgY2hhbmdlT3V0cHV0Q291bnQ6IG51bWJlcjtcbiAgaW5wdXRBbW91bnQ6IGJpZ2ludDtcbiAgb3V0cHV0QW1vdW50OiBiaWdpbnQ7XG4gIGNoYW5nZUFtb3VudDogYmlnaW50O1xuICBmZWU6IGJpZ2ludDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFnZ3JlZ2F0ZVRyYW5zYWN0aW9uRXhwbGFuYXRpb25zKFxuICBleHBsYW5hdGlvbnM6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb25CaWdJbnRbXVxuKTogQWdncmVnYXRlZFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBsZXQgaW5wdXRDb3VudCA9IDA7XG4gIGxldCBvdXRwdXRDb3VudCA9IDA7XG4gIGxldCBjaGFuZ2VPdXRwdXRDb3VudCA9IDA7XG4gIGxldCBmZWUgPSAwbjtcbiAgbGV0IGlucHV0QW1vdW50ID0gMG47XG4gIGxldCBvdXRwdXRBbW91bnQgPSAwbjtcbiAgbGV0IGNoYW5nZUFtb3VudCA9IDBuO1xuXG4gIGZvciAoY29uc3QgZSBvZiBleHBsYW5hdGlvbnMpIHtcbiAgICBpbnB1dENvdW50ICs9IGUuaW5wdXRzLmxlbmd0aDtcbiAgICBvdXRwdXRDb3VudCArPSBlLm91dHB1dHMubGVuZ3RoO1xuICAgIGNoYW5nZU91dHB1dENvdW50ICs9IGUuY2hhbmdlT3V0cHV0cy5sZW5ndGg7XG4gICAgZmVlICs9IGUuZmVlO1xuICAgIGlucHV0QW1vdW50ICs9IGUuaW5wdXRBbW91bnQ7XG4gICAgb3V0cHV0QW1vdW50ICs9IGUub3V0cHV0QW1vdW50O1xuICAgIGNoYW5nZUFtb3VudCArPSBlLmNoYW5nZUFtb3VudDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgaW5wdXRDb3VudCxcbiAgICBvdXRwdXRDb3VudCxcbiAgICBjaGFuZ2VPdXRwdXRDb3VudCxcbiAgICBpbnB1dEFtb3VudCxcbiAgICBvdXRwdXRBbW91bnQsXG4gICAgY2hhbmdlQW1vdW50LFxuICAgIGZlZSxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/fixedScript/parseTransaction.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,KAAK,EAAmC,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAUnF,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAoB,MAAM,qBAAqB,CAAC;AAMzF,MAAM,MAAM,4BAA4B,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,GAAG;IAC/F,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;
|
|
1
|
+
{"version":3,"file":"parseTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/fixedScript/parseTransaction.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,KAAK,EAAmC,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAUnF,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAoB,MAAM,qBAAqB,CAAC;AAMzF,MAAM,MAAM,4BAA4B,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,GAAG;IAC/F,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;AAmHF,wBAAsB,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACpE,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,uBAAuB,CAAC,OAAO,CAAC,EACxC,YAAY,GAAE,YAAgC,GAC7C,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CA6KrC"}
|